Version Description
- Added loco_api_provider_source filter
- Fixed bug loading user preferences saved in older version
- Refactored file finder to avoid recursive function calls
- Fixed bug displaying two forms for zero plural languages
- Added Lecto AI to translation API providers
- Bumped WordPress version to 5.8.3
Download this release
Release Info
Developer | timwhitlock |
Plugin | Loco Translate |
Version | 2.5.6 |
Comparing to | |
See all releases |
Code changes from version 2.5.5 to 2.5.6
- languages/loco-translate.pot +25 -25
- lib/compiled/gettext.php +2 -2
- lib/data/locales.php +1 -1
- loco.php +2 -2
- pub/css/admin.css +1 -1
- pub/css/editor.css +1 -1
- pub/css/podiff.css +1 -1
- pub/css/poview.css +1 -1
- pub/css/skins/blue.css +1 -1
- pub/css/skins/coffee.css +1 -1
- pub/css/skins/ectoplasm.css +1 -1
- pub/css/skins/light.css +1 -1
- pub/css/skins/midnight.css +1 -1
- pub/css/skins/modern.css +1 -1
- pub/css/skins/ocean.css +1 -1
- pub/css/skins/sunrise.css +1 -1
- pub/font/loco.eot +0 -0
- pub/font/loco.svg +1 -0
- pub/font/loco.ttf +0 -0
- pub/font/loco.woff +0 -0
- pub/js/min/admin.js +1316 -1252
- pub/js/min/editor.js +112 -110
- readme.txt +11 -3
- src/admin/config/DebugController.php +5 -1
- src/admin/file/EditController.php +7 -2
- src/ajax/ApisController.php +1 -2
- src/api/Providers.php +18 -4
- src/data/Preferences.php +4 -3
- src/data/Settings.php +2 -0
- src/fs/FileFinder.php +27 -24
- tpl/admin/config/apis.php +21 -0
languages/loco-translate.pot
CHANGED
@@ -1,9 +1,9 @@
|
|
1 |
#, fuzzy
|
2 |
msgid ""
|
3 |
msgstr ""
|
4 |
-
"Project-Id-Version: Loco Translate 2.5.
|
5 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/loco-translate/\n"
|
6 |
-
"POT-Creation-Date:
|
7 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
8 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
9 |
"Language-Team: \n"
|
@@ -13,7 +13,7 @@ msgstr ""
|
|
13 |
"Content-Type: text/plain; charset=UTF-8\n"
|
14 |
"Content-Transfer-Encoding: 8bit\n"
|
15 |
"X-Generator: Loco https://localise.biz/\n"
|
16 |
-
"X-Loco-Version: 2.5.
|
17 |
"X-Domain: loco-translate"
|
18 |
|
19 |
#: src/fs/FileWriter.php:214
|
@@ -538,9 +538,9 @@ msgstr ""
|
|
538 |
msgid "Disallow"
|
539 |
msgstr ""
|
540 |
|
541 |
-
#: src/data/Settings.php:
|
542 |
#: src/admin/bundle/LocaleController.php:130 tpl/admin/config/settings.php:234
|
543 |
-
#: tpl/admin/config/apis.php:
|
544 |
#: tpl/admin/common/inc-fsconn.php:16 tpl/admin/common/inc-fsconn.php:41
|
545 |
#: tpl/admin/errors/no-backups.php:22
|
546 |
msgid "Documentation"
|
@@ -596,13 +596,13 @@ msgid "%s translation"
|
|
596 |
msgstr ""
|
597 |
|
598 |
#. button for adding a new string when manually editing a POT file
|
599 |
-
#: src/admin/file/EditController.php:
|
600 |
msgctxt "Editor"
|
601 |
msgid "Add"
|
602 |
msgstr ""
|
603 |
|
604 |
#. Button that opens window for auto-translating
|
605 |
-
#: src/admin/file/EditController.php:
|
606 |
msgctxt "Editor"
|
607 |
msgid "Auto"
|
608 |
msgstr ""
|
@@ -626,7 +626,7 @@ msgid "Context not loaded"
|
|
626 |
msgstr ""
|
627 |
|
628 |
#. Button for downloading a PO, MO or POT file
|
629 |
-
#: src/admin/file/EditController.php:
|
630 |
msgctxt "Editor"
|
631 |
msgid "Download"
|
632 |
msgstr ""
|
@@ -638,19 +638,19 @@ msgid "Plural"
|
|
638 |
msgstr ""
|
639 |
|
640 |
#. button for removing a string when manually editing a POT file
|
641 |
-
#: src/admin/file/EditController.php:
|
642 |
msgctxt "Editor"
|
643 |
msgid "Remove"
|
644 |
msgstr ""
|
645 |
|
646 |
#. Button that reloads current screen
|
647 |
-
#: src/admin/file/EditController.php:
|
648 |
msgctxt "Editor"
|
649 |
msgid "Revert"
|
650 |
msgstr ""
|
651 |
|
652 |
#. Button that saves translations to disk
|
653 |
-
#: src/admin/file/EditController.php:
|
654 |
msgctxt "Editor"
|
655 |
msgid "Save"
|
656 |
msgstr ""
|
@@ -680,13 +680,13 @@ msgid "Suggest translation"
|
|
680 |
msgstr ""
|
681 |
|
682 |
#. Button that runs in-editor sync/operation
|
683 |
-
#: src/admin/file/EditController.php:
|
684 |
msgctxt "Editor"
|
685 |
msgid "Sync"
|
686 |
msgstr ""
|
687 |
|
688 |
#. Button that toggles between "code" and regular text editing modes
|
689 |
-
#: src/admin/file/EditController.php:
|
690 |
msgctxt "Editor"
|
691 |
msgid "Toggle code view"
|
692 |
msgstr ""
|
@@ -697,7 +697,7 @@ msgid "Toggle Fuzzy"
|
|
697 |
msgstr ""
|
698 |
|
699 |
#. Button that toggles invisible characters
|
700 |
-
#: src/admin/file/EditController.php:
|
701 |
msgctxt "Editor"
|
702 |
msgid "Toggle invisibles"
|
703 |
msgstr ""
|
@@ -912,7 +912,7 @@ msgid ""
|
|
912 |
msgstr ""
|
913 |
|
914 |
#. Placeholder text for text filter above editor
|
915 |
-
#: src/admin/file/EditController.php:
|
916 |
msgid "Filter translations"
|
917 |
msgstr ""
|
918 |
|
@@ -967,7 +967,7 @@ msgstr ""
|
|
967 |
msgid "Grant access to roles"
|
968 |
msgstr ""
|
969 |
|
970 |
-
#: src/ajax/ApisController.php:26 src/admin/file/EditController.php:
|
971 |
msgid "Help"
|
972 |
msgstr ""
|
973 |
|
@@ -1003,7 +1003,7 @@ msgstr ""
|
|
1003 |
msgid "Import config from XML"
|
1004 |
msgstr ""
|
1005 |
|
1006 |
-
#: tpl/admin/config/apis.php:
|
1007 |
msgid "Important"
|
1008 |
msgstr ""
|
1009 |
|
@@ -1152,7 +1152,7 @@ msgstr ""
|
|
1152 |
msgid "Loco Translate %s"
|
1153 |
msgstr ""
|
1154 |
|
1155 |
-
#: src/data/Settings.php:
|
1156 |
msgid "Loco Translate 2.5 adds supports for JSON language pack generation."
|
1157 |
msgstr ""
|
1158 |
|
@@ -1552,7 +1552,7 @@ msgstr ""
|
|
1552 |
msgid "Save credentials in session"
|
1553 |
msgstr ""
|
1554 |
|
1555 |
-
#: tpl/admin/config/settings.php:233 tpl/admin/config/apis.php:
|
1556 |
#: tpl/admin/config/prefs.php:44
|
1557 |
msgid "Save settings"
|
1558 |
msgstr ""
|
@@ -1589,7 +1589,7 @@ msgstr ""
|
|
1589 |
msgid "See FAQ"
|
1590 |
msgstr ""
|
1591 |
|
1592 |
-
#: tpl/admin/config/apis.php:
|
1593 |
msgid "See full disclaimer"
|
1594 |
msgstr ""
|
1595 |
|
@@ -1609,7 +1609,7 @@ msgid "Sets"
|
|
1609 |
msgstr ""
|
1610 |
|
1611 |
#: src/mvc/AdminRouter.php:67 src/mvc/AdminRouter.php:72
|
1612 |
-
#: tpl/ajax/modal-apis-empty.php:15 src/admin/file/EditController.php:
|
1613 |
#: tpl/admin/common/inc-fsconn.php:18 tpl/admin/common/inc-fsconn.php:43
|
1614 |
#: tpl/admin/errors/no-backups.php:24
|
1615 |
msgid "Settings"
|
@@ -1791,7 +1791,7 @@ msgid ""
|
|
1791 |
"extract strings directly from source code."
|
1792 |
msgstr ""
|
1793 |
|
1794 |
-
#: tpl/admin/config/apis.php:
|
1795 |
msgid ""
|
1796 |
"Third party services are subject to their own terms of use and may incur "
|
1797 |
"costs from the provider"
|
@@ -1874,7 +1874,7 @@ msgid "This information is for developers to find problems in the bundle setup"
|
|
1874 |
msgstr ""
|
1875 |
|
1876 |
#. Warning when POT file is opened in the file editor. It can be disabled in settings.
|
1877 |
-
#: src/admin/file/EditController.php:
|
1878 |
msgid ""
|
1879 |
"This is NOT a translation file. Manual editing of source strings is not "
|
1880 |
"recommended."
|
@@ -1953,12 +1953,12 @@ msgid "Translation progress %s%%"
|
|
1953 |
msgstr ""
|
1954 |
|
1955 |
#. Where %s is the name of the invalid POT file
|
1956 |
-
#: src/ajax/SyncController.php:72 src/admin/file/EditController.php:
|
1957 |
#, php-format
|
1958 |
msgid "Translation template is invalid (%s)"
|
1959 |
msgstr ""
|
1960 |
|
1961 |
-
#: src/admin/file/EditController.php:
|
1962 |
#, php-format
|
1963 |
msgid "Translations don't match template. Run sync to update from %s"
|
1964 |
msgstr ""
|
1 |
#, fuzzy
|
2 |
msgid ""
|
3 |
msgstr ""
|
4 |
+
"Project-Id-Version: Loco Translate 2.5.6\n"
|
5 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/loco-translate/\n"
|
6 |
+
"POT-Creation-Date: 2022-01-14 17:03+0000\n"
|
7 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
8 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
9 |
"Language-Team: \n"
|
13 |
"Content-Type: text/plain; charset=UTF-8\n"
|
14 |
"Content-Transfer-Encoding: 8bit\n"
|
15 |
"X-Generator: Loco https://localise.biz/\n"
|
16 |
+
"X-Loco-Version: 2.5.6; wp-5.8.3\n"
|
17 |
"X-Domain: loco-translate"
|
18 |
|
19 |
#: src/fs/FileWriter.php:214
|
538 |
msgid "Disallow"
|
539 |
msgstr ""
|
540 |
|
541 |
+
#: src/data/Settings.php:180 src/admin/file/EditController.php:166
|
542 |
#: src/admin/bundle/LocaleController.php:130 tpl/admin/config/settings.php:234
|
543 |
+
#: tpl/admin/config/apis.php:149 tpl/admin/config/prefs.php:45
|
544 |
#: tpl/admin/common/inc-fsconn.php:16 tpl/admin/common/inc-fsconn.php:41
|
545 |
#: tpl/admin/errors/no-backups.php:22
|
546 |
msgid "Documentation"
|
596 |
msgstr ""
|
597 |
|
598 |
#. button for adding a new string when manually editing a POT file
|
599 |
+
#: src/admin/file/EditController.php:192
|
600 |
msgctxt "Editor"
|
601 |
msgid "Add"
|
602 |
msgstr ""
|
603 |
|
604 |
#. Button that opens window for auto-translating
|
605 |
+
#: src/admin/file/EditController.php:203
|
606 |
msgctxt "Editor"
|
607 |
msgid "Auto"
|
608 |
msgstr ""
|
626 |
msgstr ""
|
627 |
|
628 |
#. Button for downloading a PO, MO or POT file
|
629 |
+
#: src/admin/file/EditController.php:205
|
630 |
msgctxt "Editor"
|
631 |
msgid "Download"
|
632 |
msgstr ""
|
638 |
msgstr ""
|
639 |
|
640 |
#. button for removing a string when manually editing a POT file
|
641 |
+
#: src/admin/file/EditController.php:194
|
642 |
msgctxt "Editor"
|
643 |
msgid "Remove"
|
644 |
msgstr ""
|
645 |
|
646 |
#. Button that reloads current screen
|
647 |
+
#: src/admin/file/EditController.php:201
|
648 |
msgctxt "Editor"
|
649 |
msgid "Revert"
|
650 |
msgstr ""
|
651 |
|
652 |
#. Button that saves translations to disk
|
653 |
+
#: src/admin/file/EditController.php:197
|
654 |
msgctxt "Editor"
|
655 |
msgid "Save"
|
656 |
msgstr ""
|
680 |
msgstr ""
|
681 |
|
682 |
#. Button that runs in-editor sync/operation
|
683 |
+
#: src/admin/file/EditController.php:199
|
684 |
msgctxt "Editor"
|
685 |
msgid "Sync"
|
686 |
msgstr ""
|
687 |
|
688 |
#. Button that toggles between "code" and regular text editing modes
|
689 |
+
#: src/admin/file/EditController.php:211
|
690 |
msgctxt "Editor"
|
691 |
msgid "Toggle code view"
|
692 |
msgstr ""
|
697 |
msgstr ""
|
698 |
|
699 |
#. Button that toggles invisible characters
|
700 |
+
#: src/admin/file/EditController.php:209
|
701 |
msgctxt "Editor"
|
702 |
msgid "Toggle invisibles"
|
703 |
msgstr ""
|
912 |
msgstr ""
|
913 |
|
914 |
#. Placeholder text for text filter above editor
|
915 |
+
#: src/admin/file/EditController.php:207
|
916 |
msgid "Filter translations"
|
917 |
msgstr ""
|
918 |
|
967 |
msgid "Grant access to roles"
|
968 |
msgstr ""
|
969 |
|
970 |
+
#: src/ajax/ApisController.php:26 src/admin/file/EditController.php:195
|
971 |
msgid "Help"
|
972 |
msgstr ""
|
973 |
|
1003 |
msgid "Import config from XML"
|
1004 |
msgstr ""
|
1005 |
|
1006 |
+
#: tpl/admin/config/apis.php:139
|
1007 |
msgid "Important"
|
1008 |
msgstr ""
|
1009 |
|
1152 |
msgid "Loco Translate %s"
|
1153 |
msgstr ""
|
1154 |
|
1155 |
+
#: src/data/Settings.php:179
|
1156 |
msgid "Loco Translate 2.5 adds supports for JSON language pack generation."
|
1157 |
msgstr ""
|
1158 |
|
1552 |
msgid "Save credentials in session"
|
1553 |
msgstr ""
|
1554 |
|
1555 |
+
#: tpl/admin/config/settings.php:233 tpl/admin/config/apis.php:148
|
1556 |
#: tpl/admin/config/prefs.php:44
|
1557 |
msgid "Save settings"
|
1558 |
msgstr ""
|
1589 |
msgid "See FAQ"
|
1590 |
msgstr ""
|
1591 |
|
1592 |
+
#: tpl/admin/config/apis.php:142
|
1593 |
msgid "See full disclaimer"
|
1594 |
msgstr ""
|
1595 |
|
1609 |
msgstr ""
|
1610 |
|
1611 |
#: src/mvc/AdminRouter.php:67 src/mvc/AdminRouter.php:72
|
1612 |
+
#: tpl/ajax/modal-apis-empty.php:15 src/admin/file/EditController.php:165
|
1613 |
#: tpl/admin/common/inc-fsconn.php:18 tpl/admin/common/inc-fsconn.php:43
|
1614 |
#: tpl/admin/errors/no-backups.php:24
|
1615 |
msgid "Settings"
|
1791 |
"extract strings directly from source code."
|
1792 |
msgstr ""
|
1793 |
|
1794 |
+
#: tpl/admin/config/apis.php:141
|
1795 |
msgid ""
|
1796 |
"Third party services are subject to their own terms of use and may incur "
|
1797 |
"costs from the provider"
|
1874 |
msgstr ""
|
1875 |
|
1876 |
#. Warning when POT file is opened in the file editor. It can be disabled in settings.
|
1877 |
+
#: src/admin/file/EditController.php:164
|
1878 |
msgid ""
|
1879 |
"This is NOT a translation file. Manual editing of source strings is not "
|
1880 |
"recommended."
|
1953 |
msgstr ""
|
1954 |
|
1955 |
#. Where %s is the name of the invalid POT file
|
1956 |
+
#: src/ajax/SyncController.php:72 src/admin/file/EditController.php:122
|
1957 |
#, php-format
|
1958 |
msgid "Translation template is invalid (%s)"
|
1959 |
msgstr ""
|
1960 |
|
1961 |
+
#: src/admin/file/EditController.php:117
|
1962 |
#, php-format
|
1963 |
msgid "Translations don't match template. Run sync to update from %s"
|
1964 |
msgstr ""
|
lib/compiled/gettext.php
CHANGED
@@ -15,8 +15,8 @@ class LocoPoParser extends LocoGettextParser implements Iterator { private $lin
|
|
15 |
class LocoMoParser extends LocoGettextParser { private $bin; private $be; private $n; private $o; private $t; private $v; public function __construct( $bin ){ $this->bin = $bin; } public function getAt( $idx ){ $offset = $this->targetOffset(); $offset += ( $idx * 8 ); $len = $this->integerAt( $offset ); $idx = $this->integerAt( $offset + 4 ); $txt = $this->bytes( $idx, $len ); if( false === strpos( $txt, "\0") ){ return $txt; } return explode( "\0", $txt ); } public function parse( $limit = -1 ){ $i = -1; $r = array(); $sourceOffset = $this->sourceOffset(); $targetOffset = $this->targetOffset(); $soffset = $sourceOffset; $toffset = $targetOffset; while( $soffset < $targetOffset ){ $len = $this->integerAt( $soffset ); $idx = $this->integerAt( $soffset + 4 ); $src = $this->bytes( $idx, $len ); $eot = strpos( $src, "\x04" ); if( false === $eot ){ $context = null; } else { $context = $this->str( substr($src, 0, $eot ) ); $src = substr( $src, $eot+1 ); } $sources = explode( "\0", $src, 2 ); $len = $this->integerAt( $toffset ); $idx = $this->integerAt( $toffset + 4 ); $targets = explode( "\0", $this->bytes( $idx, $len ) ); if( -1 === $i && '' === $sources[0] && is_null($context) ){ $this->setHeader( LocoPoHeaders::fromMsgstr($targets[0]) ); } if( ++$i === $limit ){ break; } $r[$i] = array( 'source' => $this->str( $sources[0] ), 'target' => $this->str( $targets[0] ), 'context' => $context, ); if( isset($sources[1]) ){ $p = count($r) - 1; $nforms = max( 2, count($targets) ); for( $i = 1; $i < $nforms; $i++ ){ $r[] = array( 'source' => isset($sources[$i]) ? $this->str( $sources[$i] ) : sprintf('%s (plural %u)',$r[$p]['source'],$i), 'target' => isset($targets[$i]) ? $this->str( $targets[$i] ) : '', 'parent' => $p, 'plural' => $i, ); } } $soffset += 8; $toffset += 8; } return $r; } public function isBigendian(){ if( is_null($this->be) ){ $str = $this->words( 0, 1 ); if( "\xDE\x12\x04\x95" === $str ){ $this->be = false; } else if( "\x95\x04\x12\xDE" === $str ){ $this->be = true; } else { throw new Loco_error_ParseException('Invalid MO format'); } } return $this->be; } public function version(){ if( is_null($this->v) ){ $this->v = $this->integerWord(1); } return $this->v; } public function count(){ if( is_null($this->n) ){ $this->n = $this->integerWord(2); } return $this->n; } public function sourceOffset(){ if( is_null($this->o) ){ $this->o = $this->integerWord(3); } return $this->o; } public function targetOffset(){ if( is_null($this->t) ){ $this->t = $this->integerWord(4); } return $this->t; } public function getHashTable(){ $s = $this->integerWord(5); $h = $this->integerWord(6); return $this->bytes( $h, $s * 4 ); } private function bytes( $offset, $length ){ $s = substr( $this->bin, $offset, $length ); if( strlen($s) !== $length ){ throw new Loco_error_ParseException('Failed to read '.$length.' bytes at ['.$offset.']' ); } return $s; } private function words( $offset, $length ){ return $this->bytes( $offset * 4, $length * 4 ); } private function integerWord( $offset ){ return $this->integerAt( $offset * 4 ); } private function integerAt( $offset ){ $str = $this->bytes( $offset, 4 ); $fmt = $this->isBigendian() ? 'N' : 'V'; $arr = unpack( $fmt, $str ); if( ! isset($arr[1]) || ! is_int($arr[1]) ){ throw new Loco_error_ParseException('Failed to read integer at byte '.$offset); } return $arr[1]; } }
|
16 |
abstract class LocoPo { public static function pair( $key, $text, $width = 79, $eol = "\n", $esc = '\\n' ){ if( '' === $text ){ return $key.' ""'; } $text = addcslashes( $text, "\t\x0B\x0C\x07\x08\\\"" ); if( $esc ) { $text = preg_replace('/(?:\\r\\n?|\\n)/', $esc.$eol, $text, -1, $nbr ); } else { $eol = "\n"; $text = preg_replace_callback('/(?:\\r\\n?|\\n)/',array(__CLASS__,'replace_br'), $text, -1, $nbr ); } if( $nbr ){ } else if( $width && $width < mb_strlen($text,'UTF-8') + strlen($key) + 3 ){ } else { return $key.' "'.$text.'"'; } $lines = array( $key.' "' ); if( $width ){ $width -= 2; $a = '/^.{0,'.($width-1).'}[-– \\.,:;\\?!\\)\\]\\}\\>]/u'; $b = '/^[^-– \\.,:;\\?!\\)\\]\\}\\>]+/u'; foreach( explode($eol,$text) as $unwrapped ){ $length = mb_strlen( $unwrapped, 'UTF-8' ); while( $length > $width ){ if( preg_match( $a, $unwrapped, $r ) ){ $line = $r[0]; } else if( preg_match( $b, $unwrapped, $r ) ){ $line = $r[0]; } else { throw new Exception('Wrapping error'); } $lines[] = $line; $trunc = mb_strlen($line,'UTF-8'); $length -= $trunc; $unwrapped = (string) substr( $unwrapped, strlen($line) ); if( ( '' === $unwrapped && 0 !== $length ) || ( 0 === $length && '' !== $unwrapped ) ){ throw new Exception('Truncation error'); } } if( 0 !== $length ){ $lines[] = $unwrapped; } } } else { foreach( explode($eol,$text) as $unwrapped ){ $lines[] = $unwrapped; } } return implode('"'.$eol.'"',$lines).'"'; } private static function replace_br( array $r ){ return addcslashes($r[0],"\r\n")."\n"; } public static function refs( $text, $width = 76, $eol = "\n" ){ $text = preg_replace('/\\s+/u', ' ', $text ); if( $width ){ $text = wordwrap( $text, $width, $eol.'#: ', false ); } return '#: '.$text; } public static function prefix( $text, $prefix, $eol = "\n" ){ return $prefix . implode($eol.$prefix, self::split($text) ); } public static function split( $text ){ $lines = preg_split('/\\R/u', $text ); if( false === $lines ){ if( false === preg_match('//u',$text) ){ $text = mb_convert_encoding( $text, 'UTF-8', 'cp1252' ); } $lines = preg_split('/\\r?\\n+/', $text ); } return $lines; } public static function trim( $text ){ $lines = array(); $deferred = null; foreach( explode("\n",$text) as $line ){ if( '' === $line ){ continue; } if( preg_match('/^msg[a-z]+(?:\\[\\d+])? ""/',$line) ){ $deferred = $line; continue; } if( $deferred && '"' === $line[0] ){ $lines[] = $deferred; $deferred = null; } $lines[] = $line; } return implode("\n",$lines); } }
|
17 |
class LocoPoIndex extends ArrayIterator { public function compare( LocoPoMessage $a, LocoPoMessage $b ){ $h = $a->getHash(); if( ! isset($this[$h]) ){ return 1; } $j = $b->getHash(); if( ! isset($this[$j]) ){ return -1; } return $this[$h] > $this[$j] ? 1 : -1; } }
|
18 |
-
class LocoPoMessage extends ArrayObject { public function __construct( array $r ){ $r['key'] = $r['source']; parent::__construct($r); } public function __get( $prop ){ return $this->offsetExists($prop) ? $this->offsetGet($prop) : null; } private function _getFlags(){ $flags = array(); $plurals = $this->__get('plurals'); if( 4 === $this->__get('flag') ){ $flags[] = 'fuzzy'; } else if( $plurals ){ foreach( $plurals as $child ){ if( 4 === $child->__get('flag') ){ $flags[] = 'fuzzy'; break; } } } if( $f = $this->__get('format') ){ $flags[] = $f.'-format'; } else if( isset($plurals[0]) && ( $f = $plurals[0]->format ) ){ $flags[] = $f.'-format'; } return $flags; } public function getHash(){ $hash = $this->getKey(); if( $this->offsetExists('plurals') ){ foreach( $this->offsetGet('plurals') as $p ){ $hash .= "\0".$p->getHash(); break; } } return $hash; } public function getKey(){ $msgid = (string) $this['source']; $msgctxt = (string) $this->__get('context'); if( '' !== $msgctxt ){ if( '' === $msgid ){ $msgid = '('.$msgctxt.')'; } $msgid = $msgctxt."\4".$msgid; } return $msgid; } public function exportSerial(){ $a = array( $this['target'] ); if( $this->offsetExists('plurals') ){ $plurals = $this->offsetGet('plurals'); if( is_array($plurals) ){ foreach( $plurals as $i => $p ){ $a[] = $p['target']; } } } return $a; } public function __toString(){ return $this->render( 79, 76 ); } public function render( $width, $ref_width ){ $s = array(); try { if( $text = $this->__get('comment') ) { $s[] = LocoPo::prefix( $text, '# '); } if( $text = $this->__get('notes') ) { $s[] = LocoPo::prefix( $text, '#. '); } if( $text = $this->__get('refs') ){ $s[] = LocoPo::refs( $text, $ref_width ); } if( $texts = $this->_getFlags() ){ $s[] = '#, '.implode(', ',$texts); } $prev = $this->__get('prev'); if( is_array($prev) && $prev ){ foreach( new LocoPoIterator($prev) as $p ){ $text = $p->render( max(0,$width-3), 0 ); $s[] = LocoPo::prefix( LocoPo::trim($text),'#| '); break; } } $text = $this->__get('context'); if( is_string($text) && '' !== $text ){ $s[] = LocoPo::pair('msgctxt', $text, $width ); } $s[] = LocoPo::pair( 'msgid', $this['source'], $width ); $target = $this['target']; $plurals = $this->__get('plurals'); if( is_array($plurals) ){ if(
|
19 |
-
class LocoPoIterator implements Iterator, Countable { private $po; private $headers = null; private $i; private $t; private $j; private $z = 0; private $w = 79; public function __construct( $po ){ if( is_array($po) ){ $this->po = $po; } else if( $po instanceof Traversable ){ $this->po = iterator_to_array($po,false); } else { throw new InvalidArgumentException('PO data must be array or iterator'); } $this->t = count($po); if( 0 === $this->t ){ throw new InvalidArgumentException('Empty PO data'); } $h = $po[0]; if( '' !== $h['source'] || ( isset($h['context']) && '' !== $h['context'] ) || ( isset($po[1]['parent']) && 0 === $po[1]['parent'] ) ){ $this->z = -1; } } public function push( LocoPoMessage $p ){ $raw = $p->export(); $plurals = $p->plurals; unset($raw['plurals']); $i = count($this->po); $this->po[$i] = $raw; $this->t++; if( is_array($plurals) ) { $j = 0; foreach( $plurals as $p ) { $raw = $p->export(); $raw['parent'] = $i; $raw['plural'] = ++$j; $this->po[] = $raw; $this->t++; } } } public function concat( LocoPoIterator $more ){ foreach( $more as $message ){ $this->push($message); } return $this; } public function __clone(){ if( $this->headers ){ $this->headers = new LocoPoHeaders( $this->headers->getArrayCopy() ); } } public function count(){ return $this->t - ( $this->z + 1 ); } public function wrap( $width ){ $width = (int) $width; if( $width > 0 ){ $this->w = max( 15, $width ); } else { $this->w = 0; } return $this; } public function rewind(){ $this->i = $this->z; $this->j = -1; $this->next(); } public function key(){ return $this->j; } public function valid(){ return is_int($this->i); } public function next(){ $i = $this->i; while( ++$i < $this->t ){ if( array_key_exists('parent',$this->po[$i]) ){ continue; } $this->j++; $this->i = $i; return; } $this->i = null; $this->j = null; } public function current(){ $i = $this->i; $po = $this->po; $parent = new LocoPoMessage( $po[$i] ); $plurals = array(); $nonseq = $parent->offsetExists('child'); $j = $nonseq ? $parent['child'] : $i+1; while( isset($po[$j]['parent']) && $i === $po[$j]['parent'] ){ $plurals[] = new LocoPoMessage($po[$j++]); } if( $plurals ){ $parent['plurals'] = $plurals; } return $parent; } public function getArrayCopy(){ $po = $this->po; if( 0 === $this->z ){ $po[0]['target'] = (string) $this->getHeaders(); } return $po; } public function clear(){ if( 0 === $this->z ){ $this->po = array( $this->po[0] ); $this->t = 1; } else { $this->po = array(); $this->t = 0; } } public function getHeaders(){ if( is_null($this->headers) ){ $header = $this->po[0]; if( 0 === $this->z ){ $this->headers = LocoPoHeaders::fromMsgstr( $header['target'] ); } else { $this->headers = new LocoPoHeaders; } } return $this->headers; } public function setHeaders( LocoPoHeaders $head ){ $this->headers = $head; if( 0 === $this->z ){ $this->po[0]['target'] = null; } return $this; } public function initPo(){ if( 0 === $this->z ){ unset( $this->po[0]['flag'] ); } return $this; } public function initPot(){ if( 0 === $this->z ){ $this->po[0]['flag'] = 4; } return $this; } public function strip(){ $po = $this->po; $i = count($po); $z = $this->z; while( --$i > $z ){ $po[$i]['target'] = ''; } $this->po = $po; return $this; } public function __toString(){ try { return $this->render(); } catch( Exception $e ){ trigger_error( $e->getMessage(), E_USER_WARNING ); return ''; } } public function render( $sorter = null ){ $width = $this->w; $ref_width = max( 0, $width - 3 ); $h = $this->exportHeader(); $msg = new LocoPoMessage( $h ); $s = $msg->render( $width, $ref_width ); if( $sorter ){ if( ! is_callable($sorter) ){ throw new InvalidArgumentException('Bad callback'); } $msgs = array(); foreach( $this as $msg ){ $msgs[] = $msg; } usort( $msgs, $sorter ); } else { $msgs = $this; } foreach( $msgs as $msg ){ $s .= "\n".$msg->render( $width, $ref_width ); } return $s; } public function exportJed(){ $head = $this->getHeaders(); $a = array( '' => array( 'domain' => $head['domain'], 'lang' => $head['language'], 'plural-forms' => $head['plural-forms'], ) ); foreach( $this as $message ){ if( $message->translated() ){ $a[ $message->getKey() ] = $message->exportSerial(); } } return $a; } private function exportHeader(){ if( 0 === $this->z ){ $h = $this->po[0]; } else { $h = array( 'source' => '', 'target' => '' ); } if( $this->headers ){ $h['target'] = (string) $this->headers; } return $h; } public function exportRefs( $grep = '' ){ $a = array(); if( '' === $grep ) { $grep = '/(\\S+):\\d+/'; } else { $grep = '/(\\S*'.$grep.'):\\d+/'; } $self = get_class($this); $base = array( $this->exportHeader() ); foreach( $this as $message ){ if( preg_match_all( $grep, (string) $message->refs, $r ) ){ foreach( $r[1] as $ref ) { if( array_key_exists($ref,$a) ){ $po = $a[$ref]; } else { $po = new $self($base); $a[$ref] = $po; } $po->push($message); } } } return $a; } public function splitRefs( array $map = null ){ $a = array(); $self = get_class($this); $base = array( $this->exportHeader() ); if( is_array($map) ){ $grep = implode('|',array_keys($map)); } else { $grep = '[a-z]+'; } foreach( $this as $message ){ $refs = ltrim( (string) $message->refs ); if( '' !== $refs ){ if( preg_match_all('/\\S+\\.('.$grep.'):\\d+/', $refs, $r, PREG_SET_ORDER ) ){ $tmp = array(); foreach( $r as $rr ) { list( $ref, $ext ) = $rr; $tmp[$ext][$ref] = true; } foreach( $tmp as $ext => $refs ){ if( is_array($map) ){ $ext = $map[$ext]; } if( array_key_exists($ext,$a) ){ $po = $a[$ext]; } else { $po = new $self($base); $a[$ext] = $po; } $message = clone $message; $message['refs'] = implode(' ',array_keys($refs) ); $po->push($message); } } } } return $a; } public function getHashes(){ $a = array(); foreach( $this as $msg ){ $a[] = $msg->getHash(); } sort( $a, SORT_STRING ); return $a; } public function equalSource( LocoPoIterator $that ){ $a = $this->getHashes(); $b = $that->getHashes(); if( count($a) !== count($b) ){ return false; } foreach( $a as $i => $hash ){ if( $hash !== $b[$i] ){ return false; } } return true; } public function equal( LocoPoIterator $that ){ if( $this->t !== $that->t ){ return false; } $i = $this->z; $fields = array( 'source', 'context', 'notes', 'refs', 'target', 'comment', 'flag', 'parent', 'plural' ); while( ++$i < $this->t ){ $a = $this->po[$i]; $b = $that->po[$i]; foreach( $fields as $f ){ $af = isset($a[$f]) ? $a[$f] : ''; $bf = isset($b[$f]) ? $b[$f] : ''; if( $af !== $bf ){ return false; } } } return true; } public function sort( $func = null ){ $order = array(); foreach( $this as $msg ){ $order[] = $msg; } if( is_null($func) ){ $func = array( __CLASS__, 'compare' ); } else if( ! is_callable($func) ){ throw new InvalidArgumentException('Bad callback'); } usort( $order, $func ); $this->clear(); foreach( $order as $p ){ $this->push($p); } return $this; } public static function compare( LocoPoMessage $a, LocoPoMessage $b ){ $h = $a->getHash(); $j = $b->getHash(); $n = strcasecmp( $h, $j ); if( 0 === $n ){ $n = strcmp( $h, $j ); if( 0 === $n ){ return 0; } } return $n > 0 ? 1 : -1; } public function createSorter(){ $index = array(); foreach( $this as $i => $msg ){ $index[ $msg->getHash() ] = $i; } $obj = new LocoPoIndex( $index ); return array( $obj, 'compare' ); } }
|
20 |
class LocoMoTable { private $size = 0; private $bin = ''; private $map; public function __construct( $data = null ){ if( is_array($data) ){ $this->compile( $data ); } else if( $data ){ $this->parse( $data ); } } public function count(){ if( ! isset($this->size) ){ if( $this->bin ){ $this->size = (int) ( strlen( $this->bin ) / 4 ); } else if( is_array($this->map) ){ $this->size = count($this->map); } else { return 0; } if( ! self::is_prime($this->size) || $this->size < 3 ){ throw new Exception('Size expected to be prime number above 2, got '.$this->size); } } return $this->size; } public function bytes(){ return $this->count() * 4; } public function __toString(){ return $this->bin; } public function export(){ if( ! is_array($this->map) ){ $this->parse( $this->bin ); } return $this->map; } private function reset( $length ){ $this->size = max( 3, self::next_prime ( $length * 4 / 3 ) ); $this->bin = null; $this->map = array(); return $this->size; } public function compile( array $msgids ){ $hash_tab_size = $this->reset( count($msgids) ); $packed = array_fill( 0, $hash_tab_size, "\0\0\0\0" ); $j = 0; foreach( $msgids as $msgid ){ $hash_val = self::hashpjw( $msgid ); $idx = $hash_val % $hash_tab_size; if( array_key_exists($idx, $this->map) ){ $incr = 1 + ( $hash_val % ( $hash_tab_size - 2 ) ); do { $idx += $incr; if( $hash_val === $idx ){ throw new Exception('Unable to find empty slot in hash table'); } $idx %= $hash_tab_size; } while( array_key_exists($idx, $this->map ) ); } $this->map[$idx] = $j; $packed[$idx] = pack('V', ++$j ); } return $this->bin = implode('',$packed); } public function lookup( $msgid, array $msgids ){ $hash_val = self::hashpjw( $msgid ); $idx = $hash_val % $this->size; $incr = 1 + ( $hash_val % ( $this->size - 2 ) ); while( true ){ if( ! array_key_exists($idx, $this->map) ){ break; } $j = $this->map[$idx]; if( isset($msgids[$j]) && $msgid === $msgids[$j] ){ return $j; } $idx += $incr; if( $idx === $hash_val ){ break; } $idx %= $this->size; } return -1; } public function parse( $bin ){ $this->bin = (string) $bin; $this->size = null; $hash_tab_size = $this->count(); $this->map = array(); $idx = -1; $byte = 0; while( ++$idx < $hash_tab_size ){ $word = substr( $this->bin, $byte, 4 ); if( "\0\0\0\0" !== $word ){ list(,$j) = unpack('V', $word ); $this->map[$idx] = $j - 1; } $byte += 4; } return $this->map; } public static function hashpjw( $str ){ $i = -1; $hval = 0; $len = strlen($str); while( ++$i < $len ){ $ord = ord( substr($str,$i,1) ); $hval = ( $hval << 4 ) + $ord; $g = $hval & 0xf0000000; if( $g !== 0 ){ $hval ^= $g >> 24; $hval ^= $g; } } return $hval; } private static function next_prime( $seed ){ $seed |= 1; while ( ! self::is_prime($seed) ){ $seed += 2; } return $seed; } private static function is_prime( $num ) { if ($num === 1 ){ return false; } if( $num === 2 ){ return true; } if( $num % 2 == 0 ) { return false; } for( $i = 3; $i <= ceil(sqrt($num)); $i = $i + 2) { if($num % $i == 0 ){ return false; } } return true; } }
|
21 |
class LocoMo { private $bin; private $msgs; private $head; private $hash; private $use_fuzzy = false; private $cs; public function __construct( Iterator $export, LocoPoHeaders $head = null ){ if( $head ){ $this->head = $head; } else { $this->head = new LocoPoHeaders; $this->setHeader('Project-Id-Version','Loco'); } $this->msgs = $export; $this->bin = ''; } public function setCharset( $cs ){ $cs = $this->head->setCharset($cs); $this->cs = 'UTF-8' === $cs ? null : $cs; } public function enableHash(){ return $this->hash = new LocoMoTable; } public function useFuzzy(){ $this->use_fuzzy = true; } public function setHeader( $key, $val ){ $this->head->add($key, $val); return $this; } private function str( $s ){ $s = (string) $s; if( $cs = $this->cs ){ $s = mb_convert_encoding($s,$cs,array('UTF-8')); } return $s; } public function compile(){ $table = array(''); $sources = array(''); $targets = array( (string) $this->head ); $fuzzy_flag = 4; $skip_fuzzy = ! $this->use_fuzzy; foreach( $this->msgs as $r ){ if( $skip_fuzzy && isset($r['flag']) && $fuzzy_flag === $r['flag'] ){ continue; } $msgid = $this->str( $r['key'] ); if( isset($r['context']) ){ $msgctxt = $this->str( $r['context'] ); if( '' !== $msgctxt ){ if( '' === $msgid ){ $msgid = '('.$msgctxt.')'; } $msgid = $msgctxt."\x04".$msgid; } } if( '' === $msgid ){ continue; } $msgstr = $this->str( $r['target'] ); if( '' === $msgstr ){ continue; } $table[] = $msgid; if( isset($r['plurals']) ){ foreach( $r['plurals'] as $i => $p ){ if( $i === 0 ){ $msgid .= "\0".$p['key']; } $msgstr .= "\0".$p['target']; } } $sources[] = $msgid; $targets[] = $msgstr; } asort( $sources, SORT_STRING ); $this->bin = "\xDE\x12\x04\x95\x00\x00\x00\x00"; $n = count($sources); $this->writeInteger( $n ); $offset = 28; $this->writeInteger( $offset ); $offset += $n * 8; $this->writeInteger( $offset ); if( $this->hash ){ sort( $table, SORT_STRING ); $this->hash->compile( $table ); $s = $this->hash->count(); } else { $s = 0; } $this->writeInteger( $s ); $offset += $n * 8; $this->writeInteger( $offset ); if( $s ){ $offset += $s * 4; } $source = ''; foreach( $sources as $i => $str ){ $source .= $str."\0"; $this->writeInteger( $strlen = strlen($str) ); $this->writeInteger( $offset ); $offset += $strlen + 1; } $target = ''; foreach( array_keys($sources) as $i ){ $str = $targets[$i]; $target .= $str."\0"; $this->writeInteger( $strlen = strlen($str) ); $this->writeInteger( $offset ); $offset += $strlen + 1; } if( $this->hash ){ $this->bin .= $this->hash->__toString(); } $this->bin .= $source; $this->bin .= $target; return $this->bin; } private function writeInteger( $num ){ $this->bin .= pack( 'V', $num ); return $this; } }
|
22 |
interface LocoTokensInterface extends Iterator { public function advance(); public function ignore( array $a ); }
|
15 |
class LocoMoParser extends LocoGettextParser { private $bin; private $be; private $n; private $o; private $t; private $v; public function __construct( $bin ){ $this->bin = $bin; } public function getAt( $idx ){ $offset = $this->targetOffset(); $offset += ( $idx * 8 ); $len = $this->integerAt( $offset ); $idx = $this->integerAt( $offset + 4 ); $txt = $this->bytes( $idx, $len ); if( false === strpos( $txt, "\0") ){ return $txt; } return explode( "\0", $txt ); } public function parse( $limit = -1 ){ $i = -1; $r = array(); $sourceOffset = $this->sourceOffset(); $targetOffset = $this->targetOffset(); $soffset = $sourceOffset; $toffset = $targetOffset; while( $soffset < $targetOffset ){ $len = $this->integerAt( $soffset ); $idx = $this->integerAt( $soffset + 4 ); $src = $this->bytes( $idx, $len ); $eot = strpos( $src, "\x04" ); if( false === $eot ){ $context = null; } else { $context = $this->str( substr($src, 0, $eot ) ); $src = substr( $src, $eot+1 ); } $sources = explode( "\0", $src, 2 ); $len = $this->integerAt( $toffset ); $idx = $this->integerAt( $toffset + 4 ); $targets = explode( "\0", $this->bytes( $idx, $len ) ); if( -1 === $i && '' === $sources[0] && is_null($context) ){ $this->setHeader( LocoPoHeaders::fromMsgstr($targets[0]) ); } if( ++$i === $limit ){ break; } $r[$i] = array( 'source' => $this->str( $sources[0] ), 'target' => $this->str( $targets[0] ), 'context' => $context, ); if( isset($sources[1]) ){ $p = count($r) - 1; $nforms = max( 2, count($targets) ); for( $i = 1; $i < $nforms; $i++ ){ $r[] = array( 'source' => isset($sources[$i]) ? $this->str( $sources[$i] ) : sprintf('%s (plural %u)',$r[$p]['source'],$i), 'target' => isset($targets[$i]) ? $this->str( $targets[$i] ) : '', 'parent' => $p, 'plural' => $i, ); } } $soffset += 8; $toffset += 8; } return $r; } public function isBigendian(){ if( is_null($this->be) ){ $str = $this->words( 0, 1 ); if( "\xDE\x12\x04\x95" === $str ){ $this->be = false; } else if( "\x95\x04\x12\xDE" === $str ){ $this->be = true; } else { throw new Loco_error_ParseException('Invalid MO format'); } } return $this->be; } public function version(){ if( is_null($this->v) ){ $this->v = $this->integerWord(1); } return $this->v; } public function count(){ if( is_null($this->n) ){ $this->n = $this->integerWord(2); } return $this->n; } public function sourceOffset(){ if( is_null($this->o) ){ $this->o = $this->integerWord(3); } return $this->o; } public function targetOffset(){ if( is_null($this->t) ){ $this->t = $this->integerWord(4); } return $this->t; } public function getHashTable(){ $s = $this->integerWord(5); $h = $this->integerWord(6); return $this->bytes( $h, $s * 4 ); } private function bytes( $offset, $length ){ $s = substr( $this->bin, $offset, $length ); if( strlen($s) !== $length ){ throw new Loco_error_ParseException('Failed to read '.$length.' bytes at ['.$offset.']' ); } return $s; } private function words( $offset, $length ){ return $this->bytes( $offset * 4, $length * 4 ); } private function integerWord( $offset ){ return $this->integerAt( $offset * 4 ); } private function integerAt( $offset ){ $str = $this->bytes( $offset, 4 ); $fmt = $this->isBigendian() ? 'N' : 'V'; $arr = unpack( $fmt, $str ); if( ! isset($arr[1]) || ! is_int($arr[1]) ){ throw new Loco_error_ParseException('Failed to read integer at byte '.$offset); } return $arr[1]; } }
|
16 |
abstract class LocoPo { public static function pair( $key, $text, $width = 79, $eol = "\n", $esc = '\\n' ){ if( '' === $text ){ return $key.' ""'; } $text = addcslashes( $text, "\t\x0B\x0C\x07\x08\\\"" ); if( $esc ) { $text = preg_replace('/(?:\\r\\n?|\\n)/', $esc.$eol, $text, -1, $nbr ); } else { $eol = "\n"; $text = preg_replace_callback('/(?:\\r\\n?|\\n)/',array(__CLASS__,'replace_br'), $text, -1, $nbr ); } if( $nbr ){ } else if( $width && $width < mb_strlen($text,'UTF-8') + strlen($key) + 3 ){ } else { return $key.' "'.$text.'"'; } $lines = array( $key.' "' ); if( $width ){ $width -= 2; $a = '/^.{0,'.($width-1).'}[-– \\.,:;\\?!\\)\\]\\}\\>]/u'; $b = '/^[^-– \\.,:;\\?!\\)\\]\\}\\>]+/u'; foreach( explode($eol,$text) as $unwrapped ){ $length = mb_strlen( $unwrapped, 'UTF-8' ); while( $length > $width ){ if( preg_match( $a, $unwrapped, $r ) ){ $line = $r[0]; } else if( preg_match( $b, $unwrapped, $r ) ){ $line = $r[0]; } else { throw new Exception('Wrapping error'); } $lines[] = $line; $trunc = mb_strlen($line,'UTF-8'); $length -= $trunc; $unwrapped = (string) substr( $unwrapped, strlen($line) ); if( ( '' === $unwrapped && 0 !== $length ) || ( 0 === $length && '' !== $unwrapped ) ){ throw new Exception('Truncation error'); } } if( 0 !== $length ){ $lines[] = $unwrapped; } } } else { foreach( explode($eol,$text) as $unwrapped ){ $lines[] = $unwrapped; } } return implode('"'.$eol.'"',$lines).'"'; } private static function replace_br( array $r ){ return addcslashes($r[0],"\r\n")."\n"; } public static function refs( $text, $width = 76, $eol = "\n" ){ $text = preg_replace('/\\s+/u', ' ', $text ); if( $width ){ $text = wordwrap( $text, $width, $eol.'#: ', false ); } return '#: '.$text; } public static function prefix( $text, $prefix, $eol = "\n" ){ return $prefix . implode($eol.$prefix, self::split($text) ); } public static function split( $text ){ $lines = preg_split('/\\R/u', $text ); if( false === $lines ){ if( false === preg_match('//u',$text) ){ $text = mb_convert_encoding( $text, 'UTF-8', 'cp1252' ); } $lines = preg_split('/\\r?\\n+/', $text ); } return $lines; } public static function trim( $text ){ $lines = array(); $deferred = null; foreach( explode("\n",$text) as $line ){ if( '' === $line ){ continue; } if( preg_match('/^msg[a-z]+(?:\\[\\d+])? ""/',$line) ){ $deferred = $line; continue; } if( $deferred && '"' === $line[0] ){ $lines[] = $deferred; $deferred = null; } $lines[] = $line; } return implode("\n",$lines); } }
|
17 |
class LocoPoIndex extends ArrayIterator { public function compare( LocoPoMessage $a, LocoPoMessage $b ){ $h = $a->getHash(); if( ! isset($this[$h]) ){ return 1; } $j = $b->getHash(); if( ! isset($this[$j]) ){ return -1; } return $this[$h] > $this[$j] ? 1 : -1; } }
|
18 |
+
class LocoPoMessage extends ArrayObject { public function __construct( array $r ){ $r['key'] = $r['source']; parent::__construct($r); } public function __get( $prop ){ return $this->offsetExists($prop) ? $this->offsetGet($prop) : null; } private function _getFlags(){ $flags = array(); $plurals = $this->__get('plurals'); if( 4 === $this->__get('flag') ){ $flags[] = 'fuzzy'; } else if( $plurals ){ foreach( $plurals as $child ){ if( 4 === $child->__get('flag') ){ $flags[] = 'fuzzy'; break; } } } if( $f = $this->__get('format') ){ $flags[] = $f.'-format'; } else if( isset($plurals[0]) && ( $f = $plurals[0]->format ) ){ $flags[] = $f.'-format'; } return $flags; } public function getHash(){ $hash = $this->getKey(); if( $this->offsetExists('plurals') ){ foreach( $this->offsetGet('plurals') as $p ){ $hash .= "\0".$p->getHash(); break; } } return $hash; } public function getKey(){ $msgid = (string) $this['source']; $msgctxt = (string) $this->__get('context'); if( '' !== $msgctxt ){ if( '' === $msgid ){ $msgid = '('.$msgctxt.')'; } $msgid = $msgctxt."\4".$msgid; } return $msgid; } public function exportSerial(){ $a = array( $this['target'] ); if( $this->offsetExists('plurals') ){ $plurals = $this->offsetGet('plurals'); if( is_array($plurals) ){ foreach( $plurals as $i => $p ){ $a[] = $p['target']; } } } return $a; } public function __toString(){ return $this->render( 79, 76 ); } public function render( $width, $ref_width, $max_forms = 0 ){ $s = array(); try { if( $text = $this->__get('comment') ) { $s[] = LocoPo::prefix( $text, '# '); } if( $text = $this->__get('notes') ) { $s[] = LocoPo::prefix( $text, '#. '); } if( $text = $this->__get('refs') ){ $s[] = LocoPo::refs( $text, $ref_width ); } if( $texts = $this->_getFlags() ){ $s[] = '#, '.implode(', ',$texts); } $prev = $this->__get('prev'); if( is_array($prev) && $prev ){ foreach( new LocoPoIterator($prev) as $p ){ $text = $p->render( max(0,$width-3), 0 ); $s[] = LocoPo::prefix( LocoPo::trim($text),'#| '); break; } } $text = $this->__get('context'); if( is_string($text) && '' !== $text ){ $s[] = LocoPo::pair('msgctxt', $text, $width ); } $s[] = LocoPo::pair( 'msgid', $this['source'], $width ); $target = $this['target']; $plurals = $this->__get('plurals'); if( is_array($plurals) ){ if( array_key_exists(0,$plurals) ){ $p = $plurals[0]; $s[] = LocoPo::pair('msgid_plural', $p['source'], $width ); $s[] = LocoPo::pair('msgstr[0]', $target, $width ); $i = 0; while( array_key_exists($i,$plurals) ){ $p = $plurals[$i]; if( ++$i === $max_forms ){ break; } $s[] = LocoPo::pair('msgstr['.$i.']', $p['target'], $width ); } } else if( isset($this['plural_key']) ){ $s[] = LocoPo::pair('msgid_plural', $this['plural_key'], $width ); $s[] = LocoPo::pair('msgstr[0]', $target, $width ); } else { trigger_error('Missing plural_key in zero plural export'); $s[] = LocoPo::pair('msgstr', $target, $width ); } } else { $s[] = LocoPo::pair('msgstr', $target, $width ); } } catch( Exception $e ){ trigger_error( $e->getMessage(), E_USER_WARNING ); } return implode("\n",$s)."\n"; } public function merge( LocoPoMessage $def, $translate = false ){ if( $def->getHash() !== $this->getHash() ){ $prev = array( 'source' => '', 'target' => '' ); $prev = $this->diff('source',$def,$prev); $prev = $this->diff('context',$def,$prev); $this['flag'] = 4; $this['prev'] = array( $prev ); $defPlural = $def->getPlural(0); $ourPlural = $this->getPlural(0); if( $defPlural && $ourPlural ) { $ourPlural->merge($defPlural); if( $ourPlural->offsetExists('prev') ) { $this['prev'][] = $ourPlural->prev[0]+array('parent'=>0,'plural'=>1); $ourPlural->offsetUnset('prev'); } } else if( $defPlural ){ $this['plurals'] = array( clone $defPlural ); } else if( $ourPlural ){ $this['prev'][] = $ourPlural->exportBasic() + array('parent'=>0,'plural'=>1); $this->offsetUnset('plurals'); } } foreach( array('notes','refs') as $f ){ if( $def->offsetExists($f) ){ $this->offsetSet($f,$def->offsetGet($f)); } else if( $this->offsetExists($f) ){ $this->offsetUnset($f); } } if( $translate && '' === $this['target'] && '' !== $def['target'] ){ $this['target'] = $def['target']; if( $def->offsetExists('comment') ) { $this['comment'] = $def['comment']; } if( $this->offsetExists('plurals') ){ foreach( $this['plurals'] as $i => $ourPlural ){ if( '' === $ourPlural['target'] ){ $defPlural = $def->getPlural($i); if( $defPlural ){ $ourPlural['target'] = $defPlural['target']; } } } } } } private function diff( $key, LocoPoMessage $def, array $prev ){ $old = $this->__get($key); $new = $def->__get($key); if( $new !== $old ){ $this->offsetSet($key,$new); if( is_string($old) && '' !== $old ){ $prev[$key] = $old; } } return $prev; } private function getPlural( $i ){ if( $this->offsetExists('plurals') ){ $plurals = $this->offsetGet('plurals'); if( is_array($plurals) && array_key_exists($i,$plurals) ){ return $plurals[$i]; } } return null; } private function exportBasic(){ return array( 'source' => $this['source'], 'context' => $this->context, 'target' => '', ); } public function export(){ $a = $this->getArrayCopy(); unset($a['key']); if( array_key_exists('plurals',$a) ){ foreach( $a['plurals'] as $i => $p ){ if( $p instanceof ArrayObject ){ $a['plurals'][$i] = $p->getArrayCopy(); } } } return $a; } public function countForms(){ $len = 1; if( $this->offsetExists('plurals') ){ $plurals = $this->offsetGet('plurals'); $len += count($plurals); } return $len; } public function strip(){ $this['target'] = ''; $plurals = $this->plurals; if( is_array($plurals) ){ foreach( $plurals as $p ){ $p->strip(); } } return $this; } public function translated(){ $n = 0; if( '' !== (string) $this['target'] ){ $n++; } if( $this->offsetExists('plurals') ){ foreach( $this->offsetGet('plurals') as $plural ) { if( '' !== (string) $plural['target']) { $n++; } } } return $n; } }
|
19 |
+
class LocoPoIterator implements Iterator, Countable { private $po; private $headers = null; private $i; private $t; private $j; private $z = 0; private $w = 79; public function __construct( $po ){ if( is_array($po) ){ $this->po = $po; } else if( $po instanceof Traversable ){ $this->po = iterator_to_array($po,false); } else { throw new InvalidArgumentException('PO data must be array or iterator'); } $this->t = count($po); if( 0 === $this->t ){ throw new InvalidArgumentException('Empty PO data'); } $h = $po[0]; if( '' !== $h['source'] || ( isset($h['context']) && '' !== $h['context'] ) || ( isset($po[1]['parent']) && 0 === $po[1]['parent'] ) ){ $this->z = -1; } } public function push( LocoPoMessage $p ){ $raw = $p->export(); $plurals = $p->plurals; unset($raw['plurals']); $i = count($this->po); $this->po[$i] = $raw; $this->t++; if( is_array($plurals) ) { $j = 0; foreach( $plurals as $p ) { $raw = $p->export(); $raw['parent'] = $i; $raw['plural'] = ++$j; $this->po[] = $raw; $this->t++; } } } public function concat( LocoPoIterator $more ){ foreach( $more as $message ){ $this->push($message); } return $this; } public function __clone(){ if( $this->headers ){ $this->headers = new LocoPoHeaders( $this->headers->getArrayCopy() ); } } public function count(){ return $this->t - ( $this->z + 1 ); } public function wrap( $width ){ $width = (int) $width; if( $width > 0 ){ $this->w = max( 15, $width ); } else { $this->w = 0; } return $this; } public function rewind(){ $this->i = $this->z; $this->j = -1; $this->next(); } public function key(){ return $this->j; } public function valid(){ return is_int($this->i); } public function next(){ $i = $this->i; while( ++$i < $this->t ){ if( array_key_exists('parent',$this->po[$i]) ){ continue; } $this->j++; $this->i = $i; return; } $this->i = null; $this->j = null; } public function current(){ $i = $this->i; $po = $this->po; $parent = new LocoPoMessage( $po[$i] ); $plurals = array(); $nonseq = $parent->offsetExists('child'); $j = $nonseq ? $parent['child'] : $i+1; while( isset($po[$j]['parent']) && $i === $po[$j]['parent'] ){ $plurals[] = new LocoPoMessage($po[$j++]); } if( $plurals ){ $parent['plurals'] = $plurals; } return $parent; } public function getArrayCopy(){ $po = $this->po; if( 0 === $this->z ){ $po[0]['target'] = (string) $this->getHeaders(); } return $po; } public function clear(){ if( 0 === $this->z ){ $this->po = array( $this->po[0] ); $this->t = 1; } else { $this->po = array(); $this->t = 0; } } public function getHeaders(){ if( is_null($this->headers) ){ $header = $this->po[0]; if( 0 === $this->z ){ $this->headers = LocoPoHeaders::fromMsgstr( $header['target'] ); } else { $this->headers = new LocoPoHeaders; } } return $this->headers; } public function setHeaders( LocoPoHeaders $head ){ $this->headers = $head; if( 0 === $this->z ){ $this->po[0]['target'] = null; } return $this; } public function initPo(){ if( 0 === $this->z ){ unset( $this->po[0]['flag'] ); } return $this; } public function initPot(){ if( 0 === $this->z ){ $this->po[0]['flag'] = 4; } return $this; } public function strip(){ $po = $this->po; $i = count($po); $z = $this->z; while( --$i > $z ){ $po[$i]['target'] = ''; } $this->po = $po; return $this; } public function __toString(){ try { return $this->render(); } catch( Exception $e ){ trigger_error( $e->getMessage(), E_USER_WARNING ); return ''; } } public function render( $sorter = null ){ $width = $this->w; $ref_width = max( 0, $width - 3 ); $h = $this->exportHeader(); $msg = new LocoPoMessage( $h ); $s = $msg->render( $width, $ref_width ); if( $sorter ){ if( ! is_callable($sorter) ){ throw new InvalidArgumentException('Bad callback'); } $msgs = array(); foreach( $this as $msg ){ $msgs[] = $msg; } usort( $msgs, $sorter ); } else { $msgs = $this; } $h = $this->getHeaders()->offsetGet('Plural-Forms'); if( is_string($h) && preg_match('/nplurals\\s*=\\s*(\\d)/',$h,$r) ){ $max_pl = (int) $r[1]; } else { $max_pl = 0; } foreach( $msgs as $msg ){ $s .= "\n".$msg->render( $width, $ref_width, $max_pl ); } return $s; } public function exportJed(){ $head = $this->getHeaders(); $a = array( '' => array( 'domain' => $head['domain'], 'lang' => $head['language'], 'plural-forms' => $head['plural-forms'], ) ); foreach( $this as $message ){ if( $message->translated() ){ $a[ $message->getKey() ] = $message->exportSerial(); } } return $a; } private function exportHeader(){ if( 0 === $this->z ){ $h = $this->po[0]; } else { $h = array( 'source' => '', 'target' => '' ); } if( $this->headers ){ $h['target'] = (string) $this->headers; } return $h; } public function exportRefs( $grep = '' ){ $a = array(); if( '' === $grep ) { $grep = '/(\\S+):\\d+/'; } else { $grep = '/(\\S*'.$grep.'):\\d+/'; } $self = get_class($this); $base = array( $this->exportHeader() ); foreach( $this as $message ){ if( preg_match_all( $grep, (string) $message->refs, $r ) ){ foreach( $r[1] as $ref ) { if( array_key_exists($ref,$a) ){ $po = $a[$ref]; } else { $po = new $self($base); $a[$ref] = $po; } $po->push($message); } } } return $a; } public function splitRefs( array $map = null ){ $a = array(); $self = get_class($this); $base = array( $this->exportHeader() ); if( is_array($map) ){ $grep = implode('|',array_keys($map)); } else { $grep = '[a-z]+'; } foreach( $this as $message ){ $refs = ltrim( (string) $message->refs ); if( '' !== $refs ){ if( preg_match_all('/\\S+\\.('.$grep.'):\\d+/', $refs, $r, PREG_SET_ORDER ) ){ $tmp = array(); foreach( $r as $rr ) { list( $ref, $ext ) = $rr; $tmp[$ext][$ref] = true; } foreach( $tmp as $ext => $refs ){ if( is_array($map) ){ $ext = $map[$ext]; } if( array_key_exists($ext,$a) ){ $po = $a[$ext]; } else { $po = new $self($base); $a[$ext] = $po; } $message = clone $message; $message['refs'] = implode(' ',array_keys($refs) ); $po->push($message); } } } } return $a; } public function getHashes(){ $a = array(); foreach( $this as $msg ){ $a[] = $msg->getHash(); } sort( $a, SORT_STRING ); return $a; } public function equalSource( LocoPoIterator $that ){ $a = $this->getHashes(); $b = $that->getHashes(); if( count($a) !== count($b) ){ return false; } foreach( $a as $i => $hash ){ if( $hash !== $b[$i] ){ return false; } } return true; } public function equal( LocoPoIterator $that ){ if( $this->t !== $that->t ){ return false; } $i = $this->z; $fields = array( 'source', 'context', 'notes', 'refs', 'target', 'comment', 'flag', 'parent', 'plural' ); while( ++$i < $this->t ){ $a = $this->po[$i]; $b = $that->po[$i]; foreach( $fields as $f ){ $af = isset($a[$f]) ? $a[$f] : ''; $bf = isset($b[$f]) ? $b[$f] : ''; if( $af !== $bf ){ return false; } } } return true; } public function sort( $func = null ){ $order = array(); foreach( $this as $msg ){ $order[] = $msg; } if( is_null($func) ){ $func = array( __CLASS__, 'compare' ); } else if( ! is_callable($func) ){ throw new InvalidArgumentException('Bad callback'); } usort( $order, $func ); $this->clear(); foreach( $order as $p ){ $this->push($p); } return $this; } public static function compare( LocoPoMessage $a, LocoPoMessage $b ){ $h = $a->getHash(); $j = $b->getHash(); $n = strcasecmp( $h, $j ); if( 0 === $n ){ $n = strcmp( $h, $j ); if( 0 === $n ){ return 0; } } return $n > 0 ? 1 : -1; } public function createSorter(){ $index = array(); foreach( $this as $i => $msg ){ $index[ $msg->getHash() ] = $i; } $obj = new LocoPoIndex( $index ); return array( $obj, 'compare' ); } }
|
20 |
class LocoMoTable { private $size = 0; private $bin = ''; private $map; public function __construct( $data = null ){ if( is_array($data) ){ $this->compile( $data ); } else if( $data ){ $this->parse( $data ); } } public function count(){ if( ! isset($this->size) ){ if( $this->bin ){ $this->size = (int) ( strlen( $this->bin ) / 4 ); } else if( is_array($this->map) ){ $this->size = count($this->map); } else { return 0; } if( ! self::is_prime($this->size) || $this->size < 3 ){ throw new Exception('Size expected to be prime number above 2, got '.$this->size); } } return $this->size; } public function bytes(){ return $this->count() * 4; } public function __toString(){ return $this->bin; } public function export(){ if( ! is_array($this->map) ){ $this->parse( $this->bin ); } return $this->map; } private function reset( $length ){ $this->size = max( 3, self::next_prime ( $length * 4 / 3 ) ); $this->bin = null; $this->map = array(); return $this->size; } public function compile( array $msgids ){ $hash_tab_size = $this->reset( count($msgids) ); $packed = array_fill( 0, $hash_tab_size, "\0\0\0\0" ); $j = 0; foreach( $msgids as $msgid ){ $hash_val = self::hashpjw( $msgid ); $idx = $hash_val % $hash_tab_size; if( array_key_exists($idx, $this->map) ){ $incr = 1 + ( $hash_val % ( $hash_tab_size - 2 ) ); do { $idx += $incr; if( $hash_val === $idx ){ throw new Exception('Unable to find empty slot in hash table'); } $idx %= $hash_tab_size; } while( array_key_exists($idx, $this->map ) ); } $this->map[$idx] = $j; $packed[$idx] = pack('V', ++$j ); } return $this->bin = implode('',$packed); } public function lookup( $msgid, array $msgids ){ $hash_val = self::hashpjw( $msgid ); $idx = $hash_val % $this->size; $incr = 1 + ( $hash_val % ( $this->size - 2 ) ); while( true ){ if( ! array_key_exists($idx, $this->map) ){ break; } $j = $this->map[$idx]; if( isset($msgids[$j]) && $msgid === $msgids[$j] ){ return $j; } $idx += $incr; if( $idx === $hash_val ){ break; } $idx %= $this->size; } return -1; } public function parse( $bin ){ $this->bin = (string) $bin; $this->size = null; $hash_tab_size = $this->count(); $this->map = array(); $idx = -1; $byte = 0; while( ++$idx < $hash_tab_size ){ $word = substr( $this->bin, $byte, 4 ); if( "\0\0\0\0" !== $word ){ list(,$j) = unpack('V', $word ); $this->map[$idx] = $j - 1; } $byte += 4; } return $this->map; } public static function hashpjw( $str ){ $i = -1; $hval = 0; $len = strlen($str); while( ++$i < $len ){ $ord = ord( substr($str,$i,1) ); $hval = ( $hval << 4 ) + $ord; $g = $hval & 0xf0000000; if( $g !== 0 ){ $hval ^= $g >> 24; $hval ^= $g; } } return $hval; } private static function next_prime( $seed ){ $seed |= 1; while ( ! self::is_prime($seed) ){ $seed += 2; } return $seed; } private static function is_prime( $num ) { if ($num === 1 ){ return false; } if( $num === 2 ){ return true; } if( $num % 2 == 0 ) { return false; } for( $i = 3; $i <= ceil(sqrt($num)); $i = $i + 2) { if($num % $i == 0 ){ return false; } } return true; } }
|
21 |
class LocoMo { private $bin; private $msgs; private $head; private $hash; private $use_fuzzy = false; private $cs; public function __construct( Iterator $export, LocoPoHeaders $head = null ){ if( $head ){ $this->head = $head; } else { $this->head = new LocoPoHeaders; $this->setHeader('Project-Id-Version','Loco'); } $this->msgs = $export; $this->bin = ''; } public function setCharset( $cs ){ $cs = $this->head->setCharset($cs); $this->cs = 'UTF-8' === $cs ? null : $cs; } public function enableHash(){ return $this->hash = new LocoMoTable; } public function useFuzzy(){ $this->use_fuzzy = true; } public function setHeader( $key, $val ){ $this->head->add($key, $val); return $this; } private function str( $s ){ $s = (string) $s; if( $cs = $this->cs ){ $s = mb_convert_encoding($s,$cs,array('UTF-8')); } return $s; } public function compile(){ $table = array(''); $sources = array(''); $targets = array( (string) $this->head ); $fuzzy_flag = 4; $skip_fuzzy = ! $this->use_fuzzy; foreach( $this->msgs as $r ){ if( $skip_fuzzy && isset($r['flag']) && $fuzzy_flag === $r['flag'] ){ continue; } $msgid = $this->str( $r['key'] ); if( isset($r['context']) ){ $msgctxt = $this->str( $r['context'] ); if( '' !== $msgctxt ){ if( '' === $msgid ){ $msgid = '('.$msgctxt.')'; } $msgid = $msgctxt."\x04".$msgid; } } if( '' === $msgid ){ continue; } $msgstr = $this->str( $r['target'] ); if( '' === $msgstr ){ continue; } $table[] = $msgid; if( isset($r['plurals']) ){ foreach( $r['plurals'] as $i => $p ){ if( $i === 0 ){ $msgid .= "\0".$p['key']; } $msgstr .= "\0".$p['target']; } } $sources[] = $msgid; $targets[] = $msgstr; } asort( $sources, SORT_STRING ); $this->bin = "\xDE\x12\x04\x95\x00\x00\x00\x00"; $n = count($sources); $this->writeInteger( $n ); $offset = 28; $this->writeInteger( $offset ); $offset += $n * 8; $this->writeInteger( $offset ); if( $this->hash ){ sort( $table, SORT_STRING ); $this->hash->compile( $table ); $s = $this->hash->count(); } else { $s = 0; } $this->writeInteger( $s ); $offset += $n * 8; $this->writeInteger( $offset ); if( $s ){ $offset += $s * 4; } $source = ''; foreach( $sources as $i => $str ){ $source .= $str."\0"; $this->writeInteger( $strlen = strlen($str) ); $this->writeInteger( $offset ); $offset += $strlen + 1; } $target = ''; foreach( array_keys($sources) as $i ){ $str = $targets[$i]; $target .= $str."\0"; $this->writeInteger( $strlen = strlen($str) ); $this->writeInteger( $offset ); $offset += $strlen + 1; } if( $this->hash ){ $this->bin .= $this->hash->__toString(); } $this->bin .= $source; $this->bin .= $target; return $this->bin; } private function writeInteger( $num ){ $this->bin .= pack( 'V', $num ); return $this; } }
|
22 |
interface LocoTokensInterface extends Iterator { public function advance(); public function ignore( array $a ); }
|
lib/data/locales.php
CHANGED
@@ -2,4 +2,4 @@
|
|
2 |
/**
|
3 |
* Compiled data. Do not edit.
|
4 |
*/
|
5 |
-
return array('af'=>array(0=>'Afrikaans',1=>'Afrikaans'),'ar'=>array(0=>'Arabic',1=>'العربية'),'ary'=>array(0=>'Moroccan Arabic',1=>'العربية المغربية'),'as'=>array(0=>'Assamese',1=>'অসমীয়া'),'azb'=>array(0=>'South Azerbaijani',1=>'گؤنئی آذربایجان'),'az'=>array(0=>'Azerbaijani',1=>'Azərbaycan dili'),'bel'=>array(0=>'Belarusian',1=>'Беларуская мова'),'bg_BG'=>array(0=>'Bulgarian',1=>'Български'),'bn_BD'=>array(0=>'Bengali (Bangladesh)',1=>'বাংলা'),'bo'=>array(0=>'Tibetan',1=>'བོད་ཡིག'),'bs_BA'=>array(0=>'Bosnian',1=>'Bosanski'),'ca'=>array(0=>'Catalan',1=>'Català'),'ceb'=>array(0=>'Cebuano',1=>'Cebuano'),'cs_CZ'=>array(0=>'Czech',1=>'Čeština'),'cy'=>array(0=>'Welsh',1=>'Cymraeg'),'da_DK'=>array(0=>'Danish',1=>'Dansk'),'
|
2 |
/**
|
3 |
* Compiled data. Do not edit.
|
4 |
*/
|
5 |
+
return array('af'=>array(0=>'Afrikaans',1=>'Afrikaans'),'ar'=>array(0=>'Arabic',1=>'العربية'),'ary'=>array(0=>'Moroccan Arabic',1=>'العربية المغربية'),'as'=>array(0=>'Assamese',1=>'অসমীয়া'),'azb'=>array(0=>'South Azerbaijani',1=>'گؤنئی آذربایجان'),'az'=>array(0=>'Azerbaijani',1=>'Azərbaycan dili'),'bel'=>array(0=>'Belarusian',1=>'Беларуская мова'),'bg_BG'=>array(0=>'Bulgarian',1=>'Български'),'bn_BD'=>array(0=>'Bengali (Bangladesh)',1=>'বাংলা'),'bo'=>array(0=>'Tibetan',1=>'བོད་ཡིག'),'bs_BA'=>array(0=>'Bosnian',1=>'Bosanski'),'ca'=>array(0=>'Catalan',1=>'Català'),'ceb'=>array(0=>'Cebuano',1=>'Cebuano'),'cs_CZ'=>array(0=>'Czech',1=>'Čeština'),'cy'=>array(0=>'Welsh',1=>'Cymraeg'),'da_DK'=>array(0=>'Danish',1=>'Dansk'),'de_CH'=>array(0=>'German (Switzerland)',1=>'Deutsch (Schweiz)'),'de_DE'=>array(0=>'German',1=>'Deutsch'),'de_DE_formal'=>array(0=>'German (Formal)',1=>'Deutsch (Sie)'),'de_CH_informal'=>array(0=>'German (Switzerland, Informal)',1=>'Deutsch (Schweiz, Du)'),'de_AT'=>array(0=>'German (Austria)',1=>'Deutsch (Österreich)'),'dsb'=>array(0=>'Lower Sorbian',1=>'Dolnoserbšćina'),'dzo'=>array(0=>'Dzongkha',1=>'རྫོང་ཁ'),'el'=>array(0=>'Greek',1=>'Ελληνικά'),'en_CA'=>array(0=>'English (Canada)',1=>'English (Canada)'),'en_GB'=>array(0=>'English (UK)',1=>'English (UK)'),'en_NZ'=>array(0=>'English (New Zealand)',1=>'English (New Zealand)'),'en_AU'=>array(0=>'English (Australia)',1=>'English (Australia)'),'en_ZA'=>array(0=>'English (South Africa)',1=>'English (South Africa)'),'eo'=>array(0=>'Esperanto',1=>'Esperanto'),'es_CO'=>array(0=>'Spanish (Colombia)',1=>'Español de Colombia'),'es_MX'=>array(0=>'Spanish (Mexico)',1=>'Español de México'),'es_VE'=>array(0=>'Spanish (Venezuela)',1=>'Español de Venezuela'),'es_ES'=>array(0=>'Spanish (Spain)',1=>'Español'),'es_PE'=>array(0=>'Spanish (Peru)',1=>'Español de Perú'),'es_EC'=>array(0=>'Spanish (Ecuador)',1=>'Español de Ecuador'),'es_DO'=>array(0=>'Spanish (Dominican Republic)',1=>'Español de República Dominicana'),'es_CL'=>array(0=>'Spanish (Chile)',1=>'Español de Chile'),'es_UY'=>array(0=>'Spanish (Uruguay)',1=>'Español de Uruguay'),'es_PR'=>array(0=>'Spanish (Puerto Rico)',1=>'Español de Puerto Rico'),'es_GT'=>array(0=>'Spanish (Guatemala)',1=>'Español de Guatemala'),'es_AR'=>array(0=>'Spanish (Argentina)',1=>'Español de Argentina'),'es_CR'=>array(0=>'Spanish (Costa Rica)',1=>'Español de Costa Rica'),'et'=>array(0=>'Estonian',1=>'Eesti'),'eu'=>array(0=>'Basque',1=>'Euskara'),'fa_AF'=>array(0=>'Persian (Afghanistan)',1=>'(فارسی (افغانستان'),'fa_IR'=>array(0=>'Persian',1=>'فارسی'),'fi'=>array(0=>'Finnish',1=>'Suomi'),'fr_CA'=>array(0=>'French (Canada)',1=>'Français du Canada'),'fr_FR'=>array(0=>'French (France)',1=>'Français'),'fr_BE'=>array(0=>'French (Belgium)',1=>'Français de Belgique'),'fur'=>array(0=>'Friulian',1=>'Friulian'),'gd'=>array(0=>'Scottish Gaelic',1=>'Gàidhlig'),'gl_ES'=>array(0=>'Galician',1=>'Galego'),'gu'=>array(0=>'Gujarati',1=>'ગુજરાતી'),'haz'=>array(0=>'Hazaragi',1=>'هزاره گی'),'he_IL'=>array(0=>'Hebrew',1=>'עִבְרִית'),'hi_IN'=>array(0=>'Hindi',1=>'हिन्दी'),'hr'=>array(0=>'Croatian',1=>'Hrvatski'),'hsb'=>array(0=>'Upper Sorbian',1=>'Hornjoserbšćina'),'hu_HU'=>array(0=>'Hungarian',1=>'Magyar'),'hy'=>array(0=>'Armenian',1=>'Հայերեն'),'id_ID'=>array(0=>'Indonesian',1=>'Bahasa Indonesia'),'is_IS'=>array(0=>'Icelandic',1=>'Íslenska'),'it_IT'=>array(0=>'Italian',1=>'Italiano'),'ja'=>array(0=>'Japanese',1=>'日本語'),'jv_ID'=>array(0=>'Javanese',1=>'Basa Jawa'),'ka_GE'=>array(0=>'Georgian',1=>'ქართული'),'kab'=>array(0=>'Kabyle',1=>'Taqbaylit'),'kk'=>array(0=>'Kazakh',1=>'Қазақ тілі'),'km'=>array(0=>'Khmer',1=>'ភាសាខ្មែរ'),'kn'=>array(0=>'Kannada',1=>'ಕನ್ನಡ'),'ko_KR'=>array(0=>'Korean',1=>'한국어'),'ckb'=>array(0=>'Kurdish (Sorani)',1=>'كوردی'),'lo'=>array(0=>'Lao',1=>'ພາສາລາວ'),'lt_LT'=>array(0=>'Lithuanian',1=>'Lietuvių kalba'),'lv'=>array(0=>'Latvian',1=>'Latviešu valoda'),'mk_MK'=>array(0=>'Macedonian',1=>'Македонски јазик'),'ml_IN'=>array(0=>'Malayalam',1=>'മലയാളം'),'mn'=>array(0=>'Mongolian',1=>'Монгол'),'mr'=>array(0=>'Marathi',1=>'मराठी'),'ms_MY'=>array(0=>'Malay',1=>'Bahasa Melayu'),'my_MM'=>array(0=>'Myanmar (Burmese)',1=>'ဗမာစာ'),'nb_NO'=>array(0=>'Norwegian (Bokmål)',1=>'Norsk bokmål'),'ne_NP'=>array(0=>'Nepali',1=>'नेपाली'),'nl_NL_formal'=>array(0=>'Dutch (Formal)',1=>'Nederlands (Formeel)'),'nl_BE'=>array(0=>'Dutch (Belgium)',1=>'Nederlands (België)'),'nl_NL'=>array(0=>'Dutch',1=>'Nederlands'),'nn_NO'=>array(0=>'Norwegian (Nynorsk)',1=>'Norsk nynorsk'),'oci'=>array(0=>'Occitan',1=>'Occitan'),'pa_IN'=>array(0=>'Punjabi',1=>'ਪੰਜਾਬੀ'),'pl_PL'=>array(0=>'Polish',1=>'Polski'),'ps'=>array(0=>'Pashto',1=>'پښتو'),'pt_PT_ao90'=>array(0=>'Portuguese (Portugal, AO90)',1=>'Português (AO90)'),'pt_PT'=>array(0=>'Portuguese (Portugal)',1=>'Português'),'pt_BR'=>array(0=>'Portuguese (Brazil)',1=>'Português do Brasil'),'pt_AO'=>array(0=>'Portuguese (Angola)',1=>'Português de Angola'),'rhg'=>array(0=>'Rohingya',1=>'Ruáinga'),'ro_RO'=>array(0=>'Romanian',1=>'Română'),'ru_RU'=>array(0=>'Russian',1=>'Русский'),'sah'=>array(0=>'Sakha',1=>'Сахалыы'),'snd'=>array(0=>'Sindhi',1=>'سنڌي'),'si_LK'=>array(0=>'Sinhala',1=>'සිංහල'),'sk_SK'=>array(0=>'Slovak',1=>'Slovenčina'),'skr'=>array(0=>'Saraiki',1=>'سرائیکی'),'sl_SI'=>array(0=>'Slovenian',1=>'Slovenščina'),'sq'=>array(0=>'Albanian',1=>'Shqip'),'sr_RS'=>array(0=>'Serbian',1=>'Српски језик'),'sv_SE'=>array(0=>'Swedish',1=>'Svenska'),'sw'=>array(0=>'Swahili',1=>'Kiswahili'),'szl'=>array(0=>'Silesian',1=>'Ślōnskŏ gŏdka'),'ta_IN'=>array(0=>'Tamil',1=>'தமிழ்'),'ta_LK'=>array(0=>'Tamil (Sri Lanka)',1=>'தமிழ்'),'te'=>array(0=>'Telugu',1=>'తెలుగు'),'th'=>array(0=>'Thai',1=>'ไทย'),'tl'=>array(0=>'Tagalog',1=>'Tagalog'),'tr_TR'=>array(0=>'Turkish',1=>'Türkçe'),'tt_RU'=>array(0=>'Tatar',1=>'Татар теле'),'tah'=>array(0=>'Tahitian',1=>'Reo Tahiti'),'ug_CN'=>array(0=>'Uighur',1=>'ئۇيغۇرچە'),'uk'=>array(0=>'Ukrainian',1=>'Українська'),'ur'=>array(0=>'Urdu',1=>'اردو'),'uz_UZ'=>array(0=>'Uzbek',1=>'O‘zbekcha'),'vi'=>array(0=>'Vietnamese',1=>'Tiếng Việt'),'zh_CN'=>array(0=>'Chinese (China)',1=>'简体中文'),'zh_TW'=>array(0=>'Chinese (Taiwan)',1=>'繁體中文'),'zh_HK'=>array(0=>'Chinese (Hong Kong)',1=>'香港中文版 '));
|
loco.php
CHANGED
@@ -4,7 +4,7 @@ Plugin Name: Loco Translate
|
|
4 |
Plugin URI: https://wordpress.org/plugins/loco-translate/
|
5 |
Description: Translate themes and plugins directly in WordPress
|
6 |
Author: Tim Whitlock
|
7 |
-
Version: 2.5.
|
8 |
Requires at least: 4.1
|
9 |
Tested up to: 5.8.1
|
10 |
Requires PHP: 5.2.4
|
@@ -33,7 +33,7 @@ function loco_plugin_file(){
|
|
33 |
* @return string
|
34 |
*/
|
35 |
function loco_plugin_version(){
|
36 |
-
return '2.5.
|
37 |
}
|
38 |
|
39 |
|
4 |
Plugin URI: https://wordpress.org/plugins/loco-translate/
|
5 |
Description: Translate themes and plugins directly in WordPress
|
6 |
Author: Tim Whitlock
|
7 |
+
Version: 2.5.6
|
8 |
Requires at least: 4.1
|
9 |
Tested up to: 5.8.1
|
10 |
Requires PHP: 5.2.4
|
33 |
* @return string
|
34 |
*/
|
35 |
function loco_plugin_version(){
|
36 |
+
return '2.5.6';
|
37 |
}
|
38 |
|
39 |
|
pub/css/admin.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
._ajax_loader_f2{background-image:url(../img/ajax-loader-f2.gif?v=2.5.5);background-repeat:no-repeat;min-height:16px}._ajax_loader_f2x4{background:transparent url(../img/ajax-loader-f2-x4.gif?v=2.5.5) 0 0 no-repeat;min-height:75px}._ajax_loader_cc{background-image:url(../img/ajax-loader-cc.gif?v=2.5.5);background-repeat:no-repeat;min-height:16px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1),only screen and (min-device-pixel-ratio: 2),only screen and (min-resolution: 192dpi),only screen and (min-resolution: 2dppx){._ajax_loader_f2{background-image:url(../img/ajax-loader-f2-x2.gif?v=2.5.5);background-size:16px}._ajax_loader_cc{background-image:url(../img/ajax-loader-cc-x2.gif?v=2.5.5);background-size:16px}}._green_glow_inner{-webkit-box-shadow:inset 0 0 10px 0 #3db63d;-moz-box-shadow:inset 0 0 10px 0 #3db63d;box-shadow:inset 0 0 10px 0 #3db63d}._green_glow_outer{-webkit-box-shadow:0 0 .5em 0 #3db63d;-moz-box-shadow:0 0 .5em 0 #3db63d;box-shadow:0 0 .5em 0 #3db63d}.loco-font,#loco-admin.wrap .wp-list-table th.loco-sort.loco-asc:after,#loco-admin.wrap .wp-list-table th.loco-sort.loco-desc:after,#loco-admin.wrap .icon,#loco-admin.wrap .has-icon:before{font-family:"loco";speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@font-face{font-family:"loco";src:url("../font/loco.eot?v=2.5.5");src:url("../font/loco.eot?v=2.5.5?#iefix") format("embedded-opentype"),url("../font/loco.woff?v=2.5.5") format("woff"),url("../font/loco.ttf?v=2.5.5") format("truetype"),url("../font/loco.svg?v=2.5.5#loco") format("svg");font-weight:normal;font-style:normal}.tipsy{font-size:11px;position:absolute;padding:5px;z-index:500001;opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.tipsy.in{opacity:1}.tipsy-inner{background-color:#000;color:#fff;white-space:nowrap;padding:6px 8px;line-height:1.3em;text-align:center;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px;-webkit-font-smoothing:subpixel-antialiased}.tipsy-arrow{position:absolute;width:0;height:0;line-height:0;border:5px dashed #000}.tipsy-n .tipsy-arrow{top:0px;left:50%;margin-left:-5px;border-bottom-style:solid;border-top:none;border-left-color:transparent;border-right-color:transparent}.tipsy-nw .tipsy-arrow{top:0;left:10px;border-bottom-style:solid;border-top:none;border-left-color:transparent;border-right-color:transparent}.tipsy-ne .tipsy-arrow{top:0;right:10px;border-bottom-style:solid;border-top:none;border-left-color:transparent;border-right-color:transparent}.tipsy-s .tipsy-arrow{bottom:0;left:50%;margin-left:-5px;border-top-style:solid;border-bottom:none;border-left-color:transparent;border-right-color:transparent}.tipsy-sw .tipsy-arrow{bottom:0;left:10px;border-top-style:solid;border-bottom:none;border-left-color:transparent;border-right-color:transparent}.tipsy-se .tipsy-arrow{bottom:0;right:10px;border-top-style:solid;border-bottom:none;border-left-color:transparent;border-right-color:transparent}.tipsy-e .tipsy-arrow{right:0;top:50%;margin-top:-5px;border-left-style:solid;border-right:none;border-top-color:transparent;border-bottom-color:transparent}.tipsy-w .tipsy-arrow{left:0;top:50%;margin-top:-5px;border-right-style:solid;border-left:none;border-top-color:transparent;border-bottom-color:transparent}#loco-admin.wrap .selector li,#loco-admin.wrap .selector .handle,#loco-admin.wrap .selectoradd a,#loco-admin.wrap .selectorsep:before,#loco-admin.wrap .selectorsep span{padding:.3em .75em}#loco-admin.wrap .selector{text-align:left;display:inline-block;white-space:nowrap}#loco-admin.wrap .selectoradd a,#loco-admin.wrap .selector .handle{cursor:default;display:block;position:relative;border-top:solid 1px #fff;border-right:solid 1px #ddd;border-bottom:solid 1px #ddd;border-left:solid 1px #fff;color:#666;height:1.3em;overflow:hidden;white-space:normal}#loco-admin.wrap .selectorsep{display:inline-block;border:solid 1px transparent}#loco-admin.wrap .selectorsep:before{display:block;position:relative;color:#999;height:1.3em;overflow:hidden}#loco-admin.wrap .selectorsep>*{display:block;line-height:1em;color:#666;height:1.3em;overflow:hidden}#loco-admin.wrap .selector .handle{outline:none;white-space:nowrap;padding-right:2.3em;max-width:250px;text-overflow:ellipsis}#loco-admin.wrap .selector .handle .prefix{padding-right:.6ex}#loco-admin.wrap .selector .handle:after{font-family:loco;font-size:1.3em;color:#ccc;display:block;position:absolute;top:.25em;right:.6em;content:"▼"}#loco-admin.wrap .selector .handle:focus:after,#loco-admin.wrap .selector .handle:hover:after{color:#666}#loco-admin.wrap .selector.no-caret .handle{padding-right:.75em}#loco-admin.wrap .selector.no-caret .handle:after{display:none}#loco-admin.wrap .selector.no-title .handle{padding-left:.5em;padding-right:.5em}#loco-admin.wrap .selector.no-title .handle .label{display:none}#loco-admin.wrap .selector.no-title .handle .icon{margin-right:0px}#loco-admin.wrap .selector.dummy .handle{border-color:transparent}#loco-admin.wrap .selector.dummy .handle:after{display:none}#loco-admin.wrap .selectoradd{position:relative}#loco-admin.wrap .selectoradd>*{display:block;float:left;clear:none}#loco-admin.wrap .selectoradd>a.has-icon{width:1.3em}#loco-admin.wrap .selectoradd>a.has-icon:before{color:#999;display:inline;padding-left:0;padding-right:0;line-height:1.4em}#loco-admin.wrap .selectoradd>a.has-icon:hover:after{color:#2e892e}#loco-admin.wrap .selectorsep{display:inline-block}#loco-admin.wrap .selectorsep span{color:#666;height:1.3em}#loco-admin.wrap .selector ul{padding:0}#loco-admin.wrap .selector ul,#loco-admin.wrap .selector li{display:block;position:relative;cursor:default;margin:0}#loco-admin.wrap .selector ul{z-index:5;position:absolute;left:0;top:0;background:#f5f5f5;box-shadow:0 10px 5px rgba(0,0,0,.2);border:solid 1px #ccc;overflow:auto}#loco-admin.wrap .selector.up ul{margin-top:0}#loco-admin.wrap .selector.multi li input{display:none}#loco-admin.wrap .selector.multi li.checked{background:#e5e5e5}#loco-admin.wrap .selector li.active{background:#e5e5e5 !important}#loco-admin.wrap .selector li.over{background:#ccc !important;color:#fff;text-shadow:1px 1px #aaa}#loco-admin.wrap .selector li.over .label{color:#fff}#loco-admin.wrap .selector .label{font:inherit;color:inherit}#loco-admin.wrap .selector .icon{display:inline-block;min-width:1.2em;text-align:center;font-size:14px}#loco-admin.wrap .selector .icon.no-icon{display:none}#loco-admin.wrap .selector .icon:before{color:#666}#loco-admin.wrap .selector .avtr{width:18px;height:18px;background-size:18px;background-repeat:no-repeat}#loco-admin.wrap .selector .label{line-height:1}#loco-admin.wrap .selector .icon,#loco-admin.wrap .selector .icon-16{vertical-align:bottom}#loco-admin.wrap .selector .icon,#loco-admin.wrap .selector .lang,#loco-admin.wrap .selector .icon-16{margin-right:5px}#loco-admin.wrap .selector .region,#loco-admin.wrap .selector .variant-wales,#loco-admin.wrap .selector .region-gb.lang-cy,#loco-admin.wrap .selector .variant-scotland,#loco-admin.wrap .selector .region-gb.lang-gd,#loco-admin.wrap .selector .variant-valencia,#loco-admin.wrap .selector .region-es.variant-valencia,#loco-admin.wrap .selector .lang-ca,#loco-admin.wrap .selector .region-es.lang-ca,#loco-admin.wrap .selector .lang-eo,#loco-admin.wrap .selector .lang-eu{margin-left:2px;margin-right:7px}#loco-admin.wrap .selector.ticked .icon.no-icon{font-size:12px;display:inline-block}#loco-admin.wrap .selector.ticked .active .icon.no-icon:before{content:"✓"}#loco-admin.wrap .selectoradd a:hover,#loco-admin.wrap .selector a.handle:focus,#loco-admin.wrap .selector a.handle:hover{color:#000;border-color:#999}#loco-admin.wrap .selector.active .handle{border-color:#999;background-color:#eee;color:#999}#loco-admin.wrap .selector.active .handle:after{color:#999;content:"▲"}#loco-admin.wrap .selector.disabled{cursor:default;cursor:no-drop;cursor:not-allowed}#loco-admin.wrap .selector.disabled .handle{pointer-events:none;border-top:solid 1px #fff;border-right:solid 1px #ddd;border-bottom:solid 1px #ddd;border-left:solid 1px #fff;color:#999;padding-right:1em}#loco-admin.wrap .selector.disabled .handle:after{display:none}#loco-admin.wrap .selector.disabled .handle span.icon{color:#999 !important}#loco-admin.wrap .selector li.disabled,#loco-admin.wrap .selector li.disabled.over{color:#aaa;text-shadow:1px 1px #fff;pointer-events:none}#loco-admin.wrap .selector li.disabled *{cursor:text}#loco-admin.wrap .selector li.disabled .icon:before{color:#aaa}#loco-admin.wrap .selector li.disabled .flag,#loco-admin.wrap .selector li.disabled .icon-16{opacity:.4}#loco-admin.wrap .selector.lefty ul{left:auto;right:0}#loco-admin.wrap .selector.lefty ul .icon,#loco-admin.wrap .selector.lefty ul .icon-32{display:block;float:right;clear:none}#loco-admin.wrap .selector.lefty ul .label{padding-right:32px;padding-left:0}#loco-admin.wrap .selector ul>form{margin:0;display:block}#loco-admin.wrap .selector ul>form input{margin:0;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;-o-border-radius:0;border-radius:0}#loco-admin.wrap .selector ul>form input:focus{-webkit-box-shadow:inset 0 0 5px 0 #3db63d;-moz-box-shadow:inset 0 0 5px 0 #3db63d;box-shadow:inset 0 0 5px 0 #3db63d}#loco-admin.wrap .selector ul>form input.error{border-color:#c00;-webkit-box-shadow:inset 0 0 5px 0 rgba(153,0,0,.5);-moz-box-shadow:inset 0 0 5px 0 rgba(153,0,0,.5);box-shadow:inset 0 0 5px 0 rgba(153,0,0,.5)}#loco-admin.wrap .selector ul>form a.clear{margin:0;border:none}#loco-admin.wrap .selector ul>form ::placeholder{color:gray;font-size:16px;font-family:"loco";text-align:right;display:block}#loco-admin.wrap .selector ul>form ::-webkit-input-placeholder{color:gray;font-size:16px;font-family:"loco";text-align:right;display:block}#loco-admin.wrap .selector ul>form :-moz-placeholder{color:gray;font-size:16px;font-family:"loco";text-align:right;display:block;opacity:1}#loco-admin.wrap .selector ul>form ::-moz-placeholder{color:gray;font-size:16px;font-family:"loco";text-align:right;display:block;opacity:1}#loco-admin.wrap .selector ul>form :-ms-input-placeholder{color:gray;font-size:16px;font-family:"loco";text-align:right;display:block}#loco-admin.wrap .selector ul>form .ielt10 .placeheld{color:gray;font-size:16px;font-family:"loco";text-align:right;display:block}#loco-admin.wrap div.auto-comp-wrap{width:100%}#loco-admin.wrap div.auto-comp-wrap input{display:inline-block}#loco-admin.wrap div.auto-comp-wrap.loading input{background:transparent url(../img/ajax-loader.gif?v=2.5.5) right 2px no-repeat}#loco-admin.wrap div.auto-comp-drop{color:#333;background:#fff;border-top:none;position:absolute;width:auto;top:0;left:0;z-index:99;-webkit-box-shadow:0 5px 5px rgba(0,0,0,.4);-moz-box-shadow:0 5px 5px rgba(0,0,0,.4);box-shadow:0 5px 5px rgba(0,0,0,.4)}#loco-admin.wrap div.auto-comp-result{padding:5px 10px;cursor:pointer;background:#f0f0f0;border-top:solid 1px #fff;border-bottom:solid 1px #ddd;white-space:nowrap}#loco-admin.wrap div.auto-comp-result:first-child{border-top:solid 1px #ddd}#loco-admin.wrap div.auto-comp-result>*{display:inline-block;vertical-align:middle;line-height:normal}#loco-admin.wrap div.auto-comp-result .icon:before{padding-right:5px}#loco-admin.wrap div.auto-comp-result:hover{background:#a8a8a8;color:#fff;border-top-color:#a8a8a8;border-bottom-color:#999}#loco-admin.wrap div.auto-comp-result.selected{background:#666 !important;color:#fff;border-top-color:#666;border-bottom-color:#666}#loco-admin.wrap div.auto-comp-result .lang,#loco-admin.wrap div.auto-comp-result .region,#loco-admin.wrap div.auto-comp-result .variant-wales,#loco-admin.wrap div.auto-comp-result .region-gb.lang-cy,#loco-admin.wrap div.auto-comp-result .variant-scotland,#loco-admin.wrap div.auto-comp-result .region-gb.lang-gd,#loco-admin.wrap div.auto-comp-result .variant-valencia,#loco-admin.wrap div.auto-comp-result .region-es.variant-valencia,#loco-admin.wrap div.auto-comp-result .lang-ca,#loco-admin.wrap div.auto-comp-result .region-es.lang-ca,#loco-admin.wrap div.auto-comp-result .lang-eo,#loco-admin.wrap div.auto-comp-result .lang-eu,#loco-admin.wrap div.auto-comp-result .avtr{margin-right:5px}#loco-admin.wrap div.auto-comp-wrap.error a.icon.clear:before{color:#c00;opacity:1}#loco-admin.wrap div.auto-comp-wrap.error input[type=text]{border-color:#c00;color:#c00}#loco-admin.wrap div.auto-comp-wrap.error input[type=text]:focus{-webkit-box-shadow:0 0 .5em 0 rgba(153,0,0,.5);-moz-box-shadow:0 0 .5em 0 rgba(153,0,0,.5);box-shadow:0 0 .5em 0 rgba(153,0,0,.5)}#loco-admin.wrap ._ajax_loader_f2{background-image:url(../img/ajax-loader-f2.gif?v=2.5.5);background-repeat:no-repeat;min-height:16px}#loco-admin.wrap ._ajax_loader_f2x4{background:transparent url(../img/ajax-loader-f2-x4.gif?v=2.5.5) 0 0 no-repeat;min-height:75px}#loco-admin.wrap ._ajax_loader_cc{background-image:url(../img/ajax-loader-cc.gif?v=2.5.5);background-repeat:no-repeat;min-height:16px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1),only screen and (min-device-pixel-ratio: 2),only screen and (min-resolution: 192dpi),only screen and (min-resolution: 2dppx){#loco-admin.wrap ._ajax_loader_f2{background-image:url(../img/ajax-loader-f2-x2.gif?v=2.5.5);background-size:16px}#loco-admin.wrap ._ajax_loader_cc{background-image:url(../img/ajax-loader-cc-x2.gif?v=2.5.5);background-size:16px}}#loco-admin.wrap ._green_glow_inner{-webkit-box-shadow:inset 0 0 10px 0 #3db63d;-moz-box-shadow:inset 0 0 10px 0 #3db63d;box-shadow:inset 0 0 10px 0 #3db63d}#loco-admin.wrap ._green_glow_outer{-webkit-box-shadow:0 0 .5em 0 #3db63d;-moz-box-shadow:0 0 .5em 0 #3db63d;box-shadow:0 0 .5em 0 #3db63d}#loco-admin.wrap .loco-font,#loco-admin.wrap .wp-list-table th.loco-sort.loco-asc:after,#loco-admin.wrap .wp-list-table th.loco-sort.loco-desc:after,#loco-admin.wrap .icon,#loco-admin.wrap .has-icon:before{font-family:"loco";speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#loco-admin.wrap .has-icon:before{display:inline-block;padding-right:.3em}#loco-admin.wrap a.icon-help{cursor:help}#loco-admin.wrap a.icon-help span{display:none}#loco-admin.wrap .icon-notag:before{content:""}#loco-admin.wrap .icon-magnify:before{content:"🔍"}#loco-admin.wrap .icon-python:before{content:"🐍"}#loco-admin.wrap .icon-unicode:before{content:"u"}#loco-admin.wrap .icon-json:before{content:"{"}#loco-admin.wrap .icon-bullist:before{content:""}#loco-admin.wrap .icon-numlist:before{content:""}#loco-admin.wrap .icon-indent:before{content:""}#loco-admin.wrap .icon-outdent:before{content:""}#loco-admin.wrap .icon-link:before{content:""}#loco-admin.wrap .icon-unlink:before{content:""}#loco-admin.wrap .icon-bold:before{content:"B"}#loco-admin.wrap .icon-italic:before{content:"I"}#loco-admin.wrap .icon-translate:before{content:""}#loco-admin.wrap .icon-proj:before{content:""}#loco-admin.wrap .icon-plural:before{content:"᛬"}#loco-admin.wrap .icon-max:before,#loco-admin.wrap .icon-full-screen:before{content:""}#loco-admin.wrap .icon-min:before{content:""}#loco-admin.wrap .icon-sort:before{content:""}#loco-admin.wrap .icon-ok:before,#loco-admin.wrap .notice-success>.has-icon:before,#loco-admin.wrap .notice-success p>strong.has-icon:before{content:"✓"}#loco-admin.wrap .icon-ok-empty:before{content:"🗌"}#loco-admin.wrap .icon-checkbox-checked:before,#loco-admin.wrap .selector.multi li.checked .icon-checkbox:before{content:"☑"}#loco-admin.wrap .icon-checkbox-unchecked:before{content:"☐"}#loco-admin.wrap .icon-checkbox-partial:before{content:"☉"}#loco-admin.wrap .icon-radio-checked:before{content:"⚫"}#loco-admin.wrap .icon-radio-unchecked:before{content:"⚪"}#loco-admin.wrap .icon-ext:before{content:"⬈"}#loco-admin.wrap .icon-share:before{content:""}#loco-admin.wrap .icon-star:before{content:""}#loco-admin.wrap .icon-user:before{content:""}#loco-admin.wrap .icon-remove:before,#loco-admin.wrap a.icon.close:before{content:"×"}#loco-admin.wrap .icon-cog:before{content:""}#loco-admin.wrap .icon-trash:before{content:""}#loco-admin.wrap .icon-time:before,#loco-admin.wrap .icon-history:before{content:""}#loco-admin.wrap .icon-download:before{content:""}#loco-admin.wrap .icon-revert:before{content:""}#loco-admin.wrap .icon-sync:before{content:""}#loco-admin.wrap .icon-lock:before,#loco-admin.wrap .notice-locked>.has-icon:before,#loco-admin.wrap .notice-locked p>strong.has-icon:before{content:""}#loco-admin.wrap .icon-flag:before{content:""}#loco-admin.wrap .icon-tag:before{content:""}#loco-admin.wrap .icon-tags:before{content:""}#loco-admin.wrap .icon-print:before{content:""}#loco-admin.wrap .icon-camera:before{content:""}#loco-admin.wrap .icon-pencil:before{content:""}#loco-admin.wrap .icon-add:before{content:""}#loco-admin.wrap .icon-del:before{content:""}#loco-admin.wrap .icon-clear:before,#loco-admin.wrap a.icon.clear:before{content:""}#loco-admin.wrap .icon-ok-sign:before{content:"✔"}#loco-admin.wrap .icon-help:before{content:"?"}#loco-admin.wrap .icon-info:before,#loco-admin.wrap .notice-info>.has-icon:before,#loco-admin.wrap .notice-info p>strong.has-icon:before{content:"ℹ"}#loco-admin.wrap .icon-cancel:before{content:""}#loco-admin.wrap .icon-warn:before,#loco-admin.wrap .notice-error>.has-icon:before,#loco-admin.wrap .notice-error p>strong.has-icon:before,#loco-admin.wrap .notice-warning>.has-icon:before,#loco-admin.wrap .notice-warning p>strong.has-icon:before{content:""}#loco-admin.wrap .icon-comment:before{content:""}#loco-admin.wrap .icon-bar-chart:before{content:""}#loco-admin.wrap .icon-key:before{content:""}#loco-admin.wrap .icon-cogs:before{content:""}#loco-admin.wrap .icon-comments:before{content:""}#loco-admin.wrap .icon-signout:before{content:""}#loco-admin.wrap .icon-signin:before{content:""}#loco-admin.wrap .icon-upload:before{content:""}#loco-admin.wrap .icon-twitter:before{content:"🐦"}#loco-admin.wrap .icon-facebook:before{content:""}#loco-admin.wrap .icon-github:before{content:""}#loco-admin.wrap .icon-feed:before{content:""}#loco-admin.wrap .icon-globe:before{content:""}#loco-admin.wrap .icon-wrench:before,#loco-admin.wrap .notice-debug>.has-icon:before,#loco-admin.wrap .notice-debug p>strong.has-icon:before{content:""}#loco-admin.wrap .icon-group:before{content:""}#loco-admin.wrap .icon-cloud:before{content:""}#loco-admin.wrap .icon-copy:before{content:""}#loco-admin.wrap .icon-save:before{content:""}#loco-admin.wrap .icon-menu:before{content:""}#loco-admin.wrap .icon-table:before{content:""}#loco-admin.wrap .icon-caret-down:before{content:"▼"}#loco-admin.wrap .icon-caret-up:before{content:"▲"}#loco-admin.wrap .icon-caret-right:before{content:"▶"}#loco-admin.wrap .icon-mail:before{content:""}#loco-admin.wrap .icon-cloud-upload:before{content:""}#loco-admin.wrap .icon-file:before{content:""}#loco-admin.wrap .icon-circle-white:before{content:"⚬"}#loco-admin.wrap .icon-circle-black:before{content:"●"}#loco-admin.wrap .icon-eraser:before{content:""}#loco-admin.wrap .icon-unlock:before{content:""}#loco-admin.wrap .icon-apple:before{content:""}#loco-admin.wrap .icon-android:before{content:""}#loco-admin.wrap .icon-robot:before{content:"🤖"}#loco-admin.wrap .icon-back:before{content:"⬅"}#loco-admin.wrap .icon-next:before{content:"➔"}#loco-admin.wrap .icon-arrow-up:before{content:""}#loco-admin.wrap .icon-ccard:before{content:""}#loco-admin.wrap .icon-caret-left:before{content:"◀"}#loco-admin.wrap .icon-pro:before{content:"⚡"}#loco-admin.wrap .icon-bell:before{content:""}#loco-admin.wrap .icon-code:before{content:""}#loco-admin.wrap .icon-privacy:before{content:"🛡"}#loco-admin.wrap .icon-hellip:before{content:"…"}#loco-admin.wrap .icon-vellip:before{content:"⁞"}#loco-admin.wrap .icon-collapse:before{content:""}#loco-admin.wrap .icon-expand:before{content:""}#loco-admin.wrap .icon-wordpress:before{content:""}#loco-admin.wrap .icon-database:before{content:""}#loco-admin.wrap .icon-restore:before{content:""}#loco-admin.wrap .icon-pilcrow:before{content:"¶"}#loco-admin.wrap .icon-status.is-translated:before,#loco-admin.wrap .is-translated>header>.icon-status:before{color:#2e892e;content:"✓";text-align:center}#loco-admin.wrap .icon-status.is-untranslated:before,#loco-admin.wrap .is-untranslated>header>.icon-status:before{color:#aaa;content:"×";text-align:center;font-size:1.1em}#loco-admin.wrap .icon-status.is-flagged:before,#loco-admin.wrap .is-flagged>header>.icon-status:before{color:#bd2c00;content:"";text-align:center}#loco-admin.wrap .icon-status.is-translated.is-blank:before,#loco-admin.wrap .icon-status.is-translated.is-inherit:before,#loco-admin.wrap .is-translated.is-blank>header>.icon-status:before,#loco-admin.wrap .is-translated.is-inherit>header>.icon-status:before{content:"🗌"}#loco-admin.wrap .icon-status.is-fuzzy:before,#loco-admin.wrap .is-fuzzy>header>.icon-status:before{color:#666;content:""}#loco-admin.wrap .lang,#loco-admin.wrap .region,#loco-admin.wrap .variant-wales,#loco-admin.wrap .region-gb.lang-cy,#loco-admin.wrap .variant-scotland,#loco-admin.wrap .region-gb.lang-gd,#loco-admin.wrap .variant-valencia,#loco-admin.wrap .region-es.variant-valencia,#loco-admin.wrap .lang-ca,#loco-admin.wrap .region-es.lang-ca,#loco-admin.wrap .lang-eo,#loco-admin.wrap .lang-eu{color:#fff;background:#2e892e;display:inline-block;text-transform:uppercase;overflow:hidden;font-family:Verdana,Arial,sans-serif;font-size:9px;font-weight:normal;font-style:normal;line-height:12px;text-align:center;white-space:normal;text-shadow:none}#loco-admin.wrap .lang{width:20px;height:12px;line-height:12px;vertical-align:middle}#loco-admin.wrap .lang:before{content:attr(lang);vertical-align:baseline}#loco-admin.wrap .no-lang{width:18px;height:10px;border:solid 1px #2e892e;background:transparent}#loco-admin.wrap .lang-el{background-color:#1d48a3}#loco-admin.wrap .lang-el:before{content:"Ελ"}#loco-admin.wrap .region,#loco-admin.wrap .variant-wales,#loco-admin.wrap .region-gb.lang-cy,#loco-admin.wrap .variant-scotland,#loco-admin.wrap .region-gb.lang-gd,#loco-admin.wrap .variant-valencia,#loco-admin.wrap .region-es.variant-valencia,#loco-admin.wrap .lang-ca,#loco-admin.wrap .region-es.lang-ca,#loco-admin.wrap .lang-eo,#loco-admin.wrap .lang-eu{width:16px;height:12px;margin:0 2px;background-image:url(../img/flags.png?v=2.5.5);background-repeat:no-repeat;background-color:transparent}#loco-admin.wrap .region:before,#loco-admin.wrap .variant-wales:before,#loco-admin.wrap .region-gb.lang-cy:before,#loco-admin.wrap .variant-scotland:before,#loco-admin.wrap .region-gb.lang-gd:before,#loco-admin.wrap .variant-valencia:before,#loco-admin.wrap .region-es.variant-valencia:before,#loco-admin.wrap .lang-ca:before,#loco-admin.wrap .region-es.lang-ca:before,#loco-admin.wrap .lang-eo:before,#loco-admin.wrap .lang-eu:before{visibility:hidden}#loco-admin.wrap .lang-zh{background-color:#b90000}#loco-admin.wrap .lang-zh.script-hans:before{content:"中国"}#loco-admin.wrap .lang-zh.script-hant:before{content:"中國"}#loco-admin.wrap .__{background-position:0 0}#loco-admin.wrap .lang-eo{background-position:0 -12px}#loco-admin.wrap .lang-eu{background-position:0 -24px}#loco-admin.wrap .lang-ca,#loco-admin.wrap .region-es.lang-ca{background-position:0 -36px}#loco-admin.wrap .region-tg{background-position:0 -48px}#loco-admin.wrap .region-me{background-position:0 -60px}#loco-admin.wrap .region-la{background-position:0 -73px}#loco-admin.wrap .region-mr{background-position:0 -85px}#loco-admin.wrap .region-ni{background-position:0 -97px}#loco-admin.wrap .region-lv{background-position:0 -109px}#loco-admin.wrap .region-om{background-position:0 -121px}#loco-admin.wrap .region-af{background-position:0 -133px}#loco-admin.wrap .region-cy{background-position:0 -145px}#loco-admin.wrap .region-bj{background-position:0 -157px}#loco-admin.wrap .region-aq{background-position:0 -169px}#loco-admin.wrap .region-cn{background-position:0 -186px}#loco-admin.wrap .region-co{background-position:0 -198px}#loco-admin.wrap .region-cx{background-position:0 -210px}#loco-admin.wrap .region-ag{background-position:0 -222px}#loco-admin.wrap .region-ms{background-position:0 -234px}#loco-admin.wrap .region-md{background-position:0 -246px}#loco-admin.wrap .region-zm{background-position:0 -258px}#loco-admin.wrap .region-vn{background-position:0 -270px}#loco-admin.wrap .region-tf{background-position:0 -282px}#loco-admin.wrap .region-td{background-position:0 -294px}#loco-admin.wrap .region-yt{background-position:0 -306px}#loco-admin.wrap .region-lb{background-position:0 -318px}#loco-admin.wrap .region-mf{background-position:0 -330px}#loco-admin.wrap .region-lu{background-position:0 -347px}#loco-admin.wrap .region-mq{background-position:0 -359px}#loco-admin.wrap .region-cz{background-position:0 -371px}#loco-admin.wrap .region-ae{background-position:0 -383px}#loco-admin.wrap .region-cm{background-position:0 -395px}#loco-admin.wrap .region-bi{background-position:0 -407px}#loco-admin.wrap .region-ar{background-position:0 -419px}#loco-admin.wrap .region-as{background-position:0 -431px}#loco-admin.wrap .region-bh{background-position:0 -443px}#loco-admin.wrap .region-cl{background-position:0 -455px}#loco-admin.wrap .region-ad{background-position:0 -467px}#loco-admin.wrap .region-mp{background-position:0 -479px}#loco-admin.wrap .region-lt{background-position:0 -491px}#loco-admin.wrap .region-mg{background-position:0 -503px}#loco-admin.wrap .region-lc{background-position:0 -515px}#loco-admin.wrap .region-tr{background-position:0 -527px}#loco-admin.wrap .region-ua{background-position:0 -539px}#loco-admin.wrap .region-tv{background-position:0 -551px}#loco-admin.wrap .region-vi{background-position:0 -563px}#loco-admin.wrap .region-mt{background-position:0 -575px}#loco-admin.wrap .region-no{background-position:0 -587px}#loco-admin.wrap .region-mc{background-position:0 -599px}#loco-admin.wrap .region-ch{background-position:0 -611px}#loco-admin.wrap .region-bl{background-position:0 -623px}#loco-admin.wrap .region-aw{background-position:0 -640px}#loco-admin.wrap .region-bz{background-position:0 -652px}#loco-admin.wrap .region-bm{background-position:0 -664px}#loco-admin.wrap .region-ci{background-position:0 -676px}#loco-admin.wrap .region-mu{background-position:0 -688px}#loco-admin.wrap .region-us{background-position:0 -700px}#loco-admin.wrap .region-tw{background-position:0 -712px}#loco-admin.wrap .region-ye{background-position:0 -724px}#loco-admin.wrap .region-mw{background-position:0 -736px}#loco-admin.wrap .region-nl{background-position:0 -748px}#loco-admin.wrap .region-ls{background-position:0 -760px}#loco-admin.wrap .region-bo{background-position:0 -772px}#loco-admin.wrap .region-at{background-position:0 -784px}#loco-admin.wrap .region-ck{background-position:0 -796px}#loco-admin.wrap .region-by{background-position:0 -808px}#loco-admin.wrap .region-au{background-position:0 -820px}#loco-admin.wrap .region-bn{background-position:0 -832px}#loco-admin.wrap .region-ma{background-position:0 -844px}#loco-admin.wrap .region-nz{background-position:0 -856px}#loco-admin.wrap .region-lr{background-position:0 -868px}#loco-admin.wrap .region-mv{background-position:0 -880px}#loco-admin.wrap .region-tc{background-position:0 -892px}#loco-admin.wrap .region-ug{background-position:0 -904px}#loco-admin.wrap .region-tt{background-position:0 -916px}#loco-admin.wrap .region-pl{background-position:0 -928px}#loco-admin.wrap .region-rs{background-position:0 -940px}#loco-admin.wrap .region-in{background-position:0 -952px}#loco-admin.wrap .region-ge{background-position:0 -964px}#loco-admin.wrap .region-gr{background-position:0 -976px}#loco-admin.wrap .region-gs{background-position:0 -988px}#loco-admin.wrap .region-gd{background-position:0 -1000px}#loco-admin.wrap .region-io{background-position:0 -1012px}#loco-admin.wrap .region-hk{background-position:0 -1024px}#loco-admin.wrap .region-kp{background-position:0 -1036px}#loco-admin.wrap .region-kg{background-position:0 -1048px}#loco-admin.wrap .region-pm{background-position:0 -1060px}#loco-admin.wrap .region-sv{background-position:0 -1072px}#loco-admin.wrap .region-re{background-position:0 -1084px}#loco-admin.wrap .region-sa{background-position:0 -1096px}#loco-admin.wrap .region-sc{background-position:0 -1108px}#loco-admin.wrap .region-st{background-position:0 -1120px}#loco-admin.wrap .region-ke{background-position:0 -1132px}#loco-admin.wrap .region-im{background-position:0 -1144px}#loco-admin.wrap .region-kr{background-position:0 -1161px}#loco-admin.wrap .region-gf{background-position:0 -1173px}#loco-admin.wrap .region-dj{background-position:0 -1185px}#loco-admin.wrap .region-gq{background-position:0 -1197px}#loco-admin.wrap .region-gp{background-position:0 -1209px}#loco-admin.wrap .region-dk{background-position:0 -1221px}#loco-admin.wrap .region-gg{background-position:0 -1233px}#loco-admin.wrap .region-il{background-position:0 -1250px}#loco-admin.wrap .region-pn{background-position:0 -1262px}#loco-admin.wrap .region-sb{background-position:0 -1274px}#loco-admin.wrap .region-py{background-position:0 -1286px}#loco-admin.wrap .region-ru{background-position:0 -1298px}#loco-admin.wrap .region-kw{background-position:0 -1310px}#loco-admin.wrap .region-do{background-position:0 -1322px}#loco-admin.wrap .region-gt{background-position:0 -1334px}#loco-admin.wrap .region-gb{background-position:0 -1346px}#loco-admin.wrap .region-gu{background-position:0 -1358px}#loco-admin.wrap .region-je{background-position:0 -1370px}#loco-admin.wrap .region-hm{background-position:0 -1387px}#loco-admin.wrap .region-sg{background-position:0 -1399px}#loco-admin.wrap .region-pk{background-position:0 -1411px}#loco-admin.wrap .region-sr{background-position:0 -1423px}#loco-admin.wrap .region-se{background-position:0 -1435px}#loco-admin.wrap .region-jp{background-position:0 -1447px}#loco-admin.wrap .region-gw{background-position:0 -1459px}#loco-admin.wrap .region-eh{background-position:0 -1471px}#loco-admin.wrap .region-dz{background-position:0 -1483px}#loco-admin.wrap .region-ga{background-position:0 -1495px}#loco-admin.wrap .region-fr{background-position:0 -1507px}#loco-admin.wrap .region-dm{background-position:0 -1519px}#loco-admin.wrap .region-hn{background-position:0 -1531px}#loco-admin.wrap .region-sd{background-position:0 -1543px}#loco-admin.wrap .region-rw{background-position:0 -1555px}#loco-admin.wrap .region-ph{background-position:0 -1567px}#loco-admin.wrap .region-ss{background-position:0 -1579px}#loco-admin.wrap .region-qa{background-position:0 -1596px}#loco-admin.wrap .region-pe{background-position:0 -1608px}#loco-admin.wrap .region-pr{background-position:0 -1620px}#loco-admin.wrap .region-si{background-position:0 -1632px}#loco-admin.wrap .region-ht{background-position:0 -1644px}#loco-admin.wrap .region-es{background-position:0 -1656px}#loco-admin.wrap .region-gl{background-position:0 -1668px}#loco-admin.wrap .region-gm{background-position:0 -1680px}#loco-admin.wrap .region-er{background-position:0 -1692px}#loco-admin.wrap .region-fi{background-position:0 -1704px}#loco-admin.wrap .region-ee{background-position:0 -1716px}#loco-admin.wrap .region-kn{background-position:0 -1728px}#loco-admin.wrap .region-hu{background-position:0 -1740px}#loco-admin.wrap .region-iq{background-position:0 -1752px}#loco-admin.wrap .region-ky{background-position:0 -1764px}#loco-admin.wrap .region-sh{background-position:0 -1776px}#loco-admin.wrap .region-ps{background-position:0 -1788px}#loco-admin.wrap .region-pf{background-position:0 -1800px}#loco-admin.wrap .region-sj{background-position:0 -1812px}#loco-admin.wrap .region-id{background-position:0 -1824px}#loco-admin.wrap .region-is{background-position:0 -1836px}#loco-admin.wrap .region-eg{background-position:0 -1848px}#loco-admin.wrap .region-fk{background-position:0 -1860px}#loco-admin.wrap .region-fj{background-position:0 -1872px}#loco-admin.wrap .region-gn{background-position:0 -1884px}#loco-admin.wrap .region-gy{background-position:0 -1896px}#loco-admin.wrap .region-ir{background-position:0 -1908px}#loco-admin.wrap .region-km{background-position:0 -1920px}#loco-admin.wrap .region-ie{background-position:0 -1932px}#loco-admin.wrap .region-kz{background-position:0 -1944px}#loco-admin.wrap .region-ro{background-position:0 -1956px}#loco-admin.wrap .region-sk{background-position:0 -1968px}#loco-admin.wrap .region-pg{background-position:0 -1980px}#loco-admin.wrap .region-pt{background-position:0 -1992px}#loco-admin.wrap .region-so{background-position:0 -2004px}#loco-admin.wrap .region-sx{background-position:0 -2016px}#loco-admin.wrap .region-hr{background-position:0 -2033px}#loco-admin.wrap .region-ki{background-position:0 -2045px}#loco-admin.wrap .region-jm{background-position:0 -2057px}#loco-admin.wrap .region-ec{background-position:0 -2069px}#loco-admin.wrap .region-et{background-position:0 -2081px}#loco-admin.wrap .region-fo{background-position:0 -2093px}#loco-admin.wrap .region-kh{background-position:0 -2105px}#loco-admin.wrap .region-sy{background-position:0 -2117px}#loco-admin.wrap .region-sn{background-position:0 -2129px}#loco-admin.wrap .region-pw{background-position:0 -2141px}#loco-admin.wrap .region-sl{background-position:0 -2153px}#loco-admin.wrap .region-fm{background-position:0 -2165px}#loco-admin.wrap .region-gi{background-position:0 -2177px}#loco-admin.wrap .region-de{background-position:0 -2189px}#loco-admin.wrap .region-gh{background-position:0 -2201px}#loco-admin.wrap .region-jo{background-position:0 -2213px}#loco-admin.wrap .region-it{background-position:0 -2225px}#loco-admin.wrap .region-pa{background-position:0 -2237px}#loco-admin.wrap .region-sz{background-position:0 -2249px}#loco-admin.wrap .region-sm{background-position:0 -2261px}#loco-admin.wrap .region-tn{background-position:0 -2273px}#loco-admin.wrap .region-ml{background-position:0 -2285px}#loco-admin.wrap .region-cg{background-position:0 -2297px}#loco-admin.wrap .region-ax{background-position:0 -2309px}#loco-admin.wrap .region-ao{background-position:0 -2321px}#loco-admin.wrap .region-bt{background-position:0 -2333px}#loco-admin.wrap .region-an{background-position:0 -2345px}#loco-admin.wrap .region-bb{background-position:0 -2357px}#loco-admin.wrap .region-cf{background-position:0 -2369px}#loco-admin.wrap .region-mm{background-position:0 -2381px}#loco-admin.wrap .region-li{background-position:0 -2393px}#loco-admin.wrap .region-na{background-position:0 -2405px}#loco-admin.wrap .region-mz{background-position:0 -2417px}#loco-admin.wrap .region-to{background-position:0 -2429px}#loco-admin.wrap .region-vg{background-position:0 -2441px}#loco-admin.wrap .region-ve{background-position:0 -2453px}#loco-admin.wrap .region-tz{background-position:0 -2465px}#loco-admin.wrap .region-tm{background-position:0 -2477px}#loco-admin.wrap .region-mx{background-position:0 -2489px}#loco-admin.wrap .region-nc{background-position:0 -2501px}#loco-admin.wrap .region-mo{background-position:0 -2513px}#loco-admin.wrap .region-lk{background-position:0 -2525px}#loco-admin.wrap .region-cd{background-position:0 -2537px}#loco-admin.wrap .region-al{background-position:0 -2549px}#loco-admin.wrap .region-bw{background-position:0 -2561px}#loco-admin.wrap .region-cs{background-position:0 -2573px}#loco-admin.wrap .region-cr{background-position:0 -2585px}#loco-admin.wrap .region-bv{background-position:0 -2597px}#loco-admin.wrap .region-am{background-position:0 -2609px}#loco-admin.wrap .region-az{background-position:0 -2621px}#loco-admin.wrap .region-ba{background-position:0 -2633px}#loco-admin.wrap .region-mn{background-position:0 -2645px}#loco-admin.wrap .region-nu{background-position:0 -2657px}#loco-admin.wrap .region-my{background-position:0 -2669px}#loco-admin.wrap .region-tl{background-position:0 -2681px}#loco-admin.wrap .region-ws{background-position:0 -2693px}#loco-admin.wrap .region-th{background-position:0 -2705px}#loco-admin.wrap .region-nf{background-position:0 -2717px}#loco-admin.wrap .region-ly{background-position:0 -2729px}#loco-admin.wrap .region-ai{background-position:0 -2741px}#loco-admin.wrap .region-br{background-position:0 -2753px}#loco-admin.wrap .region-cv{background-position:0 -2765px}#loco-admin.wrap .region-be{background-position:0 -2777px}#loco-admin.wrap .region-ca{background-position:0 -2789px}#loco-admin.wrap .region-bd{background-position:0 -2801px}#loco-admin.wrap .region-cw{background-position:0 -2813px}#loco-admin.wrap .region-bs{background-position:0 -2830px}#loco-admin.wrap .region-ng{background-position:0 -2842px}#loco-admin.wrap .region-mk{background-position:0 -2854px}#loco-admin.wrap .region-np{background-position:0 -2866px}#loco-admin.wrap .region-va{background-position:0 -2878px}#loco-admin.wrap .region-uz{background-position:0 -2890px}#loco-admin.wrap .region-um{background-position:0 -2902px}#loco-admin.wrap .region-tk{background-position:0 -2914px}#loco-admin.wrap .region-vc{background-position:0 -2926px}#loco-admin.wrap .region-zw{background-position:0 -2938px}#loco-admin.wrap .region-nr{background-position:0 -2950px}#loco-admin.wrap .region-ne{background-position:0 -2962px}#loco-admin.wrap .region-cu{background-position:0 -2974px}#loco-admin.wrap .region-bq{background-position:0 -2986px}#loco-admin.wrap .region-bf{background-position:0 -2998px}#loco-admin.wrap .region-bg{background-position:0 -3010px}#loco-admin.wrap .region-cc{background-position:0 -3022px}#loco-admin.wrap .region-mh{background-position:0 -3034px}#loco-admin.wrap .region-za{background-position:0 -3046px}#loco-admin.wrap .region-uy{background-position:0 -3058px}#loco-admin.wrap .region-wf{background-position:0 -3070px}#loco-admin.wrap .region-vu{background-position:0 -3082px}#loco-admin.wrap .region-tj{background-position:0 -3094px}#loco-admin.wrap .variant-scotland,#loco-admin.wrap .region-gb.lang-gd{background-position:0 -3106px}#loco-admin.wrap .variant-valencia,#loco-admin.wrap .region-es.variant-valencia{background-position:0 -3118px}#loco-admin.wrap .variant-wales,#loco-admin.wrap .region-gb.lang-cy{background-position:0 -3130px}#loco-admin.wrap .x-eu{background-position:0 -3142px}#loco-admin.wrap span.lang code{display:none}#loco-admin.wrap .icon-notag:before{content:""}#loco-admin.wrap .icon-magnify:before{content:"🔍"}#loco-admin.wrap .icon-python:before{content:"🐍"}#loco-admin.wrap .icon-unicode:before{content:"u"}#loco-admin.wrap .icon-json:before{content:"{"}#loco-admin.wrap .icon-bullist:before{content:""}#loco-admin.wrap .icon-numlist:before{content:""}#loco-admin.wrap .icon-indent:before{content:""}#loco-admin.wrap .icon-outdent:before{content:""}#loco-admin.wrap .icon-link:before{content:""}#loco-admin.wrap .icon-unlink:before{content:""}#loco-admin.wrap .icon-bold:before{content:"B"}#loco-admin.wrap .icon-italic:before{content:"I"}#loco-admin.wrap .icon-translate:before{content:""}#loco-admin.wrap .icon-proj:before{content:""}#loco-admin.wrap .icon-plural:before{content:"᛬"}#loco-admin.wrap .icon-max:before,#loco-admin.wrap .icon-full-screen:before{content:""}#loco-admin.wrap .icon-min:before{content:""}#loco-admin.wrap .icon-sort:before{content:""}#loco-admin.wrap .icon-ok:before,#loco-admin.wrap .notice-success>.has-icon:before,#loco-admin.wrap .notice-success p>strong.has-icon:before{content:"✓"}#loco-admin.wrap .icon-ok-empty:before{content:"🗌"}#loco-admin.wrap .icon-checkbox-checked:before,#loco-admin.wrap .selector.multi li.checked .icon-checkbox:before{content:"☑"}#loco-admin.wrap .icon-checkbox-unchecked:before{content:"☐"}#loco-admin.wrap .icon-checkbox-partial:before{content:"☉"}#loco-admin.wrap .icon-radio-checked:before{content:"⚫"}#loco-admin.wrap .icon-radio-unchecked:before{content:"⚪"}#loco-admin.wrap .icon-ext:before{content:"⬈"}#loco-admin.wrap .icon-share:before{content:""}#loco-admin.wrap .icon-star:before{content:""}#loco-admin.wrap .icon-user:before{content:""}#loco-admin.wrap .icon-remove:before,#loco-admin.wrap a.icon.close:before{content:"×"}#loco-admin.wrap .icon-cog:before{content:""}#loco-admin.wrap .icon-trash:before{content:""}#loco-admin.wrap .icon-time:before,#loco-admin.wrap .icon-history:before{content:""}#loco-admin.wrap .icon-download:before{content:""}#loco-admin.wrap .icon-revert:before{content:""}#loco-admin.wrap .icon-sync:before{content:""}#loco-admin.wrap .icon-lock:before,#loco-admin.wrap .notice-locked>.has-icon:before,#loco-admin.wrap .notice-locked p>strong.has-icon:before{content:""}#loco-admin.wrap .icon-flag:before{content:""}#loco-admin.wrap .icon-tag:before{content:""}#loco-admin.wrap .icon-tags:before{content:""}#loco-admin.wrap .icon-print:before{content:""}#loco-admin.wrap .icon-camera:before{content:""}#loco-admin.wrap .icon-pencil:before{content:""}#loco-admin.wrap .icon-add:before{content:""}#loco-admin.wrap .icon-del:before{content:""}#loco-admin.wrap .icon-clear:before,#loco-admin.wrap a.icon.clear:before{content:""}#loco-admin.wrap .icon-ok-sign:before{content:"✔"}#loco-admin.wrap .icon-help:before{content:"?"}#loco-admin.wrap .icon-info:before,#loco-admin.wrap .notice-info>.has-icon:before,#loco-admin.wrap .notice-info p>strong.has-icon:before{content:"ℹ"}#loco-admin.wrap .icon-cancel:before{content:""}#loco-admin.wrap .icon-warn:before,#loco-admin.wrap .notice-error>.has-icon:before,#loco-admin.wrap .notice-error p>strong.has-icon:before,#loco-admin.wrap .notice-warning>.has-icon:before,#loco-admin.wrap .notice-warning p>strong.has-icon:before{content:""}#loco-admin.wrap .icon-comment:before{content:""}#loco-admin.wrap .icon-bar-chart:before{content:""}#loco-admin.wrap .icon-key:before{content:""}#loco-admin.wrap .icon-cogs:before{content:""}#loco-admin.wrap .icon-comments:before{content:""}#loco-admin.wrap .icon-signout:before{content:""}#loco-admin.wrap .icon-signin:before{content:""}#loco-admin.wrap .icon-upload:before{content:""}#loco-admin.wrap .icon-twitter:before{content:"🐦"}#loco-admin.wrap .icon-facebook:before{content:""}#loco-admin.wrap .icon-github:before{content:""}#loco-admin.wrap .icon-feed:before{content:""}#loco-admin.wrap .icon-globe:before{content:""}#loco-admin.wrap .icon-wrench:before,#loco-admin.wrap .notice-debug>.has-icon:before,#loco-admin.wrap .notice-debug p>strong.has-icon:before{content:""}#loco-admin.wrap .icon-group:before{content:""}#loco-admin.wrap .icon-cloud:before{content:""}#loco-admin.wrap .icon-copy:before{content:""}#loco-admin.wrap .icon-save:before{content:""}#loco-admin.wrap .icon-menu:before{content:""}#loco-admin.wrap .icon-table:before{content:""}#loco-admin.wrap .icon-caret-down:before{content:"▼"}#loco-admin.wrap .icon-caret-up:before{content:"▲"}#loco-admin.wrap .icon-caret-right:before{content:"▶"}#loco-admin.wrap .icon-mail:before{content:""}#loco-admin.wrap .icon-cloud-upload:before{content:""}#loco-admin.wrap .icon-file:before{content:""}#loco-admin.wrap .icon-circle-white:before{content:"⚬"}#loco-admin.wrap .icon-circle-black:before{content:"●"}#loco-admin.wrap .icon-eraser:before{content:""}#loco-admin.wrap .icon-unlock:before{content:""}#loco-admin.wrap .icon-apple:before{content:""}#loco-admin.wrap .icon-android:before{content:""}#loco-admin.wrap .icon-robot:before{content:"🤖"}#loco-admin.wrap .icon-back:before{content:"⬅"}#loco-admin.wrap .icon-next:before{content:"➔"}#loco-admin.wrap .icon-arrow-up:before{content:""}#loco-admin.wrap .icon-ccard:before{content:""}#loco-admin.wrap .icon-caret-left:before{content:"◀"}#loco-admin.wrap .icon-pro:before{content:"⚡"}#loco-admin.wrap .icon-bell:before{content:""}#loco-admin.wrap .icon-code:before{content:""}#loco-admin.wrap .icon-privacy:before{content:"🛡"}#loco-admin.wrap .icon-hellip:before{content:"…"}#loco-admin.wrap .icon-vellip:before{content:"⁞"}#loco-admin.wrap .icon-collapse:before{content:""}#loco-admin.wrap .icon-expand:before{content:""}#loco-admin.wrap .icon-wordpress:before{content:""}#loco-admin.wrap .icon-database:before{content:""}#loco-admin.wrap .icon-restore:before{content:""}#loco-admin.wrap .icon-pilcrow:before{content:"¶"}#loco-admin.wrap .icon,#loco-admin.wrap .has-icon:before,#loco-admin.wrap .has-dashicon:before{speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#loco-admin.wrap .icon,#loco-admin.wrap .has-icon:before{font-family:"loco"}#loco-admin.wrap .has-dashicon:before{font-family:"dashicons";font-size:1.4em}#loco-admin.wrap .has-icon:before,#loco-admin.wrap .has-dashicon:before,#loco-admin.wrap .has-icon>span{display:inline-block;vertical-align:middle}#loco-admin.wrap .only-icon{text-align:center}#loco-admin.wrap .only-icon:before{text-align:center;padding:0}#loco-admin.wrap .only-icon span{display:none}#loco-admin.wrap a,#loco-admin.wrap .wp-core-ui .button-link{text-decoration:none}#loco-admin.wrap h3:hover>a.loco-anchor{color:#ccc}#loco-admin.wrap h3:hover>a.loco-anchor:before{content:"¶"}#loco-admin.wrap .has-lang>span{display:inline-block;vertical-align:middle}#loco-admin.wrap a.has-lang:hover>span:last-child{text-decoration:underline}#loco-admin.wrap h1 ul,#loco-admin.wrap h1 li{margin:0;padding:0}#loco-admin.wrap h1 li{display:inline-block}#loco-admin.wrap h1 li:after{content:"/";color:#999;text-shadow:none;display:inline-block}#loco-admin.wrap h1 li:last-child:after{content:""}#loco-admin.wrap h1 li:last-child a{color:inherit;pointer-events:none;cursor:auto}#loco-admin.wrap h2 span{color:#999;font-weight:normal}#loco-admin.wrap h2 .loco-meta,#loco-admin.wrap h3 .loco-meta{color:inherit;font-size:14px;font-weight:normal;vertical-align:middle}#loco-admin.wrap .wp-list-table td:first-child .icon{width:16px;display:inline-block;text-align:center}#loco-admin.wrap .wp-list-table td{white-space:nowrap}#loco-admin.wrap .wp-list-table td>a,#loco-admin.wrap .wp-list-table td>time{display:inline-block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis;-ms-text-overflow:ellipsis}#loco-admin.wrap .wp-list-table th.loco-sort{cursor:pointer}#loco-admin.wrap .wp-list-table th.loco-sort:hover{color:#000}#loco-admin.wrap .wp-list-table th.loco-sort.loco-asc:after,#loco-admin.wrap .wp-list-table th.loco-sort.loco-desc:after{padding:0 0 0 4px;color:#999}#loco-admin.wrap .wp-list-table th.loco-sort.loco-desc:after{content:"▼"}#loco-admin.wrap .wp-list-table th.loco-sort.loco-asc:after{content:"▲"}#loco-admin.wrap .wp-list-table td.has-row-actions{overflow:visible}#loco-admin.wrap form.loco-filter{display:block;margin-bottom:5px}#loco-admin.wrap form.loco-filter .icon-filter{color:#999}#loco-admin.wrap nav.above-list-table{margin-bottom:1em}#loco-admin.wrap nav.above-list-table a{display:inline-block;margin-right:1em}#loco-admin.wrap .wp-core-ui button.inverted,#loco-admin.wrap .wp-core-ui button.inverted:hover,#loco-admin.wrap .po-fuzzy button.icon-cloud{background:-moz-linear-gradient(top, #cccccc 0%, #e0e0e0 30%, #fefefe 100%);background:-webkit-linear-gradient(top, #cccccc 0%, #e0e0e0 30%, #fefefe 100%);background:linear-gradient(to bottom, #cccccc 0%, #e0e0e0 30%, #fefefe 100%);-webkit-box-shadow:0 1px 0 #fff;-moz-box-shadow:0 1px 0 #fff;box-shadow:0 1px 0 #fff;border-color:gray}#loco-admin.wrap .wp-core-ui button:active,#loco-admin.wrap .wp-core-ui button.inverted:active{border-color:#5b9dd9}#loco-admin.wrap .loco-clearable{display:inline-block;vertical-align:middle;position:relative}#loco-admin.wrap .loco-clearable a.clear,#loco-admin.wrap .auto-comp-wrap a.clear{top:0;right:0;outline:none;margin:0;border:solid 1px transparent;padding:5px 5px;position:absolute;font-size:1em;line-height:normal}#loco-admin.wrap .loco-clearable a.clear:before,#loco-admin.wrap .auto-comp-wrap a.clear:before{vertical-align:middle;padding:0;color:#999}#loco-admin.wrap .loco-clearable a.clear:hover:before,#loco-admin.wrap .auto-comp-wrap a.clear:hover:before{color:#333}#loco-admin.wrap .loco-clearable a.clear span,#loco-admin.wrap .auto-comp-wrap a.clear span{display:none}#loco-admin.wrap .loco-clearable ::-ms-clear,#loco-admin.wrap .auto-comp-wrap ::-ms-clear{display:none}#loco-admin.wrap div.progress{color:#000;background:transparent !important}#loco-admin.wrap div.progress *{height:100%;overflow:hidden;white-space:nowrap}#loco-admin.wrap div.progress .t{background-color:#ddd;border:1px solid #ccc}#loco-admin.wrap div.progress .t .bar{float:left;clear:none;background-color:#3db63d}#loco-admin.wrap div.progress .t .bar.f{background-color:#bd2c00}#loco-admin.wrap div.progress .l{display:block}#loco-admin.wrap td div.progress .t{border:none}#loco-admin.wrap td div.progress .l{display:none}#loco-admin.wrap code.path{color:#333;margin:0;padding:0;display:inline;background:transparent}#loco-admin.wrap .loco-danger{color:#d54e21}#loco-admin.wrap .notice,#loco-admin.wrap .panel{background:#fff;position:relative;margin:1em 0;padding:1px 12px}#loco-admin.wrap .notice-generic{border-color:#ddd}#loco-admin.wrap .notice-success>.has-icon,#loco-admin.wrap .notice-success p>strong.has-icon{color:#000}#loco-admin.wrap .notice-warning{border-color:orange}#loco-admin.wrap .notice-error{border-color:#dc3232}#loco-admin.wrap .notice-debug{border-color:#00a0d2}#loco-admin.wrap .notice-danger{border-color:#dc3232}#loco-admin.wrap .notice-locked{border-color:orange}#loco-admin.wrap .notice>.has-icon:before,#loco-admin.wrap .notice p>strong.has-icon:before{padding-right:6px}#loco-admin.wrap .notice>p>a.button.has-icon:before{width:1.2em}#loco-admin.wrap .notice>p>em{color:#d54e21;font-style:normal}#loco-admin.wrap .notice>p>em a{color:inherit}#loco-admin.wrap .notice>p a:hover,#loco-admin.wrap .notice>nav a:hover{text-decoration:underline}#loco-admin.wrap .notice>p a.button,#loco-admin.wrap .notice>nav a.button{text-decoration:inherit}#loco-admin.wrap .notice.has-nav{display:flex;flex-direction:row}#loco-admin.wrap .notice.has-nav p,#loco-admin.wrap .notice.has-nav nav{line-height:22px;flex-grow:1}#loco-admin.wrap .notice.has-nav nav{text-align:right;padding:2px;margin:.5em 0}#loco-admin.wrap .notice.has-nav.is-dismissible{padding-right:38px}#loco-admin.wrap .notice.has-nav a{white-space:nowrap}#loco-admin.wrap .notice.has-nav nav>span{color:#666}#loco-admin.wrap .notice>h3>span{display:inline-block;vertical-align:middle}#loco-admin.wrap ul.problems li{font-style:italic}#loco-admin.wrap label{position:relative}#loco-admin.wrap label.for-disabled,#loco-admin.wrap label.for-disabled>input{cursor:default !important}#loco-admin.wrap input.regular-text,#loco-admin.wrap textarea.regular-text{width:25em}#loco-admin.wrap .button-link{padding:0 10px 1px}#loco-admin.wrap .button-danger{background:#ba0000;border-color:#900 #600 #600;-webkit-box-shadow:0 1px 0 #600;-moz-box-shadow:0 1px 0 #600;box-shadow:0 1px 0 #600;color:#fff;text-shadow:0 -1px 1px #600,1px 0 1px #600,0 1px 1px #600,-1px 0 1px #600}#loco-admin.wrap .button-success{background:#00b500;border-color:#090 #2e892e #2e892e;-webkit-box-shadow:0 1px 0 #2e892e;-moz-box-shadow:0 1px 0 #2e892e;box-shadow:0 1px 0 #2e892e;color:#fff;text-shadow:0 -1px 1px #2e892e,1px 0 1px #2e892e,0 1px 1px #2e892e,-1px 0 1px #2e892e}#loco-admin.wrap .button-success:hover{background:#3db63d}#loco-admin.wrap .button-danger[disabled],#loco-admin.wrap .button-success[disabled]{text-shadow:none !important}#loco-admin.wrap form button.loco-loading.button-large{padding-left:0}#loco-admin.wrap form button.loco-loading.button-large:before{width:16px;height:16px;margin:0 4px;content:" ";font-size:16px;line-height:1;display:inline-block;vertical-align:sub}#loco-admin.wrap ::placeholder{color:#ccc}#loco-admin.wrap ::-webkit-input-placeholder{color:#ccc}#loco-admin.wrap :-moz-placeholder{color:#ccc;opacity:1}#loco-admin.wrap ::-moz-placeholder{color:#ccc;opacity:1}#loco-admin.wrap :-ms-input-placeholder{color:#ccc}#loco-admin.wrap .ielt10 .placeheld{color:#ccc}#loco-admin.wrap a.has-raquo:after{content:" »"}#loco-admin.wrap a.has-laquo:before{content:"« "}#loco-admin.wrap span.inline-spinner{display:inline-block;min-width:16px;min-height:16px;background:transparent url(../img/spin-modal.gif?v=2.5.5) 0 0 no-repeat}.js #wpbody-content>.notice{display:none}.js #wpbody-content>.notice.inline{display:block}.js #loco-admin.wrap .jshide,.no-js #loco-admin.wrap .jsonly{display:none !important}#loco-admin.wrap .invis{visibility:hidden}.form-table tr td{vertical-align:top}.form-table tr.compact td{padding-top:0}.form-table tr th a.icon-help{display:none}.loco-modal{min-width:50%;min-height:100px}.loco-modal-wide{min-width:90% !important}.loco-modal-no-close .ui-dialog-titlebar-close{display:none}.loco-modal .ui-dialog-titlebar-close{overflow:hidden}.loco-modal.request-filesystem-credentials-dialog{top:15% !important;max-height:85% !important}.loco-modal.request-filesystem-credentials-dialog>.ui-dialog-content{background:inherit}.loco-modal.request-filesystem-credentials-dialog .ftp-password>label>em:last-child{display:none}.ui-dialog-content>div.loco-loading{height:100%;background:transparent url(../img/spin-modal.gif?v=2.5.5) center 20px no-repeat}#loco-po-ref ol li{color:#aaa;margin:0;white-space:pre;padding:0 0 0 1em;font:normal 12px/17px Consolas,Monaco,monospace;background:transparent;border-left:1px solid #eee}#loco-po-ref ol li code{margin:0;padding:0;display:inline;background:inherit}#loco-po-ref ol li.highlighted{color:#666;background-color:#f8eec7}#loco-po-ref ol li.highlighted code.T_CONSTANT_ENCAPSED_STRING{color:#c931c7}#loco-credit>*{vertical-align:middle}#loco-credit>a{display:inline-block;position:relative;overflow:hidden;background:transparent url(../img/logo-foot.gif?v=2.5.5) 0 0 no-repeat;height:30px;width:100px;text-indent:200px;-webkit-transition-duration:0s;transition-duration:0s}#loco-credit>a:hover{background-position:0 -35px}#loco-content{position:relative}#footer-upgrade span:before{color:#ccc;content:" | ";display:inline;padding-left:.5em;padding-right:.5em}#footer-upgrade span:first-child:before{content:"";display:none}.loco-clearfix:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}dl.debug dt{font-weight:bold}dl.debug dt,dl.debug dd{white-space:pre}.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(0,115,170,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#0073aa;foo:#0073aa}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#66c6e4 !important;background:#008ec2 !important;border-color:#008ec2 !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../img/skins/fresh/spin-primary-button.gif?v=2.5.5) 0 0 no-repeat !important}
|
1 |
+
._ajax_loader_f2{background-image:url(../img/ajax-loader-f2.gif?v=2.5.6);background-repeat:no-repeat;min-height:16px}._ajax_loader_f2x4{background:transparent url(../img/ajax-loader-f2-x4.gif?v=2.5.6) 0 0 no-repeat;min-height:75px}._ajax_loader_cc{background-image:url(../img/ajax-loader-cc.gif?v=2.5.6);background-repeat:no-repeat;min-height:16px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1),only screen and (min-device-pixel-ratio: 2),only screen and (min-resolution: 192dpi),only screen and (min-resolution: 2dppx){._ajax_loader_f2{background-image:url(../img/ajax-loader-f2-x2.gif?v=2.5.6);background-size:16px}._ajax_loader_cc{background-image:url(../img/ajax-loader-cc-x2.gif?v=2.5.6);background-size:16px}}._green_glow_inner{-webkit-box-shadow:inset 0 0 10px 0 #3db63d;-moz-box-shadow:inset 0 0 10px 0 #3db63d;box-shadow:inset 0 0 10px 0 #3db63d}._green_glow_outer{-webkit-box-shadow:0 0 .5em 0 #3db63d;-moz-box-shadow:0 0 .5em 0 #3db63d;box-shadow:0 0 .5em 0 #3db63d}.loco-font,#loco-admin.wrap .wp-list-table th.loco-sort.loco-asc:after,#loco-admin.wrap .wp-list-table th.loco-sort.loco-desc:after,#loco-admin.wrap .icon,#loco-admin.wrap .has-icon:before{font-family:"loco";speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@font-face{font-family:"loco";src:url("../font/loco.eot?v=2.5.6");src:url("../font/loco.eot?v=2.5.6?#iefix") format("embedded-opentype"),url("../font/loco.woff?v=2.5.6") format("woff"),url("../font/loco.ttf?v=2.5.6") format("truetype"),url("../font/loco.svg?v=2.5.6#loco") format("svg");font-weight:normal;font-style:normal}.tipsy{font-size:11px;position:absolute;padding:5px;z-index:500001;opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.tipsy.in{opacity:1}.tipsy-inner{background-color:#000;color:#fff;white-space:nowrap;padding:6px 8px;line-height:1.3em;text-align:center;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px;-webkit-font-smoothing:subpixel-antialiased}.tipsy-arrow{position:absolute;width:0;height:0;line-height:0;border:5px dashed #000}.tipsy-n .tipsy-arrow{top:0px;left:50%;margin-left:-5px;border-bottom-style:solid;border-top:none;border-left-color:transparent;border-right-color:transparent}.tipsy-nw .tipsy-arrow{top:0;left:10px;border-bottom-style:solid;border-top:none;border-left-color:transparent;border-right-color:transparent}.tipsy-ne .tipsy-arrow{top:0;right:10px;border-bottom-style:solid;border-top:none;border-left-color:transparent;border-right-color:transparent}.tipsy-s .tipsy-arrow{bottom:0;left:50%;margin-left:-5px;border-top-style:solid;border-bottom:none;border-left-color:transparent;border-right-color:transparent}.tipsy-sw .tipsy-arrow{bottom:0;left:10px;border-top-style:solid;border-bottom:none;border-left-color:transparent;border-right-color:transparent}.tipsy-se .tipsy-arrow{bottom:0;right:10px;border-top-style:solid;border-bottom:none;border-left-color:transparent;border-right-color:transparent}.tipsy-e .tipsy-arrow{right:0;top:50%;margin-top:-5px;border-left-style:solid;border-right:none;border-top-color:transparent;border-bottom-color:transparent}.tipsy-w .tipsy-arrow{left:0;top:50%;margin-top:-5px;border-right-style:solid;border-left:none;border-top-color:transparent;border-bottom-color:transparent}#loco-admin.wrap .selector li,#loco-admin.wrap .selector .handle,#loco-admin.wrap .selectoradd a,#loco-admin.wrap .selectorsep:before,#loco-admin.wrap .selectorsep span{padding:.3em .75em}#loco-admin.wrap .selector{text-align:left;display:inline-block;white-space:nowrap}#loco-admin.wrap .selectoradd a,#loco-admin.wrap .selector .handle{cursor:default;display:block;position:relative;border-top:solid 1px #fff;border-right:solid 1px #ddd;border-bottom:solid 1px #ddd;border-left:solid 1px #fff;color:#666;height:1.3em;overflow:hidden;white-space:normal}#loco-admin.wrap .selectorsep{display:inline-block;border:solid 1px transparent}#loco-admin.wrap .selectorsep:before{display:block;position:relative;color:#999;height:1.3em;overflow:hidden}#loco-admin.wrap .selectorsep>*{display:block;line-height:1em;color:#666;height:1.3em;overflow:hidden}#loco-admin.wrap .selector .handle{outline:none;white-space:nowrap;padding-right:2.3em;max-width:250px;text-overflow:ellipsis}#loco-admin.wrap .selector .handle .prefix{padding-right:.6ex}#loco-admin.wrap .selector .handle:after{font-family:loco;font-size:1.3em;color:#ccc;display:block;position:absolute;top:.25em;right:.6em;content:"▼"}#loco-admin.wrap .selector .handle:focus:after,#loco-admin.wrap .selector .handle:hover:after{color:#666}#loco-admin.wrap .selector.no-caret .handle{padding-right:.75em}#loco-admin.wrap .selector.no-caret .handle:after{display:none}#loco-admin.wrap .selector.no-title .handle{padding-left:.5em;padding-right:.5em}#loco-admin.wrap .selector.no-title .handle .label{display:none}#loco-admin.wrap .selector.no-title .handle .icon{margin-right:0px}#loco-admin.wrap .selector.dummy .handle{border-color:transparent}#loco-admin.wrap .selector.dummy .handle:after{display:none}#loco-admin.wrap .selectoradd{position:relative}#loco-admin.wrap .selectoradd>*{display:block;float:left;clear:none}#loco-admin.wrap .selectoradd>a.has-icon{width:1.3em}#loco-admin.wrap .selectoradd>a.has-icon:before{color:#999;display:inline;padding-left:0;padding-right:0;line-height:1.4em}#loco-admin.wrap .selectoradd>a.has-icon:hover:after{color:#2e892e}#loco-admin.wrap .selectorsep{display:inline-block}#loco-admin.wrap .selectorsep span{color:#666;height:1.3em}#loco-admin.wrap .selector ul{padding:0}#loco-admin.wrap .selector ul,#loco-admin.wrap .selector li{display:block;position:relative;cursor:default;margin:0}#loco-admin.wrap .selector ul{z-index:5;position:absolute;left:0;top:0;background:#f5f5f5;box-shadow:0 10px 5px rgba(0,0,0,.2);border:solid 1px #ccc;overflow:auto}#loco-admin.wrap .selector.up ul{margin-top:0}#loco-admin.wrap .selector.multi li input{display:none}#loco-admin.wrap .selector.multi li.checked{background:#e5e5e5}#loco-admin.wrap .selector li.active{background:#e5e5e5 !important}#loco-admin.wrap .selector li.over{background:#ccc !important;color:#fff;text-shadow:1px 1px #aaa}#loco-admin.wrap .selector li.over .label{color:#fff}#loco-admin.wrap .selector .label{font:inherit;color:inherit}#loco-admin.wrap .selector .icon{display:inline-block;min-width:1.2em;text-align:center;font-size:14px}#loco-admin.wrap .selector .icon.no-icon{display:none}#loco-admin.wrap .selector .icon:before{color:#666}#loco-admin.wrap .selector .avtr{width:18px;height:18px;background-size:18px;background-repeat:no-repeat}#loco-admin.wrap .selector .label{line-height:1}#loco-admin.wrap .selector .icon,#loco-admin.wrap .selector .icon-16{vertical-align:bottom}#loco-admin.wrap .selector .icon,#loco-admin.wrap .selector .lang,#loco-admin.wrap .selector .icon-16{margin-right:5px}#loco-admin.wrap .selector .region,#loco-admin.wrap .selector .variant-wales,#loco-admin.wrap .selector .region-gb.lang-cy,#loco-admin.wrap .selector .variant-scotland,#loco-admin.wrap .selector .region-gb.lang-gd,#loco-admin.wrap .selector .variant-valencia,#loco-admin.wrap .selector .region-es.variant-valencia,#loco-admin.wrap .selector .lang-ca,#loco-admin.wrap .selector .region-es.lang-ca,#loco-admin.wrap .selector .lang-eo,#loco-admin.wrap .selector .lang-eu{margin-left:2px;margin-right:7px}#loco-admin.wrap .selector.ticked .icon.no-icon{font-size:12px;display:inline-block}#loco-admin.wrap .selector.ticked .active .icon.no-icon:before{content:"✓"}#loco-admin.wrap .selectoradd a:hover,#loco-admin.wrap .selector a.handle:focus,#loco-admin.wrap .selector a.handle:hover{color:#000;border-color:#999}#loco-admin.wrap .selector.active .handle{border-color:#999;background-color:#eee;color:#999}#loco-admin.wrap .selector.active .handle:after{color:#999;content:"▲"}#loco-admin.wrap .selector.disabled{cursor:default;cursor:no-drop;cursor:not-allowed}#loco-admin.wrap .selector.disabled .handle{pointer-events:none;border-top:solid 1px #fff;border-right:solid 1px #ddd;border-bottom:solid 1px #ddd;border-left:solid 1px #fff;color:#999;padding-right:1em}#loco-admin.wrap .selector.disabled .handle:after{display:none}#loco-admin.wrap .selector.disabled .handle span.icon{color:#999 !important}#loco-admin.wrap .selector li.disabled,#loco-admin.wrap .selector li.disabled.over{color:#aaa;text-shadow:1px 1px #fff;pointer-events:none}#loco-admin.wrap .selector li.disabled *{cursor:text}#loco-admin.wrap .selector li.disabled .icon:before{color:#aaa}#loco-admin.wrap .selector li.disabled .flag,#loco-admin.wrap .selector li.disabled .icon-16{opacity:.4}#loco-admin.wrap .selector.lefty ul{left:auto;right:0}#loco-admin.wrap .selector.lefty ul .icon,#loco-admin.wrap .selector.lefty ul .icon-32{display:block;float:right;clear:none}#loco-admin.wrap .selector.lefty ul .label{padding-right:32px;padding-left:0}#loco-admin.wrap .selector ul>form{margin:0;display:block}#loco-admin.wrap .selector ul>form input{margin:0;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;-o-border-radius:0;border-radius:0}#loco-admin.wrap .selector ul>form input:focus{-webkit-box-shadow:inset 0 0 5px 0 #3db63d;-moz-box-shadow:inset 0 0 5px 0 #3db63d;box-shadow:inset 0 0 5px 0 #3db63d}#loco-admin.wrap .selector ul>form input.error{border-color:#c00;-webkit-box-shadow:inset 0 0 5px 0 rgba(153,0,0,.5);-moz-box-shadow:inset 0 0 5px 0 rgba(153,0,0,.5);box-shadow:inset 0 0 5px 0 rgba(153,0,0,.5)}#loco-admin.wrap .selector ul>form a.clear{margin:0;border:none}#loco-admin.wrap .selector ul>form ::placeholder{color:gray;font-size:16px;font-family:"loco";text-align:right;display:block}#loco-admin.wrap .selector ul>form ::-webkit-input-placeholder{color:gray;font-size:16px;font-family:"loco";text-align:right;display:block}#loco-admin.wrap .selector ul>form :-moz-placeholder{color:gray;font-size:16px;font-family:"loco";text-align:right;display:block;opacity:1}#loco-admin.wrap .selector ul>form ::-moz-placeholder{color:gray;font-size:16px;font-family:"loco";text-align:right;display:block;opacity:1}#loco-admin.wrap .selector ul>form :-ms-input-placeholder{color:gray;font-size:16px;font-family:"loco";text-align:right;display:block}#loco-admin.wrap .selector ul>form .ielt10 .placeheld{color:gray;font-size:16px;font-family:"loco";text-align:right;display:block}#loco-admin.wrap div.auto-comp-wrap{width:100%}#loco-admin.wrap div.auto-comp-wrap input{display:inline-block}#loco-admin.wrap div.auto-comp-wrap.loading input{background:transparent url(../img/ajax-loader.gif?v=2.5.6) right 2px no-repeat}#loco-admin.wrap div.auto-comp-drop{color:#333;background:#fff;border-top:none;position:absolute;width:auto;top:0;left:0;z-index:99;-webkit-box-shadow:0 5px 5px rgba(0,0,0,.4);-moz-box-shadow:0 5px 5px rgba(0,0,0,.4);box-shadow:0 5px 5px rgba(0,0,0,.4)}#loco-admin.wrap div.auto-comp-result{padding:5px 10px;cursor:pointer;background:#f0f0f0;border-top:solid 1px #fff;border-bottom:solid 1px #ddd;white-space:nowrap}#loco-admin.wrap div.auto-comp-result:first-child{border-top:solid 1px #ddd}#loco-admin.wrap div.auto-comp-result>*{display:inline-block;vertical-align:middle;line-height:normal}#loco-admin.wrap div.auto-comp-result .icon:before{padding-right:5px}#loco-admin.wrap div.auto-comp-result:hover{background:#a8a8a8;color:#fff;border-top-color:#a8a8a8;border-bottom-color:#999}#loco-admin.wrap div.auto-comp-result.selected{background:#666 !important;color:#fff;border-top-color:#666;border-bottom-color:#666}#loco-admin.wrap div.auto-comp-result .lang,#loco-admin.wrap div.auto-comp-result .region,#loco-admin.wrap div.auto-comp-result .variant-wales,#loco-admin.wrap div.auto-comp-result .region-gb.lang-cy,#loco-admin.wrap div.auto-comp-result .variant-scotland,#loco-admin.wrap div.auto-comp-result .region-gb.lang-gd,#loco-admin.wrap div.auto-comp-result .variant-valencia,#loco-admin.wrap div.auto-comp-result .region-es.variant-valencia,#loco-admin.wrap div.auto-comp-result .lang-ca,#loco-admin.wrap div.auto-comp-result .region-es.lang-ca,#loco-admin.wrap div.auto-comp-result .lang-eo,#loco-admin.wrap div.auto-comp-result .lang-eu,#loco-admin.wrap div.auto-comp-result .avtr{margin-right:5px}#loco-admin.wrap div.auto-comp-wrap.error a.icon.clear:before{color:#c00;opacity:1}#loco-admin.wrap div.auto-comp-wrap.error input[type=text]{border-color:#c00;color:#c00}#loco-admin.wrap div.auto-comp-wrap.error input[type=text]:focus{-webkit-box-shadow:0 0 .5em 0 rgba(153,0,0,.5);-moz-box-shadow:0 0 .5em 0 rgba(153,0,0,.5);box-shadow:0 0 .5em 0 rgba(153,0,0,.5)}#loco-admin.wrap ._ajax_loader_f2{background-image:url(../img/ajax-loader-f2.gif?v=2.5.6);background-repeat:no-repeat;min-height:16px}#loco-admin.wrap ._ajax_loader_f2x4{background:transparent url(../img/ajax-loader-f2-x4.gif?v=2.5.6) 0 0 no-repeat;min-height:75px}#loco-admin.wrap ._ajax_loader_cc{background-image:url(../img/ajax-loader-cc.gif?v=2.5.6);background-repeat:no-repeat;min-height:16px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1),only screen and (min-device-pixel-ratio: 2),only screen and (min-resolution: 192dpi),only screen and (min-resolution: 2dppx){#loco-admin.wrap ._ajax_loader_f2{background-image:url(../img/ajax-loader-f2-x2.gif?v=2.5.6);background-size:16px}#loco-admin.wrap ._ajax_loader_cc{background-image:url(../img/ajax-loader-cc-x2.gif?v=2.5.6);background-size:16px}}#loco-admin.wrap ._green_glow_inner{-webkit-box-shadow:inset 0 0 10px 0 #3db63d;-moz-box-shadow:inset 0 0 10px 0 #3db63d;box-shadow:inset 0 0 10px 0 #3db63d}#loco-admin.wrap ._green_glow_outer{-webkit-box-shadow:0 0 .5em 0 #3db63d;-moz-box-shadow:0 0 .5em 0 #3db63d;box-shadow:0 0 .5em 0 #3db63d}#loco-admin.wrap .loco-font,#loco-admin.wrap .wp-list-table th.loco-sort.loco-asc:after,#loco-admin.wrap .wp-list-table th.loco-sort.loco-desc:after,#loco-admin.wrap .icon,#loco-admin.wrap .has-icon:before{font-family:"loco";speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#loco-admin.wrap .has-icon:before{display:inline-block;padding-right:.3em}#loco-admin.wrap a.icon-help{cursor:help}#loco-admin.wrap a.icon-help span{display:none}#loco-admin.wrap .icon-notag:before{content:""}#loco-admin.wrap .icon-magnify:before{content:"🔍"}#loco-admin.wrap .icon-python:before{content:"🐍"}#loco-admin.wrap .icon-unicode:before{content:"u"}#loco-admin.wrap .icon-json:before{content:"{"}#loco-admin.wrap .icon-bullist:before{content:""}#loco-admin.wrap .icon-numlist:before{content:""}#loco-admin.wrap .icon-indent:before{content:""}#loco-admin.wrap .icon-outdent:before{content:""}#loco-admin.wrap .icon-link:before{content:""}#loco-admin.wrap .icon-unlink:before{content:""}#loco-admin.wrap .icon-bold:before{content:"B"}#loco-admin.wrap .icon-italic:before{content:"I"}#loco-admin.wrap .icon-translate:before{content:""}#loco-admin.wrap .icon-proj:before{content:""}#loco-admin.wrap .icon-plural:before{content:"᛬"}#loco-admin.wrap .icon-max:before,#loco-admin.wrap .icon-full-screen:before{content:""}#loco-admin.wrap .icon-min:before{content:""}#loco-admin.wrap .icon-sort:before{content:""}#loco-admin.wrap .icon-ok:before,#loco-admin.wrap .notice-success>.has-icon:before,#loco-admin.wrap .notice-success p>strong.has-icon:before{content:"✓"}#loco-admin.wrap .icon-ok-empty:before{content:"🗌"}#loco-admin.wrap .icon-checkbox-checked:before,#loco-admin.wrap .selector.multi li.checked .icon-checkbox:before{content:"☑"}#loco-admin.wrap .icon-checkbox-unchecked:before{content:"☐"}#loco-admin.wrap .icon-checkbox-partial:before{content:"☉"}#loco-admin.wrap .icon-radio-checked:before{content:"⚫"}#loco-admin.wrap .icon-radio-unchecked:before{content:"⚪"}#loco-admin.wrap .icon-ext:before{content:"⬈"}#loco-admin.wrap .icon-share:before{content:""}#loco-admin.wrap .icon-star:before{content:""}#loco-admin.wrap .icon-user:before{content:""}#loco-admin.wrap .icon-remove:before,#loco-admin.wrap a.icon.close:before{content:"×"}#loco-admin.wrap .icon-cog:before{content:""}#loco-admin.wrap .icon-trash:before{content:""}#loco-admin.wrap .icon-time:before,#loco-admin.wrap .icon-history:before{content:""}#loco-admin.wrap .icon-download:before{content:""}#loco-admin.wrap .icon-revert:before{content:""}#loco-admin.wrap .icon-sync:before{content:""}#loco-admin.wrap .icon-lock:before,#loco-admin.wrap .notice-locked>.has-icon:before,#loco-admin.wrap .notice-locked p>strong.has-icon:before{content:""}#loco-admin.wrap .icon-flag:before{content:""}#loco-admin.wrap .icon-tag:before{content:""}#loco-admin.wrap .icon-tags:before{content:""}#loco-admin.wrap .icon-print:before{content:""}#loco-admin.wrap .icon-camera:before{content:""}#loco-admin.wrap .icon-pencil:before{content:""}#loco-admin.wrap .icon-add:before{content:""}#loco-admin.wrap .icon-del:before{content:""}#loco-admin.wrap .icon-clear:before,#loco-admin.wrap a.icon.clear:before{content:""}#loco-admin.wrap .icon-ok-sign:before{content:"✔"}#loco-admin.wrap .icon-help:before{content:"?"}#loco-admin.wrap .icon-info:before,#loco-admin.wrap .notice-info>.has-icon:before,#loco-admin.wrap .notice-info p>strong.has-icon:before{content:"ℹ"}#loco-admin.wrap .icon-cancel:before{content:""}#loco-admin.wrap .icon-warn:before,#loco-admin.wrap .notice-error>.has-icon:before,#loco-admin.wrap .notice-error p>strong.has-icon:before,#loco-admin.wrap .notice-warning>.has-icon:before,#loco-admin.wrap .notice-warning p>strong.has-icon:before{content:""}#loco-admin.wrap .icon-comment:before{content:""}#loco-admin.wrap .icon-bar-chart:before{content:""}#loco-admin.wrap .icon-key:before{content:""}#loco-admin.wrap .icon-cogs:before{content:""}#loco-admin.wrap .icon-comments:before{content:""}#loco-admin.wrap .icon-signout:before{content:""}#loco-admin.wrap .icon-signin:before{content:""}#loco-admin.wrap .icon-upload:before{content:""}#loco-admin.wrap .icon-twitter:before{content:"🐦"}#loco-admin.wrap .icon-facebook:before{content:""}#loco-admin.wrap .icon-github:before{content:""}#loco-admin.wrap .icon-feed:before{content:""}#loco-admin.wrap .icon-globe:before{content:""}#loco-admin.wrap .icon-wrench:before,#loco-admin.wrap .notice-debug>.has-icon:before,#loco-admin.wrap .notice-debug p>strong.has-icon:before{content:""}#loco-admin.wrap .icon-group:before{content:""}#loco-admin.wrap .icon-cloud:before{content:""}#loco-admin.wrap .icon-copy:before{content:""}#loco-admin.wrap .icon-save:before{content:""}#loco-admin.wrap .icon-menu:before{content:""}#loco-admin.wrap .icon-table:before{content:""}#loco-admin.wrap .icon-caret-down:before{content:"▼"}#loco-admin.wrap .icon-caret-up:before{content:"▲"}#loco-admin.wrap .icon-caret-right:before{content:"▶"}#loco-admin.wrap .icon-mail:before{content:""}#loco-admin.wrap .icon-cloud-upload:before{content:""}#loco-admin.wrap .icon-file:before{content:""}#loco-admin.wrap .icon-circle-white:before{content:"⚬"}#loco-admin.wrap .icon-circle-black:before{content:"●"}#loco-admin.wrap .icon-eraser:before{content:""}#loco-admin.wrap .icon-unlock:before{content:""}#loco-admin.wrap .icon-apple:before{content:""}#loco-admin.wrap .icon-android:before{content:""}#loco-admin.wrap .icon-robot:before{content:"🤖"}#loco-admin.wrap .icon-back:before{content:"⬅"}#loco-admin.wrap .icon-next:before{content:"➔"}#loco-admin.wrap .icon-arrow-up:before{content:""}#loco-admin.wrap .icon-calendar:before{content:""}#loco-admin.wrap .icon-ccard:before{content:""}#loco-admin.wrap .icon-caret-left:before{content:"◀"}#loco-admin.wrap .icon-pro:before{content:"⚡"}#loco-admin.wrap .icon-bell:before{content:""}#loco-admin.wrap .icon-code:before{content:""}#loco-admin.wrap .icon-privacy:before{content:"🛡"}#loco-admin.wrap .icon-hellip:before{content:"…"}#loco-admin.wrap .icon-vellip:before{content:"⁞"}#loco-admin.wrap .icon-collapse:before{content:""}#loco-admin.wrap .icon-expand:before{content:""}#loco-admin.wrap .icon-wordpress:before{content:""}#loco-admin.wrap .icon-database:before{content:""}#loco-admin.wrap .icon-restore:before{content:""}#loco-admin.wrap .icon-pilcrow:before{content:"¶"}#loco-admin.wrap .icon-status.is-translated:before,#loco-admin.wrap .is-translated>header>.icon-status:before{color:#2e892e;content:"✓";text-align:center}#loco-admin.wrap .icon-status.is-untranslated:before,#loco-admin.wrap .is-untranslated>header>.icon-status:before{color:#aaa;content:"×";text-align:center;font-size:1.1em}#loco-admin.wrap .icon-status.is-flagged:before,#loco-admin.wrap .is-flagged>header>.icon-status:before{color:#bd2c00;content:"";text-align:center}#loco-admin.wrap .icon-status.is-translated.is-blank:before,#loco-admin.wrap .icon-status.is-translated.is-inherit:before,#loco-admin.wrap .is-translated.is-blank>header>.icon-status:before,#loco-admin.wrap .is-translated.is-inherit>header>.icon-status:before{content:"🗌"}#loco-admin.wrap .icon-status.is-fuzzy:before,#loco-admin.wrap .is-fuzzy>header>.icon-status:before{color:#666;content:""}#loco-admin.wrap .lang,#loco-admin.wrap .region,#loco-admin.wrap .variant-wales,#loco-admin.wrap .region-gb.lang-cy,#loco-admin.wrap .variant-scotland,#loco-admin.wrap .region-gb.lang-gd,#loco-admin.wrap .variant-valencia,#loco-admin.wrap .region-es.variant-valencia,#loco-admin.wrap .lang-ca,#loco-admin.wrap .region-es.lang-ca,#loco-admin.wrap .lang-eo,#loco-admin.wrap .lang-eu{color:#fff;background:#2e892e;display:inline-block;text-transform:uppercase;overflow:hidden;font-family:Verdana,Arial,sans-serif;font-size:9px;font-weight:normal;font-style:normal;line-height:12px;text-align:center;white-space:normal;text-shadow:none}#loco-admin.wrap .lang{width:20px;height:12px;line-height:12px;vertical-align:middle}#loco-admin.wrap .lang:before{content:attr(lang);vertical-align:baseline}#loco-admin.wrap .no-lang{width:18px;height:10px;border:solid 1px #2e892e;background:transparent}#loco-admin.wrap .lang-el{background-color:#1d48a3}#loco-admin.wrap .lang-el:before{content:"Ελ"}#loco-admin.wrap .region,#loco-admin.wrap .variant-wales,#loco-admin.wrap .region-gb.lang-cy,#loco-admin.wrap .variant-scotland,#loco-admin.wrap .region-gb.lang-gd,#loco-admin.wrap .variant-valencia,#loco-admin.wrap .region-es.variant-valencia,#loco-admin.wrap .lang-ca,#loco-admin.wrap .region-es.lang-ca,#loco-admin.wrap .lang-eo,#loco-admin.wrap .lang-eu{width:16px;height:12px;margin:0 2px;background-image:url(../img/flags.png?v=2.5.6);background-repeat:no-repeat;background-color:transparent}#loco-admin.wrap .region:before,#loco-admin.wrap .variant-wales:before,#loco-admin.wrap .region-gb.lang-cy:before,#loco-admin.wrap .variant-scotland:before,#loco-admin.wrap .region-gb.lang-gd:before,#loco-admin.wrap .variant-valencia:before,#loco-admin.wrap .region-es.variant-valencia:before,#loco-admin.wrap .lang-ca:before,#loco-admin.wrap .region-es.lang-ca:before,#loco-admin.wrap .lang-eo:before,#loco-admin.wrap .lang-eu:before{visibility:hidden}#loco-admin.wrap .lang-zh{background-color:#b90000}#loco-admin.wrap .lang-zh.script-hans:before{content:"中国"}#loco-admin.wrap .lang-zh.script-hant:before{content:"中國"}#loco-admin.wrap .__{background-position:0 0}#loco-admin.wrap .lang-eo{background-position:0 -12px}#loco-admin.wrap .lang-eu{background-position:0 -24px}#loco-admin.wrap .lang-ca,#loco-admin.wrap .region-es.lang-ca{background-position:0 -36px}#loco-admin.wrap .region-tg{background-position:0 -48px}#loco-admin.wrap .region-me{background-position:0 -60px}#loco-admin.wrap .region-la{background-position:0 -73px}#loco-admin.wrap .region-mr{background-position:0 -85px}#loco-admin.wrap .region-ni{background-position:0 -97px}#loco-admin.wrap .region-lv{background-position:0 -109px}#loco-admin.wrap .region-om{background-position:0 -121px}#loco-admin.wrap .region-af{background-position:0 -133px}#loco-admin.wrap .region-cy{background-position:0 -145px}#loco-admin.wrap .region-bj{background-position:0 -157px}#loco-admin.wrap .region-aq{background-position:0 -169px}#loco-admin.wrap .region-cn{background-position:0 -186px}#loco-admin.wrap .region-co{background-position:0 -198px}#loco-admin.wrap .region-cx{background-position:0 -210px}#loco-admin.wrap .region-ag{background-position:0 -222px}#loco-admin.wrap .region-ms{background-position:0 -234px}#loco-admin.wrap .region-md{background-position:0 -246px}#loco-admin.wrap .region-zm{background-position:0 -258px}#loco-admin.wrap .region-vn{background-position:0 -270px}#loco-admin.wrap .region-tf{background-position:0 -282px}#loco-admin.wrap .region-td{background-position:0 -294px}#loco-admin.wrap .region-yt{background-position:0 -306px}#loco-admin.wrap .region-lb{background-position:0 -318px}#loco-admin.wrap .region-mf{background-position:0 -330px}#loco-admin.wrap .region-lu{background-position:0 -347px}#loco-admin.wrap .region-mq{background-position:0 -359px}#loco-admin.wrap .region-cz{background-position:0 -371px}#loco-admin.wrap .region-ae{background-position:0 -383px}#loco-admin.wrap .region-cm{background-position:0 -395px}#loco-admin.wrap .region-bi{background-position:0 -407px}#loco-admin.wrap .region-ar{background-position:0 -419px}#loco-admin.wrap .region-as{background-position:0 -431px}#loco-admin.wrap .region-bh{background-position:0 -443px}#loco-admin.wrap .region-cl{background-position:0 -455px}#loco-admin.wrap .region-ad{background-position:0 -467px}#loco-admin.wrap .region-mp{background-position:0 -479px}#loco-admin.wrap .region-lt{background-position:0 -491px}#loco-admin.wrap .region-mg{background-position:0 -503px}#loco-admin.wrap .region-lc{background-position:0 -515px}#loco-admin.wrap .region-tr{background-position:0 -527px}#loco-admin.wrap .region-ua{background-position:0 -539px}#loco-admin.wrap .region-tv{background-position:0 -551px}#loco-admin.wrap .region-vi{background-position:0 -563px}#loco-admin.wrap .region-mt{background-position:0 -575px}#loco-admin.wrap .region-no{background-position:0 -587px}#loco-admin.wrap .region-mc{background-position:0 -599px}#loco-admin.wrap .region-ch{background-position:0 -611px}#loco-admin.wrap .region-bl{background-position:0 -623px}#loco-admin.wrap .region-aw{background-position:0 -640px}#loco-admin.wrap .region-bz{background-position:0 -652px}#loco-admin.wrap .region-bm{background-position:0 -664px}#loco-admin.wrap .region-ci{background-position:0 -676px}#loco-admin.wrap .region-mu{background-position:0 -688px}#loco-admin.wrap .region-us{background-position:0 -700px}#loco-admin.wrap .region-tw{background-position:0 -712px}#loco-admin.wrap .region-ye{background-position:0 -724px}#loco-admin.wrap .region-mw{background-position:0 -736px}#loco-admin.wrap .region-nl{background-position:0 -748px}#loco-admin.wrap .region-ls{background-position:0 -760px}#loco-admin.wrap .region-bo{background-position:0 -772px}#loco-admin.wrap .region-at{background-position:0 -784px}#loco-admin.wrap .region-ck{background-position:0 -796px}#loco-admin.wrap .region-by{background-position:0 -808px}#loco-admin.wrap .region-au{background-position:0 -820px}#loco-admin.wrap .region-bn{background-position:0 -832px}#loco-admin.wrap .region-ma{background-position:0 -844px}#loco-admin.wrap .region-nz{background-position:0 -856px}#loco-admin.wrap .region-lr{background-position:0 -868px}#loco-admin.wrap .region-mv{background-position:0 -880px}#loco-admin.wrap .region-tc{background-position:0 -892px}#loco-admin.wrap .region-ug{background-position:0 -904px}#loco-admin.wrap .region-tt{background-position:0 -916px}#loco-admin.wrap .region-pl{background-position:0 -928px}#loco-admin.wrap .region-rs{background-position:0 -940px}#loco-admin.wrap .region-in{background-position:0 -952px}#loco-admin.wrap .region-ge{background-position:0 -964px}#loco-admin.wrap .region-gr{background-position:0 -976px}#loco-admin.wrap .region-gs{background-position:0 -988px}#loco-admin.wrap .region-gd{background-position:0 -1000px}#loco-admin.wrap .region-io{background-position:0 -1012px}#loco-admin.wrap .region-hk{background-position:0 -1024px}#loco-admin.wrap .region-kp{background-position:0 -1036px}#loco-admin.wrap .region-kg{background-position:0 -1048px}#loco-admin.wrap .region-pm{background-position:0 -1060px}#loco-admin.wrap .region-sv{background-position:0 -1072px}#loco-admin.wrap .region-re{background-position:0 -1084px}#loco-admin.wrap .region-sa{background-position:0 -1096px}#loco-admin.wrap .region-sc{background-position:0 -1108px}#loco-admin.wrap .region-st{background-position:0 -1120px}#loco-admin.wrap .region-ke{background-position:0 -1132px}#loco-admin.wrap .region-im{background-position:0 -1144px}#loco-admin.wrap .region-kr{background-position:0 -1161px}#loco-admin.wrap .region-gf{background-position:0 -1173px}#loco-admin.wrap .region-dj{background-position:0 -1185px}#loco-admin.wrap .region-gq{background-position:0 -1197px}#loco-admin.wrap .region-gp{background-position:0 -1209px}#loco-admin.wrap .region-dk{background-position:0 -1221px}#loco-admin.wrap .region-gg{background-position:0 -1233px}#loco-admin.wrap .region-il{background-position:0 -1250px}#loco-admin.wrap .region-pn{background-position:0 -1262px}#loco-admin.wrap .region-sb{background-position:0 -1274px}#loco-admin.wrap .region-py{background-position:0 -1286px}#loco-admin.wrap .region-ru{background-position:0 -1298px}#loco-admin.wrap .region-kw{background-position:0 -1310px}#loco-admin.wrap .region-do{background-position:0 -1322px}#loco-admin.wrap .region-gt{background-position:0 -1334px}#loco-admin.wrap .region-gb{background-position:0 -1346px}#loco-admin.wrap .region-gu{background-position:0 -1358px}#loco-admin.wrap .region-je{background-position:0 -1370px}#loco-admin.wrap .region-hm{background-position:0 -1387px}#loco-admin.wrap .region-sg{background-position:0 -1399px}#loco-admin.wrap .region-pk{background-position:0 -1411px}#loco-admin.wrap .region-sr{background-position:0 -1423px}#loco-admin.wrap .region-se{background-position:0 -1435px}#loco-admin.wrap .region-jp{background-position:0 -1447px}#loco-admin.wrap .region-gw{background-position:0 -1459px}#loco-admin.wrap .region-eh{background-position:0 -1471px}#loco-admin.wrap .region-dz{background-position:0 -1483px}#loco-admin.wrap .region-ga{background-position:0 -1495px}#loco-admin.wrap .region-fr{background-position:0 -1507px}#loco-admin.wrap .region-dm{background-position:0 -1519px}#loco-admin.wrap .region-hn{background-position:0 -1531px}#loco-admin.wrap .region-sd{background-position:0 -1543px}#loco-admin.wrap .region-rw{background-position:0 -1555px}#loco-admin.wrap .region-ph{background-position:0 -1567px}#loco-admin.wrap .region-ss{background-position:0 -1579px}#loco-admin.wrap .region-qa{background-position:0 -1596px}#loco-admin.wrap .region-pe{background-position:0 -1608px}#loco-admin.wrap .region-pr{background-position:0 -1620px}#loco-admin.wrap .region-si{background-position:0 -1632px}#loco-admin.wrap .region-ht{background-position:0 -1644px}#loco-admin.wrap .region-es{background-position:0 -1656px}#loco-admin.wrap .region-gl{background-position:0 -1668px}#loco-admin.wrap .region-gm{background-position:0 -1680px}#loco-admin.wrap .region-er{background-position:0 -1692px}#loco-admin.wrap .region-fi{background-position:0 -1704px}#loco-admin.wrap .region-ee{background-position:0 -1716px}#loco-admin.wrap .region-kn{background-position:0 -1728px}#loco-admin.wrap .region-hu{background-position:0 -1740px}#loco-admin.wrap .region-iq{background-position:0 -1752px}#loco-admin.wrap .region-ky{background-position:0 -1764px}#loco-admin.wrap .region-sh{background-position:0 -1776px}#loco-admin.wrap .region-ps{background-position:0 -1788px}#loco-admin.wrap .region-pf{background-position:0 -1800px}#loco-admin.wrap .region-sj{background-position:0 -1812px}#loco-admin.wrap .region-id{background-position:0 -1824px}#loco-admin.wrap .region-is{background-position:0 -1836px}#loco-admin.wrap .region-eg{background-position:0 -1848px}#loco-admin.wrap .region-fk{background-position:0 -1860px}#loco-admin.wrap .region-fj{background-position:0 -1872px}#loco-admin.wrap .region-gn{background-position:0 -1884px}#loco-admin.wrap .region-gy{background-position:0 -1896px}#loco-admin.wrap .region-ir{background-position:0 -1908px}#loco-admin.wrap .region-km{background-position:0 -1920px}#loco-admin.wrap .region-ie{background-position:0 -1932px}#loco-admin.wrap .region-kz{background-position:0 -1944px}#loco-admin.wrap .region-ro{background-position:0 -1956px}#loco-admin.wrap .region-sk{background-position:0 -1968px}#loco-admin.wrap .region-pg{background-position:0 -1980px}#loco-admin.wrap .region-pt{background-position:0 -1992px}#loco-admin.wrap .region-so{background-position:0 -2004px}#loco-admin.wrap .region-sx{background-position:0 -2016px}#loco-admin.wrap .region-hr{background-position:0 -2033px}#loco-admin.wrap .region-ki{background-position:0 -2045px}#loco-admin.wrap .region-jm{background-position:0 -2057px}#loco-admin.wrap .region-ec{background-position:0 -2069px}#loco-admin.wrap .region-et{background-position:0 -2081px}#loco-admin.wrap .region-fo{background-position:0 -2093px}#loco-admin.wrap .region-kh{background-position:0 -2105px}#loco-admin.wrap .region-sy{background-position:0 -2117px}#loco-admin.wrap .region-sn{background-position:0 -2129px}#loco-admin.wrap .region-pw{background-position:0 -2141px}#loco-admin.wrap .region-sl{background-position:0 -2153px}#loco-admin.wrap .region-fm{background-position:0 -2165px}#loco-admin.wrap .region-gi{background-position:0 -2177px}#loco-admin.wrap .region-de{background-position:0 -2189px}#loco-admin.wrap .region-gh{background-position:0 -2201px}#loco-admin.wrap .region-jo{background-position:0 -2213px}#loco-admin.wrap .region-it{background-position:0 -2225px}#loco-admin.wrap .region-pa{background-position:0 -2237px}#loco-admin.wrap .region-sz{background-position:0 -2249px}#loco-admin.wrap .region-sm{background-position:0 -2261px}#loco-admin.wrap .region-tn{background-position:0 -2273px}#loco-admin.wrap .region-ml{background-position:0 -2285px}#loco-admin.wrap .region-cg{background-position:0 -2297px}#loco-admin.wrap .region-ax{background-position:0 -2309px}#loco-admin.wrap .region-ao{background-position:0 -2321px}#loco-admin.wrap .region-bt{background-position:0 -2333px}#loco-admin.wrap .region-an{background-position:0 -2345px}#loco-admin.wrap .region-bb{background-position:0 -2357px}#loco-admin.wrap .region-cf{background-position:0 -2369px}#loco-admin.wrap .region-mm{background-position:0 -2381px}#loco-admin.wrap .region-li{background-position:0 -2393px}#loco-admin.wrap .region-na{background-position:0 -2405px}#loco-admin.wrap .region-mz{background-position:0 -2417px}#loco-admin.wrap .region-to{background-position:0 -2429px}#loco-admin.wrap .region-vg{background-position:0 -2441px}#loco-admin.wrap .region-ve{background-position:0 -2453px}#loco-admin.wrap .region-tz{background-position:0 -2465px}#loco-admin.wrap .region-tm{background-position:0 -2477px}#loco-admin.wrap .region-mx{background-position:0 -2489px}#loco-admin.wrap .region-nc{background-position:0 -2501px}#loco-admin.wrap .region-mo{background-position:0 -2513px}#loco-admin.wrap .region-lk{background-position:0 -2525px}#loco-admin.wrap .region-cd{background-position:0 -2537px}#loco-admin.wrap .region-al{background-position:0 -2549px}#loco-admin.wrap .region-bw{background-position:0 -2561px}#loco-admin.wrap .region-cs{background-position:0 -2573px}#loco-admin.wrap .region-cr{background-position:0 -2585px}#loco-admin.wrap .region-bv{background-position:0 -2597px}#loco-admin.wrap .region-am{background-position:0 -2609px}#loco-admin.wrap .region-az{background-position:0 -2621px}#loco-admin.wrap .region-ba{background-position:0 -2633px}#loco-admin.wrap .region-mn{background-position:0 -2645px}#loco-admin.wrap .region-nu{background-position:0 -2657px}#loco-admin.wrap .region-my{background-position:0 -2669px}#loco-admin.wrap .region-tl{background-position:0 -2681px}#loco-admin.wrap .region-ws{background-position:0 -2693px}#loco-admin.wrap .region-th{background-position:0 -2705px}#loco-admin.wrap .region-nf{background-position:0 -2717px}#loco-admin.wrap .region-ly{background-position:0 -2729px}#loco-admin.wrap .region-ai{background-position:0 -2741px}#loco-admin.wrap .region-br{background-position:0 -2753px}#loco-admin.wrap .region-cv{background-position:0 -2765px}#loco-admin.wrap .region-be{background-position:0 -2777px}#loco-admin.wrap .region-ca{background-position:0 -2789px}#loco-admin.wrap .region-bd{background-position:0 -2801px}#loco-admin.wrap .region-cw{background-position:0 -2813px}#loco-admin.wrap .region-bs{background-position:0 -2830px}#loco-admin.wrap .region-ng{background-position:0 -2842px}#loco-admin.wrap .region-mk{background-position:0 -2854px}#loco-admin.wrap .region-np{background-position:0 -2866px}#loco-admin.wrap .region-va{background-position:0 -2878px}#loco-admin.wrap .region-uz{background-position:0 -2890px}#loco-admin.wrap .region-um{background-position:0 -2902px}#loco-admin.wrap .region-tk{background-position:0 -2914px}#loco-admin.wrap .region-vc{background-position:0 -2926px}#loco-admin.wrap .region-zw{background-position:0 -2938px}#loco-admin.wrap .region-nr{background-position:0 -2950px}#loco-admin.wrap .region-ne{background-position:0 -2962px}#loco-admin.wrap .region-cu{background-position:0 -2974px}#loco-admin.wrap .region-bq{background-position:0 -2986px}#loco-admin.wrap .region-bf{background-position:0 -2998px}#loco-admin.wrap .region-bg{background-position:0 -3010px}#loco-admin.wrap .region-cc{background-position:0 -3022px}#loco-admin.wrap .region-mh{background-position:0 -3034px}#loco-admin.wrap .region-za{background-position:0 -3046px}#loco-admin.wrap .region-uy{background-position:0 -3058px}#loco-admin.wrap .region-wf{background-position:0 -3070px}#loco-admin.wrap .region-vu{background-position:0 -3082px}#loco-admin.wrap .region-tj{background-position:0 -3094px}#loco-admin.wrap .variant-scotland,#loco-admin.wrap .region-gb.lang-gd{background-position:0 -3106px}#loco-admin.wrap .variant-valencia,#loco-admin.wrap .region-es.variant-valencia{background-position:0 -3118px}#loco-admin.wrap .variant-wales,#loco-admin.wrap .region-gb.lang-cy{background-position:0 -3130px}#loco-admin.wrap .x-eu{background-position:0 -3142px}#loco-admin.wrap span.lang code{display:none}#loco-admin.wrap .icon-notag:before{content:""}#loco-admin.wrap .icon-magnify:before{content:"🔍"}#loco-admin.wrap .icon-python:before{content:"🐍"}#loco-admin.wrap .icon-unicode:before{content:"u"}#loco-admin.wrap .icon-json:before{content:"{"}#loco-admin.wrap .icon-bullist:before{content:""}#loco-admin.wrap .icon-numlist:before{content:""}#loco-admin.wrap .icon-indent:before{content:""}#loco-admin.wrap .icon-outdent:before{content:""}#loco-admin.wrap .icon-link:before{content:""}#loco-admin.wrap .icon-unlink:before{content:""}#loco-admin.wrap .icon-bold:before{content:"B"}#loco-admin.wrap .icon-italic:before{content:"I"}#loco-admin.wrap .icon-translate:before{content:""}#loco-admin.wrap .icon-proj:before{content:""}#loco-admin.wrap .icon-plural:before{content:"᛬"}#loco-admin.wrap .icon-max:before,#loco-admin.wrap .icon-full-screen:before{content:""}#loco-admin.wrap .icon-min:before{content:""}#loco-admin.wrap .icon-sort:before{content:""}#loco-admin.wrap .icon-ok:before,#loco-admin.wrap .notice-success>.has-icon:before,#loco-admin.wrap .notice-success p>strong.has-icon:before{content:"✓"}#loco-admin.wrap .icon-ok-empty:before{content:"🗌"}#loco-admin.wrap .icon-checkbox-checked:before,#loco-admin.wrap .selector.multi li.checked .icon-checkbox:before{content:"☑"}#loco-admin.wrap .icon-checkbox-unchecked:before{content:"☐"}#loco-admin.wrap .icon-checkbox-partial:before{content:"☉"}#loco-admin.wrap .icon-radio-checked:before{content:"⚫"}#loco-admin.wrap .icon-radio-unchecked:before{content:"⚪"}#loco-admin.wrap .icon-ext:before{content:"⬈"}#loco-admin.wrap .icon-share:before{content:""}#loco-admin.wrap .icon-star:before{content:""}#loco-admin.wrap .icon-user:before{content:""}#loco-admin.wrap .icon-remove:before,#loco-admin.wrap a.icon.close:before{content:"×"}#loco-admin.wrap .icon-cog:before{content:""}#loco-admin.wrap .icon-trash:before{content:""}#loco-admin.wrap .icon-time:before,#loco-admin.wrap .icon-history:before{content:""}#loco-admin.wrap .icon-download:before{content:""}#loco-admin.wrap .icon-revert:before{content:""}#loco-admin.wrap .icon-sync:before{content:""}#loco-admin.wrap .icon-lock:before,#loco-admin.wrap .notice-locked>.has-icon:before,#loco-admin.wrap .notice-locked p>strong.has-icon:before{content:""}#loco-admin.wrap .icon-flag:before{content:""}#loco-admin.wrap .icon-tag:before{content:""}#loco-admin.wrap .icon-tags:before{content:""}#loco-admin.wrap .icon-print:before{content:""}#loco-admin.wrap .icon-camera:before{content:""}#loco-admin.wrap .icon-pencil:before{content:""}#loco-admin.wrap .icon-add:before{content:""}#loco-admin.wrap .icon-del:before{content:""}#loco-admin.wrap .icon-clear:before,#loco-admin.wrap a.icon.clear:before{content:""}#loco-admin.wrap .icon-ok-sign:before{content:"✔"}#loco-admin.wrap .icon-help:before{content:"?"}#loco-admin.wrap .icon-info:before,#loco-admin.wrap .notice-info>.has-icon:before,#loco-admin.wrap .notice-info p>strong.has-icon:before{content:"ℹ"}#loco-admin.wrap .icon-cancel:before{content:""}#loco-admin.wrap .icon-warn:before,#loco-admin.wrap .notice-error>.has-icon:before,#loco-admin.wrap .notice-error p>strong.has-icon:before,#loco-admin.wrap .notice-warning>.has-icon:before,#loco-admin.wrap .notice-warning p>strong.has-icon:before{content:""}#loco-admin.wrap .icon-comment:before{content:""}#loco-admin.wrap .icon-bar-chart:before{content:""}#loco-admin.wrap .icon-key:before{content:""}#loco-admin.wrap .icon-cogs:before{content:""}#loco-admin.wrap .icon-comments:before{content:""}#loco-admin.wrap .icon-signout:before{content:""}#loco-admin.wrap .icon-signin:before{content:""}#loco-admin.wrap .icon-upload:before{content:""}#loco-admin.wrap .icon-twitter:before{content:"🐦"}#loco-admin.wrap .icon-facebook:before{content:""}#loco-admin.wrap .icon-github:before{content:""}#loco-admin.wrap .icon-feed:before{content:""}#loco-admin.wrap .icon-globe:before{content:""}#loco-admin.wrap .icon-wrench:before,#loco-admin.wrap .notice-debug>.has-icon:before,#loco-admin.wrap .notice-debug p>strong.has-icon:before{content:""}#loco-admin.wrap .icon-group:before{content:""}#loco-admin.wrap .icon-cloud:before{content:""}#loco-admin.wrap .icon-copy:before{content:""}#loco-admin.wrap .icon-save:before{content:""}#loco-admin.wrap .icon-menu:before{content:""}#loco-admin.wrap .icon-table:before{content:""}#loco-admin.wrap .icon-caret-down:before{content:"▼"}#loco-admin.wrap .icon-caret-up:before{content:"▲"}#loco-admin.wrap .icon-caret-right:before{content:"▶"}#loco-admin.wrap .icon-mail:before{content:""}#loco-admin.wrap .icon-cloud-upload:before{content:""}#loco-admin.wrap .icon-file:before{content:""}#loco-admin.wrap .icon-circle-white:before{content:"⚬"}#loco-admin.wrap .icon-circle-black:before{content:"●"}#loco-admin.wrap .icon-eraser:before{content:""}#loco-admin.wrap .icon-unlock:before{content:""}#loco-admin.wrap .icon-apple:before{content:""}#loco-admin.wrap .icon-android:before{content:""}#loco-admin.wrap .icon-robot:before{content:"🤖"}#loco-admin.wrap .icon-back:before{content:"⬅"}#loco-admin.wrap .icon-next:before{content:"➔"}#loco-admin.wrap .icon-arrow-up:before{content:""}#loco-admin.wrap .icon-calendar:before{content:""}#loco-admin.wrap .icon-ccard:before{content:""}#loco-admin.wrap .icon-caret-left:before{content:"◀"}#loco-admin.wrap .icon-pro:before{content:"⚡"}#loco-admin.wrap .icon-bell:before{content:""}#loco-admin.wrap .icon-code:before{content:""}#loco-admin.wrap .icon-privacy:before{content:"🛡"}#loco-admin.wrap .icon-hellip:before{content:"…"}#loco-admin.wrap .icon-vellip:before{content:"⁞"}#loco-admin.wrap .icon-collapse:before{content:""}#loco-admin.wrap .icon-expand:before{content:""}#loco-admin.wrap .icon-wordpress:before{content:""}#loco-admin.wrap .icon-database:before{content:""}#loco-admin.wrap .icon-restore:before{content:""}#loco-admin.wrap .icon-pilcrow:before{content:"¶"}#loco-admin.wrap .icon,#loco-admin.wrap .has-icon:before,#loco-admin.wrap .has-dashicon:before{speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#loco-admin.wrap .icon,#loco-admin.wrap .has-icon:before{font-family:"loco"}#loco-admin.wrap .has-dashicon:before{font-family:"dashicons";font-size:1.4em}#loco-admin.wrap .has-icon:before,#loco-admin.wrap .has-dashicon:before,#loco-admin.wrap .has-icon>span{display:inline-block;vertical-align:middle}#loco-admin.wrap .only-icon{text-align:center}#loco-admin.wrap .only-icon:before{text-align:center;padding:0}#loco-admin.wrap .only-icon span{display:none}#loco-admin.wrap a,#loco-admin.wrap .wp-core-ui .button-link{text-decoration:none}#loco-admin.wrap h3:hover>a.loco-anchor{color:#ccc}#loco-admin.wrap h3:hover>a.loco-anchor:before{content:"¶"}#loco-admin.wrap .has-lang>span{display:inline-block;vertical-align:middle}#loco-admin.wrap a.has-lang:hover>span:last-child{text-decoration:underline}#loco-admin.wrap h1 ul,#loco-admin.wrap h1 li{margin:0;padding:0}#loco-admin.wrap h1 li{display:inline-block}#loco-admin.wrap h1 li:after{content:"/";color:#999;text-shadow:none;display:inline-block}#loco-admin.wrap h1 li:last-child:after{content:""}#loco-admin.wrap h1 li:last-child a{color:inherit;pointer-events:none;cursor:auto}#loco-admin.wrap h2 span{color:#999;font-weight:normal}#loco-admin.wrap h2 .loco-meta,#loco-admin.wrap h3 .loco-meta{color:inherit;font-size:14px;font-weight:normal;vertical-align:middle}#loco-admin.wrap .wp-list-table td:first-child .icon{width:16px;display:inline-block;text-align:center}#loco-admin.wrap .wp-list-table td{white-space:nowrap}#loco-admin.wrap .wp-list-table td>a,#loco-admin.wrap .wp-list-table td>time{display:inline-block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis;-ms-text-overflow:ellipsis}#loco-admin.wrap .wp-list-table th.loco-sort{cursor:pointer}#loco-admin.wrap .wp-list-table th.loco-sort:hover{color:#000}#loco-admin.wrap .wp-list-table th.loco-sort.loco-asc:after,#loco-admin.wrap .wp-list-table th.loco-sort.loco-desc:after{padding:0 0 0 4px;color:#999}#loco-admin.wrap .wp-list-table th.loco-sort.loco-desc:after{content:"▼"}#loco-admin.wrap .wp-list-table th.loco-sort.loco-asc:after{content:"▲"}#loco-admin.wrap .wp-list-table td.has-row-actions{overflow:visible}#loco-admin.wrap form.loco-filter{display:block;margin-bottom:5px}#loco-admin.wrap form.loco-filter .icon-filter{color:#999}#loco-admin.wrap nav.above-list-table{margin-bottom:1em}#loco-admin.wrap nav.above-list-table a{display:inline-block;margin-right:1em}#loco-admin.wrap .wp-core-ui button.inverted,#loco-admin.wrap .wp-core-ui button.inverted:hover,#loco-admin.wrap .po-fuzzy button.icon-cloud{background:-moz-linear-gradient(top, #cccccc 0%, #e0e0e0 30%, #fefefe 100%);background:-webkit-linear-gradient(top, #cccccc 0%, #e0e0e0 30%, #fefefe 100%);background:linear-gradient(to bottom, #cccccc 0%, #e0e0e0 30%, #fefefe 100%);-webkit-box-shadow:0 1px 0 #fff;-moz-box-shadow:0 1px 0 #fff;box-shadow:0 1px 0 #fff;border-color:gray}#loco-admin.wrap .wp-core-ui button:active,#loco-admin.wrap .wp-core-ui button.inverted:active{border-color:#5b9dd9}#loco-admin.wrap .loco-clearable{display:inline-block;vertical-align:middle;position:relative}#loco-admin.wrap .loco-clearable a.clear,#loco-admin.wrap .auto-comp-wrap a.clear{top:0;right:0;outline:none;margin:0;border:solid 1px transparent;padding:5px 5px;position:absolute;font-size:1em;line-height:normal}#loco-admin.wrap .loco-clearable a.clear:before,#loco-admin.wrap .auto-comp-wrap a.clear:before{vertical-align:middle;padding:0;color:#999}#loco-admin.wrap .loco-clearable a.clear:hover:before,#loco-admin.wrap .auto-comp-wrap a.clear:hover:before{color:#333}#loco-admin.wrap .loco-clearable a.clear span,#loco-admin.wrap .auto-comp-wrap a.clear span{display:none}#loco-admin.wrap .loco-clearable ::-ms-clear,#loco-admin.wrap .auto-comp-wrap ::-ms-clear{display:none}#loco-admin.wrap div.progress{color:#000;background:transparent !important}#loco-admin.wrap div.progress *{height:100%;overflow:hidden;white-space:nowrap}#loco-admin.wrap div.progress .t{background-color:#ddd;border:1px solid #ccc}#loco-admin.wrap div.progress .t .bar{float:left;clear:none;background-color:#3db63d}#loco-admin.wrap div.progress .t .bar.f{background-color:#bd2c00}#loco-admin.wrap div.progress .l{display:block}#loco-admin.wrap td div.progress .t{border:none}#loco-admin.wrap td div.progress .l{display:none}#loco-admin.wrap code.path{color:#333;margin:0;padding:0;display:inline;background:transparent}#loco-admin.wrap .loco-danger{color:#d54e21}#loco-admin.wrap .notice,#loco-admin.wrap .panel{background:#fff;position:relative;margin:1em 0;padding:1px 12px}#loco-admin.wrap .notice-generic{border-color:#ddd}#loco-admin.wrap .notice-success>.has-icon,#loco-admin.wrap .notice-success p>strong.has-icon{color:#000}#loco-admin.wrap .notice-warning{border-color:orange}#loco-admin.wrap .notice-error{border-color:#dc3232}#loco-admin.wrap .notice-debug{border-color:#00a0d2}#loco-admin.wrap .notice-danger{border-color:#dc3232}#loco-admin.wrap .notice-locked{border-color:orange}#loco-admin.wrap .notice>.has-icon:before,#loco-admin.wrap .notice p>strong.has-icon:before{padding-right:6px}#loco-admin.wrap .notice>p>a.button.has-icon:before{width:1.2em}#loco-admin.wrap .notice>p>em{color:#d54e21;font-style:normal}#loco-admin.wrap .notice>p>em a{color:inherit}#loco-admin.wrap .notice>p a:hover,#loco-admin.wrap .notice>nav a:hover{text-decoration:underline}#loco-admin.wrap .notice>p a.button,#loco-admin.wrap .notice>nav a.button{text-decoration:inherit}#loco-admin.wrap .notice.has-nav{display:flex;flex-direction:row}#loco-admin.wrap .notice.has-nav p,#loco-admin.wrap .notice.has-nav nav{line-height:22px;flex-grow:1}#loco-admin.wrap .notice.has-nav nav{text-align:right;padding:2px;margin:.5em 0}#loco-admin.wrap .notice.has-nav.is-dismissible{padding-right:38px}#loco-admin.wrap .notice.has-nav a{white-space:nowrap}#loco-admin.wrap .notice.has-nav nav>span{color:#666}#loco-admin.wrap .notice>h3>span{display:inline-block;vertical-align:middle}#loco-admin.wrap ul.problems li{font-style:italic}#loco-admin.wrap label{position:relative}#loco-admin.wrap label.for-disabled,#loco-admin.wrap label.for-disabled>input{cursor:default !important}#loco-admin.wrap input.regular-text,#loco-admin.wrap textarea.regular-text{width:25em}#loco-admin.wrap .button-link{padding:0 10px 1px}#loco-admin.wrap .button-danger{background:#ba0000;border-color:#900 #600 #600;-webkit-box-shadow:0 1px 0 #600;-moz-box-shadow:0 1px 0 #600;box-shadow:0 1px 0 #600;color:#fff;text-shadow:0 -1px 1px #600,1px 0 1px #600,0 1px 1px #600,-1px 0 1px #600}#loco-admin.wrap .button-success{background:#00b500;border-color:#090 #2e892e #2e892e;-webkit-box-shadow:0 1px 0 #2e892e;-moz-box-shadow:0 1px 0 #2e892e;box-shadow:0 1px 0 #2e892e;color:#fff;text-shadow:0 -1px 1px #2e892e,1px 0 1px #2e892e,0 1px 1px #2e892e,-1px 0 1px #2e892e}#loco-admin.wrap .button-success:hover{background:#3db63d}#loco-admin.wrap .button-danger[disabled],#loco-admin.wrap .button-success[disabled]{text-shadow:none !important}#loco-admin.wrap form button.loco-loading.button-large{padding-left:0}#loco-admin.wrap form button.loco-loading.button-large:before{width:16px;height:16px;margin:0 4px;content:" ";font-size:16px;line-height:1;display:inline-block;vertical-align:sub}#loco-admin.wrap ::placeholder{color:#ccc}#loco-admin.wrap ::-webkit-input-placeholder{color:#ccc}#loco-admin.wrap :-moz-placeholder{color:#ccc;opacity:1}#loco-admin.wrap ::-moz-placeholder{color:#ccc;opacity:1}#loco-admin.wrap :-ms-input-placeholder{color:#ccc}#loco-admin.wrap .ielt10 .placeheld{color:#ccc}#loco-admin.wrap a.has-raquo:after{content:" »"}#loco-admin.wrap a.has-laquo:before{content:"« "}#loco-admin.wrap span.inline-spinner{display:inline-block;min-width:16px;min-height:16px;background:transparent url(../img/spin-modal.gif?v=2.5.6) 0 0 no-repeat}.js #wpbody-content>.notice{display:none}.js #wpbody-content>.notice.inline{display:block}.js #loco-admin.wrap .jshide,.no-js #loco-admin.wrap .jsonly{display:none !important}#loco-admin.wrap .invis{visibility:hidden}.form-table tr td{vertical-align:top}.form-table tr.compact td{padding-top:0}.form-table tr th a.icon-help{display:none}.loco-modal{min-width:50%;min-height:100px}.loco-modal-wide{min-width:90% !important}.loco-modal-no-close .ui-dialog-titlebar-close{display:none}.loco-modal .ui-dialog-titlebar-close{overflow:hidden}.loco-modal.request-filesystem-credentials-dialog{top:15% !important;max-height:85% !important}.loco-modal.request-filesystem-credentials-dialog>.ui-dialog-content{background:inherit}.loco-modal.request-filesystem-credentials-dialog .ftp-password>label>em:last-child{display:none}.ui-dialog-content>div.loco-loading{height:100%;background:transparent url(../img/spin-modal.gif?v=2.5.6) center 20px no-repeat}#loco-po-ref ol li{color:#aaa;margin:0;white-space:pre;padding:0 0 0 1em;font:normal 12px/17px Consolas,Monaco,monospace;background:transparent;border-left:1px solid #eee}#loco-po-ref ol li code{margin:0;padding:0;display:inline;background:inherit}#loco-po-ref ol li.highlighted{color:#666;background-color:#f8eec7}#loco-po-ref ol li.highlighted code.T_CONSTANT_ENCAPSED_STRING{color:#c931c7}#loco-credit>*{vertical-align:middle}#loco-credit>a{display:inline-block;position:relative;overflow:hidden;background:transparent url(../img/logo-foot.gif?v=2.5.6) 0 0 no-repeat;height:30px;width:100px;text-indent:200px;-webkit-transition-duration:0s;transition-duration:0s}#loco-credit>a:hover{background-position:0 -35px}#loco-content{position:relative}#footer-upgrade span:before{color:#ccc;content:" | ";display:inline;padding-left:.5em;padding-right:.5em}#footer-upgrade span:first-child:before{content:"";display:none}.loco-clearfix:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}dl.debug dt{font-weight:bold}dl.debug dt,dl.debug dd{white-space:pre}.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(0,115,170,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#0073aa;foo:#0073aa}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#66c6e4 !important;background:#008ec2 !important;border-color:#008ec2 !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../img/skins/fresh/spin-primary-button.gif?v=2.5.6) 0 0 no-repeat !important}
|
pub/css/editor.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
#loco-editor{border:solid 1px #ccc}#loco-editor ._ajax_loader_f2{background-image:url(../img/ajax-loader-f2.gif?v=2.5.5);background-repeat:no-repeat;min-height:16px}#loco-editor ._ajax_loader_f2x4{background:transparent url(../img/ajax-loader-f2-x4.gif?v=2.5.5) 0 0 no-repeat;min-height:75px}#loco-editor ._ajax_loader_cc{background-image:url(../img/ajax-loader-cc.gif?v=2.5.5);background-repeat:no-repeat;min-height:16px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1),only screen and (min-device-pixel-ratio: 2),only screen and (min-resolution: 192dpi),only screen and (min-resolution: 2dppx){#loco-editor ._ajax_loader_f2{background-image:url(../img/ajax-loader-f2-x2.gif?v=2.5.5);background-size:16px}#loco-editor ._ajax_loader_cc{background-image:url(../img/ajax-loader-cc-x2.gif?v=2.5.5);background-size:16px}}#loco-editor ._green_glow_inner,#loco-editor .is-editable>.wg-content>textarea:focus,#loco-editor .is-editable>.wg-content.has-focus .ace_scroller,#loco-editor .is-editable>.wg-content.has-focus .wysihtml-editor,#loco-editor .is-editable>.wg-content.has-focus .mce-content-body{-webkit-box-shadow:inset 0 0 10px 0 #3db63d;-moz-box-shadow:inset 0 0 10px 0 #3db63d;box-shadow:inset 0 0 10px 0 #3db63d}#loco-editor ._green_glow_outer{-webkit-box-shadow:0 0 .5em 0 #3db63d;-moz-box-shadow:0 0 .5em 0 #3db63d;box-shadow:0 0 .5em 0 #3db63d}#loco-editor .loco-font,#loco-editor .is-table .wg-thead .wg-sortable>header:after{font-family:"loco";speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#loco-editor div.ta-mirror{position:absolute;top:0;border:solid 1px transparent;color:transparent;padding:.4em .6em;pointer-events:none}#loco-editor div.ta-mirror span{position:relative}#loco-editor div.ta-mirror span:after{color:#ccc;white-space:pre;display:inline-block;position:absolute;top:0;line-height:normal}#loco-editor div.ta-mirror .crlf:after{content:"¬"}#loco-editor div.ta-mirror .eof:after{content:"¶"}#loco-editor div.ta-mirror .x20:after{content:"·";color:#aaa}#loco-editor div.ta-mirror .x9:after{content:"⟶"}#loco-editor div.ta-mirror,#loco-editor .has-mirror textarea{white-space:pre-wrap;word-wrap:break-word;word-spacing:0px}#loco-editor .has-mirror ::placeholder{color:transparent}#loco-editor .has-mirror ::-webkit-input-placeholder{color:transparent}#loco-editor .has-mirror :-moz-placeholder{color:transparent;opacity:1}#loco-editor .has-mirror ::-moz-placeholder{color:transparent;opacity:1}#loco-editor .has-mirror :-ms-input-placeholder{color:transparent}#loco-editor .has-mirror .ielt10 .placeheld{color:transparent}#loco-editor div.ta-mirror{left:0;text-align:left}#loco-editor div.ta-mirror span:after{left:0}#loco-editor div.ta-mirror .eol:after{padding-left:.2em}#loco-editor [dir=RTL] div.ta-mirror{left:auto;right:0;text-align:right}#loco-editor [dir=RTL] div.ta-mirror span:after{right:0}#loco-editor [dir=RTL] div.ta-mirror .eol:after{padding-left:0;padding-right:.2em}#loco-editor .has-proxy>textarea{display:none !important}#loco-editor .has-proxy .ace_editor{height:100%;font-size:13px !important;line-height:1.4 !important}#loco-editor .has-proxy .ace_editor .ace_marker-layer .ace_bracket{display:none}#loco-editor .has-proxy .ace_print-margin{display:none}#loco-editor .ace_printf{color:#b90690;background-color:#edf1be}#loco-editor .ace_locked{color:gray}#loco-editor .ace_icu-quoted{color:gray}#loco-editor .ace_icu{color:#697eb9}#loco-editor .ace_icu.ace_name{color:#b90600}#loco-editor .resizer{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0 0 6px 0;background:#f0f0f0 url(../img/wg/splity.png?v=2.5.5) center bottom no-repeat;border:1px solid #ddd;overflow:hidden;cursor:move;cursor:row-resize;cursor:s-resize}#loco-editor .resizer>*{height:100%;border:none}#loco-editor ._ajax_loader_f2{background-image:url(../img/ajax-loader-f2.gif?v=2.5.5);background-repeat:no-repeat;min-height:16px}#loco-editor ._ajax_loader_f2x4{background:transparent url(../img/ajax-loader-f2-x4.gif?v=2.5.5) 0 0 no-repeat;min-height:75px}#loco-editor ._ajax_loader_cc{background-image:url(../img/ajax-loader-cc.gif?v=2.5.5);background-repeat:no-repeat;min-height:16px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1),only screen and (min-device-pixel-ratio: 2),only screen and (min-resolution: 192dpi),only screen and (min-resolution: 2dppx){#loco-editor ._ajax_loader_f2{background-image:url(../img/ajax-loader-f2-x2.gif?v=2.5.5);background-size:16px}#loco-editor ._ajax_loader_cc{background-image:url(../img/ajax-loader-cc-x2.gif?v=2.5.5);background-size:16px}}#loco-editor ._green_glow_inner,#loco-editor .is-editable>.wg-content>textarea:focus,#loco-editor .is-editable>.wg-content.has-focus .ace_scroller,#loco-editor .is-editable>.wg-content.has-focus .wysihtml-editor,#loco-editor .is-editable>.wg-content.has-focus .mce-content-body{-webkit-box-shadow:inset 0 0 10px 0 #3db63d;-moz-box-shadow:inset 0 0 10px 0 #3db63d;box-shadow:inset 0 0 10px 0 #3db63d}#loco-editor ._green_glow_outer{-webkit-box-shadow:0 0 .5em 0 #3db63d;-moz-box-shadow:0 0 .5em 0 #3db63d;box-shadow:0 0 .5em 0 #3db63d}#loco-editor .loco-font,#loco-editor .is-table .wg-thead .wg-sortable>header:after{font-family:"loco";speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#loco-editor .wg-cell,#loco-editor .wg-cell>div{clear:both;position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;outline:none}#loco-editor .wg-cell{left:0;top:0;padding:0;margin:0;overflow:hidden}#loco-editor .wg-split{background:#eee}#loco-editor .wg-body:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}#loco-editor .wg-split-x>div>.not-first>*{margin-left:6px}#loco-editor .wg-split-y>div>.not-first>*{margin-top:6px}#loco-editor .wg-split>div>.has-title .wg-content{margin-top:0}#loco-editor .wg-split-x>div>.wg-cell{float:left;clear:none;height:100%}#loco-editor .wg-split-x>div{cursor:move;cursor:ew-resize;cursor:col-resize}#loco-editor .wg-split>div>.not-first:before{display:block;position:absolute;overflow:hidden;content:" "}#loco-editor .wg-split-x>div>.not-first:before{width:6px;height:100%;background:transparent url(../img/wg/splitx.png?v=2.5.5) center center no-repeat}#loco-editor .wg-split-y>div{cursor:move;cursor:ns-resize;cursor:row-resize}#loco-editor .wg-split-y>div>.not-first:before{height:6px;width:100%;background:transparent url(../img/wg/splity.png?v=2.5.5) center center no-repeat}#loco-editor .wg-split>div.locked{cursor:default}#loco-editor .wg-split-x>div.locked>.not-first>*{margin-left:0px}#loco-editor .wg-split-y>div.locked>.not-first>*{margin-top:0px}#loco-editor .wg-split>div.locked>.not-first:before{display:none}#loco-editor .has-title>header{background:#e2e2e2;cursor:default !important;margin:0;white-space:nowrap}#loco-editor .wg-content{background:#fff;cursor:default;padding:4px 6px;overflow:hidden;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#loco-editor .wg-toolbar{top:0;right:0;margin-top:6px;position:absolute}#loco-editor .wg-toolbar>span{color:#fff;background:#000;display:block;padding:0 6px;cursor:default !important}#loco-editor .wg-toolbar>span:active{color:#000;background-color:#fff}#loco-editor .wg-content,#loco-editor .wg-tbody>div{overflow:scroll;overflow-x:hidden;overflow-y:auto}#loco-editor .is-table{background-color:#fff}#loco-editor .is-table .wg-thead .has-title>header{font-weight:normal;background:transparent;padding:4px 0;margin:0 0 0 10px}#loco-editor .is-table .wg-thead>div>.not-first:before{background-position:center center}#loco-editor .is-table .wg-thead{background:#e2e2e2;border-bottom:solid 1px #ccc}#loco-editor .is-table .wg-tbody{background-image:url(data:image/gif;base64,R0lGODlhAQAsAIABAPz8/P///yH5BAEAAAEALAAAAAABACwAAAIIjI+pAe0PIygAOw==);position:relative}#loco-editor .is-table .wg-cols>div{float:left;clear:none}#loco-editor .is-table .wg-cols>div>div{white-space:nowrap;line-height:1.7em;padding-left:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis;-ms-text-overflow:ellipsis;background-color:#fff}#loco-editor .is-table .wg-cols>div>div:nth-child(even){background-color:#f7f7f7}#loco-editor .is-table .wg-cols>div>div.selected{background-color:#3db63d;color:#fff}#loco-editor .is-table .wg-cols>div>div.selected::selection{background-color:#fff;color:#000}#loco-editor .is-table .wg-cols>div:first-child>div{padding-left:4px}#loco-editor .is-table .wg-dead{clear:both}#loco-editor .is-table .wg-thead .wg-sortable>header{cursor:pointer !important}#loco-editor .is-table .wg-thead .wg-sortable>header:after{padding:0 0 0 5px;color:#999}#loco-editor .is-table .wg-thead .wg-sortable.wg-asc>header:after{content:"▲"}#loco-editor .is-table .wg-thead .wg-sortable.wg-desc>header:after{content:"▼"}#loco-editor .is-table .wg-thead .wg-sortable:hover>header:after{color:#000}#loco-editor .is-field>.wg-content{cursor:text;padding:0;line-height:normal;overflow:hidden;overflow-y:hidden}#loco-editor .is-field>.wg-content>div,#loco-editor .is-field>.wg-content>textarea{font-size:14px;line-height:1.4;border:1px solid #ddd;width:100%;height:100%;padding:8px 10px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;-o-border-radius:0;border-radius:0}#loco-editor .is-field>.wg-content textarea{resize:none;overflow:auto;display:block}#loco-editor .is-field>.wg-content>.ace_editor{padding:0;border-width:0}#loco-editor .is-field>.wg-content>div[contenteditable]{overflow:scroll;overflow-x:hidden;overflow-y:auto}#loco-editor .is-readonly>.wg-content{cursor:default}#loco-editor .is-readonly>.wg-content>div,#loco-editor .is-readonly>.wg-content>textarea,#loco-editor .is-readonly>.wg-content>textarea[readonly]{background:#f8f8f8;text-shadow:0 1px #fff;color:inherit}#loco-editor .is-readonly>.wg-content .ace_scroller{cursor:default;background:#f8f8f8}#loco-editor .is-readonly>.wg-content .ace_cursor-layer{display:none}#loco-editor .is-readonly>.wg-content>textarea[readonly]{cursor:default}#loco-editor .is-editable>.wg-content[dir=RTL] .ace_editor .ace_line{direction:ltr;unicode-bidi:bidi-override}#loco-editor .wg-split-x>nav.wg-tabs{white-space:nowrap;text-align:center;cursor:default}#loco-editor .wg-split-x>nav.wg-tabs>a{display:inline-block;padding:.5em 1em;margin-top:.2em;color:#000;text-decoration:none;-webkit-border-radius:.2em .2em 0 0;-moz-border-radius:.2em .2em 0 0;-ms-border-radius:.2em .2em 0 0;-o-border-radius:.2em .2em 0 0;border-radius:.2em .2em 0 0;background-color:#f3f7fd}#loco-editor .wg-split-x>nav.wg-tabs>a:hover{background-color:#fff}#loco-editor .wg-split-x>nav.wg-tabs>a.active{background-color:#3db63d;color:#fff}#loco-editor .wg-split>div>.has-nav>.wg-body{margin-top:0px}#loco-editor .wg-dead{visibility:hidden}@media all and (max-width: 768px){#loco-editor .wg-split-x>div>.not-first>*{margin-left:20px}#loco-editor .wg-split-y>div>.not-first>*{margin-top:20px}#loco-editor .wg-split-x>div>.not-first:before{width:20px}#loco-editor .wg-split-y>div>.not-first:before{height:20px}#loco-editor .is-table .wg-thead header{padding-left:20px}}#loco-editor .is-table .po-fuzzy{color:#b59829;font-weight:bold}#loco-editor .is-table .po-empty{color:#1f507a;font-weight:bold}#loco-editor .is-table .po-flagged{color:#bd2c00}#loco-editor .is-table .wg-cols>div:first-child>div:before{font-family:loco;vertical-align:inherit;display:inline-block;content:" ";width:1.3em;line-height:1}#loco-editor .is-table .wg-cols>div:first-child>div.po-fuzzy:before{content:""}#loco-editor .is-table .wg-cols>div:first-child>div.po-flagged:before{content:""}#loco-editor .is-table .wg-cols>div:first-child>div.po-comment:before{content:"";color:#999}#loco-editor .is-table .wg-cols>div:first-child>div.po-unsaved:before{content:"";color:#f1d040}#loco-editor .is-table .wg-cols>div:first-child>div.selected:before{color:#fff !important}#loco-editor .wg-cell>.meta{color:#333;margin:0 !important;padding:6px 10px;font-weight:normal;font-size:13px;line-height:1.4em;cursor:default !important}#loco-editor .wg-cell>.meta>*{display:inline-block;margin-top:3px;margin-bottom:3px}#loco-editor .wg-cell>.meta>span{border:1px solid transparent;border-left:none}#loco-editor .wg-cell>.meta>mark{color:#fff;border-radius:2px;background-color:silver;border:1px solid silver;padding:0 .3em}#loco-editor .wg-cell>.meta>mark.tag{color:#999;background-color:#eee}#loco-editor .wg-cell>.meta>p{display:block;white-space:pre-line}#loco-editor .wg-cell>.meta .icon-warn{color:#c00}#loco-editor .wg-cell>.meta .has-icon:before{padding-right:0;width:17px}#loco-editor .wg-cell>.meta code{font-size:12px}#loco-editor .is-table .wg-cols>div>div>mark{display:inline-block;vertical-align:text-bottom;font:inherit;font-weight:normal;color:#fff;border-radius:2px;font-size:90%;line-height:1;padding:.2em .3em;background-color:rgba(0,0,0,.25)}#loco-editor .is-table .wg-cols>div>div.selected.po-flagged{background-color:#bd2c00}#loco-editor .is-table .wg-cols>div>div.selected.po-fuzzy{background-color:#b59829}#loco-editor .is-table .wg-cols>div>div.selected.po-empty{background-color:#999}#loco-editor #po-target header nav{display:block;position:absolute;right:0px;top:0px;padding:2px}#loco-editor #po-target header nav button{margin-left:5px}#loco-editor #po-target header nav.po-empty .icon-cloud{display:none !important}#loco-editor #po-list .wg-content{padding:0}#loco-editor #po-source>.wg-body>.has-title>header{background:transparent;font-weight:normal;float:left;clear:none;min-width:3.4em}#loco-editor #po-source>.wg-body>.has-title>.wg-content{clear:none}#loco-editor .has-title>header{line-height:normal;padding:6px}#loco-editor .has-title>header .lang{margin-right:6px;margin-bottom:1px}#loco-editor .trg-rtl #po-list-tbody .wg-cols>div[for=po-list-col-target]>div,#loco-editor .src-rtl #po-list-tbody .wg-cols>div[for=po-list-col-source]>div{direction:rtl;padding-left:0;padding-right:10px;text-align:right}#loco-editor #po-source>.wg-body>.has-title>h2{min-width:4.5em}#loco-editor .is-table .wg-td{font-size:13px}#loco-editor header,#loco-editor nav{display:block;position:relative}#loco-editor-inner{min-height:600px;font-size:14px;clear:both}#loco-editor-inner>div.loco-loading{height:100px;background:transparent url(../img/spin-editor-button.gif?v=2.5.5) center 20px no-repeat}#loco-editor-inner h2{color:#000;line-height:1}#loco-editor-inner .wg-cell>.meta code{padding:0;color:#0073aa;background:inherit;cursor:pointer}#loco-editor-inner .wg-cell>.meta code:hover{text-decoration:underline}#loco-admin.wrap #loco-editor>nav{font-size:14px;height:50px}#loco-admin.wrap #loco-editor>nav form{display:block;float:left;clear:none;padding:0;margin:0}#loco-admin.wrap #loco-editor>nav form.aux{float:right;margin-right:5px}#loco-admin.wrap #loco-editor>nav fieldset{display:block;position:relative;float:left;clear:none}#loco-admin.wrap #loco-editor>nav button,#loco-admin.wrap #loco-editor>nav input[type=text]{display:block;position:relative;float:left;clear:none;margin:5px 0 0 5px;height:36px;text-align:left;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#loco-admin.wrap #loco-editor>nav input[type=text]{padding:0 10px;font-size:14px;line-height:normal}#loco-admin.wrap #loco-editor>nav .invalid input[type=text]:focus{border-color:#c00;-webkit-box-shadow:0 0 2px rgba(153,0,0,.5);-moz-box-shadow:0 0 2px rgba(153,0,0,.5);box-shadow:0 0 2px rgba(153,0,0,.5)}#loco-admin.wrap #loco-editor>nav .loco-clearable{padding:0 20px}#loco-admin.wrap #loco-editor>nav .loco-clearable.invalid a.clear:before{color:#c00}#loco-admin.wrap #loco-editor>nav .loco-clearable a.clear{right:25px;line-height:2}#loco-admin.wrap #loco-editor>nav .loco-clearable a.clear:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}#loco-admin.wrap #loco-editor>nav .loco-clearable a.clear:hover:before{color:#c00}#loco-admin.wrap #loco-editor>nav .loco-clearable a.clear:active:before{color:#000}#loco-admin.wrap #loco-editor>nav button.only-icon{width:40px}#loco-admin.wrap button.has-icon:before{width:16px;padding:0}#loco-admin.wrap button.has-icon.loco-loading:before{content:" ";height:16px;background:transparent url(../img/spin-editor-button.gif?v=2.5.5) 0 0 no-repeat}#loco-admin.wrap .button,#loco-admin.wrap .button-link,#loco-admin.wrap input[type=text]{border-color:#aaa;color:#444}#loco-admin.wrap .button:hover,#loco-admin.wrap .button-link:hover{color:#000}#loco-admin.wrap .button-primary,#loco-admin.wrap .button-primary:hover{color:#fff}#loco-admin.wrap button.icon-translate:before{font-size:16px}.loco-modal .loco-api{position:relative;padding:10px;background:#f7f7f7;border:solid 1px #eee;font-size:14px;margin-bottom:16px}.loco-modal .loco-api p{padding:0;margin:0;font-size:inherit}.loco-modal .loco-api blockquote{font-weight:bold;margin:0;padding:10px 0}.loco-modal .loco-api a.loco-api-credit{padding:0;display:block;position:absolute;right:10px;bottom:10px;text-decoration:none;white-space:nowrap;overflow:hidden;font-size:12px}.loco-modal .loco-api a.loco-api-credit:hover{text-decoration:underline}.loco-modal .loco-api-loading{text-indent:20px;background:transparent url(../img/spin-modal.gif?v=2.5.5) 10px center no-repeat}.loco-modal .loco-alert p{margin-bottom:2em;font-size:14px}.loco-modal .loco-alert nav{display:block;position:relative;margin:1em 0}.loco-modal .loco-alert nav a{display:inline-block;margin-right:1em;padding:10px}#loco-auto{display:none;min-width:50%;min-height:300px;position:relative}#loco-auto form blockquote{margin:0;padding:1em 0;font-size:14px}.loco-api a.loco-api-credit{color:inherit}.loco-api-yandex a.loco-api-credit:before{content:"Powered by "}.loco-api-google a.loco-api-credit{text-indent:200px;width:122px;height:16px;background:transparent url(../img/api/google.png?v=2.5.5) 0 0 no-repeat}.loco-api-microsoft a.loco-api-credit{text-indent:200px;width:152px;height:16px;background:transparent url(../img/api/microsoft.png?v=2.5.5) 0 0 no-repeat}.loco-api-deepl a.loco-api-credit{text-indent:200px;width:122px;height:16px;background:transparent url(../img/api/deepl.png?v=2.5.5) 0 0 no-repeat}
|
1 |
+
#loco-editor{border:solid 1px #ccc}#loco-editor ._ajax_loader_f2{background-image:url(../img/ajax-loader-f2.gif?v=2.5.6);background-repeat:no-repeat;min-height:16px}#loco-editor ._ajax_loader_f2x4{background:transparent url(../img/ajax-loader-f2-x4.gif?v=2.5.6) 0 0 no-repeat;min-height:75px}#loco-editor ._ajax_loader_cc{background-image:url(../img/ajax-loader-cc.gif?v=2.5.6);background-repeat:no-repeat;min-height:16px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1),only screen and (min-device-pixel-ratio: 2),only screen and (min-resolution: 192dpi),only screen and (min-resolution: 2dppx){#loco-editor ._ajax_loader_f2{background-image:url(../img/ajax-loader-f2-x2.gif?v=2.5.6);background-size:16px}#loco-editor ._ajax_loader_cc{background-image:url(../img/ajax-loader-cc-x2.gif?v=2.5.6);background-size:16px}}#loco-editor ._green_glow_inner,#loco-editor .is-editable>.wg-content>textarea:focus,#loco-editor .is-editable>.wg-content.has-focus .ace_scroller,#loco-editor .is-editable>.wg-content.has-focus .wysihtml-editor,#loco-editor .is-editable>.wg-content.has-focus .mce-content-body{-webkit-box-shadow:inset 0 0 10px 0 #3db63d;-moz-box-shadow:inset 0 0 10px 0 #3db63d;box-shadow:inset 0 0 10px 0 #3db63d}#loco-editor ._green_glow_outer{-webkit-box-shadow:0 0 .5em 0 #3db63d;-moz-box-shadow:0 0 .5em 0 #3db63d;box-shadow:0 0 .5em 0 #3db63d}#loco-editor .loco-font,#loco-editor .is-table .wg-thead .wg-sortable>header:after{font-family:"loco";speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#loco-editor div.ta-mirror{position:absolute;top:0;border:solid 1px transparent;color:transparent;padding:.4em .6em;pointer-events:none}#loco-editor div.ta-mirror span{position:relative}#loco-editor div.ta-mirror span:after{color:#ccc;white-space:pre;display:inline-block;position:absolute;top:0;line-height:normal}#loco-editor div.ta-mirror .crlf:after{content:"¬"}#loco-editor div.ta-mirror .eof:after{content:"¶"}#loco-editor div.ta-mirror .x20:after{content:"·";color:#aaa}#loco-editor div.ta-mirror .x9:after{content:"⟶"}#loco-editor div.ta-mirror,#loco-editor .has-mirror textarea{white-space:pre-wrap;word-wrap:break-word;word-spacing:0px}#loco-editor .has-mirror ::placeholder{color:transparent}#loco-editor .has-mirror ::-webkit-input-placeholder{color:transparent}#loco-editor .has-mirror :-moz-placeholder{color:transparent;opacity:1}#loco-editor .has-mirror ::-moz-placeholder{color:transparent;opacity:1}#loco-editor .has-mirror :-ms-input-placeholder{color:transparent}#loco-editor .has-mirror .ielt10 .placeheld{color:transparent}#loco-editor div.ta-mirror{left:0;text-align:left}#loco-editor div.ta-mirror span:after{left:0}#loco-editor div.ta-mirror .eol:after{padding-left:.2em}#loco-editor [dir=RTL] div.ta-mirror{left:auto;right:0;text-align:right}#loco-editor [dir=RTL] div.ta-mirror span:after{right:0}#loco-editor [dir=RTL] div.ta-mirror .eol:after{padding-left:0;padding-right:.2em}#loco-editor .has-proxy>textarea{display:none !important}#loco-editor .has-proxy .ace_editor{height:100%;font-size:13px !important;line-height:1.4 !important}#loco-editor .has-proxy .ace_editor .ace_marker-layer .ace_bracket{display:none}#loco-editor .has-proxy .ace_print-margin{display:none}#loco-editor .ace_printf{color:#b90690;background-color:#edf1be}#loco-editor .ace_locked{color:gray}#loco-editor .ace_icu-quoted{color:gray}#loco-editor .ace_icu{color:#697eb9}#loco-editor .ace_icu.ace_name{color:#b90600}#loco-editor .resizer{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0 0 6px 0;background:#f0f0f0 url(../img/wg/splity.png?v=2.5.6) center bottom no-repeat;border:1px solid #ddd;overflow:hidden;cursor:move;cursor:row-resize;cursor:s-resize}#loco-editor .resizer>*{height:100%;border:none}#loco-editor ._ajax_loader_f2{background-image:url(../img/ajax-loader-f2.gif?v=2.5.6);background-repeat:no-repeat;min-height:16px}#loco-editor ._ajax_loader_f2x4{background:transparent url(../img/ajax-loader-f2-x4.gif?v=2.5.6) 0 0 no-repeat;min-height:75px}#loco-editor ._ajax_loader_cc{background-image:url(../img/ajax-loader-cc.gif?v=2.5.6);background-repeat:no-repeat;min-height:16px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1),only screen and (min-device-pixel-ratio: 2),only screen and (min-resolution: 192dpi),only screen and (min-resolution: 2dppx){#loco-editor ._ajax_loader_f2{background-image:url(../img/ajax-loader-f2-x2.gif?v=2.5.6);background-size:16px}#loco-editor ._ajax_loader_cc{background-image:url(../img/ajax-loader-cc-x2.gif?v=2.5.6);background-size:16px}}#loco-editor ._green_glow_inner,#loco-editor .is-editable>.wg-content>textarea:focus,#loco-editor .is-editable>.wg-content.has-focus .ace_scroller,#loco-editor .is-editable>.wg-content.has-focus .wysihtml-editor,#loco-editor .is-editable>.wg-content.has-focus .mce-content-body{-webkit-box-shadow:inset 0 0 10px 0 #3db63d;-moz-box-shadow:inset 0 0 10px 0 #3db63d;box-shadow:inset 0 0 10px 0 #3db63d}#loco-editor ._green_glow_outer{-webkit-box-shadow:0 0 .5em 0 #3db63d;-moz-box-shadow:0 0 .5em 0 #3db63d;box-shadow:0 0 .5em 0 #3db63d}#loco-editor .loco-font,#loco-editor .is-table .wg-thead .wg-sortable>header:after{font-family:"loco";speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#loco-editor .wg-cell,#loco-editor .wg-cell>div{clear:both;position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;outline:none}#loco-editor .wg-cell{left:0;top:0;padding:0;margin:0;overflow:hidden}#loco-editor .wg-split{background:#eee}#loco-editor .wg-body:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}#loco-editor .wg-split-x>div>.not-first>*{margin-left:6px}#loco-editor .wg-split-y>div>.not-first>*{margin-top:6px}#loco-editor .wg-split>div>.has-title .wg-content{margin-top:0}#loco-editor .wg-split-x>div>.wg-cell{float:left;clear:none;height:100%}#loco-editor .wg-split-x>div{cursor:move;cursor:ew-resize;cursor:col-resize}#loco-editor .wg-split>div>.not-first:before{display:block;position:absolute;overflow:hidden;content:" "}#loco-editor .wg-split-x>div>.not-first:before{width:6px;height:100%;background:transparent url(../img/wg/splitx.png?v=2.5.6) center center no-repeat}#loco-editor .wg-split-y>div{cursor:move;cursor:ns-resize;cursor:row-resize}#loco-editor .wg-split-y>div>.not-first:before{height:6px;width:100%;background:transparent url(../img/wg/splity.png?v=2.5.6) center center no-repeat}#loco-editor .wg-split>div.locked{cursor:default}#loco-editor .wg-split-x>div.locked>.not-first>*{margin-left:0px}#loco-editor .wg-split-y>div.locked>.not-first>*{margin-top:0px}#loco-editor .wg-split>div.locked>.not-first:before{display:none}#loco-editor .has-title>header{background:#e2e2e2;cursor:default !important;margin:0;white-space:nowrap}#loco-editor .wg-content{background:#fff;cursor:default;padding:4px 6px;overflow:hidden;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#loco-editor .wg-toolbar{top:0;right:0;margin-top:6px;position:absolute}#loco-editor .wg-toolbar>span{color:#fff;background:#000;display:block;padding:0 6px;cursor:default !important}#loco-editor .wg-toolbar>span:active{color:#000;background-color:#fff}#loco-editor .wg-content,#loco-editor .wg-tbody>div{overflow:scroll;overflow-x:hidden;overflow-y:auto}#loco-editor .is-table{background-color:#fff}#loco-editor .is-table .wg-thead .has-title>header{font-weight:normal;background:transparent;padding:4px 0;margin:0 0 0 10px}#loco-editor .is-table .wg-thead>div>.not-first:before{background-position:center center}#loco-editor .is-table .wg-thead{background:#e2e2e2;border-bottom:solid 1px #ccc}#loco-editor .is-table .wg-tbody{background-image:url(data:image/gif;base64,R0lGODlhAQAsAIABAPz8/P///yH5BAEAAAEALAAAAAABACwAAAIIjI+pAe0PIygAOw==);position:relative}#loco-editor .is-table .wg-cols>div{float:left;clear:none}#loco-editor .is-table .wg-cols>div>div{white-space:nowrap;line-height:1.7em;padding-left:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis;-ms-text-overflow:ellipsis;background-color:#fff}#loco-editor .is-table .wg-cols>div>div:nth-child(even){background-color:#f7f7f7}#loco-editor .is-table .wg-cols>div>div.selected{background-color:#3db63d;color:#fff}#loco-editor .is-table .wg-cols>div>div.selected::selection{background-color:#fff;color:#000}#loco-editor .is-table .wg-cols>div:first-child>div{padding-left:4px}#loco-editor .is-table .wg-dead{clear:both}#loco-editor .is-table .wg-thead .wg-sortable>header{cursor:pointer !important}#loco-editor .is-table .wg-thead .wg-sortable>header:after{padding:0 0 0 5px;color:#999}#loco-editor .is-table .wg-thead .wg-sortable.wg-asc>header:after{content:"▲"}#loco-editor .is-table .wg-thead .wg-sortable.wg-desc>header:after{content:"▼"}#loco-editor .is-table .wg-thead .wg-sortable:hover>header:after{color:#000}#loco-editor .is-field>.wg-content{cursor:text;padding:0;line-height:normal;overflow:hidden;overflow-y:hidden}#loco-editor .is-field>.wg-content>div,#loco-editor .is-field>.wg-content>textarea{font-size:14px;line-height:1.4;border:1px solid #ddd;width:100%;height:100%;padding:8px 10px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;-o-border-radius:0;border-radius:0}#loco-editor .is-field>.wg-content textarea{resize:none;overflow:auto;display:block}#loco-editor .is-field>.wg-content>.ace_editor{padding:0;border-width:0}#loco-editor .is-field>.wg-content>div[contenteditable]{overflow:scroll;overflow-x:hidden;overflow-y:auto}#loco-editor .is-readonly>.wg-content{cursor:default}#loco-editor .is-readonly>.wg-content>div,#loco-editor .is-readonly>.wg-content>textarea,#loco-editor .is-readonly>.wg-content>textarea[readonly]{background:#f8f8f8;text-shadow:0 1px #fff;color:inherit}#loco-editor .is-readonly>.wg-content .ace_scroller{cursor:default;background:#f8f8f8}#loco-editor .is-readonly>.wg-content .ace_cursor-layer{display:none}#loco-editor .is-readonly>.wg-content>textarea[readonly]{cursor:default}#loco-editor .is-editable>.wg-content[dir=RTL] .ace_editor .ace_line{direction:ltr;unicode-bidi:bidi-override}#loco-editor .wg-split-x>nav.wg-tabs{white-space:nowrap;text-align:center;cursor:default}#loco-editor .wg-split-x>nav.wg-tabs>a{display:inline-block;padding:.5em 1em;margin-top:.2em;color:#000;text-decoration:none;-webkit-border-radius:.2em .2em 0 0;-moz-border-radius:.2em .2em 0 0;-ms-border-radius:.2em .2em 0 0;-o-border-radius:.2em .2em 0 0;border-radius:.2em .2em 0 0;background-color:#f3f7fd}#loco-editor .wg-split-x>nav.wg-tabs>a:hover{background-color:#fff}#loco-editor .wg-split-x>nav.wg-tabs>a.active{background-color:#3db63d;color:#fff}#loco-editor .wg-split>div>.has-nav>.wg-body{margin-top:0px}#loco-editor .wg-dead{visibility:hidden}@media all and (max-width: 768px){#loco-editor .wg-split-x>div>.not-first>*{margin-left:20px}#loco-editor .wg-split-y>div>.not-first>*{margin-top:20px}#loco-editor .wg-split-x>div>.not-first:before{width:20px}#loco-editor .wg-split-y>div>.not-first:before{height:20px}#loco-editor .is-table .wg-thead header{padding-left:20px}}#loco-editor .is-table .po-fuzzy{color:#b59829;font-weight:bold}#loco-editor .is-table .po-empty{color:#1f507a;font-weight:bold}#loco-editor .is-table .po-flagged{color:#bd2c00}#loco-editor .is-table .wg-cols>div:first-child>div:before{font-family:loco;vertical-align:inherit;display:inline-block;content:" ";width:1.3em;line-height:1}#loco-editor .is-table .wg-cols>div:first-child>div.po-fuzzy:before{content:""}#loco-editor .is-table .wg-cols>div:first-child>div.po-flagged:before{content:""}#loco-editor .is-table .wg-cols>div:first-child>div.po-comment:before{content:"";color:#999}#loco-editor .is-table .wg-cols>div:first-child>div.po-unsaved:before{content:"";color:#f1d040}#loco-editor .is-table .wg-cols>div:first-child>div.selected:before{color:#fff !important}#loco-editor .wg-cell>.meta{color:#333;margin:0 !important;padding:6px 10px;font-weight:normal;font-size:13px;line-height:1.4em;cursor:default !important}#loco-editor .wg-cell>.meta>*{display:inline-block;margin-top:3px;margin-bottom:3px}#loco-editor .wg-cell>.meta>span{border:1px solid transparent;border-left:none}#loco-editor .wg-cell>.meta>mark{color:#fff;border-radius:2px;background-color:silver;border:1px solid silver;padding:0 .3em}#loco-editor .wg-cell>.meta>mark.tag{color:#999;background-color:#eee}#loco-editor .wg-cell>.meta>p{display:block;white-space:pre-line}#loco-editor .wg-cell>.meta .icon-warn{color:#c00}#loco-editor .wg-cell>.meta .has-icon:before{padding-right:0;width:17px}#loco-editor .wg-cell>.meta code{font-size:12px}#loco-editor .is-table .wg-cols>div>div>mark{display:inline-block;vertical-align:text-bottom;font:inherit;font-weight:normal;color:#fff;border-radius:2px;font-size:90%;line-height:1;padding:.2em .3em;background-color:rgba(0,0,0,.25)}#loco-editor .is-table .wg-cols>div>div.selected.po-flagged{background-color:#bd2c00}#loco-editor .is-table .wg-cols>div>div.selected.po-fuzzy{background-color:#b59829}#loco-editor .is-table .wg-cols>div>div.selected.po-empty{background-color:#999}#loco-editor #po-target header nav{display:block;position:absolute;right:0px;top:0px;padding:2px}#loco-editor #po-target header nav button{margin-left:5px}#loco-editor #po-target header nav.po-empty .icon-cloud{display:none !important}#loco-editor #po-list .wg-content{padding:0}#loco-editor #po-source>.wg-body>.has-title>header{background:transparent;font-weight:normal;float:left;clear:none;min-width:3.4em}#loco-editor #po-source>.wg-body>.has-title>.wg-content{clear:none}#loco-editor .has-title>header{line-height:normal;padding:6px}#loco-editor .has-title>header .lang{margin-right:6px;margin-bottom:1px}#loco-editor .trg-rtl #po-list-tbody .wg-cols>div[for=po-list-col-target]>div,#loco-editor .src-rtl #po-list-tbody .wg-cols>div[for=po-list-col-source]>div{direction:rtl;padding-left:0;padding-right:10px;text-align:right}#loco-editor #po-source>.wg-body>.has-title>h2{min-width:4.5em}#loco-editor .is-table .wg-td{font-size:13px}#loco-editor header,#loco-editor nav{display:block;position:relative}#loco-editor-inner{min-height:600px;font-size:14px;clear:both}#loco-editor-inner>div.loco-loading{height:100px;background:transparent url(../img/spin-editor-button.gif?v=2.5.6) center 20px no-repeat}#loco-editor-inner h2{color:#000;line-height:1}#loco-editor-inner .wg-cell>.meta code{padding:0;color:#0073aa;background:inherit;cursor:pointer}#loco-editor-inner .wg-cell>.meta code:hover{text-decoration:underline}#loco-admin.wrap #loco-editor>nav{font-size:14px;height:50px}#loco-admin.wrap #loco-editor>nav form{display:block;float:left;clear:none;padding:0;margin:0}#loco-admin.wrap #loco-editor>nav form.aux{float:right;margin-right:5px}#loco-admin.wrap #loco-editor>nav fieldset{display:block;position:relative;float:left;clear:none}#loco-admin.wrap #loco-editor>nav button,#loco-admin.wrap #loco-editor>nav input[type=text]{display:block;position:relative;float:left;clear:none;margin:5px 0 0 5px;height:36px;text-align:left;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#loco-admin.wrap #loco-editor>nav input[type=text]{padding:0 10px;font-size:14px;line-height:normal}#loco-admin.wrap #loco-editor>nav .invalid input[type=text]:focus{border-color:#c00;-webkit-box-shadow:0 0 2px rgba(153,0,0,.5);-moz-box-shadow:0 0 2px rgba(153,0,0,.5);box-shadow:0 0 2px rgba(153,0,0,.5)}#loco-admin.wrap #loco-editor>nav .loco-clearable{padding:0 20px}#loco-admin.wrap #loco-editor>nav .loco-clearable.invalid a.clear:before{color:#c00}#loco-admin.wrap #loco-editor>nav .loco-clearable a.clear{right:25px;line-height:2}#loco-admin.wrap #loco-editor>nav .loco-clearable a.clear:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}#loco-admin.wrap #loco-editor>nav .loco-clearable a.clear:hover:before{color:#c00}#loco-admin.wrap #loco-editor>nav .loco-clearable a.clear:active:before{color:#000}#loco-admin.wrap #loco-editor>nav button.only-icon{width:40px}#loco-admin.wrap button.has-icon:before{width:16px;padding:0}#loco-admin.wrap button.has-icon.loco-loading:before{content:" ";height:16px;background:transparent url(../img/spin-editor-button.gif?v=2.5.6) 0 0 no-repeat}#loco-admin.wrap .button,#loco-admin.wrap .button-link,#loco-admin.wrap input[type=text]{border-color:#aaa;color:#444}#loco-admin.wrap .button:hover,#loco-admin.wrap .button-link:hover{color:#000}#loco-admin.wrap .button-primary,#loco-admin.wrap .button-primary:hover{color:#fff}#loco-admin.wrap button.icon-translate:before{font-size:16px}.loco-modal .loco-api{position:relative;padding:10px;background:#f7f7f7;border:solid 1px #eee;font-size:14px;margin-bottom:16px}.loco-modal .loco-api p{padding:0;margin:0;font-size:inherit}.loco-modal .loco-api blockquote{font-weight:bold;margin:0;padding:10px 0}.loco-modal .loco-api a.loco-api-credit{padding:0;display:block;position:absolute;right:10px;bottom:10px;text-decoration:none;white-space:nowrap;overflow:hidden;font-size:12px}.loco-modal .loco-api a.loco-api-credit:hover{text-decoration:underline}.loco-modal .loco-api-loading{text-indent:20px;background:transparent url(../img/spin-modal.gif?v=2.5.6) 10px center no-repeat}.loco-modal .loco-alert p{margin-bottom:2em;font-size:14px}.loco-modal .loco-alert nav{display:block;position:relative;margin:1em 0}.loco-modal .loco-alert nav a{display:inline-block;margin-right:1em;padding:10px}#loco-auto{display:none;min-width:50%;min-height:300px;position:relative}#loco-auto form blockquote{margin:0;padding:1em 0;font-size:14px}.loco-api a.loco-api-credit{color:inherit}.loco-api-yandex a.loco-api-credit:before{content:"Powered by "}.loco-api-google a.loco-api-credit{text-indent:200px;width:122px;height:16px;background:transparent url(../img/api/google.png?v=2.5.6) 0 0 no-repeat}.loco-api-microsoft a.loco-api-credit{text-indent:200px;width:152px;height:16px;background:transparent url(../img/api/microsoft.png?v=2.5.6) 0 0 no-repeat}.loco-api-deepl a.loco-api-credit{text-indent:200px;width:122px;height:16px;background:transparent url(../img/api/deepl.png?v=2.5.6) 0 0 no-repeat}
|
pub/css/podiff.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
#loco-admin.wrap .revisions-diff{padding:10px;min-height:20px}#loco-admin.wrap table.diff{border-collapse:collapse}#loco-admin.wrap table.diff td{white-space:nowrap;overflow:hidden;font:normal 12px/17px "Monaco","Menlo","Ubuntu Mono","Consolas","source-code-pro",monospace;padding:2px}#loco-admin.wrap table.diff td>span{color:#aaa}#loco-admin.wrap table.diff td>span:after{content:". "}#loco-admin.wrap table.diff tbody{border-top:1px dashed #ccc}#loco-admin.wrap table.diff tbody:first-child{border-top:none}#loco-admin.wrap .revisions.loading .diff-meta{color:#eee}#loco-admin.wrap .revisions.loading .loading-indicator span.spinner{visibility:visible;background:#fff url(../img/spin-modal.gif?v=2.5.
|
1 |
+
#loco-admin.wrap .revisions-diff{padding:10px;min-height:20px}#loco-admin.wrap table.diff{border-collapse:collapse}#loco-admin.wrap table.diff td{white-space:nowrap;overflow:hidden;font:normal 12px/17px "Monaco","Menlo","Ubuntu Mono","Consolas","source-code-pro",monospace;padding:2px}#loco-admin.wrap table.diff td>span{color:#aaa}#loco-admin.wrap table.diff td>span:after{content:". "}#loco-admin.wrap table.diff tbody{border-top:1px dashed #ccc}#loco-admin.wrap table.diff tbody:first-child{border-top:none}#loco-admin.wrap .revisions.loading .diff-meta{color:#eee}#loco-admin.wrap .revisions.loading .loading-indicator span.spinner{visibility:visible;background:#fff url(../img/spin-modal.gif?v=2.5.6) center center no-repeat}#loco-admin.wrap .revisions-meta{clear:both;padding:10px 12px;margin:0;position:relative;top:10px}#loco-admin.wrap .revisions-meta .diff-meta{clear:none;float:left;width:50%;padding:0;min-height:auto}#loco-admin.wrap .revisions-meta .diff-meta button{margin-top:5px}#loco-admin.wrap .revisions-meta .diff-meta-current{float:right;text-align:right}#loco-admin.wrap .revisions-meta time{color:#72777c}#loco-admin.wrap .revisions-control-frame{margin:10px 0}#loco-admin.wrap .revisions-diff-frame{margin-top:20px}
|
pub/css/poview.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.js #loco-admin.wrap .loco-loading{min-height:100px;background:#fff url(../img/spin-modal.gif?v=2.5.
|
1 |
+
.js #loco-admin.wrap .loco-loading{min-height:100px;background:#fff url(../img/spin-modal.gif?v=2.5.6) center center no-repeat}.js #loco-admin.wrap .loco-loading ol.msgcat{display:none}#loco-admin.wrap #loco-po{padding-right:0;overflow:auto}#loco-admin.wrap ol.msgcat{margin-left:3em;padding-top:1em;border-top:1px dashed #ccc}#loco-admin.wrap ol.msgcat:first-child{padding-top:0;border-top:none}#loco-admin.wrap ol.msgcat li{color:#aaa;margin:0;padding:0 0 0 1em;font:normal 12px/17px "Monaco","Menlo","Ubuntu Mono","Consolas","source-code-pro",monospace;border-left:1px solid #eee}#loco-admin.wrap ol.msgcat li>*{color:#333;white-space:pre}#loco-admin.wrap ol.msgcat li>.po-comment{color:#3cc200}#loco-admin.wrap ol.msgcat li>.po-refs{color:#0073aa}#loco-admin.wrap ol.msgcat li>.po-refs a{color:inherit;text-decoration:none}#loco-admin.wrap ol.msgcat li>.po-refs a:hover{text-decoration:underline}#loco-admin.wrap ol.msgcat li>.po-flags{color:#77904a}#loco-admin.wrap ol.msgcat li>.po-flags em{font-style:normal}#loco-admin.wrap ol.msgcat li>.po-word{color:#000}#loco-admin.wrap ol.msgcat li>.po-junk{font-style:italic;color:#ccc}#loco-admin.wrap ol.msgcat li>.po-string>span{color:#c931c7}#loco-admin.wrap form.loco-filter{top:0;right:0;position:absolute}#loco-admin.wrap .loco-invalid form.loco-filter input[type=text]:focus{border-color:#c00;-webkit-box-shadow:0 0 2px rgba(153,0,0,.5);-moz-box-shadow:0 0 2px rgba(153,0,0,.5);box-shadow:0 0 2px rgba(153,0,0,.5)}#loco-admin.wrap .loco-invalid ol.msgcat{list-style-type:none}#loco-admin.wrap .loco-invalid ol.msgcat li{color:#000}
|
pub/css/skins/blue.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(9,100,132,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#096484;foo:#096484}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#d1cdc7 !important;background:#db9925 !important;border-color:#db9925 !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../../img/skins/blue/spin-primary-button.gif?v=2.5.
|
1 |
+
.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(9,100,132,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#096484;foo:#096484}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#d1cdc7 !important;background:#db9925 !important;border-color:#db9925 !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../../img/skins/blue/spin-primary-button.gif?v=2.5.6) 0 0 no-repeat !important}
|
pub/css/skins/coffee.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(199,165,137,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#c7a589;foo:#c7a589}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#d1ccc7 !important;background:#ba906d !important;border-color:#ba906d !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../../img/skins/coffee/spin-primary-button.gif?v=2.5.
|
1 |
+
.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(199,165,137,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#c7a589;foo:#c7a589}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#d1ccc7 !important;background:#ba906d !important;border-color:#ba906d !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../../img/skins/coffee/spin-primary-button.gif?v=2.5.6) 0 0 no-repeat !important}
|
pub/css/skins/ectoplasm.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(163,183,69,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#a3b745;foo:#a3b745}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#cfd1c7 !important;background:#89993a !important;border-color:#89993a !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../../img/skins/ectoplasm/spin-primary-button.gif?v=2.5.
|
1 |
+
.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(163,183,69,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#a3b745;foo:#a3b745}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#cfd1c7 !important;background:#89993a !important;border-color:#89993a !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../../img/skins/ectoplasm/spin-primary-button.gif?v=2.5.6) 0 0 no-repeat !important}
|
pub/css/skins/light.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(136,136,136,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#888;foo:#04a4cc}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#c7cfd1 !important;background:#0384a4 !important;border-color:#0384a4 !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../../img/skins/light/spin-primary-button.gif?v=2.5.
|
1 |
+
.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(136,136,136,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#888;foo:#04a4cc}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#c7cfd1 !important;background:#0384a4 !important;border-color:#0384a4 !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../../img/skins/light/spin-primary-button.gif?v=2.5.6) 0 0 no-repeat !important}
|
pub/css/skins/midnight.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(225,77,67,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#e14d43;foo:#e14d43}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#d1c8c7 !important;background:#d92e23 !important;border-color:#d92e23 !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../../img/skins/midnight/spin-primary-button.gif?v=2.5.
|
1 |
+
.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(225,77,67,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#e14d43;foo:#e14d43}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#d1c8c7 !important;background:#d92e23 !important;border-color:#d92e23 !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../../img/skins/midnight/spin-primary-button.gif?v=2.5.6) 0 0 no-repeat !important}
|
pub/css/skins/modern.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(56,88,233,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#3858e9;foo:#3858e9}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#c7c9d1 !important;background:#193ddf !important;border-color:#193ddf !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../../img/skins/modern/spin-primary-button.gif?v=2.5.
|
1 |
+
.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(56,88,233,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#3858e9;foo:#3858e9}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#c7c9d1 !important;background:#193ddf !important;border-color:#193ddf !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../../img/skins/modern/spin-primary-button.gif?v=2.5.6) 0 0 no-repeat !important}
|
pub/css/skins/ocean.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(158,186,160,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#9ebaa0;foo:#9ebaa0}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#c7d1c8 !important;background:#86a989 !important;border-color:#86a989 !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../../img/skins/ocean/spin-primary-button.gif?v=2.5.
|
1 |
+
.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(158,186,160,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#9ebaa0;foo:#9ebaa0}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#c7d1c8 !important;background:#86a989 !important;border-color:#86a989 !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../../img/skins/ocean/spin-primary-button.gif?v=2.5.6) 0 0 no-repeat !important}
|
pub/css/skins/sunrise.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(221,130,59,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#dd823b;foo:#dd823b}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#d1cbc7 !important;background:#cc6d23 !important;border-color:#cc6d23 !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../../img/skins/sunrise/spin-primary-button.gif?v=2.5.
|
1 |
+
.wrap #loco-editor .is-table .wg-tr:nth-child(even){background-color:rgba(221,130,59,.05)}.wrap #loco-editor .wg-split-x>nav.wg-tabs>a.active,.wrap #loco-editor .is-table .wg-cols>div>div.selected{background-color:#dd823b;foo:#dd823b}.wrap #loco-editor .is-editable>.wg-content>textarea:focus,.wrap #loco-editor .is-editable>.wg-content.has-focus .ace_scroller,.wrap #loco-editor .is-editable>.wg-content.has-focus .mce-content-body{border-color:#5b9dd9;-webkit-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);-moz-box-shadow:inset 0 0 .6em rgba(30,140,190,.8);box-shadow:inset 0 0 .6em rgba(30,140,190,.8)}.wp-core-ui .button-primary.loco-loading[disabled]{color:#d1cbc7 !important;background:#cc6d23 !important;border-color:#cc6d23 !important}.wp-core-ui .button-primary.loco-loading[disabled]:before{background:transparent url(../../img/skins/sunrise/spin-primary-button.gif?v=2.5.6) 0 0 no-repeat !important}
|
pub/font/loco.eot
CHANGED
Binary file
|
pub/font/loco.svg
CHANGED
@@ -94,6 +94,7 @@
|
|
94 |
<glyph unicode="" glyph-name="share" d="M864 256c-45.16 0-85.92-18.738-115.012-48.83l-431.004 215.502c1.314 8.252 2.016 16.706 2.016 25.328s-0.702 17.076-2.016 25.326l431.004 215.502c29.092-30.090 69.852-48.828 115.012-48.828 88.366 0 160 71.634 160 160s-71.634 160-160 160-160-71.634-160-160c0-8.622 0.704-17.076 2.016-25.326l-431.004-215.504c-29.092 30.090-69.852 48.83-115.012 48.83-88.366 0-160-71.636-160-160 0-88.368 71.634-160 160-160 45.16 0 85.92 18.738 115.012 48.828l431.004-215.502c-1.312-8.25-2.016-16.704-2.016-25.326 0-88.368 71.634-160 160-160s160 71.632 160 160c0 88.364-71.634 160-160 160z" />
|
95 |
<glyph unicode="" glyph-name="notag" d="M949.632 482.994l-408.455 410.066c-10.94 10.997-25.826 17.163-41.323 17.163h-384.156c-32.215 0-58.347-26.132-58.347-58.404v-384.128c0-15.497 6.165-30.354 17.108-41.296l409.289-409.316c11.385-11.385 26.327-17.079 41.239-17.079s29.854 5.694 41.239 17.079l383.323 383.351c22.773 22.772 22.8 59.737 0.084 82.564zM810.028 421.731l-264.964-264.964c-11.109-11.108-29.074-11.108-40.156 0l-333.863 333.89v277.349c0 15.691 12.718 28.437 28.382 28.437h277.46l333.168-334.5c11.108-11.109 11.052-29.104-0.027-40.213zM455.198 597.326c0-47.127-38.185-85.34-85.257-85.34-47.1 0-85.257 38.213-85.257 85.34 0 47.129 38.156 85.34 85.257 85.34 47.070 0 85.257-38.212 85.257-85.34z" />
|
96 |
<glyph unicode="" glyph-name="arrow-up" horiz-adv-x="951" d="M30.286 396q0 30.286 21.714 52l372 372q20 21.143 51.429 21.143 30.857 0 52-21.143l372-372q21.143-22.286 21.143-52 0-29.143-21.143-51.429l-42.857-42.857q-21.714-21.714-52-21.714-30.857 0-51.429 21.714l-168 167.429v-402.286q0-29.714-21.429-48.286t-51.714-18.571h-73.143q-30.286 0-51.714 18.571t-21.429 48.286v402.286l-168-167.429q-20.571-21.714-51.429-21.714t-51.429 21.714l-42.857 42.857q-21.714 21.714-21.714 51.429z" />
|
|
|
97 |
<glyph unicode="" glyph-name="ccard" horiz-adv-x="1097" d="M0 91.428v694.857q0 37.714 26.857 64.571t64.571 26.857h914.286q37.714 0 64.571-26.857t26.857-64.571v-694.857q0-37.714-26.857-64.571t-64.571-26.857h-914.286q-37.714 0-64.571 26.857t-26.857 64.571zM73.143 91.428q0-7.429 5.429-12.857t12.857-5.429h914.286q7.429 0 12.857 5.429t5.429 12.857v347.429h-950.857v-347.429zM73.143 658.286h950.857v128q0 7.429-5.429 12.857t-12.857 5.429h-914.286q-7.429 0-12.857-5.429t-5.429-12.857v-128zM146.286 146.286v73.143h146.286v-73.143h-146.286zM365.714 146.286v73.143h219.429v-73.143h-219.429z" />
|
98 |
<glyph unicode="" glyph-name="bell" horiz-adv-x="951" d="M0 146.286q108.571 92 164 227.143t55.429 284.857q0 94.286 54.857 149.714t150.857 66.857q-4.571 10.286-4.571 21.143 0 22.857 16 38.857t38.857 16 38.857-16 16-38.857q0-10.857-4.571-21.143 96-11.429 150.857-66.857t54.857-149.714q0-149.714 55.429-284.857t164-227.143q0-29.714-21.714-51.429t-51.429-21.714h-256q0-60.571-42.857-103.429t-103.429-42.857-103.429 42.857-42.857 103.429h-256q-29.714 0-51.429 21.714t-21.714 51.429zM374.857 73.143q0-41.714 29.429-71.143t71.143-29.429q9.143 0 9.143 9.143t-9.143 9.143q-33.714 0-58 24.286t-24.286 58q0 9.143-9.143 9.143t-9.143-9.143z" />
|
99 |
<glyph unicode="" glyph-name="code" horiz-adv-x="1097" d="M25.714 402.286q0 7.429 5.714 13.143l266.286 266.286q5.714 5.714 13.143 5.714t13.143-5.714l28.571-28.571q5.714-5.714 5.714-13.143t-5.714-13.143l-224.571-224.571 224.571-224.571q5.714-5.714 5.714-13.143t-5.714-13.143l-28.571-28.571q-5.714-5.714-13.143-5.714t-13.143 5.714l-266.286 266.286q-5.714 5.714-5.714 13.143zM406.857 43.428l213.143 737.714q2.286 7.429 8.857 11.143t13.429 1.429l35.429-9.714q7.429-2.286 11.143-8.857t1.429-14l-213.143-737.714q-2.286-7.429-8.857-11.143t-13.429-1.429l-35.429 9.714q-7.429 2.286-11.143 8.857t-1.429 14zM738.857 164.571q0 7.429 5.714 13.143l224.571 224.571-224.571 224.571q-5.714 5.714-5.714 13.143t5.714 13.143l28.571 28.571q5.714 5.714 13.143 5.714t13.143-5.714l266.286-266.286q5.714-5.714 5.714-13.143t-5.714-13.143l-266.286-266.286q-5.714-5.714-13.143-5.714t-13.143 5.714l-28.571 28.571q-5.714 5.714-5.714 13.143z" />
|
94 |
<glyph unicode="" glyph-name="share" d="M864 256c-45.16 0-85.92-18.738-115.012-48.83l-431.004 215.502c1.314 8.252 2.016 16.706 2.016 25.328s-0.702 17.076-2.016 25.326l431.004 215.502c29.092-30.090 69.852-48.828 115.012-48.828 88.366 0 160 71.634 160 160s-71.634 160-160 160-160-71.634-160-160c0-8.622 0.704-17.076 2.016-25.326l-431.004-215.504c-29.092 30.090-69.852 48.83-115.012 48.83-88.366 0-160-71.636-160-160 0-88.368 71.634-160 160-160 45.16 0 85.92 18.738 115.012 48.828l431.004-215.502c-1.312-8.25-2.016-16.704-2.016-25.326 0-88.368 71.634-160 160-160s160 71.632 160 160c0 88.364-71.634 160-160 160z" />
|
95 |
<glyph unicode="" glyph-name="notag" d="M949.632 482.994l-408.455 410.066c-10.94 10.997-25.826 17.163-41.323 17.163h-384.156c-32.215 0-58.347-26.132-58.347-58.404v-384.128c0-15.497 6.165-30.354 17.108-41.296l409.289-409.316c11.385-11.385 26.327-17.079 41.239-17.079s29.854 5.694 41.239 17.079l383.323 383.351c22.773 22.772 22.8 59.737 0.084 82.564zM810.028 421.731l-264.964-264.964c-11.109-11.108-29.074-11.108-40.156 0l-333.863 333.89v277.349c0 15.691 12.718 28.437 28.382 28.437h277.46l333.168-334.5c11.108-11.109 11.052-29.104-0.027-40.213zM455.198 597.326c0-47.127-38.185-85.34-85.257-85.34-47.1 0-85.257 38.213-85.257 85.34 0 47.129 38.156 85.34 85.257 85.34 47.070 0 85.257-38.212 85.257-85.34z" />
|
96 |
<glyph unicode="" glyph-name="arrow-up" horiz-adv-x="951" d="M30.286 396q0 30.286 21.714 52l372 372q20 21.143 51.429 21.143 30.857 0 52-21.143l372-372q21.143-22.286 21.143-52 0-29.143-21.143-51.429l-42.857-42.857q-21.714-21.714-52-21.714-30.857 0-51.429 21.714l-168 167.429v-402.286q0-29.714-21.429-48.286t-51.714-18.571h-73.143q-30.286 0-51.714 18.571t-21.429 48.286v402.286l-168-167.429q-20.571-21.714-51.429-21.714t-51.429 21.714l-42.857 42.857q-21.714 21.714-21.714 51.429z" />
|
97 |
+
<glyph unicode="" glyph-name="calendar" horiz-adv-x="951" d="M0 0v731.429q0 29.714 21.714 51.429t51.429 21.714h73.143v54.857q0 37.714 26.857 64.571t64.571 26.857h36.571q37.714 0 64.571-26.857t26.857-64.571v-54.857h219.429v54.857q0 37.714 26.857 64.571t64.571 26.857h36.571q37.714 0 64.571-26.857t26.857-64.571v-54.857h73.143q29.714 0 51.429-21.714t21.714-51.429v-731.429q0-29.714-21.714-51.429t-51.429-21.714h-804.571q-29.714 0-51.429 21.714t-21.714 51.429zM73.143 0h164.571v164.571h-164.571v-164.571zM73.143 201.143h164.571v182.857h-164.571v-182.857zM73.143 420.571h164.571v164.571h-164.571v-164.571zM219.429 694.857q0-7.429 5.429-12.857t12.857-5.429h36.571q7.429 0 12.857 5.429t5.429 12.857v164.571q0 7.429-5.429 12.857t-12.857 5.429h-36.571q-7.429 0-12.857-5.429t-5.429-12.857v-164.571zM274.286 0h182.857v164.571h-182.857v-164.571zM274.286 201.143h182.857v182.857h-182.857v-182.857zM274.286 420.571h182.857v164.571h-182.857v-164.571zM493.714 0h182.857v164.571h-182.857v-164.571zM493.714 201.143h182.857v182.857h-182.857v-182.857zM493.714 420.571h182.857v164.571h-182.857v-164.571zM658.286 694.857q0-7.429 5.429-12.857t12.857-5.429h36.571q7.429 0 12.857 5.429t5.429 12.857v164.571q0 7.429-5.429 12.857t-12.857 5.429h-36.571q-7.429 0-12.857-5.429t-5.429-12.857v-164.571zM713.143 0h164.571v164.571h-164.571v-164.571zM713.143 201.143h164.571v182.857h-164.571v-182.857zM713.143 420.571h164.571v164.571h-164.571v-164.571z" />
|
98 |
<glyph unicode="" glyph-name="ccard" horiz-adv-x="1097" d="M0 91.428v694.857q0 37.714 26.857 64.571t64.571 26.857h914.286q37.714 0 64.571-26.857t26.857-64.571v-694.857q0-37.714-26.857-64.571t-64.571-26.857h-914.286q-37.714 0-64.571 26.857t-26.857 64.571zM73.143 91.428q0-7.429 5.429-12.857t12.857-5.429h914.286q7.429 0 12.857 5.429t5.429 12.857v347.429h-950.857v-347.429zM73.143 658.286h950.857v128q0 7.429-5.429 12.857t-12.857 5.429h-914.286q-7.429 0-12.857-5.429t-5.429-12.857v-128zM146.286 146.286v73.143h146.286v-73.143h-146.286zM365.714 146.286v73.143h219.429v-73.143h-219.429z" />
|
99 |
<glyph unicode="" glyph-name="bell" horiz-adv-x="951" d="M0 146.286q108.571 92 164 227.143t55.429 284.857q0 94.286 54.857 149.714t150.857 66.857q-4.571 10.286-4.571 21.143 0 22.857 16 38.857t38.857 16 38.857-16 16-38.857q0-10.857-4.571-21.143 96-11.429 150.857-66.857t54.857-149.714q0-149.714 55.429-284.857t164-227.143q0-29.714-21.714-51.429t-51.429-21.714h-256q0-60.571-42.857-103.429t-103.429-42.857-103.429 42.857-42.857 103.429h-256q-29.714 0-51.429 21.714t-21.714 51.429zM374.857 73.143q0-41.714 29.429-71.143t71.143-29.429q9.143 0 9.143 9.143t-9.143 9.143q-33.714 0-58 24.286t-24.286 58q0 9.143-9.143 9.143t-9.143-9.143z" />
|
100 |
<glyph unicode="" glyph-name="code" horiz-adv-x="1097" d="M25.714 402.286q0 7.429 5.714 13.143l266.286 266.286q5.714 5.714 13.143 5.714t13.143-5.714l28.571-28.571q5.714-5.714 5.714-13.143t-5.714-13.143l-224.571-224.571 224.571-224.571q5.714-5.714 5.714-13.143t-5.714-13.143l-28.571-28.571q-5.714-5.714-13.143-5.714t-13.143 5.714l-266.286 266.286q-5.714 5.714-5.714 13.143zM406.857 43.428l213.143 737.714q2.286 7.429 8.857 11.143t13.429 1.429l35.429-9.714q7.429-2.286 11.143-8.857t1.429-14l-213.143-737.714q-2.286-7.429-8.857-11.143t-13.429-1.429l-35.429 9.714q-7.429 2.286-11.143 8.857t-1.429 14zM738.857 164.571q0 7.429 5.714 13.143l224.571 224.571-224.571 224.571q-5.714 5.714-5.714 13.143t5.714 13.143l28.571 28.571q5.714 5.714 13.143 5.714t13.143-5.714l266.286-266.286q5.714-5.714 5.714-13.143t-5.714-13.143l-266.286-266.286q-5.714-5.714-13.143-5.714t-13.143 5.714l-28.571 28.571q-5.714 5.714-5.714 13.143z" />
|
pub/font/loco.ttf
CHANGED
Binary file
|
pub/font/loco.woff
CHANGED
Binary file
|
pub/js/min/admin.js
CHANGED
@@ -1,33 +1,33 @@
|
|
1 |
-
(function(
|
2 |
-
var
|
3 |
function f(d) {
|
4 |
throw Error("Failed to require " + d);
|
5 |
}
|
6 |
var d = {};
|
7 |
return {
|
8 |
-
register: function(f,
|
9 |
-
d[f] =
|
10 |
},
|
11 |
-
require: function(
|
12 |
-
return d[
|
13 |
},
|
14 |
-
include: function(
|
15 |
-
return d[
|
16 |
}
|
17 |
};
|
18 |
}();
|
19 |
-
|
20 |
-
function
|
21 |
-
var c = typeof
|
22 |
-
if ("string" === c) if (/[^ <>!=()%^&|?:n0-9]/.test(
|
23 |
-
"function" !== c && (
|
24 |
return 1 != b;
|
25 |
});
|
26 |
-
return
|
27 |
}
|
28 |
-
f.init = function(
|
29 |
function c(a, b, e) {
|
30 |
-
return (a =
|
31 |
}
|
32 |
function b(a) {
|
33 |
return c(a, a, 0);
|
@@ -36,12 +36,12 @@ function a(a, b) {
|
|
36 |
return c(b + "" + a, a, 0);
|
37 |
}
|
38 |
function e(a, b, e) {
|
39 |
-
e = Number(
|
40 |
isNaN(e) && (e = 0);
|
41 |
return c(a, e ? b : a, e);
|
42 |
}
|
43 |
-
|
44 |
-
var
|
45 |
return {
|
46 |
__: b,
|
47 |
_x: a,
|
@@ -50,22 +50,22 @@ _: b,
|
|
50 |
x: a,
|
51 |
n: e,
|
52 |
load: function(a) {
|
53 |
-
|
54 |
return this;
|
55 |
},
|
56 |
pluraleq: function(a) {
|
57 |
-
|
58 |
return this;
|
59 |
}
|
60 |
};
|
61 |
};
|
62 |
return f;
|
63 |
-
}({},
|
64 |
-
|
65 |
f.ie = function() {
|
66 |
-
var f = !1,
|
67 |
-
d.attachEvent && d.navigator && /MSIE (\d+)\./.exec(String(navigator.appVersion)) && (
|
68 |
-
f = 11 >
|
69 |
return function() {
|
70 |
return f;
|
71 |
};
|
@@ -74,9 +74,9 @@ f.init = function() {
|
|
74 |
return f;
|
75 |
};
|
76 |
return f;
|
77 |
-
}({},
|
78 |
-
|
79 |
-
Number.prototype.format = function(d,
|
80 |
d = Math.pow(10, d || 0);
|
81 |
var b = Math.round(d * this) / d;
|
82 |
d = [];
|
@@ -87,114 +87,114 @@ d.unshift(b.substring(e - 3, e));
|
|
87 |
b = d.join(c || ",");
|
88 |
if (a) {
|
89 |
c = a;
|
90 |
-
var
|
91 |
-
for (d = c.length; "0" === c.charAt(--d); )
|
92 |
-
|
93 |
-
(a = c) && (b += (
|
94 |
}
|
95 |
return b;
|
96 |
};
|
97 |
Number.prototype.percent = function(d) {
|
98 |
-
var
|
99 |
if (0 === c) return "0";
|
100 |
if (100 === c) return "100";
|
101 |
-
if (99 < c) c = Math.min(c, 99.9), d = c.format(++
|
102 |
c = Math.max(c, 1e-4);
|
103 |
do {
|
104 |
-
d = c.format(++
|
105 |
-
} while ("0" === d && 4 >
|
106 |
d = d.substr(1);
|
107 |
} else d = c.format(0);
|
108 |
return d;
|
109 |
};
|
110 |
return f;
|
111 |
-
}({},
|
112 |
-
|
113 |
Array.prototype.indexOf || (Array.prototype.indexOf = function(d) {
|
114 |
if (null == this) throw new TypeError();
|
115 |
-
var
|
116 |
if (0 === b) return -1;
|
117 |
-
|
118 |
-
1 < arguments.length && (
|
119 |
-
if (
|
120 |
-
for (
|
121 |
return -1;
|
122 |
});
|
123 |
return f;
|
124 |
-
}({},
|
125 |
-
|
126 |
d.JSON || (d.JSON = {
|
127 |
-
parse:
|
128 |
stringify: null
|
129 |
});
|
130 |
return f = d.JSON;
|
131 |
-
}({},
|
132 |
-
|
133 |
-
f.trim = function(d,
|
134 |
-
for (
|
135 |
-
for (;d && -1 !==
|
136 |
return d;
|
137 |
};
|
138 |
f.sprintf = function(d) {
|
139 |
-
var
|
140 |
return d.replace(/%(?:([1-9][0-9]*)\$)?([sud%])/g, function(b, a, e) {
|
141 |
-
return "%" === e ? "%" : (a ? c[Number(a) - 1] : c[
|
142 |
});
|
143 |
};
|
144 |
return f;
|
145 |
-
}({},
|
146 |
-
|
147 |
-
function
|
148 |
return function(c, b) {
|
149 |
-
for (var a = c[
|
150 |
return a;
|
151 |
};
|
152 |
}
|
153 |
-
f.top =
|
154 |
-
f.left =
|
155 |
-
f.el = function(
|
156 |
-
var b =
|
157 |
c && (b.className = c);
|
158 |
return b;
|
159 |
};
|
160 |
-
f.txt = function(
|
161 |
-
return
|
162 |
};
|
163 |
return f;
|
164 |
-
}({},
|
165 |
-
|
166 |
-
function
|
167 |
function c() {
|
168 |
q();
|
169 |
-
|
170 |
}
|
171 |
function q() {
|
172 |
-
|
173 |
-
|
174 |
}
|
175 |
-
var
|
176 |
c();
|
177 |
-
|
178 |
return {
|
179 |
die: function() {
|
180 |
q();
|
181 |
-
|
182 |
}
|
183 |
};
|
184 |
}
|
185 |
-
function
|
186 |
a.fadeTo(b, 0, function() {
|
187 |
a.slideUp(b, function() {
|
188 |
a.remove();
|
189 |
-
|
190 |
});
|
191 |
});
|
192 |
return a;
|
193 |
}
|
194 |
function c(a, b) {
|
195 |
function e(b) {
|
196 |
-
|
197 |
-
|
198 |
q && q.die();
|
199 |
var c;
|
200 |
if (c = b) b.stopPropagation(), b.preventDefault(), c = !1;
|
@@ -202,27 +202,27 @@ return c;
|
|
202 |
}
|
203 |
function c(b) {
|
204 |
q && q.die();
|
205 |
-
return q =
|
206 |
-
}
|
207 |
-
var q,
|
208 |
-
0 ===
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
b && (q = c(b));
|
215 |
return {
|
216 |
-
link: function(b,
|
217 |
-
var e =
|
218 |
-
|
219 |
-
|
220 |
return this;
|
221 |
},
|
222 |
stick: function() {
|
223 |
q && q.die();
|
224 |
q = null;
|
225 |
-
|
226 |
return this;
|
227 |
},
|
228 |
slow: function(a) {
|
@@ -232,55 +232,55 @@ return this;
|
|
232 |
};
|
233 |
}
|
234 |
function b(a, b, e) {
|
235 |
-
var c =
|
236 |
-
a =
|
237 |
-
var q =
|
238 |
-
e =
|
239 |
-
b =
|
240 |
q.append(b).append(e).appendTo(a);
|
241 |
return a;
|
242 |
}
|
243 |
-
function a(a, e, q,
|
244 |
a = b(q, e, a).css("opacity", "0").fadeTo(500, 1);
|
245 |
-
|
246 |
-
return c(a,
|
247 |
}
|
248 |
function e(b) {
|
249 |
-
return a(b,
|
250 |
}
|
251 |
-
function
|
252 |
-
|
253 |
if (-1 === b.className.indexOf("jshide")) {
|
254 |
var e = -1 === b.className.indexOf("notice-success") ? null : 5e3;
|
255 |
c(b, e);
|
256 |
}
|
257 |
});
|
258 |
}
|
259 |
-
var
|
260 |
log: function() {}
|
261 |
-
},
|
262 |
return new Date().getTime();
|
263 |
-
},
|
264 |
f.error = function(b) {
|
265 |
-
return a(b,
|
266 |
};
|
267 |
f.warn = e;
|
268 |
f.info = function(b) {
|
269 |
return a(b, q, "info");
|
270 |
};
|
271 |
f.success = function(b) {
|
272 |
-
return a(b,
|
273 |
};
|
274 |
f.warning = e;
|
275 |
f.log = function() {
|
276 |
-
|
277 |
};
|
278 |
f.debug = function() {
|
279 |
-
(
|
280 |
};
|
281 |
f.clear = function() {
|
282 |
-
for (var a = -1, b, e =
|
283 |
-
|
284 |
return f;
|
285 |
};
|
286 |
f.create = b;
|
@@ -289,23 +289,23 @@ f.raise = function(a) {
|
|
289 |
};
|
290 |
f.convert = c;
|
291 |
f.init = function(a) {
|
292 |
-
|
293 |
-
|
294 |
q = a._("Notice");
|
295 |
-
|
296 |
-
setTimeout(
|
297 |
return f;
|
298 |
};
|
299 |
return f;
|
300 |
-
}({},
|
301 |
-
|
302 |
-
function
|
303 |
-
var b =
|
304 |
b && (b = b.replace(/[\r\n]+/g, "\n").replace(/(^|\n)\s+/g, "$1").replace(/\s+$/, ""));
|
305 |
b || (b = a) || (b = "Blank response from server");
|
306 |
return b;
|
307 |
}
|
308 |
-
function
|
309 |
return (a = a.split(/[\r\n]/)[0]) ? (a = a.replace(/ +in +\S+ on line \d+/, ""),
|
310 |
a = a.replace(/^[()! ]+Fatal error:\s*/, "")) : t._("Server returned invalid data");
|
311 |
}
|
@@ -325,64 +325,64 @@ value: e
|
|
325 |
function e(a, b, e) {
|
326 |
a.append(b, e);
|
327 |
}
|
328 |
-
function
|
329 |
-
function
|
330 |
if ("abort" !== c) {
|
331 |
-
var q =
|
332 |
_: function(a) {
|
333 |
return a;
|
334 |
}
|
335 |
-
},
|
336 |
-
"success" === c &&
|
337 |
-
|
338 |
-
status:
|
339 |
error: c,
|
340 |
-
message:
|
341 |
output: d
|
342 |
-
}), "parsererror" === c && (
|
343 |
-
e && e.call && e(b, c,
|
344 |
-
|
345 |
}
|
346 |
}
|
347 |
-
c.url =
|
348 |
c.dataType = "json";
|
349 |
-
var
|
350 |
-
|
351 |
-
return
|
352 |
-
var
|
353 |
-
for (!
|
354 |
});
|
355 |
}
|
356 |
-
var
|
357 |
f.init = function(a) {
|
358 |
-
|
359 |
return f;
|
360 |
};
|
361 |
f.localise = function(a) {
|
362 |
-
|
363 |
return f;
|
364 |
};
|
365 |
f.xhr = function() {
|
366 |
-
return
|
367 |
};
|
368 |
-
f.strip =
|
369 |
-
f.parse =
|
370 |
f.submit = function(a, b, e) {
|
371 |
function c(a, b) {
|
372 |
b.disabled ? b.setAttribute("data-was-disabled", "true") : b.disabled = !0;
|
373 |
}
|
374 |
-
function
|
375 |
b.getAttribute("data-was-disabled") || (b.disabled = !1);
|
376 |
}
|
377 |
-
function
|
378 |
a.find(".button-primary").removeClass("loading");
|
379 |
-
a.find("button").each(
|
380 |
-
a.find("input").each(
|
381 |
-
a.find("select").each(
|
382 |
-
a.find("textarea").each(
|
383 |
a.removeClass("disabled loading");
|
384 |
}
|
385 |
-
var
|
386 |
(function(a) {
|
387 |
a.find(".button-primary").addClass("loading");
|
388 |
a.find("button").each(c);
|
@@ -390,49 +390,49 @@ a.find("input").each(c);
|
|
390 |
a.find("select").each(c);
|
391 |
a.find("textarea").each(c);
|
392 |
a.addClass("disabled loading");
|
393 |
-
})(
|
394 |
-
return
|
395 |
-
|
396 |
b && b(a, e, c);
|
397 |
}, function(a, b, c) {
|
398 |
-
|
399 |
e && e(a, b, c);
|
400 |
}, {
|
401 |
type: a.method,
|
402 |
-
data:
|
403 |
});
|
404 |
};
|
405 |
-
f.post = function(
|
406 |
-
var
|
407 |
-
d.FormData && G instanceof FormData ? (
|
408 |
q(G, "action", "loco_json");
|
409 |
-
q(G, "route",
|
410 |
-
q(G, "loco-nonce",
|
411 |
-
return
|
412 |
type: "post",
|
413 |
data: G,
|
414 |
-
processData:
|
415 |
-
contentType:
|
416 |
});
|
417 |
};
|
418 |
-
f.get = function(a, b, e,
|
419 |
b = b || {};
|
420 |
-
var
|
421 |
b.action = "loco_json";
|
422 |
b.route = a;
|
423 |
-
b["loco-nonce"] =
|
424 |
-
return
|
425 |
type: "get",
|
426 |
data: b
|
427 |
});
|
428 |
};
|
429 |
f.setNonce = function(a, b) {
|
430 |
-
|
431 |
return f;
|
432 |
};
|
433 |
return f;
|
434 |
-
}({},
|
435 |
-
|
436 |
arab: 1,
|
437 |
aran: 1,
|
438 |
hebr: 1,
|
@@ -470,29 +470,29 @@ ps: 1,
|
|
470 |
ur: 1,
|
471 |
yi: 1
|
472 |
});
|
473 |
-
|
474 |
-
function
|
475 |
-
var
|
476 |
f.init = function() {
|
477 |
-
return new
|
478 |
};
|
479 |
f.cast = function(b) {
|
480 |
-
return b instanceof
|
481 |
};
|
482 |
f.clone = function(b) {
|
483 |
-
var a, e = new
|
484 |
for (a in b) e[a] = b[a];
|
485 |
return e;
|
486 |
};
|
487 |
f.parse = function(b) {
|
488 |
-
if (!(
|
489 |
-
var a = new
|
490 |
a.lang = RegExp.$1.toLowerCase();
|
491 |
if (b = RegExp.$2) a.region = b.toUpperCase();
|
492 |
if (b = RegExp.$3) a.variant = b.toLowerCase();
|
493 |
return a;
|
494 |
};
|
495 |
-
d =
|
496 |
d.isValid = function() {
|
497 |
return !!this.lang;
|
498 |
};
|
@@ -508,17 +508,17 @@ if (a = this.variant) e += b + a;
|
|
508 |
return e;
|
509 |
};
|
510 |
d.getIcon = function() {
|
511 |
-
for (var b = 3, a, e, c = [ "variant", "region", "lang" ],
|
512 |
-
e = this[a])
|
513 |
-
return
|
514 |
};
|
515 |
d.isRTL = function() {
|
516 |
return !!c[String(this.lang).toLowerCase()];
|
517 |
};
|
518 |
d = null;
|
519 |
return f;
|
520 |
-
}({},
|
521 |
-
|
522 |
"á": "a",
|
523 |
"à": "a",
|
524 |
"ă": "a",
|
@@ -930,37 +930,37 @@ n.register("$23", {
|
|
930 |
"ӣ": "и",
|
931 |
"ӯ": "у"
|
932 |
});
|
933 |
-
|
934 |
f.init = function() {
|
935 |
function d(a) {
|
936 |
-
return
|
937 |
}
|
938 |
-
function
|
939 |
b = a.split(b);
|
940 |
-
for (var
|
941 |
return e;
|
942 |
}
|
943 |
function c(a) {
|
944 |
-
return
|
945 |
}
|
946 |
function b(a, b) {
|
947 |
-
for (var c = [], q = {},
|
948 |
e[a] = c;
|
949 |
}
|
950 |
function a(a, b) {
|
951 |
-
var c = [],
|
952 |
-
a: for (;++
|
953 |
-
|
954 |
-
b: for (;
|
955 |
-
F = a[
|
956 |
-
for (
|
957 |
continue a;
|
958 |
}
|
959 |
-
c.push(
|
960 |
}
|
961 |
return c;
|
962 |
}
|
963 |
-
var e = [],
|
964 |
return {
|
965 |
split: c,
|
966 |
pull: function(b, e) {
|
@@ -990,36 +990,36 @@ e[a] = null;
|
|
990 |
};
|
991 |
};
|
992 |
return f;
|
993 |
-
}({},
|
994 |
-
|
995 |
-
f.listen = function(f,
|
996 |
function c() {
|
997 |
-
q[
|
998 |
}
|
999 |
function b(a) {
|
1000 |
-
|
1001 |
-
|
1002 |
c();
|
1003 |
return a;
|
1004 |
}
|
1005 |
function a() {
|
1006 |
-
|
1007 |
-
|
1008 |
}
|
1009 |
function e(e) {
|
1010 |
-
var c =
|
1011 |
-
|
1012 |
-
c !==
|
1013 |
a());
|
1014 |
}
|
1015 |
-
var
|
1016 |
-
|
1017 |
e();
|
1018 |
return !1;
|
1019 |
});
|
1020 |
-
b(
|
1021 |
-
|
1022 |
-
e(
|
1023 |
return !0;
|
1024 |
}).on("blur focus change", function() {
|
1025 |
e(null);
|
@@ -1028,35 +1028,35 @@ return !0;
|
|
1028 |
c();
|
1029 |
return {
|
1030 |
delay: function(a) {
|
1031 |
-
|
1032 |
return this;
|
1033 |
},
|
1034 |
ping: function(c) {
|
1035 |
-
c ? (
|
1036 |
return c;
|
1037 |
},
|
1038 |
val: function(a) {
|
1039 |
-
if (null == a) return
|
1040 |
-
|
1041 |
-
|
1042 |
c();
|
1043 |
},
|
1044 |
el: function() {
|
1045 |
-
return
|
1046 |
},
|
1047 |
blur: function(a) {
|
1048 |
-
return
|
1049 |
},
|
1050 |
destroy: function() {
|
1051 |
-
|
1052 |
}
|
1053 |
};
|
1054 |
};
|
1055 |
return f;
|
1056 |
-
}({},
|
1057 |
-
|
1058 |
-
function
|
1059 |
-
this.$element =
|
1060 |
this.options = a;
|
1061 |
this.enabled = !0;
|
1062 |
this.fixTitle();
|
@@ -1065,31 +1065,31 @@ f.init = function(b, a) {
|
|
1065 |
var e = {
|
1066 |
fade: !0,
|
1067 |
offset: 5,
|
1068 |
-
delayIn:
|
1069 |
delayOut: c,
|
1070 |
anchor: b.attr("data-anchor"),
|
1071 |
gravity: b.attr("data-gravity") || "s"
|
1072 |
};
|
1073 |
-
a && (e =
|
1074 |
b.tipsy(e);
|
1075 |
};
|
1076 |
f.delays = function(b, a) {
|
1077 |
-
|
1078 |
c = a || 100;
|
1079 |
};
|
1080 |
f.kill = function() {
|
1081 |
-
|
1082 |
};
|
1083 |
f.text = function(b, a) {
|
1084 |
a.data("tipsy").setTitle(b);
|
1085 |
};
|
1086 |
-
var
|
1087 |
f.delays();
|
1088 |
-
|
1089 |
f.kill();
|
1090 |
return !0;
|
1091 |
});
|
1092 |
-
|
1093 |
show: function() {
|
1094 |
var b = this.getTitle();
|
1095 |
if (b && this.enabled) {
|
@@ -1099,42 +1099,42 @@ a[0].className = "tipsy";
|
|
1099 |
a.remove().css({
|
1100 |
top: 0,
|
1101 |
left: 0
|
1102 |
-
}).prependTo(
|
1103 |
-
var b = (b = this.options.anchor) ? this.$element.find(b) : this.$element, b =
|
1104 |
width: b[0].offsetWidth,
|
1105 |
height: b[0].offsetHeight
|
1106 |
-
}), e = a[0].offsetWidth, c = a[0].offsetHeight,
|
1107 |
-
switch (
|
1108 |
case "n":
|
1109 |
-
|
1110 |
top: b.top + b.height + this.options.offset,
|
1111 |
left: b.left + b.width / 2 - e / 2
|
1112 |
};
|
1113 |
break;
|
1114 |
|
1115 |
case "s":
|
1116 |
-
|
1117 |
top: b.top - c - this.options.offset,
|
1118 |
left: b.left + b.width / 2 - e / 2
|
1119 |
};
|
1120 |
break;
|
1121 |
|
1122 |
case "e":
|
1123 |
-
|
1124 |
top: b.top + b.height / 2 - c / 2,
|
1125 |
left: b.left - e - this.options.offset
|
1126 |
};
|
1127 |
break;
|
1128 |
|
1129 |
case "w":
|
1130 |
-
|
1131 |
top: b.top + b.height / 2 - c / 2,
|
1132 |
left: b.left + b.width + this.options.offset
|
1133 |
};
|
1134 |
}
|
1135 |
-
2 ==
|
1136 |
-
a.css(
|
1137 |
-
a.find(".tipsy-arrow")[0].className = "tipsy-arrow tipsy-arrow-" +
|
1138 |
this.options.className && a.addClass("function" == typeof this.options.className ? this.options.className.call(this.$element[0]) : this.options.className);
|
1139 |
a.addClass("in");
|
1140 |
}
|
@@ -1160,7 +1160,7 @@ a.attr("original-title", b);
|
|
1160 |
if (this.$tip) this.$tip.find(".tipsy-inner")[this.options.html ? "html" : "text"](b);
|
1161 |
},
|
1162 |
tip: function() {
|
1163 |
-
this.$tip || (this.$tip =
|
1164 |
this.$tip.data("tipsy-pointee", this.$element[0]));
|
1165 |
return this.$tip;
|
1166 |
},
|
@@ -1178,10 +1178,10 @@ toggleEnabled: function() {
|
|
1178 |
this.enabled = !this.enabled;
|
1179 |
}
|
1180 |
};
|
1181 |
-
|
1182 |
function a(a) {
|
1183 |
-
var e =
|
1184 |
-
e || (e = new
|
1185 |
return e;
|
1186 |
}
|
1187 |
function e() {
|
@@ -1192,23 +1192,23 @@ e.hoverState = "in";
|
|
1192 |
}, c));
|
1193 |
}
|
1194 |
function c() {
|
1195 |
-
var e = a(this),
|
1196 |
e.hoverState = "out";
|
1197 |
-
0 ==
|
1198 |
"out" == e.hoverState && e.hide();
|
1199 |
-
},
|
1200 |
}
|
1201 |
-
b =
|
1202 |
b.live || this.each(function() {
|
1203 |
a(this);
|
1204 |
});
|
1205 |
if ("manual" != b.trigger) {
|
1206 |
-
var
|
1207 |
-
this[
|
1208 |
}
|
1209 |
return this;
|
1210 |
};
|
1211 |
-
|
1212 |
className: null,
|
1213 |
delayIn: 0,
|
1214 |
delayOut: 0,
|
@@ -1223,77 +1223,77 @@ title: "title",
|
|
1223 |
trigger: "hover",
|
1224 |
anchor: null
|
1225 |
};
|
1226 |
-
|
1227 |
-
return
|
1228 |
};
|
1229 |
-
|
1230 |
-
return
|
1231 |
};
|
1232 |
-
|
1233 |
-
return
|
1234 |
};
|
1235 |
-
|
1236 |
return function() {
|
1237 |
-
var e = a[0], c = 1 < a.length ? a[1] : !1,
|
1238 |
-
|
1239 |
-
|
1240 |
-
|
1241 |
-
|
1242 |
return e + (c ? c : "");
|
1243 |
};
|
1244 |
};
|
1245 |
return f;
|
1246 |
-
}({},
|
1247 |
-
|
1248 |
"".localeCompare || (String.prototype.localeCompare = function() {
|
1249 |
return 0;
|
1250 |
});
|
1251 |
"".trim || (String.prototype.trim = function() {
|
1252 |
-
return
|
1253 |
});
|
1254 |
f.html = function() {
|
1255 |
function d() {
|
1256 |
b = /[<>&]/g;
|
1257 |
a = /(\r\n|\n|\r)/g;
|
1258 |
e = /(?:https?):\/\/(\S+)/gi;
|
1259 |
-
|
1260 |
d = null;
|
1261 |
}
|
1262 |
-
function
|
1263 |
return "&#" + a.charCodeAt(0) + ";";
|
1264 |
}
|
1265 |
function c(a, b) {
|
1266 |
-
return '<a href="' + a + '" target="' + (b.indexOf(
|
1267 |
}
|
1268 |
-
var b, a, e,
|
1269 |
-
return function(
|
1270 |
d && d();
|
1271 |
-
var
|
1272 |
-
|
1273 |
-
return
|
1274 |
};
|
1275 |
}();
|
1276 |
return f;
|
1277 |
-
}({},
|
1278 |
-
|
1279 |
-
function
|
1280 |
-
var
|
1281 |
f.init = function() {
|
1282 |
-
return new
|
1283 |
};
|
1284 |
f.cast = function(a) {
|
1285 |
-
return a instanceof
|
1286 |
};
|
1287 |
f.clone = function(a) {
|
1288 |
-
var b, c = new
|
1289 |
for (b in a) c[b] = a[b];
|
1290 |
return c;
|
1291 |
};
|
1292 |
f.parse = function(a) {
|
1293 |
-
|
1294 |
a = String(a).split(c).join("-");
|
1295 |
-
if (!
|
1296 |
-
var b = new
|
1297 |
b.lang = RegExp.$1.toLowerCase();
|
1298 |
if (a = RegExp.$2) b.script = a.charAt(0).toUpperCase() + a.substr(1).toLowerCase();
|
1299 |
if (a = RegExp.$3) b.region = a.toUpperCase();
|
@@ -1301,7 +1301,7 @@ if (a = RegExp.$4) b.variant = a.toLowerCase();
|
|
1301 |
if (a = RegExp.$5) b.extension = a;
|
1302 |
return b;
|
1303 |
};
|
1304 |
-
d =
|
1305 |
d.isValid = function() {
|
1306 |
return !!this.lang;
|
1307 |
};
|
@@ -1319,22 +1319,22 @@ if (b = this.extension) c += a + b;
|
|
1319 |
return c;
|
1320 |
};
|
1321 |
d.getIcon = function() {
|
1322 |
-
for (var a = 4, b, c,
|
1323 |
-
c = this[b]) c.join && (c = c.join("-")), 1 === a && 3 === c.length ?
|
1324 |
-
return
|
1325 |
};
|
1326 |
d.isRTL = function() {
|
1327 |
return !!b[String(this.script || this.lang).toLowerCase()];
|
1328 |
};
|
1329 |
d = null;
|
1330 |
return f;
|
1331 |
-
}({},
|
1332 |
-
|
1333 |
-
function
|
1334 |
d.console && console.error && console.error(a);
|
1335 |
}
|
1336 |
-
function
|
1337 |
-
|
1338 |
}
|
1339 |
function c() {}
|
1340 |
function b(a) {}
|
@@ -1342,41 +1342,41 @@ c.prototype.toString = function() {
|
|
1342 |
return "[Undefined]";
|
1343 |
};
|
1344 |
b.prototype._validate = function(a) {
|
1345 |
-
var b,
|
1346 |
-
for (b in this)
|
1347 |
-
|
1348 |
-
return
|
1349 |
};
|
1350 |
f.init = function(a, e) {
|
1351 |
-
var
|
1352 |
-
if (a) for (
|
1353 |
-
if (e) for (
|
1354 |
-
return
|
1355 |
};
|
1356 |
f.validate = function(a) {
|
1357 |
var b = /function (\w+)\(/.exec(a.toString()) ? RegExp.$1 : "";
|
1358 |
a.prototype._validate(b || "Object");
|
1359 |
};
|
1360 |
return f;
|
1361 |
-
}({},
|
1362 |
-
|
1363 |
-
var
|
1364 |
-
if (!
|
1365 |
ms: 1,
|
1366 |
moz: 1,
|
1367 |
webkit: 1,
|
1368 |
o: 1
|
1369 |
-
}) if (
|
1370 |
-
|
1371 |
-
var
|
1372 |
-
timeToCall = Math.max(0, 16 - (
|
1373 |
-
nextTime =
|
1374 |
timerId = d.setTimeout(function() {
|
1375 |
b(nextTime);
|
1376 |
}, timeToCall);
|
1377 |
c = nextTime;
|
1378 |
return timerId;
|
1379 |
-
},
|
1380 |
clearTimeout(a);
|
1381 |
});
|
1382 |
var a = Date.now || function() {
|
@@ -1384,26 +1384,26 @@ return new Date().getTime();
|
|
1384 |
};
|
1385 |
f.loop = function(a, b) {
|
1386 |
function c() {
|
1387 |
-
d =
|
1388 |
-
a(
|
1389 |
}
|
1390 |
-
var
|
1391 |
c();
|
1392 |
return {
|
1393 |
stop: function() {
|
1394 |
-
d &&
|
1395 |
d = null;
|
1396 |
}
|
1397 |
};
|
1398 |
};
|
1399 |
return f;
|
1400 |
-
}({},
|
1401 |
-
|
1402 |
-
function
|
1403 |
if (b) {
|
1404 |
-
var
|
1405 |
e = function(a) {
|
1406 |
-
if ((a.MSPOINTER_TYPE_TOUCH || "touch") === a.pointerType) return
|
1407 |
};
|
1408 |
}
|
1409 |
a.addEventListener(c, e, q);
|
@@ -1413,14 +1413,14 @@ a.removeEventListener(c, e, q);
|
|
1413 |
}
|
1414 |
};
|
1415 |
}
|
1416 |
-
function
|
1417 |
a.preventDefault();
|
1418 |
a.stopPropagation();
|
1419 |
return !1;
|
1420 |
}
|
1421 |
-
var c, b = !!d.navigator.msPointerEnabled, a = b ? "MSPointerDown" : "touchstart", e = b ? "MSPointerMove" : "touchmove",
|
1422 |
f.ok = function(a) {
|
1423 |
-
null == c && (c = "function" === typeof
|
1424 |
c && a && a(f);
|
1425 |
return c;
|
1426 |
};
|
@@ -1428,7 +1428,7 @@ f.ms = function() {
|
|
1428 |
return b;
|
1429 |
};
|
1430 |
f.dragger = function(b, c) {
|
1431 |
-
function
|
1432 |
b.addEventListener(a, d[a], !1);
|
1433 |
}
|
1434 |
function q(a) {
|
@@ -1436,36 +1436,36 @@ b.removeEventListener(a, d[a], !1);
|
|
1436 |
}
|
1437 |
var d = {};
|
1438 |
d[a] = function(b) {
|
1439 |
-
|
1440 |
-
|
1441 |
-
c(b,
|
1442 |
});
|
1443 |
-
|
1444 |
-
|
1445 |
return !0;
|
1446 |
};
|
1447 |
-
d[
|
1448 |
q(e);
|
1449 |
-
q(
|
1450 |
-
|
1451 |
-
e.type =
|
1452 |
c(a, e, f);
|
1453 |
});
|
1454 |
return !0;
|
1455 |
};
|
1456 |
d[e] = function(a) {
|
1457 |
-
|
1458 |
-
|
1459 |
-
c(a,
|
1460 |
});
|
1461 |
-
return
|
1462 |
};
|
1463 |
-
|
1464 |
var f = {
|
1465 |
kill: function() {
|
1466 |
q(a);
|
1467 |
q(e);
|
1468 |
-
q(
|
1469 |
b = f = c = null;
|
1470 |
}
|
1471 |
};
|
@@ -1475,51 +1475,51 @@ f.swiper = function(c, d, f) {
|
|
1475 |
function q(a) {
|
1476 |
c.addEventListener(a, u[a], !1);
|
1477 |
}
|
1478 |
-
function
|
1479 |
c.removeEventListener(a, u[a], !1);
|
1480 |
}
|
1481 |
-
function
|
1482 |
-
|
1483 |
-
|
1484 |
}
|
1485 |
-
var
|
1486 |
u[a] = function(a) {
|
1487 |
G = !1;
|
1488 |
-
|
1489 |
-
var b =
|
1490 |
-
|
1491 |
-
|
1492 |
F[a] = c.clientX;
|
1493 |
-
|
1494 |
});
|
1495 |
-
|
1496 |
return !0;
|
1497 |
};
|
1498 |
-
u[
|
1499 |
-
|
1500 |
-
var c =
|
1501 |
d(c, e ? 0 > e ? -1 : 1 : 0);
|
1502 |
});
|
1503 |
-
|
1504 |
return !0;
|
1505 |
};
|
1506 |
u[e] = function(a) {
|
1507 |
var b, e;
|
1508 |
-
null ==
|
1509 |
b = F[a] - c.clientX;
|
1510 |
-
e =
|
1511 |
});
|
1512 |
if (e && Math.abs(e) > Math.abs(b)) return G = !0;
|
1513 |
-
b && (G = !0, c.scrollLeft = Math.max(0,
|
1514 |
-
return
|
1515 |
};
|
1516 |
-
if (!b || f) q(a), q(e), q(
|
1517 |
return {
|
1518 |
kill: function() {
|
1519 |
-
|
1520 |
-
|
1521 |
-
|
1522 |
-
|
1523 |
},
|
1524 |
swiped: function() {
|
1525 |
return G;
|
@@ -1532,33 +1532,33 @@ b && !f && (c.style["-ms-scroll-snap-points-x"] = "snapInterval(0px," + a + "px)
|
|
1532 |
c.style["-ms-scroll-snap-type"] = "mandatory", c.style["-ms-scroll-chaining"] = "none");
|
1533 |
},
|
1534 |
scroll: function(a, b, e) {
|
1535 |
-
|
1536 |
-
var
|
1537 |
-
return
|
1538 |
-
b && (
|
1539 |
}, c);
|
1540 |
}
|
1541 |
};
|
1542 |
};
|
1543 |
f.start = function(b, c) {
|
1544 |
-
return
|
1545 |
};
|
1546 |
f.move = function(a, b) {
|
1547 |
-
return
|
1548 |
};
|
1549 |
f.end = function(a, b) {
|
1550 |
-
return
|
1551 |
};
|
1552 |
-
var
|
1553 |
-
if (b) (a.MSPOINTER_TYPE_TOUCH || "touch") === a.pointerType && c(0, a); else for (var e = -1,
|
1554 |
-
},
|
1555 |
return new Date().getTime();
|
1556 |
};
|
1557 |
return f;
|
1558 |
-
}({},
|
1559 |
-
|
1560 |
f.init = function(d) {
|
1561 |
-
function
|
1562 |
e.style.top = String(-d.scrollTop) + "px";
|
1563 |
return !0;
|
1564 |
}
|
@@ -1571,74 +1571,74 @@ return !0;
|
|
1571 |
function b(a) {
|
1572 |
return '<span class="x' + a.charCodeAt(0).toString(16) + '">' + a + "</span>";
|
1573 |
}
|
1574 |
-
var a = d.parentNode, e = a.insertBefore(
|
1575 |
-
|
1576 |
-
|
1577 |
e.className = "ta-mirror";
|
1578 |
-
var
|
1579 |
-
2 <
|
1580 |
c();
|
1581 |
-
|
1582 |
return {
|
1583 |
kill: function() {
|
1584 |
-
|
1585 |
a.removeChild(e);
|
1586 |
e = null;
|
1587 |
-
|
1588 |
}
|
1589 |
};
|
1590 |
};
|
1591 |
return f;
|
1592 |
-
}({},
|
1593 |
-
|
1594 |
-
function
|
1595 |
-
for (var c = 0,
|
1596 |
-
"function" === typeof callback && (callback(
|
1597 |
return c;
|
1598 |
}
|
1599 |
-
var
|
1600 |
f.load = function(b, a, c) {
|
1601 |
-
function
|
1602 |
f && (clearTimeout(f), f = null);
|
1603 |
-
|
1604 |
-
b && (delete
|
1605 |
}
|
1606 |
-
function
|
1607 |
-
var
|
1608 |
-
if (
|
1609 |
}
|
1610 |
-
function
|
1611 |
-
if (0 ===
|
1612 |
-
|
1613 |
}
|
1614 |
-
if (c && d[c]) "function" === typeof a && a(d[c]); else if (null !=
|
1615 |
-
|
1616 |
-
var f = setTimeout(
|
1617 |
-
|
1618 |
-
|
1619 |
-
|
1620 |
-
|
1621 |
-
|
1622 |
-
|
1623 |
-
|
1624 |
}
|
1625 |
};
|
1626 |
f.stat = function(b) {
|
1627 |
var a;
|
1628 |
if (!(a = c)) {
|
1629 |
-
for (var e,
|
1630 |
-1 !== e) {
|
1631 |
-
|
1632 |
break;
|
1633 |
}
|
1634 |
-
a = c =
|
1635 |
}
|
1636 |
return a + b;
|
1637 |
};
|
1638 |
return f;
|
1639 |
-
}({},
|
1640 |
-
|
1641 |
-
function
|
1642 |
a.setReadOnly(!1);
|
1643 |
a.on("change", function(a, c) {
|
1644 |
return b.val(c.getValue());
|
@@ -1650,13 +1650,13 @@ a.on("blur", function() {
|
|
1650 |
return b.blur();
|
1651 |
});
|
1652 |
}
|
1653 |
-
function
|
1654 |
a.off("change");
|
1655 |
a.off("focus");
|
1656 |
a.off("blur");
|
1657 |
}
|
1658 |
function c(a) {
|
1659 |
-
|
1660 |
a.setReadOnly(!0);
|
1661 |
a.setHighlightGutterLine(!1);
|
1662 |
a.setHighlightActiveLine(!1);
|
@@ -1665,9 +1665,9 @@ function b(b, c) {
|
|
1665 |
function e() {
|
1666 |
this.HighlightRules = d;
|
1667 |
}
|
1668 |
-
var d = a(c), q = b.require,
|
1669 |
-
|
1670 |
-
|
1671 |
return new e();
|
1672 |
}
|
1673 |
function a(a) {
|
@@ -1757,38 +1757,38 @@ return /%(?:[1-9]\d*\$)?\+?(?:0|'[^$])?-?\d*(?:\.\d+)?[b-gijostTuvxX%]/;
|
|
1757 |
case "auto":
|
1758 |
return /%(?:\d+\$|\([_A-Za-z][_A-Za-z0-9]*\))?(?:[-+0]?\d*(\.\d+)?[duxoefgaDUXOEFGA]|[@scSC%])/;
|
1759 |
|
1760 |
-
case
|
1761 |
-
return
|
1762 |
-
}
|
1763 |
-
}
|
1764 |
-
var
|
1765 |
-
f.init = function(a, e,
|
1766 |
-
var f, q = !1,
|
1767 |
-
|
1768 |
-
|
1769 |
-
if (
|
1770 |
-
if (!
|
1771 |
-
f =
|
1772 |
-
var
|
1773 |
f.$blockScrolling = Infinity;
|
1774 |
f.setShowInvisibles(q);
|
1775 |
f.setWrapBehavioursEnabled(!1);
|
1776 |
f.setBehavioursEnabled(!1);
|
1777 |
f.setHighlightActiveLine(!1);
|
1778 |
-
|
1779 |
-
|
1780 |
-
|
1781 |
-
|
1782 |
-
|
1783 |
f.setValue(a.value, -1);
|
1784 |
-
|
1785 |
-
e ?
|
1786 |
}
|
1787 |
}, "ace");
|
1788 |
return {
|
1789 |
kill: function() {
|
1790 |
-
f && (
|
1791 |
-
|
1792 |
return this;
|
1793 |
},
|
1794 |
disable: function() {
|
@@ -1798,7 +1798,7 @@ return this;
|
|
1798 |
},
|
1799 |
enable: function(a) {
|
1800 |
e = a;
|
1801 |
-
f &&
|
1802 |
return this;
|
1803 |
},
|
1804 |
resize: function() {
|
@@ -1815,8 +1815,8 @@ q !== a && (q = a, f && f.setShowInvisibles(a));
|
|
1815 |
return this;
|
1816 |
},
|
1817 |
strf: function(a) {
|
1818 |
-
a = a ||
|
1819 |
-
a !==
|
1820 |
return this;
|
1821 |
},
|
1822 |
focus: function() {
|
@@ -1825,14 +1825,14 @@ return this;
|
|
1825 |
};
|
1826 |
};
|
1827 |
f.strf = function(a, b) {
|
1828 |
-
|
1829 |
-
|
1830 |
return f;
|
1831 |
};
|
1832 |
return f;
|
1833 |
-
}({},
|
1834 |
-
|
1835 |
-
function
|
1836 |
function c() {
|
1837 |
return b.val(a.getContent());
|
1838 |
}
|
@@ -1846,37 +1846,37 @@ return b.blur();
|
|
1846 |
});
|
1847 |
a.setMode("design");
|
1848 |
}
|
1849 |
-
function
|
1850 |
a.off("input");
|
1851 |
a.off("change");
|
1852 |
a.off("focus");
|
1853 |
a.off("blur");
|
1854 |
}
|
1855 |
function c(a) {
|
1856 |
-
|
1857 |
a.setMode("readonly");
|
1858 |
}
|
1859 |
var b = 0;
|
1860 |
f.load = function(a) {
|
1861 |
-
var b =
|
1862 |
b.load(b.stat("/lib/tinymce.min.js"), a, "tinymce");
|
1863 |
return f;
|
1864 |
};
|
1865 |
f.init = function(a, e) {
|
1866 |
function d(a) {
|
1867 |
-
|
1868 |
-
|
1869 |
return a.replace(/(<\/?)script/gi, "$1loco:script");
|
1870 |
}
|
1871 |
-
function
|
1872 |
-
|
1873 |
a._getContent = a.getContent;
|
1874 |
a.getContent = function(a) {
|
1875 |
a = this._getContent(a);
|
1876 |
a = a.replace(/(<\/?)loco:script/gi, "$1script");
|
1877 |
-
if (!
|
1878 |
var b = a.substr(3, a.length - 7);
|
1879 |
-
if (b ===
|
1880 |
}
|
1881 |
return a;
|
1882 |
};
|
@@ -1884,25 +1884,25 @@ a._setContent = a.setContent;
|
|
1884 |
a.setContent = function(a, b) {
|
1885 |
return this._setContent(d(a), b);
|
1886 |
};
|
1887 |
-
e ? (
|
1888 |
-
|
1889 |
}
|
1890 |
-
var
|
1891 |
-
|
1892 |
-
|
1893 |
-
|
1894 |
f.load(function(a) {
|
1895 |
if (!a) throw Error("Failed to load HTML editor");
|
1896 |
-
|
1897 |
inline: !0,
|
1898 |
-
target:
|
1899 |
hidden_input: !1,
|
1900 |
theme: "modern",
|
1901 |
skin: !1,
|
1902 |
plugins: "link lists",
|
1903 |
browser_spellcheck: !0,
|
1904 |
menubar: !1,
|
1905 |
-
fixed_toolbar_container: "#" +
|
1906 |
toolbar: "formatselect | bold italic link unlink | bullist numlist outdent indent",
|
1907 |
block_formats: "Paragraph=p;Heading 1=h1;Heading 2=h2;Heading 3=h4;Heading 4=h4;Heading 5=h5;Heading 6=h6;",
|
1908 |
forced_root_block: "p",
|
@@ -1932,109 +1932,109 @@ extended_valid_elements: "span,b,i,u,loco:script",
|
|
1932 |
entities: "38,amp,60,lt,62,gt,160,nbsp",
|
1933 |
entity_encoding: "named",
|
1934 |
keep_styles: !1,
|
1935 |
-
init_instance_callback:
|
1936 |
});
|
1937 |
});
|
1938 |
return {
|
1939 |
val: function(b) {
|
1940 |
b = d(b);
|
1941 |
-
null ==
|
1942 |
e && e.val(b);
|
1943 |
return this;
|
1944 |
},
|
1945 |
kill: function() {
|
1946 |
-
|
1947 |
-
|
1948 |
-
|
1949 |
return this;
|
1950 |
},
|
1951 |
enable: function(a) {
|
1952 |
e = a;
|
1953 |
-
|
1954 |
return this;
|
1955 |
},
|
1956 |
disable: function() {
|
1957 |
-
|
1958 |
e = null;
|
1959 |
return this;
|
1960 |
},
|
1961 |
focus: function() {
|
1962 |
-
|
1963 |
return this;
|
1964 |
},
|
1965 |
invs: function(a) {
|
1966 |
a = a || !1;
|
1967 |
-
|
1968 |
return this;
|
1969 |
}
|
1970 |
};
|
1971 |
};
|
1972 |
return f;
|
1973 |
-
}({},
|
1974 |
-
|
1975 |
-
function
|
1976 |
function a() {
|
1977 |
-
|
1978 |
}
|
1979 |
function e() {
|
1980 |
var a = b.value;
|
1981 |
-
a !== q && (
|
1982 |
}
|
1983 |
function d() {
|
1984 |
e();
|
1985 |
-
|
1986 |
}
|
1987 |
-
function
|
1988 |
c = b;
|
1989 |
-
|
1990 |
-
|
1991 |
-
|
1992 |
-
|
1993 |
return !0;
|
1994 |
}
|
1995 |
-
function
|
1996 |
c === b && (c = null);
|
1997 |
-
|
1998 |
-
|
1999 |
-
|
2000 |
return !0;
|
2001 |
}
|
2002 |
-
var
|
2003 |
-
|
2004 |
return {
|
2005 |
val: function(a) {
|
2006 |
-
q !== a && (b.value = a,
|
2007 |
return !0;
|
2008 |
},
|
2009 |
kill: function() {
|
2010 |
a();
|
2011 |
-
|
2012 |
},
|
2013 |
fire: function() {
|
2014 |
q = null;
|
2015 |
e();
|
2016 |
},
|
2017 |
ping: d,
|
2018 |
-
blur:
|
2019 |
-
focus:
|
2020 |
reset: function() {
|
2021 |
-
|
2022 |
}
|
2023 |
};
|
2024 |
}
|
2025 |
-
function
|
2026 |
this.e = b;
|
2027 |
}
|
2028 |
var c;
|
2029 |
f._new = function(b) {
|
2030 |
-
return new
|
2031 |
};
|
2032 |
f.init = function(b) {
|
2033 |
-
var a = new
|
2034 |
b.disabled ? (b.removeAttribute("disabled"), a.disable()) : b.readOnly ? a.disable() : a.enable();
|
2035 |
return a;
|
2036 |
};
|
2037 |
-
TextAreaPrototype =
|
2038 |
TextAreaPrototype.destroy = function() {
|
2039 |
this.unlisten();
|
2040 |
var b = this.p;
|
@@ -2054,7 +2054,7 @@ if (null == b) return a.value;
|
|
2054 |
var c = this.l, d = this.p;
|
2055 |
d && d.val(b);
|
2056 |
c && c.val(b);
|
2057 |
-
c || a.value === b || (a.value = b,
|
2058 |
return this;
|
2059 |
};
|
2060 |
TextAreaPrototype.fire = function() {
|
@@ -2067,7 +2067,7 @@ return this;
|
|
2067 |
};
|
2068 |
TextAreaPrototype.focus = function() {
|
2069 |
var b = this.p;
|
2070 |
-
b ? b.focus() :
|
2071 |
};
|
2072 |
TextAreaPrototype.focused = function() {
|
2073 |
return c && c === this.el;
|
@@ -2101,7 +2101,7 @@ return this;
|
|
2101 |
TextAreaPrototype.listen = function() {
|
2102 |
var b = this.l;
|
2103 |
b && b.kill();
|
2104 |
-
this.l =
|
2105 |
return this;
|
2106 |
};
|
2107 |
TextAreaPrototype.unlisten = function() {
|
@@ -2111,7 +2111,7 @@ return this;
|
|
2111 |
};
|
2112 |
TextAreaPrototype.setInvs = function(b, a) {
|
2113 |
var c = this.i || !1;
|
2114 |
-
if (a || c !== b) this._i && (this._i.kill(), delete this._i), (c = this.p) ? c.invs && c.invs(b) : b && (this._i =
|
2115 |
this.i = b;
|
2116 |
return this;
|
2117 |
};
|
@@ -2120,7 +2120,7 @@ return this.i || !1;
|
|
2120 |
};
|
2121 |
TextAreaPrototype.setMode = function(b) {
|
2122 |
var a = this.p, e = this.i || !1;
|
2123 |
-
b !== (this.m || "") && (this.m = b, a && a.kill(), this.p = a = "code" === b ?
|
2124 |
this.setInvs(e, !0), c && this.focus());
|
2125 |
return this;
|
2126 |
};
|
@@ -2143,14 +2143,14 @@ b && b.resize && b.resize();
|
|
2143 |
};
|
2144 |
TextAreaPrototype = null;
|
2145 |
return f;
|
2146 |
-
}({},
|
2147 |
-
|
2148 |
-
function
|
2149 |
var b = d.console;
|
2150 |
b && b.error && b.error(a);
|
2151 |
}
|
2152 |
-
function
|
2153 |
-
var b =
|
2154 |
a && b.setAttribute("class", a);
|
2155 |
return b;
|
2156 |
}
|
@@ -2185,9 +2185,9 @@ b.preventDefault();
|
|
2185 |
return !1;
|
2186 |
};
|
2187 |
}
|
2188 |
-
function
|
2189 |
function e(a) {
|
2190 |
-
|
2191 |
return {
|
2192 |
cellVal: function() {
|
2193 |
return "";
|
@@ -2195,80 +2195,80 @@ return "";
|
|
2195 |
};
|
2196 |
}
|
2197 |
return function(d) {
|
2198 |
-
var
|
2199 |
d.sort(function(a, b) {
|
2200 |
-
return
|
2201 |
});
|
2202 |
};
|
2203 |
}
|
2204 |
-
function
|
2205 |
this.w = a;
|
2206 |
}
|
2207 |
-
function
|
2208 |
this.t = a;
|
2209 |
this.length = 0;
|
2210 |
}
|
2211 |
-
function
|
2212 |
-
var e =
|
2213 |
e.className = c || "";
|
2214 |
this._ = e;
|
2215 |
this.d = b || [];
|
2216 |
this.i = a || 0;
|
2217 |
this.length = b.length;
|
2218 |
}
|
2219 |
-
function
|
2220 |
this.live = a;
|
2221 |
this.rows = [];
|
2222 |
}
|
2223 |
f.create = function(a) {
|
2224 |
-
return new
|
2225 |
};
|
2226 |
-
var
|
2227 |
-
|
2228 |
-
var
|
2229 |
if (d) this.ds = d, this.idxs = u, this._idxs = null; else if (!(d = this.ds)) throw Error("No datasource");
|
2230 |
f.css.push("wg-thead");
|
2231 |
-
|
2232 |
d.eachCol(function(a, b, c) {
|
2233 |
-
|
2234 |
F[a] = c || b;
|
2235 |
});
|
2236 |
-
for (var
|
2237 |
-
|
2238 |
d.eachRow(function(a, b, c) {
|
2239 |
-
|
2240 |
u[a] = a;
|
2241 |
});
|
2242 |
-
this.rows =
|
2243 |
-
this.cols =
|
2244 |
this.ww = null;
|
2245 |
-
this.root =
|
2246 |
this.head = f;
|
2247 |
f.redraw = c(this);
|
2248 |
-
f =
|
2249 |
-
|
2250 |
-
|
2251 |
-
|
2252 |
-
this.sc ? this._re_sort(
|
2253 |
this.redrawDirty();
|
2254 |
this.render();
|
2255 |
-
|
2256 |
return this;
|
2257 |
};
|
2258 |
-
|
2259 |
for (var a = this.pages || [], b = a.length; 0 !== b--; ) a[b].destroy();
|
2260 |
this.pages = [];
|
2261 |
this.sy = this.mx = this.mn = this.vh = null;
|
2262 |
void 0;
|
2263 |
return this;
|
2264 |
};
|
2265 |
-
|
2266 |
-
for (var a, b, c = [], e = this.rows || [], d = -1,
|
2267 |
-
0 === d % 100 && (a =
|
2268 |
-
|
2269 |
-
|
2270 |
-
a = e[
|
2271 |
-
if (null == a) throw Error("Render error, no data at [" +
|
2272 |
a.page = b;
|
2273 |
b.rows.push(a);
|
2274 |
}
|
@@ -2281,133 +2281,133 @@ null == l ? null != f && (a = e[f]) && a.page && (delete this._r, this.select(f,
|
|
2281 |
this._r = l);
|
2282 |
return this;
|
2283 |
};
|
2284 |
-
|
2285 |
-
var a = -1, b = this.ww || (this.ww = []), c = this.w, e = c.cells[0], d = e.body.childNodes,
|
2286 |
-
for (c.redraw.call(e); ++a <
|
2287 |
-
if (
|
2288 |
c = this.mx;
|
2289 |
-
for (a = this.mn; a <= c; a++)
|
2290 |
this.redrawDirty() && this.redraw();
|
2291 |
}
|
2292 |
};
|
2293 |
-
|
2294 |
var a = !1, b = this.root, c = b.scrollTop, b = b.clientHeight;
|
2295 |
this.sy !== c && (a = !0, this.sy = c);
|
2296 |
this.vh !== b && (a = !0, this.vh = b);
|
2297 |
return a;
|
2298 |
};
|
2299 |
-
|
2300 |
-
for (var a = 0, b = -1, c = null, e = null, d = this.ww,
|
2301 |
-
a +=
|
2302 |
-
if (
|
2303 |
-
if (null !==
|
2304 |
-
|
2305 |
-
if (!
|
2306 |
-
|
2307 |
}
|
2308 |
this.mn = c;
|
2309 |
}
|
2310 |
-
if (
|
2311 |
-
if (null !==
|
2312 |
this.mx = e;
|
2313 |
}
|
2314 |
};
|
2315 |
-
|
2316 |
return this.r;
|
2317 |
};
|
2318 |
-
|
2319 |
return this.w.cells[0];
|
2320 |
};
|
2321 |
-
|
2322 |
return this.w.cells[1];
|
2323 |
};
|
2324 |
-
|
2325 |
return (a = this.row(a)) ? a.cells() : [];
|
2326 |
};
|
2327 |
-
|
2328 |
return this.rows[a];
|
2329 |
};
|
2330 |
-
|
2331 |
return this.tr(a)[b];
|
2332 |
};
|
2333 |
-
|
2334 |
null == c && (c = this.r || 0);
|
2335 |
-
var e = this.idxs, d = e.length,
|
2336 |
-
for (c =
|
2337 |
b = !1; else return null;
|
2338 |
-
c = e[
|
2339 |
-
return null == c || null == this.rows[c] ? (
|
2340 |
null) : c;
|
2341 |
};
|
2342 |
-
|
2343 |
a = this.next(a, b);
|
2344 |
null != a && this.r !== a && this.select(a, c);
|
2345 |
return this;
|
2346 |
};
|
2347 |
-
|
2348 |
var b = this.r;
|
2349 |
-
null != b && (this.r = null,
|
2350 |
return this;
|
2351 |
};
|
2352 |
-
|
2353 |
return this.select(this.idxs[a]);
|
2354 |
};
|
2355 |
-
|
2356 |
var c = this.rows[a], e = c && c.page;
|
2357 |
-
if (!e) return this.deselect(!1),
|
2358 |
this.deselect(!0);
|
2359 |
-
var d,
|
2360 |
-
e.rendered || (d = e.top(),
|
2361 |
-
if (!c.rendered) return e.rendered ||
|
2362 |
this;
|
2363 |
e = c.cells();
|
2364 |
-
|
2365 |
this.r = a;
|
2366 |
-
b || (d =
|
2367 |
-
|
2368 |
this.w.fire("wgRowSelect", [ a, c.data() ]);
|
2369 |
return this;
|
2370 |
};
|
2371 |
-
|
2372 |
this._idxs && (this.idxs = this._sort(this._idxs), this._idxs = null, this.clear().render());
|
2373 |
return this;
|
2374 |
};
|
2375 |
-
|
2376 |
this._idxs || (this._idxs = this.idxs);
|
2377 |
this.idxs = this._sort(a);
|
2378 |
return this.clear().render();
|
2379 |
};
|
2380 |
-
|
2381 |
-
for (var b, c = -1, e = this.rows || [], d = this.idxs || [],
|
2382 |
a(e[b], c, b);
|
2383 |
return this;
|
2384 |
};
|
2385 |
-
|
2386 |
-
var b = this.sc || (this.sc = new
|
2387 |
b.has(a) || b.add(a);
|
2388 |
return this;
|
2389 |
};
|
2390 |
-
|
2391 |
var b = -1, c = this.sc, e = c.active;
|
2392 |
-
for (this.sc = c = new
|
2393 |
e && (b = this.head.indexOf(e.id), -1 === b && (b = Math.min(e.idx, a - 1)), this.sort(b, e.desc));
|
2394 |
return this;
|
2395 |
};
|
2396 |
-
|
2397 |
b ? (this.s = b, b(a)) : (b = this.s) && b(a);
|
2398 |
return a;
|
2399 |
};
|
2400 |
-
|
2401 |
-
this._sort(this.idxs,
|
2402 |
this.sc.activate(a, b);
|
2403 |
return this;
|
2404 |
};
|
2405 |
-
|
2406 |
-
|
2407 |
-
|
2408 |
return null != this[a];
|
2409 |
};
|
2410 |
-
|
2411 |
var b = this, c = b.t.head.cells[a];
|
2412 |
b[a] = {
|
2413 |
desc: null,
|
@@ -2421,22 +2421,22 @@ b.toggle(a), !1;
|
|
2421 |
});
|
2422 |
return b;
|
2423 |
};
|
2424 |
-
|
2425 |
this.t.sort(a, !this[a].desc).clear().render();
|
2426 |
return this;
|
2427 |
};
|
2428 |
-
|
2429 |
var c, e;
|
2430 |
c = this.active;
|
2431 |
-
var d = this[a],
|
2432 |
-
c && (e =
|
2433 |
-
(e =
|
2434 |
d.css = c) : this.active = null;
|
2435 |
return this;
|
2436 |
};
|
2437 |
-
|
2438 |
-
|
2439 |
-
|
2440 |
var b, c = [], e = this._, d = this.length;
|
2441 |
if (e) {
|
2442 |
for (this.c = c; 0 !== d--; ) b = e.cloneNode(!1), c[d] = this.update(d, b), b.$index = this.i,
|
@@ -2446,57 +2446,57 @@ this._ = null;
|
|
2446 |
this.rendered = !0;
|
2447 |
return this;
|
2448 |
};
|
2449 |
-
|
2450 |
var c = b || this.c[a] || {}, e = (this.d[a] || function() {})() || " ";
|
2451 |
null == e.innerHTML ? c.textContent = e : c.innerHTML = e.innerHTML;
|
2452 |
return c;
|
2453 |
};
|
2454 |
-
|
2455 |
return this.c || [ this._ ];
|
2456 |
};
|
2457 |
-
|
2458 |
for (var a = -1, b = [], c = this.length; ++a < c; ) b[a] = this.cellVal(a);
|
2459 |
return b;
|
2460 |
};
|
2461 |
-
|
2462 |
this.page = null;
|
2463 |
this.rendered = !1;
|
2464 |
};
|
2465 |
-
|
2466 |
a = this.d[a]() || "";
|
2467 |
return String(a.textContent || a);
|
2468 |
};
|
2469 |
-
|
2470 |
-
|
2471 |
-
|
2472 |
return this.rows.length;
|
2473 |
};
|
2474 |
-
|
2475 |
-
var b = this.h, c =
|
2476 |
c.style.height = String(b) + "px";
|
2477 |
a.appendChild(c);
|
2478 |
return this.dead = c;
|
2479 |
};
|
2480 |
-
|
2481 |
return (this.rendered ? this.live : this.dead).offsetTop;
|
2482 |
};
|
2483 |
-
|
2484 |
var a = this.h;
|
2485 |
null == a && (this.h = a = this.rendered ? this.live.firstChild.offsetHeight : this.dead.offsetHight);
|
2486 |
-
a ||
|
2487 |
return a;
|
2488 |
};
|
2489 |
-
|
2490 |
-
for (var b, c = -1, e = this.rows, d = e.length,
|
2491 |
-
b.rendered || b.render(
|
2492 |
d = a.length;
|
2493 |
-
for (c = 0; c < d; c++)
|
2494 |
-
|
2495 |
this.rendered = !0;
|
2496 |
this.h = null;
|
2497 |
return this;
|
2498 |
};
|
2499 |
-
|
2500 |
var a = this.height(), b = this.live, c = this.dead;
|
2501 |
c.style.height = String(a) + "px";
|
2502 |
b.parentNode.replaceChild(c, b);
|
@@ -2504,62 +2504,62 @@ this.rendered = !1;
|
|
2504 |
this.h = a;
|
2505 |
return this;
|
2506 |
};
|
2507 |
-
|
2508 |
a *= this.rows.length;
|
2509 |
var b = this.dead;
|
2510 |
b && (b.style.height = String(a) + "px");
|
2511 |
this.rendered || (this.h = a);
|
2512 |
return this;
|
2513 |
};
|
2514 |
-
|
2515 |
for (var b = this.live.childNodes, c = a.length; 0 !== c--; ) b[c].style.width = a[c];
|
2516 |
return this;
|
2517 |
};
|
2518 |
-
|
2519 |
var a = this.rendered ? this.live : this.dead, b = this.rows, c = b.length;
|
2520 |
for (a.parentNode.removeChild(a); 0 !== c--; ) b[c].destroy();
|
2521 |
};
|
2522 |
-
|
2523 |
return f;
|
2524 |
-
}({},
|
2525 |
-
|
2526 |
-
function
|
2527 |
var c = a.id, e = c && q[c], d = e && e.parent();
|
2528 |
if (!e || !d) return null;
|
2529 |
-
var
|
2530 |
-
null == c && (c = b[
|
2531 |
-
c && (
|
2532 |
-
|
2533 |
return {
|
2534 |
done: function() {
|
2535 |
-
|
2536 |
},
|
2537 |
move: function(a) {
|
2538 |
-
d.resize(a[
|
2539 |
return !0;
|
2540 |
}
|
2541 |
};
|
2542 |
}
|
2543 |
-
function
|
2544 |
function e() {
|
2545 |
-
|
2546 |
-
|
2547 |
return !0;
|
2548 |
}
|
2549 |
function d(a) {
|
2550 |
-
|
2551 |
return !0;
|
2552 |
}
|
2553 |
-
if (
|
2554 |
-
|
2555 |
-
if (!
|
2556 |
-
|
2557 |
return b(a);
|
2558 |
}
|
2559 |
function c(a, b) {
|
2560 |
var c = b.type;
|
2561 |
-
"touchmove" === c ?
|
2562 |
-
|
2563 |
}
|
2564 |
function b(a) {
|
2565 |
a.stopPropagation();
|
@@ -2567,19 +2567,19 @@ a.preventDefault();
|
|
2567 |
return !1;
|
2568 |
}
|
2569 |
function a(a) {
|
2570 |
-
var b =
|
2571 |
b && b.redraw();
|
2572 |
a && a.redraw();
|
2573 |
-
return
|
2574 |
}
|
2575 |
function e(b, c) {
|
2576 |
-
var e =
|
2577 |
e.trigger("wgFocus", [ a(b) ]);
|
2578 |
}).on("editBlur", function() {
|
2579 |
e.trigger("wgBlur", [ a(null) ]);
|
2580 |
});
|
2581 |
}
|
2582 |
-
function
|
2583 |
var b = a.id, c = a.className;
|
2584 |
this.id = b;
|
2585 |
this.el = a;
|
@@ -2589,21 +2589,21 @@ this._cn = c;
|
|
2589 |
q[b] = this;
|
2590 |
this.clear();
|
2591 |
}
|
2592 |
-
var
|
2593 |
f.init = function(a) {
|
2594 |
-
var b = new
|
2595 |
b.redraw();
|
2596 |
-
|
2597 |
b.dragger(a, c);
|
2598 |
});
|
2599 |
-
|
2600 |
return b;
|
2601 |
};
|
2602 |
-
d =
|
2603 |
d.fire = function(a, b) {
|
2604 |
-
var c =
|
2605 |
c.cell = this;
|
2606 |
-
|
2607 |
return this;
|
2608 |
};
|
2609 |
d.each = function(a) {
|
@@ -2620,10 +2620,10 @@ d.off = function() {
|
|
2620 |
return this.$("off", arguments);
|
2621 |
};
|
2622 |
d.find = function(a) {
|
2623 |
-
return
|
2624 |
};
|
2625 |
d.$ = function(a, b) {
|
2626 |
-
|
2627 |
return this;
|
2628 |
};
|
2629 |
d.addClass = function(a) {
|
@@ -2639,24 +2639,24 @@ d.parent = function() {
|
|
2639 |
return this.pid && q[this.pid];
|
2640 |
};
|
2641 |
d.splitx = function() {
|
2642 |
-
return this._split(
|
2643 |
};
|
2644 |
d.splity = function() {
|
2645 |
return this._split(2, arguments);
|
2646 |
};
|
2647 |
d._split = function(a, b) {
|
2648 |
(this.length || this.field) && this.clear();
|
2649 |
-
for (var c = -1, e, d = b.length,
|
2650 |
-
e =
|
2651 |
this.body.appendChild(e);
|
2652 |
-
for (var f = e,
|
2653 |
-
f.id =
|
2654 |
-
e = new
|
2655 |
e.index = c;
|
2656 |
e.pid = this.id;
|
2657 |
e._locale(this.lang, this.rtl);
|
2658 |
-
e.pos =
|
2659 |
-
|
2660 |
this.cells.push(e);
|
2661 |
this.length++;
|
2662 |
}
|
@@ -2671,35 +2671,35 @@ var a = this.el;
|
|
2671 |
a.innerHTML = "";
|
2672 |
this.body = null;
|
2673 |
a.className = this._cn || "";
|
2674 |
-
|
2675 |
return this;
|
2676 |
};
|
2677 |
d.exists = function() {
|
2678 |
return this === q[this.id];
|
2679 |
};
|
2680 |
d.clear = function() {
|
2681 |
-
for (var a = this.el, b = this.cells, c = this.field, e = this.body, d = this.nav,
|
2682 |
this.cells = [];
|
2683 |
this.length = 0;
|
2684 |
d && (a.removeChild(d), this.nav = null);
|
2685 |
-
e && (c && (
|
2686 |
this.table && (this.table = null), a === e.parentNode && a.removeChild(e));
|
2687 |
-
this.body = a.appendChild(
|
2688 |
this._h = null;
|
2689 |
return this;
|
2690 |
};
|
2691 |
d.resize = function(a, b) {
|
2692 |
if (!b && (b = this.cells[1], !b)) return;
|
2693 |
-
var c = b.index, e = this.cells, d =
|
2694 |
pad = (b.body || b.el.firstChild).offsetTop || 0;
|
2695 |
-
max = (
|
2696 |
min = c ? c.pos * d : 0;
|
2697 |
b.pos = Math.min(max, Math.max(min, a)) / d;
|
2698 |
this.redraw();
|
2699 |
return this;
|
2700 |
};
|
2701 |
d.distribute = function(a) {
|
2702 |
-
for (var b = -1, c = 0, e, d = this.cells,
|
2703 |
this.redraw();
|
2704 |
return this;
|
2705 |
};
|
@@ -2722,25 +2722,25 @@ d.redraw = function(a) {
|
|
2722 |
this.restyle();
|
2723 |
var b = this.el, c = this.body, e = this.field;
|
2724 |
if (c) {
|
2725 |
-
var d,
|
2726 |
-
this._h !==
|
2727 |
-
this._w !==
|
2728 |
d && d.redraw();
|
2729 |
}
|
2730 |
c = this.length;
|
2731 |
-
|
2732 |
-
|
2733 |
-
for (
|
2734 |
-
d =
|
2735 |
return this;
|
2736 |
};
|
2737 |
d.contents = function(a, b) {
|
2738 |
var c = this.el, e = this.body;
|
2739 |
if (null == a) return e.innerHTML;
|
2740 |
this.length ? this.clear() : e && (c.removeChild(e), e = null);
|
2741 |
-
e || (this.body = e = c.appendChild(
|
2742 |
(c = this.lang) && this._locale(c, this.rtl, !0));
|
2743 |
-
"string" === typeof a ?
|
2744 |
this.redraw();
|
2745 |
return this;
|
2746 |
};
|
@@ -2750,14 +2750,14 @@ if (c) {
|
|
2750 |
var d = c.editable();
|
2751 |
c.reload(a, b);
|
2752 |
d !== b && this.restyle();
|
2753 |
-
} else this.length && this.clear(), d =
|
2754 |
-
d.value = a, this.contents(d), c =
|
2755 |
e(this, d), this.field = c, this.restyle();
|
2756 |
this.lang || this.locale("en");
|
2757 |
return c;
|
2758 |
};
|
2759 |
d.locale = function(a) {
|
2760 |
-
a =
|
2761 |
return this._locale(String(a), a.isRTL());
|
2762 |
};
|
2763 |
d._locale = function(a, b, c) {
|
@@ -2784,26 +2784,26 @@ b.eachTextarea(a);
|
|
2784 |
return this;
|
2785 |
};
|
2786 |
d.append = function(a) {
|
2787 |
-
a && (a.nodeType ?
|
2788 |
return this;
|
2789 |
};
|
2790 |
d.prepend = function(a) {
|
2791 |
var b = this.body;
|
2792 |
if (a.nodeType) {
|
2793 |
var c = b.firstChild;
|
2794 |
-
|
2795 |
-
} else
|
2796 |
return this;
|
2797 |
};
|
2798 |
d.before = function(a) {
|
2799 |
var b = this.body;
|
2800 |
-
a.nodeType ?
|
2801 |
return this;
|
2802 |
};
|
2803 |
d.header = function(a, b) {
|
2804 |
if (null == a && null == b) return this.el.getElementsByTagName("header")[0];
|
2805 |
-
this.t =
|
2806 |
-
this.el.insertBefore(
|
2807 |
this.redraw();
|
2808 |
return this;
|
2809 |
};
|
@@ -2818,7 +2818,7 @@ var a = this.t;
|
|
2818 |
return a && a.nodeValue;
|
2819 |
};
|
2820 |
d.bodyY = function() {
|
2821 |
-
return
|
2822 |
};
|
2823 |
d.scrollY = function(a) {
|
2824 |
if (J === a) return this.body.scrollTop;
|
@@ -2826,7 +2826,7 @@ this.body.scrollTop = a;
|
|
2826 |
};
|
2827 |
d.tabulate = function(a) {
|
2828 |
var b = this.table;
|
2829 |
-
b ? b.clear() : b =
|
2830 |
b.init(a);
|
2831 |
return this.table = b;
|
2832 |
};
|
@@ -2837,67 +2837,67 @@ return this;
|
|
2837 |
d.scrollTo = function(a, b) {
|
2838 |
var c, e = this.body;
|
2839 |
c = e.scrollTop;
|
2840 |
-
var d =
|
2841 |
if (c > d) c = d; else {
|
2842 |
-
var
|
2843 |
-
if (
|
2844 |
}
|
2845 |
-
b ? e.scrollTop = c :
|
2846 |
scrollTop: c
|
2847 |
}, 250);
|
2848 |
};
|
2849 |
d.navigize = function(a, c) {
|
2850 |
function e(a) {
|
2851 |
-
var b =
|
2852 |
c.addClass("active");
|
2853 |
-
|
2854 |
-
|
2855 |
b.fire("wgTabSelect", [ a ]);
|
2856 |
return d;
|
2857 |
}
|
2858 |
-
var d = this,
|
2859 |
-
|
2860 |
-
var
|
2861 |
-
var c =
|
2862 |
if (null == c) return !0;
|
2863 |
-
if (null !=
|
2864 |
-
var g = f[
|
2865 |
-
k
|
2866 |
g.removeClass("active");
|
2867 |
}
|
2868 |
e(c);
|
2869 |
d.redraw();
|
2870 |
return b(a);
|
2871 |
});
|
2872 |
-
null == c && (c =
|
2873 |
d.each(function(b, c) {
|
2874 |
-
f[c] =
|
2875 |
b.pos = 0;
|
2876 |
-
|
2877 |
});
|
2878 |
-
e(
|
2879 |
d.lock();
|
2880 |
d.redraw();
|
2881 |
return d;
|
2882 |
};
|
2883 |
d.navigated = function() {
|
2884 |
var a = this.nav;
|
2885 |
-
if (a) return
|
2886 |
};
|
2887 |
d = null;
|
2888 |
return f;
|
2889 |
-
}({},
|
2890 |
-
|
2891 |
-
function
|
2892 |
var b = [];
|
2893 |
a && (a.saved() || b.push("po-unsaved"), a.fuzzy() ? b.push("po-fuzzy") : a.flagged() && b.push("po-flagged"),
|
2894 |
a.translation() || b.push("po-empty"), a.comment() && b.push("po-comment"));
|
2895 |
return b.join(" ");
|
2896 |
}
|
2897 |
-
function
|
2898 |
-
b =
|
2899 |
var e = b.find("span.lang");
|
2900 |
-
c ? (c =
|
2901 |
e.attr("lang", c.lang).attr("class", c.getIcon() || "lang region region-" + (c.region || "zz").toLowerCase())) : (e.remove(),
|
2902 |
c = "en");
|
2903 |
a.locale(c);
|
@@ -2913,22 +2913,22 @@ return e;
|
|
2913 |
function b() {
|
2914 |
this.dirty = 0;
|
2915 |
}
|
2916 |
-
|
2917 |
-
var a = "poUpdate", e = "changing",
|
2918 |
f.extend = function(a) {
|
2919 |
return a.prototype = new b();
|
2920 |
};
|
2921 |
f.localise = function(a) {
|
2922 |
-
|
2923 |
return f;
|
2924 |
};
|
2925 |
-
var
|
2926 |
-
var a =
|
2927 |
return function(b) {
|
2928 |
a.innerHTML = b.replace("src=", "x=");
|
2929 |
return a.textContent.trim() || b.trim();
|
2930 |
};
|
2931 |
-
}(), u = b.prototype =
|
2932 |
u.init = function() {
|
2933 |
this.localise();
|
2934 |
this.editable = {
|
@@ -2940,14 +2940,14 @@ this.html = !1;
|
|
2940 |
return this;
|
2941 |
};
|
2942 |
u.localise = function(a) {
|
2943 |
-
a || (a =
|
2944 |
var b = [];
|
2945 |
-
b[
|
2946 |
-
b[
|
2947 |
-
b[
|
2948 |
b[q] = a._x("Comments", "Editor") + ":";
|
2949 |
-
b[
|
2950 |
-
b[
|
2951 |
b[6] = a._x("Untranslated", "Editor");
|
2952 |
b[7] = a._x("Translated", "Editor");
|
2953 |
b[8] = a._x("Toggle Fuzzy", "Editor");
|
@@ -2961,22 +2961,22 @@ function b(a) {
|
|
2961 |
c.redraw(!0, a);
|
2962 |
return !0;
|
2963 |
}
|
2964 |
-
var c =
|
2965 |
-
|
2966 |
this.redraw = b;
|
2967 |
-
|
2968 |
a.stopPropagation();
|
2969 |
-
|
2970 |
});
|
2971 |
this.destroy = function() {
|
2972 |
c.destroy();
|
2973 |
-
|
2974 |
};
|
2975 |
this.rootDiv = a;
|
2976 |
return c;
|
2977 |
};
|
2978 |
u.$ = function() {
|
2979 |
-
return
|
2980 |
};
|
2981 |
u.setListCell = function(a) {
|
2982 |
var b = this;
|
@@ -2996,12 +2996,12 @@ u.setTargetCell = function(a) {
|
|
2996 |
this.targetCell = a;
|
2997 |
};
|
2998 |
u.next = function(a, b, c) {
|
2999 |
-
for (var e = this.listTable, d = e.selected(),
|
3000 |
-
if (
|
3001 |
d = null;
|
3002 |
break;
|
3003 |
}
|
3004 |
-
if (b && (
|
3005 |
break;
|
3006 |
}
|
3007 |
null != d && e.select(d, !0);
|
@@ -3040,16 +3040,16 @@ u.filtered = function() {
|
|
3040 |
return this.lastSearch || "";
|
3041 |
};
|
3042 |
u.filter = function(a, b) {
|
3043 |
-
var c, e = this.listTable, d = this.lastFound,
|
3044 |
if (a) {
|
3045 |
-
if (
|
3046 |
-
if (
|
3047 |
c = this.dict.find(a);
|
3048 |
}
|
3049 |
-
this.lastSearch =
|
3050 |
this.lastFound = d = c ? c.length : this.po.length;
|
3051 |
c ? e.filter(c) : e.unfilter();
|
3052 |
-
b || this.fire("poFilter", [
|
3053 |
return d;
|
3054 |
};
|
3055 |
u.countFiltered = function() {
|
@@ -3067,8 +3067,8 @@ u.markUnsaved = function(a) {
|
|
3067 |
var b = this.po.indexOf(a);
|
3068 |
if ((b = this.listTable.tr(b)) && b.length) {
|
3069 |
var c = b[0].className;
|
3070 |
-
a = c.replace(/(?:^| +)po-[a-z]+/g, "") + " " +
|
3071 |
-
a !== c &&
|
3072 |
}
|
3073 |
};
|
3074 |
u.save = function(a) {
|
@@ -3082,7 +3082,7 @@ return b;
|
|
3082 |
u.fire = function(a, b) {
|
3083 |
var c = this.handle;
|
3084 |
if (c && c[a] && (c = c[a].apply(this, b || []), !1 === c)) return !1;
|
3085 |
-
c =
|
3086 |
this.$().trigger(c, b);
|
3087 |
return !c.isDefaultPrevented();
|
3088 |
};
|
@@ -3094,20 +3094,20 @@ u.getSorter = function() {
|
|
3094 |
return null;
|
3095 |
};
|
3096 |
u.reload = function() {
|
3097 |
-
var a = this, b, c = a.listCell, e = a.listTable, d = a.po,
|
3098 |
if (!d || !d.row) return c && c.clear().header("Error").contents("Invalid messages list"),
|
3099 |
!1;
|
3100 |
-
a.targetLocale =
|
3101 |
-
a.lastSearch && (a.lastSearch = "", a.lastFound =
|
3102 |
e && (b = e.thead().distribution());
|
3103 |
a.listTable = e = c.tabulate({
|
3104 |
eachCol: function(b) {
|
3105 |
-
var c, e, d = a.getListColumns(),
|
3106 |
-
for (e in d) c = d[e], b(c, e,
|
3107 |
},
|
3108 |
eachRow: function(b) {
|
3109 |
d.each(function(c, e) {
|
3110 |
-
b(e.idx, a.getListEntry(e),
|
3111 |
});
|
3112 |
},
|
3113 |
sort: a.getSorter()
|
@@ -3115,9 +3115,9 @@ sort: a.getSorter()
|
|
3115 |
var l, c = a.getListColumns();
|
3116 |
for (l in c) e.sortable(c[l]);
|
3117 |
b && e.thead().distribute(b);
|
3118 |
-
e.tbody().$(
|
3119 |
a.fire("poLoad");
|
3120 |
-
return !!
|
3121 |
};
|
3122 |
u.load = function(a, b) {
|
3123 |
this.po = a;
|
@@ -3149,27 +3149,27 @@ u.setStatus = function() {
|
|
3149 |
return null;
|
3150 |
};
|
3151 |
u.setSrcMeta = function(a, b) {
|
3152 |
-
var e = [], d,
|
3153 |
-
if (d = a.context()) l.push("<span>" +
|
3154 |
-
if (
|
3155 |
l.length && e.push(l.join(" "));
|
3156 |
-
if (this.getMono() && (d = a.refs()) && (f = d.split(/\s/),
|
3157 |
-
for (l = []; 0 <= --
|
3158 |
e.push('<p class="has-icon icon-file">' + l.join(" ") + "</p>");
|
3159 |
}
|
3160 |
-
(d = a.notes()) && e.push('<p class="has-icon icon-info">' +
|
3161 |
-
e.length ? (
|
3162 |
-
c(this,
|
3163 |
-
|
3164 |
-
return
|
3165 |
};
|
3166 |
u.setTrgMeta = function(a, b, c) {
|
3167 |
-
var e = [], d = !1,
|
3168 |
b = (a = a.errors(b)) && a.length;
|
3169 |
-
var
|
3170 |
-
if (b) for (
|
3171 |
-
e.length ? (
|
3172 |
-
this.$tmeta =
|
3173 |
d = !0);
|
3174 |
return d;
|
3175 |
};
|
@@ -3182,117 +3182,117 @@ e[0] = a.charAt(0).toUpperCase() + a.substr(1).toLowerCase();
|
|
3182 |
return e.join(" ");
|
3183 |
}
|
3184 |
function d(a, e) {
|
3185 |
-
var
|
3186 |
a.off();
|
3187 |
-
a.titled() !==
|
3188 |
-
|
3189 |
-
|
3190 |
if (b.plural()) {
|
3191 |
-
var
|
3192 |
-
if (2 !==
|
3193 |
-
q[
|
3194 |
-
a.splity.apply(a,
|
3195 |
a.each(function(a, c) {
|
3196 |
-
a.header(q[c]).textarea(b.source(null, c),
|
3197 |
});
|
3198 |
a.lock();
|
3199 |
-
|
3200 |
f(a, b);
|
3201 |
});
|
3202 |
-
} else
|
3203 |
-
|
3204 |
}
|
3205 |
function f(c, d) {
|
3206 |
c.on(e, function(a, c) {
|
3207 |
b.source(c, d);
|
3208 |
-
0 === d &&
|
3209 |
-
|
3210 |
-
}).on(
|
3211 |
-
0 === d &&
|
3212 |
-
|
3213 |
-
|
3214 |
});
|
3215 |
}
|
3216 |
-
function
|
3217 |
M && a.eachTextarea(function(a) {
|
3218 |
a.ping();
|
3219 |
});
|
3220 |
a.off();
|
3221 |
-
var
|
3222 |
-
a.titled() !==
|
3223 |
-
|
3224 |
-
!this.sourceCell &&
|
3225 |
-
|
3226 |
-
|
3227 |
-
if (b.pluralized()) {
|
3228 |
-
var
|
3229 |
-
var b =
|
3230 |
-
|
3231 |
-
|
3232 |
-
};
|
3233 |
-
for (b.each(
|
3234 |
-
a.splitx.apply(a,
|
3235 |
a.each(function(a, c) {
|
3236 |
var e = M && !b.disabled(c);
|
3237 |
-
a.textarea(b.translation(c), e).setStrf(
|
3238 |
-
M &&
|
3239 |
});
|
3240 |
-
a.navigize(
|
3241 |
var d = M && c.cell.editable();
|
3242 |
d && d.focus();
|
3243 |
-
|
3244 |
-
|
3245 |
-
|
3246 |
});
|
3247 |
-
} else
|
3248 |
-
M &&
|
3249 |
}
|
3250 |
-
function
|
3251 |
c.on(e, function(a, c, e) {
|
3252 |
b.translate(c, d);
|
3253 |
-
0 === d &&
|
3254 |
-
b.fuzzy(d) ?
|
3255 |
-
"" === c ? (
|
3256 |
-
|
3257 |
-
}).on(
|
3258 |
-
|
3259 |
-
|
3260 |
});
|
3261 |
}
|
3262 |
-
function
|
3263 |
c.off();
|
3264 |
-
var d = L[
|
3265 |
-
c.titled() !== d && (
|
3266 |
-
c.textarea(b.context(), !0).setMode(
|
3267 |
X && c.on(e, function(a, c) {
|
3268 |
b.context(c);
|
3269 |
-
|
3270 |
-
|
3271 |
-
}).on(
|
3272 |
-
|
3273 |
-
|
3274 |
-
|
3275 |
});
|
3276 |
}
|
3277 |
function u(a) {
|
3278 |
var c = L[q];
|
3279 |
-
a.titled() !== c &&
|
3280 |
a.off().on(e, function(a, c) {
|
3281 |
b.comment(c);
|
3282 |
-
|
3283 |
-
|
3284 |
}).textarea(b.comment(), !0);
|
3285 |
}
|
3286 |
-
var
|
3287 |
-
|
3288 |
-
|
3289 |
T && d(T, Y);
|
3290 |
-
U &&
|
3291 |
-
S && W && (
|
3292 |
V && u(V);
|
3293 |
-
|
3294 |
-
|
3295 |
-
I ||
|
3296 |
};
|
3297 |
u.unloadActive = function() {
|
3298 |
function a(b) {
|
@@ -3325,7 +3325,7 @@ var c = this.getListColumns()[b], e = this.po.indexOf(a);
|
|
3325 |
(e = this.listTable.row(e)) && e.rendered && e.update(c);
|
3326 |
};
|
3327 |
u.cellText = function(a) {
|
3328 |
-
return (a = -1 !== a.indexOf("<") || -1 !== a.indexOf("&") ?
|
3329 |
};
|
3330 |
u.fuzzy = function(a, b, c) {
|
3331 |
b = b || this.active;
|
@@ -3405,9 +3405,9 @@ return this;
|
|
3405 |
};
|
3406 |
u = null;
|
3407 |
return f;
|
3408 |
-
}({},
|
3409 |
-
|
3410 |
-
function
|
3411 |
this.init()._validate();
|
3412 |
this.sourceLocale = {
|
3413 |
lang: "en",
|
@@ -3415,38 +3415,38 @@ label: "English",
|
|
3415 |
plurals: [ "One", "Other" ]
|
3416 |
};
|
3417 |
}
|
3418 |
-
function
|
3419 |
-
a =
|
3420 |
-
|
3421 |
return a;
|
3422 |
}
|
3423 |
function c(a) {
|
3424 |
-
return
|
3425 |
b.preventDefault();
|
3426 |
a.focus().fuzzy(!a.fuzzy());
|
3427 |
});
|
3428 |
}
|
3429 |
function b(a) {
|
3430 |
-
return
|
3431 |
b.preventDefault();
|
3432 |
a.fire("poHint");
|
3433 |
});
|
3434 |
}
|
3435 |
-
d =
|
3436 |
f.init = function(a) {
|
3437 |
-
var b = new
|
3438 |
a = b.setRootCell(a);
|
3439 |
-
var c = a.splity("po-list", "po-edit"), d = c[0], g = c[1], c = g.splitx("po-trans", "po-comment"),
|
3440 |
a.distribute([ .34 ]);
|
3441 |
g.distribute([ .8 ]);
|
3442 |
b.setListCell(d);
|
3443 |
-
b.setSourceCell(
|
3444 |
b.setTargetCell(c);
|
3445 |
-
b.commentCell =
|
3446 |
b.editable.source = !1;
|
3447 |
return b;
|
3448 |
};
|
3449 |
-
d =
|
3450 |
d.getListHeadings = function() {
|
3451 |
var a = this.t || {
|
3452 |
_x: function(a) {
|
@@ -3465,9 +3465,9 @@ return a;
|
|
3465 |
};
|
3466 |
d.getListEntry = function(a) {
|
3467 |
var b = this.cellText, c = [ function() {
|
3468 |
-
var c, d = b(a.source() || ""),
|
3469 |
-
return
|
3470 |
-
c.appendChild(
|
3471 |
} ];
|
3472 |
this.targetLocale && (c[1] = function() {
|
3473 |
return b(a.translation() || "");
|
@@ -3512,7 +3512,7 @@ return !this._unlocked;
|
|
3512 |
d.setStatus = function(a) {
|
3513 |
var e = this.$tnav;
|
3514 |
if (null == a) e && (e.remove(), this.$tnav = null); else {
|
3515 |
-
e || (this.$tnav = e =
|
3516 |
var d = [];
|
3517 |
a.translated() ? a.fuzzy() && d.push("po-fuzzy") : d.push("po-empty");
|
3518 |
e.attr("class", d.join(" "));
|
@@ -3520,24 +3520,24 @@ e.attr("class", d.join(" "));
|
|
3520 |
};
|
3521 |
d.getSorter = function() {
|
3522 |
function a(a, c) {
|
3523 |
-
var d = a.weight(),
|
3524 |
-
return d ===
|
3525 |
}
|
3526 |
function b(a, c) {
|
3527 |
return a.hash().localeCompare(c.hash());
|
3528 |
}
|
3529 |
var c = this;
|
3530 |
return function(d) {
|
3531 |
-
var g = c.po,
|
3532 |
d.sort(function(a, b) {
|
3533 |
-
return
|
3534 |
});
|
3535 |
};
|
3536 |
};
|
3537 |
return f;
|
3538 |
-
}({},
|
3539 |
-
|
3540 |
-
var
|
3541 |
copy: 66,
|
3542 |
clear: 75,
|
3543 |
save: 83,
|
@@ -3547,7 +3547,7 @@ prev: 38,
|
|
3547 |
enter: 13,
|
3548 |
invis: 73,
|
3549 |
hint: 74
|
3550 |
-
},
|
3551 |
38: !0,
|
3552 |
40: !0,
|
3553 |
73: !0
|
@@ -3583,42 +3583,42 @@ f.init = function(b, a) {
|
|
3583 |
function e(a) {
|
3584 |
if (a.isDefaultPrevented() || !a.metaKey && !a.ctrlKey) return !0;
|
3585 |
var e = a.which;
|
3586 |
-
if (!
|
3587 |
var d = c[e];
|
3588 |
if (!d) throw Error("command undefined #" + e);
|
3589 |
-
if (a.altKey || a.shiftKey && !
|
3590 |
a.stopPropagation();
|
3591 |
a.preventDefault();
|
3592 |
return !1;
|
3593 |
}
|
3594 |
-
var
|
3595 |
-
|
3596 |
return {
|
3597 |
add: function(a, b) {
|
3598 |
-
c[
|
3599 |
return this;
|
3600 |
},
|
3601 |
enable: function() {
|
3602 |
var a, b;
|
3603 |
-
for (b in arguments) a =
|
3604 |
return this;
|
3605 |
},
|
3606 |
disable: function() {
|
3607 |
-
|
3608 |
-
b = a =
|
3609 |
}
|
3610 |
};
|
3611 |
};
|
3612 |
return f;
|
3613 |
-
}({},
|
3614 |
-
|
3615 |
-
function
|
3616 |
this.reIndex([]);
|
3617 |
}
|
3618 |
f.init = function() {
|
3619 |
-
return new
|
3620 |
};
|
3621 |
-
d =
|
3622 |
d.reIndex = function(d) {
|
3623 |
for (var c = {}, b = -1, a = d.length; ++b < a; ) c[d[b]] = b;
|
3624 |
this.keys = d;
|
@@ -3667,11 +3667,11 @@ for (var c = -1, b = this.keys, a = this.length; ++c < a; ) d(b[c], this[c], c);
|
|
3667 |
return this;
|
3668 |
};
|
3669 |
d.sort = function(d) {
|
3670 |
-
for (var c = -1, b = this.length, a, e = this.keys,
|
3671 |
-
|
3672 |
return d(a[0], b[0]);
|
3673 |
});
|
3674 |
-
for (c = 0; c < b; c++) a =
|
3675 |
return this;
|
3676 |
};
|
3677 |
d.join = function(d) {
|
@@ -3679,29 +3679,29 @@ return [].join.call(this, d);
|
|
3679 |
};
|
3680 |
d = null;
|
3681 |
return f;
|
3682 |
-
}({},
|
3683 |
-
|
3684 |
-
function
|
3685 |
var b = RegExp("^.{0," + (d - 1) + "}[" + c + "]"), a = RegExp("^[^" + c + "]+");
|
3686 |
-
return function(c,
|
3687 |
-
for (var
|
3688 |
-
|
3689 |
-
if (null ==
|
3690 |
-
|
3691 |
-
|
3692 |
-
|
3693 |
-
|
3694 |
-
c = c.substr(
|
3695 |
-
}
|
3696 |
-
0 !==
|
3697 |
-
return
|
3698 |
};
|
3699 |
}
|
3700 |
f.create = function(d) {
|
3701 |
function c(a) {
|
3702 |
-
return
|
3703 |
}
|
3704 |
-
var b, a, e = /(?:\r\n|[\r\n\v\f\u2028\u2029])/g,
|
3705 |
"\t": "\\t",
|
3706 |
"\v": "\\v",
|
3707 |
"\f": "\\f",
|
@@ -3709,42 +3709,42 @@ var b, a, e = /(?:\r\n|[\r\n\v\f\u2028\u2029])/g, h = /[ \r\n]+/g, f = /[\t\v\f\
|
|
3709 |
"\b": "\\b"
|
3710 |
};
|
3711 |
if (null == d || isNaN(d = Number(d))) d = 79;
|
3712 |
-
0 < d && (b =
|
3713 |
return {
|
3714 |
-
pair: function(b,
|
3715 |
-
if (!
|
3716 |
-
|
3717 |
-
var
|
3718 |
-
|
3719 |
-
|
3720 |
return "\\n\n";
|
3721 |
});
|
3722 |
-
if (!(
|
3723 |
-
var
|
3724 |
-
if (a) for (var n = -1,
|
3725 |
-
return
|
3726 |
},
|
3727 |
prefix: function(a, b) {
|
3728 |
var c = a.split(e);
|
3729 |
return b + c.join("\n" + b);
|
3730 |
},
|
3731 |
refs: function(a) {
|
3732 |
-
a = a.replace(
|
3733 |
b && (a = b(a, []).join("\n#: "));
|
3734 |
return "#: " + a;
|
3735 |
}
|
3736 |
};
|
3737 |
};
|
3738 |
return f;
|
3739 |
-
}({},
|
3740 |
-
|
3741 |
-
function
|
3742 |
this.length = 0;
|
3743 |
}
|
3744 |
f.init = function() {
|
3745 |
-
return new
|
3746 |
};
|
3747 |
-
d =
|
3748 |
d.push = function(d) {
|
3749 |
this[this.length++] = d;
|
3750 |
return this;
|
@@ -3758,13 +3758,13 @@ for (var c = -1, b = this.length; ++c < b; ) d(c, this[c]);
|
|
3758 |
return this;
|
3759 |
};
|
3760 |
return f;
|
3761 |
-
}({},
|
3762 |
-
|
3763 |
-
function
|
3764 |
f.extend = function(d) {
|
3765 |
-
return d.prototype = new
|
3766 |
};
|
3767 |
-
d =
|
3768 |
d.row = function(d) {
|
3769 |
return this.rows[d];
|
3770 |
};
|
@@ -3782,7 +3782,7 @@ this.loc = null;
|
|
3782 |
return d;
|
3783 |
};
|
3784 |
d.locale = function(d) {
|
3785 |
-
null == d ? d = this.loc : this.loc = d =
|
3786 |
return d;
|
3787 |
};
|
3788 |
d.each = function(d) {
|
@@ -3820,25 +3820,25 @@ this.rows.sort(d);
|
|
3820 |
return this;
|
3821 |
};
|
3822 |
d["export"] = function() {
|
3823 |
-
for (var d = -1, c = this.rows, b = c.length, a =
|
3824 |
return a;
|
3825 |
};
|
3826 |
d = null;
|
3827 |
return f;
|
3828 |
-
}({},
|
3829 |
-
|
3830 |
-
function
|
3831 |
if (null == a) return c[b] || "";
|
3832 |
c[b] = a || "";
|
3833 |
return c;
|
3834 |
}
|
3835 |
-
function
|
3836 |
this._id = this.id = "";
|
3837 |
}
|
3838 |
f.extend = function(c) {
|
3839 |
-
return c.prototype = new
|
3840 |
};
|
3841 |
-
d =
|
3842 |
d.flag = function(c, b) {
|
3843 |
var a = this.flg || (this.flg = []);
|
3844 |
if (null != b) a[b] = c; else for (var d = Math.max(a.length, this.src.length, this.msg.length); 0 !== d--; ) a[d] = c;
|
@@ -3851,7 +3851,7 @@ for (c = b.length; 0 !== c--; ) if (b[c]) return !0;
|
|
3851 |
return !1;
|
3852 |
};
|
3853 |
d.flags = function() {
|
3854 |
-
for (var c, b = {}, a = [], d = this.flg || [],
|
3855 |
b[c] || (b[c] = !0, a.push(c));
|
3856 |
return a;
|
3857 |
};
|
@@ -3883,7 +3883,7 @@ d.targetForms = function() {
|
|
3883 |
return this.msgF;
|
3884 |
};
|
3885 |
d.each = function(c) {
|
3886 |
-
for (var b = -1, a = this.src, d = this.msg,
|
3887 |
return this;
|
3888 |
};
|
3889 |
d.count = function() {
|
@@ -3922,19 +3922,19 @@ for (c = 0; c < a; c++) if (b[c]) return !1;
|
|
3922 |
return !0;
|
3923 |
};
|
3924 |
d.comment = function(c) {
|
3925 |
-
return
|
3926 |
};
|
3927 |
d.notes = function(c) {
|
3928 |
-
return
|
3929 |
};
|
3930 |
d.refs = function(c) {
|
3931 |
-
return
|
3932 |
};
|
3933 |
d.format = function(c) {
|
3934 |
-
return
|
3935 |
};
|
3936 |
d.context = function(c) {
|
3937 |
-
return
|
3938 |
};
|
3939 |
d.tags = function() {
|
3940 |
return this.tg;
|
@@ -3988,9 +3988,9 @@ this.htm = c;
|
|
3988 |
};
|
3989 |
d = null;
|
3990 |
return f;
|
3991 |
-
}({},
|
3992 |
-
|
3993 |
-
function
|
3994 |
return {
|
3995 |
"Project-Id-Version": "PACKAGE VERSION",
|
3996 |
"Report-Msgid-Bugs-To": "",
|
@@ -4005,7 +4005,7 @@ Language: "",
|
|
4005 |
"Content-Transfer-Encoding": "8bit"
|
4006 |
};
|
4007 |
}
|
4008 |
-
function
|
4009 |
var c = a || "";
|
4010 |
b && (c += "\0" + b);
|
4011 |
return c;
|
@@ -4015,12 +4015,12 @@ var b = d.console;
|
|
4015 |
b && b.error && b.error(a.message || String(a));
|
4016 |
}
|
4017 |
function b(a) {
|
4018 |
-
return
|
4019 |
}
|
4020 |
function a(a) {
|
4021 |
this.locale(a);
|
4022 |
this.clear();
|
4023 |
-
this.head =
|
4024 |
}
|
4025 |
function e(a, b) {
|
4026 |
this.src = [ a || "" ];
|
@@ -4029,13 +4029,13 @@ this.msg = [ b || "" ];
|
|
4029 |
f.create = function(b) {
|
4030 |
return new a(b);
|
4031 |
};
|
4032 |
-
|
4033 |
-
|
4034 |
-
this.rows =
|
4035 |
this.length = 0;
|
4036 |
return this;
|
4037 |
};
|
4038 |
-
|
4039 |
function a(b, c) {
|
4040 |
for (var d = String(b); d.length < c; ) d = "0" + d;
|
4041 |
return d;
|
@@ -4043,14 +4043,14 @@ return d;
|
|
4043 |
var b = new Date(), c = b.getUTCFullYear(), d = b.getUTCMonth() + 1, e = b.getUTCDate(), f = b.getUTCHours(), b = b.getUTCMinutes();
|
4044 |
return a(c, 4) + "-" + a(d, 2) + "-" + a(e, 2) + " " + a(f, 2) + ":" + a(b, 2) + "+0000";
|
4045 |
};
|
4046 |
-
|
4047 |
var c = this.head || (this.head = {});
|
4048 |
if (null == b) return this.headers()[a] || "";
|
4049 |
c[a] = b || "";
|
4050 |
return this;
|
4051 |
};
|
4052 |
-
|
4053 |
-
var b, c = this.now(), d = this.head || (this.head =
|
4054 |
if (null != a) {
|
4055 |
for (b in a) d[b] = a[b];
|
4056 |
return this;
|
@@ -4066,11 +4066,11 @@ a[b] || (a[b] = c);
|
|
4066 |
a["X-Generator"] = "Loco https://localise.biz/";
|
4067 |
return a;
|
4068 |
};
|
4069 |
-
|
4070 |
-
var c =
|
4071 |
return this.rows.get(c);
|
4072 |
};
|
4073 |
-
|
4074 |
a instanceof e || (a = new e(a));
|
4075 |
b && a.context(b);
|
4076 |
var d = a.hash();
|
@@ -4078,57 +4078,57 @@ this.rows.get(d) ? c("Duplicate message at index " + this.indexOf(a)) : (a.idx =
|
|
4078 |
this.length = this.rows.length);
|
4079 |
return a;
|
4080 |
};
|
4081 |
-
|
4082 |
-
for (var b = -1, d, f,
|
4083 |
-
null == d.parent ? (f = d.source || d.id,
|
4084 |
-
q._id = d._id,
|
4085 |
d.notes && q.notes(d.notes), d.refs && q.refs(d.refs), q.format(d.format), d.message = q,
|
4086 |
this.add(q), d.prev && d.prev[0] && (q.prev(d.prev[0].source, d.prev[0].context),
|
4087 |
-
d.prev[1] && q._src.push(d.prev[1].source || ""))) : 0 === b && "object" === typeof
|
4088 |
-
this.headcmt = d.comment)) :
|
4089 |
-
for (b = -1; ++b <
|
4090 |
-
d =
|
4091 |
f = d.source || d.id;
|
4092 |
q = a[d.parent] && a[d.parent].message;
|
4093 |
if (!q) throw Error("parent missing for plural " + f);
|
4094 |
-
|
4095 |
-
1 ===
|
4096 |
-
|
4097 |
} catch (w) {
|
4098 |
c(w);
|
4099 |
}
|
4100 |
return this;
|
4101 |
};
|
4102 |
-
|
4103 |
this.fmtr = b(a);
|
4104 |
return this;
|
4105 |
};
|
4106 |
-
|
4107 |
-
var a, c = this.locale(), d = [], f = [],
|
4108 |
-
|
4109 |
-
for (a in
|
4110 |
f = new e("", f.join("\n"));
|
4111 |
f.comment(this.headcmt || "");
|
4112 |
-
|
4113 |
d.push(f.toString());
|
4114 |
d.push("");
|
4115 |
this.rows.each(function(a, b) {
|
4116 |
-
a && (d.push(b.cat(
|
4117 |
});
|
4118 |
return d.join("\n");
|
4119 |
};
|
4120 |
-
|
4121 |
-
|
4122 |
this._src = [ a || "" ];
|
4123 |
this._ctx = b;
|
4124 |
};
|
4125 |
-
|
4126 |
-
return
|
4127 |
};
|
4128 |
-
|
4129 |
return this.cat(b());
|
4130 |
};
|
4131 |
-
|
4132 |
var d, e = [], f;
|
4133 |
(f = this.cmt) && e.push(a.prefix(f, "# "));
|
4134 |
(f = this.xcmt) && e.push(a.prefix(f, "#. "));
|
@@ -4145,7 +4145,7 @@ if (null == this.src[1]) e.push(a.pair("msgstr", b ? "" : this.msg[0])); else fo
|
|
4145 |
e.push(a.pair("msgid_plural", this.src[1])), f = this.msg || [ "", "" ], c = c || f.length; ++d < c; ) e.push(a.pair("msgstr[" + d + "]", b ? "" : f[d] || ""));
|
4146 |
return e.join("\n");
|
4147 |
};
|
4148 |
-
|
4149 |
var c = this.weight(), d = a.weight();
|
4150 |
if (c > d) return 1;
|
4151 |
if (c < d) return -1;
|
@@ -4157,19 +4157,19 @@ if (c > d) return -1;
|
|
4157 |
}
|
4158 |
return 0;
|
4159 |
};
|
4160 |
-
|
4161 |
var a = new e(), b, c;
|
4162 |
for (b in this) this.hasOwnProperty(b) && ((c = this[b]) && c.concat && (c = c.concat()),
|
4163 |
a[b] = c);
|
4164 |
return a;
|
4165 |
};
|
4166 |
-
|
4167 |
return f;
|
4168 |
-
}({},
|
4169 |
-
|
4170 |
f.init = function(d, f) {
|
4171 |
function c() {
|
4172 |
-
return
|
4173 |
dialogClass: "loco-modal loco-modal-wide",
|
4174 |
modal: !0,
|
4175 |
autoOpen: !1,
|
@@ -4179,45 +4179,45 @@ height: 500
|
|
4179 |
}));
|
4180 |
}
|
4181 |
function b(a, b, d) {
|
4182 |
-
a =
|
4183 |
c().dialog("close").html("").dialog("option", "title", "Error").append(a).dialog("open");
|
4184 |
}
|
4185 |
function a(a) {
|
4186 |
var b = a && a.code;
|
4187 |
if (b) {
|
4188 |
-
for (var d = -1, e = b.length, f =
|
4189 |
f.find("li").eq(a.line - 1).attr("class", "highlighted");
|
4190 |
c().dialog("close").html("").dialog("option", "title", a.path + ":" + a.line).append(f).dialog("open");
|
4191 |
}
|
4192 |
}
|
4193 |
function e(a) {
|
4194 |
a = a.target;
|
4195 |
-
var b =
|
4196 |
a.scrollTop = b;
|
4197 |
}
|
4198 |
-
var
|
4199 |
return {
|
4200 |
-
load: function(
|
4201 |
c().html('<div class="loco-loading"></div>').dialog("option", "title", "Loading..").off("dialogopen").dialog("open").on("dialogopen", e);
|
4202 |
-
|
4203 |
-
ref:
|
4204 |
path: f.popath
|
4205 |
}, f.project || {});
|
4206 |
-
d.ajax.post("fsReference",
|
4207 |
}
|
4208 |
};
|
4209 |
};
|
4210 |
return f;
|
4211 |
-
}({},
|
4212 |
-
|
4213 |
-
function
|
4214 |
this.api = d;
|
4215 |
this.chars = 0;
|
4216 |
}
|
4217 |
f.create = function(d) {
|
4218 |
-
return new
|
4219 |
};
|
4220 |
-
d =
|
4221 |
d.init = function(d, c) {
|
4222 |
function b(a) {
|
4223 |
var b = {
|
@@ -4225,25 +4225,28 @@ length: 0,
|
|
4225 |
html: a.html,
|
4226 |
sources: []
|
4227 |
};
|
4228 |
-
|
4229 |
-
return
|
4230 |
}
|
4231 |
function a(a, d) {
|
4232 |
-
var
|
4233 |
-
if (
|
4234 |
-
var
|
4235 |
-
if (
|
4236 |
-
var
|
4237 |
-
if (
|
4238 |
-
u.
|
4239 |
-
|
4240 |
-
|
4241 |
-
|
|
|
4242 |
k += 1;
|
4243 |
}
|
4244 |
}
|
4245 |
}
|
4246 |
-
|
|
|
|
|
4247 |
b({
|
4248 |
html: !1
|
4249 |
});
|
@@ -4254,12 +4257,13 @@ d.each(function(b, c) {
|
|
4254 |
a(c, 0);
|
4255 |
a(c, 1);
|
4256 |
});
|
4257 |
-
|
4258 |
-
this.map =
|
4259 |
this.chars = f;
|
4260 |
this.length = k;
|
4261 |
-
this.batches =
|
4262 |
this.locale = d.locale();
|
|
|
4263 |
};
|
4264 |
d.abort = function() {
|
4265 |
this.state = "abort";
|
@@ -4267,46 +4271,46 @@ return this;
|
|
4267 |
};
|
4268 |
d.dispatch = function() {
|
4269 |
function d(a, b) {
|
4270 |
-
function e(c, d,
|
4271 |
-
b !==
|
4272 |
-
m++,
|
4273 |
return m;
|
4274 |
}
|
4275 |
if (!c()) return !1;
|
4276 |
if (!b) return !0;
|
4277 |
-
var f,
|
4278 |
-
for (
|
4279 |
return !0;
|
4280 |
}
|
4281 |
function c() {
|
4282 |
-
return "abort" ===
|
4283 |
}
|
4284 |
function b() {
|
4285 |
-
var b =
|
4286 |
-
b ? (c = b.sources) && c.length ?
|
4287 |
}
|
4288 |
function a() {
|
4289 |
-
|
4290 |
f();
|
4291 |
}
|
4292 |
function e() {
|
4293 |
-
|
4294 |
-
k("prog", [
|
4295 |
c() && b();
|
4296 |
}
|
4297 |
function f() {
|
4298 |
-
|
4299 |
k("done");
|
4300 |
}
|
4301 |
function k(a, b) {
|
4302 |
for (var c = u[a] || [], d = c.length; 0 <= --d; ) c[d].apply(null, b);
|
4303 |
}
|
4304 |
-
var
|
4305 |
done: [],
|
4306 |
each: [],
|
4307 |
prog: []
|
4308 |
};
|
4309 |
-
|
4310 |
b();
|
4311 |
return {
|
4312 |
done: function(a) {
|
@@ -4324,34 +4328,34 @@ return this;
|
|
4324 |
stat: function() {
|
4325 |
return {
|
4326 |
todo: function() {
|
4327 |
-
return Math.max(w -
|
4328 |
},
|
4329 |
did: function() {
|
4330 |
-
return
|
4331 |
}
|
4332 |
};
|
4333 |
}
|
4334 |
};
|
4335 |
};
|
4336 |
return f;
|
4337 |
-
}({},
|
4338 |
-
|
4339 |
nn: [ "no" ]
|
4340 |
});
|
4341 |
-
|
4342 |
-
function
|
4343 |
-
function
|
4344 |
c.parseError = function(b) {
|
4345 |
return b && b.code && 200 !== b.code && b.message ? "Error " + b.code + ": " + b.message : "";
|
4346 |
};
|
4347 |
c.batch = function(b, a, d, f) {
|
4348 |
-
function
|
4349 |
for (var d = b.length, e = -1; ++e < d && !1 !== f(b[e], c[e] || "", a); ) ;
|
4350 |
}
|
4351 |
d = d ? "html" : "plain";
|
4352 |
-
var
|
4353 |
return c._call({
|
4354 |
-
url: "https://translate.yandex.net/api/v1.5/tr.json/translate?format=" + d + "&lang=
|
4355 |
method: "POST",
|
4356 |
traditional: !0,
|
4357 |
data: {
|
@@ -4359,15 +4363,15 @@ key: c.key(),
|
|
4359 |
text: b
|
4360 |
}
|
4361 |
}).done(function(a, b, d) {
|
4362 |
-
a && 200 === a.code ?
|
4363 |
-
|
4364 |
}).fail(function() {
|
4365 |
-
|
4366 |
});
|
4367 |
};
|
4368 |
}
|
4369 |
f.create = function(c) {
|
4370 |
-
var b =
|
4371 |
b.toString = function() {
|
4372 |
return "Yandex.Translate";
|
4373 |
};
|
@@ -4379,67 +4383,67 @@ return "https://translate.yandex.com/";
|
|
4379 |
};
|
4380 |
b.init = function(a) {
|
4381 |
c.prototype.init.call(this, a);
|
4382 |
-
/^trnsl\./.test(this.key()) &&
|
4383 |
};
|
4384 |
b.toLang = function(a) {
|
4385 |
-
return this.mapLang(a,
|
4386 |
};
|
4387 |
-
return new
|
4388 |
};
|
4389 |
return f;
|
4390 |
-
}({},
|
4391 |
-
|
4392 |
zh: [ "zh", "zh-CN", "zh-TW" ],
|
4393 |
he: [ "iw" ],
|
4394 |
jv: [ "jw" ]
|
4395 |
});
|
4396 |
-
|
4397 |
-
function
|
4398 |
f.create = function(d) {
|
4399 |
-
|
4400 |
-
|
4401 |
return "Google Translate";
|
4402 |
};
|
4403 |
-
|
4404 |
return "google";
|
4405 |
};
|
4406 |
-
|
4407 |
return "https://translate.google.com/";
|
4408 |
};
|
4409 |
-
|
4410 |
-
|
4411 |
-
|
4412 |
-
|
|
|
|
|
|
|
4413 |
}
|
4414 |
return "";
|
4415 |
-
};
|
4416 |
-
d.batch = function(c, b, a, d) {
|
4417 |
-
function f(a) {
|
4418 |
-
for (var h = c.length, g = -1, k; ++g < h && (k = a[g] || {}, !1 !== d(c[g], k.translatedText || "", b)); ) ;
|
4419 |
}
|
4420 |
-
var g = this;
|
4421 |
-
|
4422 |
-
var
|
4423 |
return g._call({
|
4424 |
-
url: "https://translation.googleapis.com/language/translate/v2?source=
|
4425 |
method: "POST",
|
4426 |
traditional: !0,
|
4427 |
data: {
|
4428 |
key: g.key(),
|
4429 |
-
q:
|
4430 |
}
|
4431 |
}).done(function(a, b, c) {
|
4432 |
-
a.data ?
|
4433 |
-
|
4434 |
}).fail(function() {
|
4435 |
-
|
4436 |
});
|
4437 |
};
|
4438 |
-
return new
|
4439 |
};
|
4440 |
return f;
|
4441 |
-
}({},
|
4442 |
-
|
4443 |
nn: [ "no" ],
|
4444 |
pt: [ "pt", "pt-pt" ],
|
4445 |
sr: [ "sr-Cyrl", "sr-Latn" ],
|
@@ -4451,10 +4455,10 @@ zh_HK: [ "zh-Hans" ],
|
|
4451 |
zh_SG: [ "zh-Hans" ],
|
4452 |
zh_TW: [ "zh-Hant" ]
|
4453 |
});
|
4454 |
-
|
4455 |
-
function
|
4456 |
f.create = function(d) {
|
4457 |
-
d =
|
4458 |
d.toString = function() {
|
4459 |
return "Microsoft Translator text API";
|
4460 |
};
|
@@ -4469,40 +4473,40 @@ return c && c.error ? c.error.message : "";
|
|
4469 |
};
|
4470 |
d.batch = function(c, b, a, d) {
|
4471 |
function f(a) {
|
4472 |
-
for (var
|
4473 |
-
!1 !== d(c[
|
4474 |
}
|
4475 |
-
var
|
4476 |
a = a ? "html" : "plain";
|
4477 |
-
for (var
|
4478 |
-
text: c[
|
4479 |
});
|
4480 |
-
return
|
4481 |
-
url: "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=
|
4482 |
method: "POST",
|
4483 |
-
data: JSON.stringify(
|
4484 |
headers: {
|
4485 |
"Content-Type": "application/json; charset=UTF-8",
|
4486 |
"Ocp-Apim-Subscription-Key": this.key(),
|
4487 |
-
"Ocp-Apim-Subscription-Region":
|
4488 |
}
|
4489 |
}).done(function(a, b, c) {
|
4490 |
-
a && a.length ? f(a) : (
|
4491 |
}).fail(function() {
|
4492 |
f([]);
|
4493 |
});
|
4494 |
};
|
4495 |
-
return new
|
4496 |
};
|
4497 |
return f;
|
4498 |
-
}({},
|
4499 |
-
|
4500 |
pt: [ "pt-PT", "pt-BR" ]
|
4501 |
});
|
4502 |
-
|
4503 |
-
function
|
4504 |
f.create = function(d) {
|
4505 |
-
d =
|
4506 |
d.toString = function() {
|
4507 |
return "DeepL Translator";
|
4508 |
};
|
@@ -4517,57 +4521,105 @@ return c.message;
|
|
4517 |
};
|
4518 |
d.batch = function(c, b, a, d) {
|
4519 |
function f(a) {
|
4520 |
-
for (var
|
4521 |
-
}
|
4522 |
-
var
|
4523 |
-
a =
|
4524 |
-
var k =
|
4525 |
-
null ==
|
4526 |
-
"formal" ===
|
4527 |
-
return
|
4528 |
-
url:
|
4529 |
method: "POST",
|
4530 |
traditional: !0,
|
4531 |
data: {
|
4532 |
-
source_lang:
|
4533 |
-
target_lang:
|
4534 |
-
formality:
|
4535 |
preserve_formatting: "1",
|
4536 |
-
auth_key:
|
4537 |
text: c
|
4538 |
}
|
4539 |
}).done(function(a, b, c) {
|
4540 |
-
a.translations ? f(a.translations) : (
|
4541 |
f([]));
|
4542 |
}).fail(function() {
|
4543 |
f([]);
|
4544 |
});
|
4545 |
};
|
4546 |
-
|
4547 |
-
c = c.split("://", 2);
|
4548 |
-
1 === c.length && c.unshift("https");
|
4549 |
-
return c[0] + "://" + c[1].replace(/\/{2,}/g, "/");
|
4550 |
};
|
4551 |
-
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4552 |
};
|
4553 |
return f;
|
4554 |
-
}({},
|
4555 |
-
|
4556 |
-
function
|
4557 |
this.inf = {};
|
4558 |
}
|
4559 |
-
function
|
4560 |
var a = w.createElement("p"), b = /&(#\d+|#x[0-9a-f]|[a-z]+);/i, c = /<[a-z]+\s/i, d, f;
|
4561 |
return {
|
4562 |
-
sniff: function(
|
4563 |
-
if (
|
4564 |
-
d =
|
4565 |
-
if (b.test(
|
4566 |
return f = !1;
|
4567 |
}
|
4568 |
};
|
4569 |
}
|
4570 |
-
var c =
|
4571 |
c.init = function(a) {
|
4572 |
this.inf = a || {};
|
4573 |
};
|
@@ -4586,6 +4638,9 @@ return this.param("url") || "#";
|
|
4586 |
c.toString = function() {
|
4587 |
return this.param("name") || this.getId();
|
4588 |
};
|
|
|
|
|
|
|
4589 |
c.stderr = function(a) {
|
4590 |
var b = (d.loco || {}).notices || d.console;
|
4591 |
b && b.error && b.error(String(this) + ": " + String(a));
|
@@ -4597,14 +4652,22 @@ c.parseError = function() {
|
|
4597 |
return "";
|
4598 |
};
|
4599 |
c.mapLang = function(a, b) {
|
4600 |
-
var c = String(a).replace("-", "_"), d = a.lang, f = b[c] || b[d] || [],
|
4601 |
-
if (0 ===
|
4602 |
-
if (1 <
|
4603 |
return f[0];
|
4604 |
};
|
4605 |
c.toLang = function(a) {
|
4606 |
return String(a);
|
4607 |
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4608 |
c.translate = function(a, b, c) {
|
4609 |
return this.batch([ a ], b, this.isHtml(a), c);
|
4610 |
};
|
@@ -4615,12 +4678,12 @@ a.cache = !0;
|
|
4615 |
a.dataType = "json";
|
4616 |
a.error = function(a, c, d) {
|
4617 |
try {
|
4618 |
-
var f = a.responseText,
|
4619 |
-
d =
|
4620 |
-
} catch (
|
4621 |
b.stderr(d || b.httpError(a));
|
4622 |
};
|
4623 |
-
return b.abortable(
|
4624 |
};
|
4625 |
c.abortable = function(a) {
|
4626 |
var b = this;
|
@@ -4634,24 +4697,25 @@ var a = this.$r;
|
|
4634 |
a && a.abort();
|
4635 |
};
|
4636 |
c.isHtml = function(a) {
|
4637 |
-
return (b || (b =
|
4638 |
};
|
4639 |
c.createJob = function() {
|
4640 |
-
return
|
4641 |
};
|
4642 |
c.batch = function(a, b, c, f) {
|
4643 |
function g(c) {
|
4644 |
-
for (var d = a.length,
|
4645 |
}
|
4646 |
-
var
|
4647 |
c = {
|
4648 |
hook: this.getId(),
|
4649 |
type: c ? "html" : "text",
|
4650 |
locale: this.toLang(b),
|
|
|
4651 |
sources: a
|
4652 |
};
|
4653 |
-
var n =
|
4654 |
-
this.abortable(
|
4655 |
g(a && a.targets || []);
|
4656 |
n.resolve();
|
4657 |
}, function() {
|
@@ -4663,103 +4727,103 @@ return n.promise();
|
|
4663 |
f.create = function(a) {
|
4664 |
var b;
|
4665 |
b = a.id;
|
4666 |
-
b = "yandex" === b ?
|
4667 |
b.init(a);
|
4668 |
return b;
|
4669 |
};
|
4670 |
f.suggest = function(a, b, c, d) {
|
4671 |
-
var f,
|
4672 |
-
for (f = 0; f <
|
4673 |
};
|
4674 |
var b;
|
4675 |
return f;
|
4676 |
-
}({},
|
4677 |
-
|
4678 |
f.init = function(f) {
|
4679 |
-
function
|
4680 |
-
H || (I.on("click",
|
4681 |
dialogClass: "request-filesystem-credentials-dialog loco-modal",
|
4682 |
minWidth: 580,
|
4683 |
modal: !0,
|
4684 |
autoOpen: !1,
|
4685 |
closeOnEscape: !0
|
4686 |
}).on("change", 'input[name="connection_type"]', function() {
|
4687 |
-
this.checked &&
|
4688 |
}));
|
4689 |
return H;
|
4690 |
}
|
4691 |
function c() {
|
4692 |
-
|
4693 |
-
if (
|
4694 |
-
var a = J, c =
|
4695 |
c.find("span.loco-msg").text(a);
|
4696 |
K || (c.removeClass("jshide").hide().fadeIn(500), K = !0);
|
4697 |
-
} else K && (b(
|
4698 |
}
|
4699 |
function b(a) {
|
4700 |
a.slideUp(250).fadeOut(250, function() {
|
4701 |
-
|
4702 |
});
|
4703 |
}
|
4704 |
function a() {
|
4705 |
-
if (
|
4706 |
-
|
4707 |
-
|
4708 |
K = !1)) : c();
|
4709 |
-
|
4710 |
-
|
4711 |
return !1;
|
4712 |
}
|
4713 |
function e(a) {
|
4714 |
var b, c, d = q || {};
|
4715 |
-
for (b in d) d.hasOwnProperty(b) && (c = d[b], a[b] ? a[b].value = c :
|
4716 |
}
|
4717 |
-
function
|
4718 |
a.preventDefault();
|
4719 |
-
a =
|
4720 |
-
|
4721 |
-
|
4722 |
return !1;
|
4723 |
}
|
4724 |
-
function
|
4725 |
a.preventDefault();
|
4726 |
H.dialog("close");
|
4727 |
return !1;
|
4728 |
}
|
4729 |
-
function
|
4730 |
a.preventDefault();
|
4731 |
H.dialog("open").find('input[name="connection_type"]').change();
|
4732 |
return !1;
|
4733 |
}
|
4734 |
-
function
|
4735 |
-
|
4736 |
-
|
4737 |
-
|
4738 |
J = b.warning || "";
|
4739 |
b.notice && u.notices.info(b.notice);
|
4740 |
-
if (
|
4741 |
a(); else if (b.reason) u.notices.info(b.reason); else if (b = b.prompt) {
|
4742 |
-
var c =
|
4743 |
-
c.html(b).find("form").on("submit",
|
4744 |
c.dialog("option", "title", c.find("h2").remove().text());
|
4745 |
-
c.find("button.cancel-button").show().on("click",
|
4746 |
c.find('input[type="submit"]').addClass("button-primary");
|
4747 |
a();
|
4748 |
-
|
4749 |
} else u.notices.error("Server didn't return credentials, nor a prompt for credentials");
|
4750 |
}
|
4751 |
-
function
|
4752 |
a();
|
4753 |
}
|
4754 |
-
function
|
4755 |
-
|
4756 |
-
u.ajax.setNonce("fsConnect",
|
4757 |
return a;
|
4758 |
}
|
4759 |
-
var q,
|
4760 |
-
u.notices.convert(
|
4761 |
-
f.connection_type ? (q = {}, q.connection_type = f.connection_type.value,
|
4762 |
-
path:
|
4763 |
auth: F
|
4764 |
});
|
4765 |
a();
|
@@ -4778,30 +4842,30 @@ e(b);
|
|
4778 |
return this;
|
4779 |
},
|
4780 |
connect: function() {
|
4781 |
-
|
4782 |
F = f.auth.value;
|
4783 |
-
|
4784 |
return this;
|
4785 |
},
|
4786 |
listen: function(a) {
|
4787 |
-
|
4788 |
-
|
4789 |
return this;
|
4790 |
},
|
4791 |
authed: function() {
|
4792 |
-
return
|
4793 |
}
|
4794 |
};
|
4795 |
};
|
4796 |
return f;
|
4797 |
-
}({},
|
4798 |
-
|
4799 |
-
function
|
4800 |
-
f = "n" ===
|
4801 |
-
|
4802 |
-
return
|
4803 |
-
}
|
4804 |
-
function
|
4805 |
return function(c) {
|
4806 |
a.apply(c, b);
|
4807 |
return c;
|
@@ -4826,93 +4890,93 @@ return -1 * a(b, c);
|
|
4826 |
f.init = function(a) {
|
4827 |
function b(a) {
|
4828 |
var c = -1, d = a.length;
|
4829 |
-
for (
|
4830 |
}
|
4831 |
function c(a) {
|
4832 |
-
|
4833 |
-
w && (a = f[w],
|
4834 |
-
b(
|
4835 |
}
|
4836 |
-
var d = [], f = [],
|
4837 |
-
|
4838 |
var e = c.getAttribute("data-sort-type");
|
4839 |
-
e && (a =
|
4840 |
c.preventDefault();
|
4841 |
c = a;
|
4842 |
-
var e = f[c],
|
4843 |
-
|
4844 |
-
b(
|
4845 |
q && q.removeClass("loco-desc loco-asc");
|
4846 |
-
q =
|
4847 |
w = c;
|
4848 |
return !1;
|
4849 |
-
}), f[
|
4850 |
$: c,
|
4851 |
type: e
|
4852 |
});
|
4853 |
-
c.hasAttribute("colspan") ?
|
4854 |
-
}),
|
4855 |
-
var c, e,
|
4856 |
_: a,
|
4857 |
$: b
|
4858 |
}, m = b.getElementsByTagName("td");
|
4859 |
for (e in f) {
|
4860 |
c = m[e];
|
4861 |
-
(
|
4862 |
-
c.hasAttribute("data-sort-value") && (
|
4863 |
switch (f[e].type) {
|
4864 |
case "n":
|
4865 |
-
|
4866 |
}
|
4867 |
-
|
4868 |
}
|
4869 |
-
d[a] =
|
4870 |
-
|
4871 |
-
}), a =
|
4872 |
-
|
4873 |
-
|
4874 |
a.preventDefault();
|
4875 |
return !1;
|
4876 |
})));
|
4877 |
};
|
4878 |
return f;
|
4879 |
-
}({},
|
4880 |
-
var
|
4881 |
$v: [ 0, 0 ]
|
4882 |
};
|
4883 |
-
|
4884 |
-
|
4885 |
-
|
4886 |
return I.$v[f || 0];
|
4887 |
};
|
4888 |
-
|
4889 |
-
|
4890 |
-
|
4891 |
-
|
4892 |
-
|
4893 |
-
|
4894 |
-
|
4895 |
-
|
4896 |
-
|
4897 |
-
|
4898 |
-
|
4899 |
-
|
4900 |
-
|
4901 |
-
|
4902 |
-
|
4903 |
-
ed:
|
4904 |
-
kbd:
|
4905 |
-
init:
|
4906 |
-
ace:
|
4907 |
-
ref:
|
4908 |
-
};
|
4909 |
-
|
4910 |
-
|
4911 |
-
|
4912 |
-
|
4913 |
});
|
4914 |
-
|
4915 |
-
return "2.5.
|
4916 |
!1) : !0;
|
4917 |
};
|
4918 |
})(window, document, window.jQuery);
|
1 |
+
(function(y, w, h, J) {
|
2 |
+
var p = function() {
|
3 |
function f(d) {
|
4 |
throw Error("Failed to require " + d);
|
5 |
}
|
6 |
var d = {};
|
7 |
return {
|
8 |
+
register: function(f, n) {
|
9 |
+
d[f] = n;
|
10 |
},
|
11 |
+
require: function(h, n) {
|
12 |
+
return d[h] || f(n);
|
13 |
},
|
14 |
+
include: function(h, n, l) {
|
15 |
+
return d[h] || (l ? f(n) : null);
|
16 |
}
|
17 |
};
|
18 |
}();
|
19 |
+
p.register("$1", function(f, d, h) {
|
20 |
+
function n(l) {
|
21 |
+
var c = typeof l;
|
22 |
+
if ("string" === c) if (/[^ <>!=()%^&|?:n0-9]/.test(l)) console.error("Invalid plural: " + l); else return new Function("n", "return " + l);
|
23 |
+
"function" !== c && (l = function(b) {
|
24 |
return 1 != b;
|
25 |
});
|
26 |
+
return l;
|
27 |
}
|
28 |
+
f.init = function(l) {
|
29 |
function c(a, b, e) {
|
30 |
+
return (a = m[a]) && a[e] ? a[e] : b || "";
|
31 |
}
|
32 |
function b(a) {
|
33 |
return c(a, a, 0);
|
36 |
return c(b + "" + a, a, 0);
|
37 |
}
|
38 |
function e(a, b, e) {
|
39 |
+
e = Number(l(e));
|
40 |
isNaN(e) && (e = 0);
|
41 |
return c(a, e ? b : a, e);
|
42 |
}
|
43 |
+
l = n(l);
|
44 |
+
var m = {};
|
45 |
return {
|
46 |
__: b,
|
47 |
_x: a,
|
50 |
x: a,
|
51 |
n: e,
|
52 |
load: function(a) {
|
53 |
+
m = a || {};
|
54 |
return this;
|
55 |
},
|
56 |
pluraleq: function(a) {
|
57 |
+
l = n(a);
|
58 |
return this;
|
59 |
}
|
60 |
};
|
61 |
};
|
62 |
return f;
|
63 |
+
}({}, y, w));
|
64 |
+
p.register("$2", function(f, d, h) {
|
65 |
f.ie = function() {
|
66 |
+
var f = !1, l = 0;
|
67 |
+
d.attachEvent && d.navigator && /MSIE (\d+)\./.exec(String(navigator.appVersion)) && (l = Number(RegExp.$1),
|
68 |
+
f = 11 > l);
|
69 |
return function() {
|
70 |
return f;
|
71 |
};
|
74 |
return f;
|
75 |
};
|
76 |
return f;
|
77 |
+
}({}, y, w));
|
78 |
+
p.register("$3", function(f, d, h) {
|
79 |
+
Number.prototype.format = function(d, l, c) {
|
80 |
d = Math.pow(10, d || 0);
|
81 |
var b = Math.round(d * this) / d;
|
82 |
d = [];
|
87 |
b = d.join(c || ",");
|
88 |
if (a) {
|
89 |
c = a;
|
90 |
+
var m;
|
91 |
+
for (d = c.length; "0" === c.charAt(--d); ) m = d;
|
92 |
+
m && (c = c.substring(0, m));
|
93 |
+
(a = c) && (b += (l || ".") + a);
|
94 |
}
|
95 |
return b;
|
96 |
};
|
97 |
Number.prototype.percent = function(d) {
|
98 |
+
var l = 0, c = this && d ? 100 * (this / d) : 0;
|
99 |
if (0 === c) return "0";
|
100 |
if (100 === c) return "100";
|
101 |
+
if (99 < c) c = Math.min(c, 99.9), d = c.format(++l); else if (.5 > c) {
|
102 |
c = Math.max(c, 1e-4);
|
103 |
do {
|
104 |
+
d = c.format(++l);
|
105 |
+
} while ("0" === d && 4 > l);
|
106 |
d = d.substr(1);
|
107 |
} else d = c.format(0);
|
108 |
return d;
|
109 |
};
|
110 |
return f;
|
111 |
+
}({}, y, w));
|
112 |
+
p.register("$4", function(f, d, h) {
|
113 |
Array.prototype.indexOf || (Array.prototype.indexOf = function(d) {
|
114 |
if (null == this) throw new TypeError();
|
115 |
+
var l, c = Object(this), b = c.length >>> 0;
|
116 |
if (0 === b) return -1;
|
117 |
+
l = 0;
|
118 |
+
1 < arguments.length && (l = Number(arguments[1]), l != l ? l = 0 : 0 != l && Infinity != l && -Infinity != l && (l = (0 < l || -1) * Math.floor(Math.abs(l))));
|
119 |
+
if (l >= b) return -1;
|
120 |
+
for (l = 0 <= l ? l : Math.max(b - Math.abs(l), 0); l < b; l++) if (l in c && c[l] === d) return l;
|
121 |
return -1;
|
122 |
});
|
123 |
return f;
|
124 |
+
}({}, y, w));
|
125 |
+
p.register("$5", function(f, d, p) {
|
126 |
d.JSON || (d.JSON = {
|
127 |
+
parse: h.parseJSON,
|
128 |
stringify: null
|
129 |
});
|
130 |
return f = d.JSON;
|
131 |
+
}({}, y, w));
|
132 |
+
p.register("$6", function(f, d, h) {
|
133 |
+
f.trim = function(d, l) {
|
134 |
+
for (l || (l = " \n"); d && -1 !== l.indexOf(d.substr(0, 1)); ) d = d.substr(1);
|
135 |
+
for (;d && -1 !== l.indexOf(d.substr(-1)); ) d = d.substr(0, d.length - 1);
|
136 |
return d;
|
137 |
};
|
138 |
f.sprintf = function(d) {
|
139 |
+
var l = 0, c = [].slice.call(arguments, 1);
|
140 |
return d.replace(/%(?:([1-9][0-9]*)\$)?([sud%])/g, function(b, a, e) {
|
141 |
+
return "%" === e ? "%" : (a ? c[Number(a) - 1] : c[l++]) || "";
|
142 |
});
|
143 |
};
|
144 |
return f;
|
145 |
+
}({}, y, w));
|
146 |
+
p.register("$21", function(f, d, h) {
|
147 |
+
function n(l) {
|
148 |
return function(c, b) {
|
149 |
+
for (var a = c[l] || 0; (c = c.offsetParent) && c !== (b || h.body); ) a += c[l] || 0;
|
150 |
return a;
|
151 |
};
|
152 |
}
|
153 |
+
f.top = n("offsetTop");
|
154 |
+
f.left = n("offsetLeft");
|
155 |
+
f.el = function(l, c) {
|
156 |
+
var b = h.createElement(l || "div");
|
157 |
c && (b.className = c);
|
158 |
return b;
|
159 |
};
|
160 |
+
f.txt = function(l) {
|
161 |
+
return h.createTextNode(l || "");
|
162 |
};
|
163 |
return f;
|
164 |
+
}({}, y, w));
|
165 |
+
p.register("$7", function(f, d, D) {
|
166 |
+
function n(a, b, e) {
|
167 |
function c() {
|
168 |
q();
|
169 |
+
v = setTimeout(b, e);
|
170 |
}
|
171 |
function q() {
|
172 |
+
v && clearTimeout(v);
|
173 |
+
v = null;
|
174 |
}
|
175 |
+
var v;
|
176 |
c();
|
177 |
+
h(a).on("mouseenter", q).on("mouseleave", c);
|
178 |
return {
|
179 |
die: function() {
|
180 |
q();
|
181 |
+
h(a).off("mouseenter mouseleave");
|
182 |
}
|
183 |
};
|
184 |
}
|
185 |
+
function l(a, b) {
|
186 |
a.fadeTo(b, 0, function() {
|
187 |
a.slideUp(b, function() {
|
188 |
a.remove();
|
189 |
+
h(d).triggerHandler("resize");
|
190 |
});
|
191 |
});
|
192 |
return a;
|
193 |
}
|
194 |
function c(a, b) {
|
195 |
function e(b) {
|
196 |
+
k[v] = null;
|
197 |
+
l(h(a), 250);
|
198 |
q && q.die();
|
199 |
var c;
|
200 |
if (c = b) b.stopPropagation(), b.preventDefault(), c = !1;
|
202 |
}
|
203 |
function c(b) {
|
204 |
q && q.die();
|
205 |
+
return q = n(a, e, b);
|
206 |
+
}
|
207 |
+
var q, v, m, g = h(a), B = g.find("button");
|
208 |
+
0 === B.length && (g.addClass("is-dismissible"), B = h('<button type="button" class="notice-dismiss"> </a>').appendTo(g));
|
209 |
+
B.off("click").on("click", e);
|
210 |
+
h(d).triggerHandler("resize");
|
211 |
+
z();
|
212 |
+
v = k.length;
|
213 |
+
k.push(e);
|
214 |
b && (q = c(b));
|
215 |
return {
|
216 |
+
link: function(b, v) {
|
217 |
+
var e = v || b, c = h(a).find("nav"), e = h("<nav></nav>").append(h("<a></a>").attr("href", b).text(e));
|
218 |
+
m ? (m.push(e.html()), c.html(m.join("<span> | </span>"))) : (m = [ e.html() ],
|
219 |
+
h(a).addClass("has-nav").append(e));
|
220 |
return this;
|
221 |
},
|
222 |
stick: function() {
|
223 |
q && q.die();
|
224 |
q = null;
|
225 |
+
k[v] = null;
|
226 |
return this;
|
227 |
},
|
228 |
slow: function(a) {
|
232 |
};
|
233 |
}
|
234 |
function b(a, b, e) {
|
235 |
+
var c = p.require("$21", "dom.js").el;
|
236 |
+
a = h('<div class="notice notice-' + a + ' loco-notice inline"></div>').prependTo(h("#loco-notices"));
|
237 |
+
var q = h(c("p"));
|
238 |
+
e = h(c("span")).text(e);
|
239 |
+
b = h(c("strong", "has-icon")).text(b + ": ");
|
240 |
q.append(b).append(e).appendTo(a);
|
241 |
return a;
|
242 |
}
|
243 |
+
function a(a, e, q, m) {
|
244 |
a = b(q, e, a).css("opacity", "0").fadeTo(500, 1);
|
245 |
+
h(d).triggerHandler("resize");
|
246 |
+
return c(a, m);
|
247 |
}
|
248 |
function e(b) {
|
249 |
+
return a(b, s, "warning");
|
250 |
}
|
251 |
+
function m() {
|
252 |
+
h("#loco-notices").find("div.notice").each(function(a, b) {
|
253 |
if (-1 === b.className.indexOf("jshide")) {
|
254 |
var e = -1 === b.className.indexOf("notice-success") ? null : 5e3;
|
255 |
c(b, e);
|
256 |
}
|
257 |
});
|
258 |
}
|
259 |
+
var k = [], g = d.console || {
|
260 |
log: function() {}
|
261 |
+
}, z = Date.now || function() {
|
262 |
return new Date().getTime();
|
263 |
+
}, A, s, q, B;
|
264 |
f.error = function(b) {
|
265 |
+
return a(b, A, "error");
|
266 |
};
|
267 |
f.warn = e;
|
268 |
f.info = function(b) {
|
269 |
return a(b, q, "info");
|
270 |
};
|
271 |
f.success = function(b) {
|
272 |
+
return a(b, B, "success", 5e3);
|
273 |
};
|
274 |
f.warning = e;
|
275 |
f.log = function() {
|
276 |
+
g.log.apply(g, arguments);
|
277 |
};
|
278 |
f.debug = function() {
|
279 |
+
(g.debug || g.log).apply(g, arguments);
|
280 |
};
|
281 |
f.clear = function() {
|
282 |
+
for (var a = -1, b, e = k, c = e.length; ++a < c; ) (b = e[a]) && b.call && b();
|
283 |
+
k = [];
|
284 |
return f;
|
285 |
};
|
286 |
f.create = b;
|
289 |
};
|
290 |
f.convert = c;
|
291 |
f.init = function(a) {
|
292 |
+
A = a._("Error");
|
293 |
+
s = a._("Warning");
|
294 |
q = a._("Notice");
|
295 |
+
B = a._("OK");
|
296 |
+
setTimeout(m, 1e3);
|
297 |
return f;
|
298 |
};
|
299 |
return f;
|
300 |
+
}({}, y, w));
|
301 |
+
p.register("$8", function(f, d, D) {
|
302 |
+
function n(a) {
|
303 |
+
var b = h("<pre>" + a + "</pre>").text();
|
304 |
b && (b = b.replace(/[\r\n]+/g, "\n").replace(/(^|\n)\s+/g, "$1").replace(/\s+$/, ""));
|
305 |
b || (b = a) || (b = "Blank response from server");
|
306 |
return b;
|
307 |
}
|
308 |
+
function l(a) {
|
309 |
return (a = a.split(/[\r\n]/)[0]) ? (a = a.replace(/ +in +\S+ on line \d+/, ""),
|
310 |
a = a.replace(/^[()! ]+Fatal error:\s*/, "")) : t._("Server returned invalid data");
|
311 |
}
|
325 |
function e(a, b, e) {
|
326 |
a.append(b, e);
|
327 |
}
|
328 |
+
function m(a, b, e, c) {
|
329 |
+
function m(b, c, v) {
|
330 |
if ("abort" !== c) {
|
331 |
+
var q = g || {
|
332 |
_: function(a) {
|
333 |
return a;
|
334 |
}
|
335 |
+
}, r = b.status || 0, d = b.responseText || "", x = n(d), A = b.getResponseHeader("Content-Type") || "Unknown type", f = b.getResponseHeader("Content-Length") || d.length;
|
336 |
+
"success" === c && v ? k.error(v) : (k.error(l(x) + ".\n" + q._("Check console output for debugging information")),
|
337 |
+
k.log("Ajax failure for " + a, {
|
338 |
+
status: r,
|
339 |
error: c,
|
340 |
+
message: v,
|
341 |
output: d
|
342 |
+
}), "parsererror" === c && (v = "Response not JSON"), k.log([ q._("Provide the following text when reporting a problem") + ":", "----", "Status " + r + ' "' + (v || q._("Unknown error")) + '" (' + A + " " + f + " bytes)", x, "====" ].join("\n")));
|
343 |
+
e && e.call && e(b, c, v);
|
344 |
+
z = b;
|
345 |
}
|
346 |
}
|
347 |
+
c.url = A;
|
348 |
c.dataType = "json";
|
349 |
+
var k = p.require("$7", "notices.js").clear();
|
350 |
+
z = null;
|
351 |
+
return h.ajax(c).fail(m).done(function(a, e, v) {
|
352 |
+
var c = a && a.data, g = a && a.notices, z = g && g.length, l = -1;
|
353 |
+
for (!c || a.error ? m(v, e, a && a.error && a.error.message) : b && b(c, e, v); ++l < z; ) k.raise(g[l]);
|
354 |
});
|
355 |
}
|
356 |
+
var k = {}, g, z, A = d.ajaxurl || "/wp-admin/admin-ajax.php";
|
357 |
f.init = function(a) {
|
358 |
+
k = a.nonces || k;
|
359 |
return f;
|
360 |
};
|
361 |
f.localise = function(a) {
|
362 |
+
g = a;
|
363 |
return f;
|
364 |
};
|
365 |
f.xhr = function() {
|
366 |
+
return z;
|
367 |
};
|
368 |
+
f.strip = n;
|
369 |
+
f.parse = l;
|
370 |
f.submit = function(a, b, e) {
|
371 |
function c(a, b) {
|
372 |
b.disabled ? b.setAttribute("data-was-disabled", "true") : b.disabled = !0;
|
373 |
}
|
374 |
+
function r(a, b) {
|
375 |
b.getAttribute("data-was-disabled") || (b.disabled = !1);
|
376 |
}
|
377 |
+
function k(a) {
|
378 |
a.find(".button-primary").removeClass("loading");
|
379 |
+
a.find("button").each(r);
|
380 |
+
a.find("input").each(r);
|
381 |
+
a.find("select").each(r);
|
382 |
+
a.find("textarea").each(r);
|
383 |
a.removeClass("disabled loading");
|
384 |
}
|
385 |
+
var g = h(a), z = g.serialize();
|
386 |
(function(a) {
|
387 |
a.find(".button-primary").addClass("loading");
|
388 |
a.find("button").each(c);
|
390 |
a.find("select").each(c);
|
391 |
a.find("textarea").each(c);
|
392 |
a.addClass("disabled loading");
|
393 |
+
})(g);
|
394 |
+
return m(a.route.value, function(a, e, c) {
|
395 |
+
k(g);
|
396 |
b && b(a, e, c);
|
397 |
}, function(a, b, c) {
|
398 |
+
k(g);
|
399 |
e && e(a, b, c);
|
400 |
}, {
|
401 |
type: a.method,
|
402 |
+
data: z
|
403 |
});
|
404 |
};
|
405 |
+
f.post = function(g, q, z, l) {
|
406 |
+
var r = !0, G = q || {}, A = k[g] || c(g);
|
407 |
+
d.FormData && G instanceof FormData ? (r = !1, q = e) : q = Array.isArray(G) ? a : b;
|
408 |
q(G, "action", "loco_json");
|
409 |
+
q(G, "route", g);
|
410 |
+
q(G, "loco-nonce", A);
|
411 |
+
return m(g, z, l, {
|
412 |
type: "post",
|
413 |
data: G,
|
414 |
+
processData: r,
|
415 |
+
contentType: r ? "application/x-www-form-urlencoded; charset=UTF-8" : !1
|
416 |
});
|
417 |
};
|
418 |
+
f.get = function(a, b, e, g) {
|
419 |
b = b || {};
|
420 |
+
var r = k[a] || c(a);
|
421 |
b.action = "loco_json";
|
422 |
b.route = a;
|
423 |
+
b["loco-nonce"] = r;
|
424 |
+
return m(a, e, g, {
|
425 |
type: "get",
|
426 |
data: b
|
427 |
});
|
428 |
};
|
429 |
f.setNonce = function(a, b) {
|
430 |
+
k[a] = b;
|
431 |
return f;
|
432 |
};
|
433 |
return f;
|
434 |
+
}({}, y, w));
|
435 |
+
p.register("$22", {
|
436 |
arab: 1,
|
437 |
aran: 1,
|
438 |
hebr: 1,
|
470 |
ur: 1,
|
471 |
yi: 1
|
472 |
});
|
473 |
+
p.register("$9", function(f, d, h) {
|
474 |
+
function n() {}
|
475 |
+
var l, c = p.require("$22", "rtl.json");
|
476 |
f.init = function() {
|
477 |
+
return new n();
|
478 |
};
|
479 |
f.cast = function(b) {
|
480 |
+
return b instanceof n ? b : "string" === typeof b ? f.parse(b) : f.clone(b);
|
481 |
};
|
482 |
f.clone = function(b) {
|
483 |
+
var a, e = new n();
|
484 |
for (a in b) e[a] = b[a];
|
485 |
return e;
|
486 |
};
|
487 |
f.parse = function(b) {
|
488 |
+
if (!(l || (l = /^([a-z]{2,3})(?:[-_]([a-z]{2}))?(?:[-_]([a-z0-9]{3,8}))?$/i)).exec(b)) return null;
|
489 |
+
var a = new n();
|
490 |
a.lang = RegExp.$1.toLowerCase();
|
491 |
if (b = RegExp.$2) a.region = b.toUpperCase();
|
492 |
if (b = RegExp.$3) a.variant = b.toLowerCase();
|
493 |
return a;
|
494 |
};
|
495 |
+
d = n.prototype;
|
496 |
d.isValid = function() {
|
497 |
return !!this.lang;
|
498 |
};
|
508 |
return e;
|
509 |
};
|
510 |
d.getIcon = function() {
|
511 |
+
for (var b = 3, a, e, c = [ "variant", "region", "lang" ], k = []; 0 !== b--; ) if (a = c[b],
|
512 |
+
e = this[a]) k.push(a), k.push(a + "-" + e.toLowerCase());
|
513 |
+
return k.join(" ");
|
514 |
};
|
515 |
d.isRTL = function() {
|
516 |
return !!c[String(this.lang).toLowerCase()];
|
517 |
};
|
518 |
d = null;
|
519 |
return f;
|
520 |
+
}({}, y, w));
|
521 |
+
p.register("$23", {
|
522 |
"á": "a",
|
523 |
"à": "a",
|
524 |
"ă": "a",
|
930 |
"ӣ": "и",
|
931 |
"ӯ": "у"
|
932 |
});
|
933 |
+
p.register("$10", function(f, d, h) {
|
934 |
f.init = function() {
|
935 |
function d(a) {
|
936 |
+
return g[a] || a;
|
937 |
}
|
938 |
+
function l(a, b, e, c) {
|
939 |
b = a.split(b);
|
940 |
+
for (var m = b.length; 0 !== m--; ) (a = b[m]) && null == c[a] && (e.push(a), c[a] = !0);
|
941 |
return e;
|
942 |
}
|
943 |
function c(a) {
|
944 |
+
return l(String(a || "").toLowerCase().replace(m, d), k, [], {});
|
945 |
}
|
946 |
function b(a, b) {
|
947 |
+
for (var c = [], q = {}, g, x = b.length, r = k; 0 !== x--; ) (g = b[x]) && l(String(g || "").toLowerCase().replace(m, d), r, c, q);
|
948 |
e[a] = c;
|
949 |
}
|
950 |
function a(a, b) {
|
951 |
+
var c = [], m = -1, g = e, k = g.length, r, l, d, u, v, F, f = a.length, h = b ? !0 : !1;
|
952 |
+
a: for (;++m < k; ) if (d = g[m], null != d && (u = d.length)) {
|
953 |
+
v = 0;
|
954 |
+
b: for (;v < f; v++) {
|
955 |
+
F = a[v];
|
956 |
+
for (r = 0; r < u; r++) if (l = d[r], 0 === l.indexOf(F)) continue b;
|
957 |
continue a;
|
958 |
}
|
959 |
+
c.push(h ? b[m] : m);
|
960 |
}
|
961 |
return c;
|
962 |
}
|
963 |
+
var e = [], m = /[^a-z0-9]/g, k = /[\-_\s.?!;:,*^+=~`"(){}<>\[\]\/\\\u00a0\u1680\u180e\u2000-\u206f\u2e00-\u2e7f\u3000-\u303f]+/, g = p.require("$23", "flatten.json");
|
964 |
return {
|
965 |
split: c,
|
966 |
pull: function(b, e) {
|
990 |
};
|
991 |
};
|
992 |
return f;
|
993 |
+
}({}, y, w));
|
994 |
+
p.register("$11", function(f, d, p) {
|
995 |
+
f.listen = function(f, l) {
|
996 |
function c() {
|
997 |
+
q[m ? "show" : "hide"]();
|
998 |
}
|
999 |
function b(a) {
|
1000 |
+
s && z.setAttribute("size", 2 + a.length);
|
1001 |
+
m = a;
|
1002 |
c();
|
1003 |
return a;
|
1004 |
}
|
1005 |
function a() {
|
1006 |
+
k = null;
|
1007 |
+
l(m);
|
1008 |
}
|
1009 |
function e(e) {
|
1010 |
+
var c = z.value;
|
1011 |
+
A && c === A && (c = "");
|
1012 |
+
c !== m ? (k && clearTimeout(k), b(c), e ? k = setTimeout(a, e) : a()) : k && null == e && (clearTimeout(k),
|
1013 |
a());
|
1014 |
}
|
1015 |
+
var m, k, g = 150, z = f instanceof jQuery ? f[0] : f, A = d.attachEvent && z.getAttribute("placeholder"), s = 1 === Number(z.size), q = h('<a href="#clear" tabindex="-1" class="icon clear"><span>clear</span></a>').on("click", function() {
|
1016 |
+
z.value = "";
|
1017 |
e();
|
1018 |
return !1;
|
1019 |
});
|
1020 |
+
b(z.value);
|
1021 |
+
h(z).on("input", function() {
|
1022 |
+
e(g);
|
1023 |
return !0;
|
1024 |
}).on("blur focus change", function() {
|
1025 |
e(null);
|
1028 |
c();
|
1029 |
return {
|
1030 |
delay: function(a) {
|
1031 |
+
g = a;
|
1032 |
return this;
|
1033 |
},
|
1034 |
ping: function(c) {
|
1035 |
+
c ? (k && clearTimeout(k), c = z.value, A && c === A && (c = ""), b(c), a(), c = void 0) : c = e();
|
1036 |
return c;
|
1037 |
},
|
1038 |
val: function(a) {
|
1039 |
+
if (null == a) return m;
|
1040 |
+
k && clearTimeout(k);
|
1041 |
+
z.value = b(a);
|
1042 |
c();
|
1043 |
},
|
1044 |
el: function() {
|
1045 |
+
return z;
|
1046 |
},
|
1047 |
blur: function(a) {
|
1048 |
+
return h(z).on("blur", a);
|
1049 |
},
|
1050 |
destroy: function() {
|
1051 |
+
k && clearTimeout(k);
|
1052 |
}
|
1053 |
};
|
1054 |
};
|
1055 |
return f;
|
1056 |
+
}({}, y, w));
|
1057 |
+
p.register("$12", function(f, d, p) {
|
1058 |
+
function n(b, a) {
|
1059 |
+
this.$element = h(b);
|
1060 |
this.options = a;
|
1061 |
this.enabled = !0;
|
1062 |
this.fixTitle();
|
1065 |
var e = {
|
1066 |
fade: !0,
|
1067 |
offset: 5,
|
1068 |
+
delayIn: l,
|
1069 |
delayOut: c,
|
1070 |
anchor: b.attr("data-anchor"),
|
1071 |
gravity: b.attr("data-gravity") || "s"
|
1072 |
};
|
1073 |
+
a && (e = h.extend({}, e, a));
|
1074 |
b.tipsy(e);
|
1075 |
};
|
1076 |
f.delays = function(b, a) {
|
1077 |
+
l = b || 150;
|
1078 |
c = a || 100;
|
1079 |
};
|
1080 |
f.kill = function() {
|
1081 |
+
h("div.tipsy").remove();
|
1082 |
};
|
1083 |
f.text = function(b, a) {
|
1084 |
a.data("tipsy").setTitle(b);
|
1085 |
};
|
1086 |
+
var l, c;
|
1087 |
f.delays();
|
1088 |
+
h(p.body).on("overlayOpened overlayClosing", function(b) {
|
1089 |
f.kill();
|
1090 |
return !0;
|
1091 |
});
|
1092 |
+
n.prototype = {
|
1093 |
show: function() {
|
1094 |
var b = this.getTitle();
|
1095 |
if (b && this.enabled) {
|
1099 |
a.remove().css({
|
1100 |
top: 0,
|
1101 |
left: 0
|
1102 |
+
}).prependTo(p.body);
|
1103 |
+
var b = (b = this.options.anchor) ? this.$element.find(b) : this.$element, b = h.extend({}, b.offset(), {
|
1104 |
width: b[0].offsetWidth,
|
1105 |
height: b[0].offsetHeight
|
1106 |
+
}), e = a[0].offsetWidth, c = a[0].offsetHeight, k = "function" == typeof this.options.gravity ? this.options.gravity.call(this.$element[0]) : this.options.gravity, g;
|
1107 |
+
switch (k.charAt(0)) {
|
1108 |
case "n":
|
1109 |
+
g = {
|
1110 |
top: b.top + b.height + this.options.offset,
|
1111 |
left: b.left + b.width / 2 - e / 2
|
1112 |
};
|
1113 |
break;
|
1114 |
|
1115 |
case "s":
|
1116 |
+
g = {
|
1117 |
top: b.top - c - this.options.offset,
|
1118 |
left: b.left + b.width / 2 - e / 2
|
1119 |
};
|
1120 |
break;
|
1121 |
|
1122 |
case "e":
|
1123 |
+
g = {
|
1124 |
top: b.top + b.height / 2 - c / 2,
|
1125 |
left: b.left - e - this.options.offset
|
1126 |
};
|
1127 |
break;
|
1128 |
|
1129 |
case "w":
|
1130 |
+
g = {
|
1131 |
top: b.top + b.height / 2 - c / 2,
|
1132 |
left: b.left + b.width + this.options.offset
|
1133 |
};
|
1134 |
}
|
1135 |
+
2 == k.length && ("w" == k.charAt(1) ? g.left = b.left + b.width / 2 - 15 : g.left = b.left + b.width / 2 - e + 15);
|
1136 |
+
a.css(g).addClass("tipsy-" + k);
|
1137 |
+
a.find(".tipsy-arrow")[0].className = "tipsy-arrow tipsy-arrow-" + k.charAt(0);
|
1138 |
this.options.className && a.addClass("function" == typeof this.options.className ? this.options.className.call(this.$element[0]) : this.options.className);
|
1139 |
a.addClass("in");
|
1140 |
}
|
1160 |
if (this.$tip) this.$tip.find(".tipsy-inner")[this.options.html ? "html" : "text"](b);
|
1161 |
},
|
1162 |
tip: function() {
|
1163 |
+
this.$tip || (this.$tip = h('<div class="tipsy"></div>').html('<div class="tipsy-arrow"></div><div class="tipsy-inner"></div>'),
|
1164 |
this.$tip.data("tipsy-pointee", this.$element[0]));
|
1165 |
return this.$tip;
|
1166 |
},
|
1178 |
this.enabled = !this.enabled;
|
1179 |
}
|
1180 |
};
|
1181 |
+
h.fn.tipsy = function(b) {
|
1182 |
function a(a) {
|
1183 |
+
var e = h.data(a, "tipsy");
|
1184 |
+
e || (e = new n(a, h.fn.tipsy.elementOptions(a, b)), h.data(a, "tipsy", e));
|
1185 |
return e;
|
1186 |
}
|
1187 |
function e() {
|
1192 |
}, c));
|
1193 |
}
|
1194 |
function c() {
|
1195 |
+
var e = a(this), m = b.delayOut;
|
1196 |
e.hoverState = "out";
|
1197 |
+
0 == m ? e.hide() : (e.tip().removeClass("in"), setTimeout(function() {
|
1198 |
"out" == e.hoverState && e.hide();
|
1199 |
+
}, m));
|
1200 |
}
|
1201 |
+
b = h.extend({}, h.fn.tipsy.defaults, b);
|
1202 |
b.live || this.each(function() {
|
1203 |
a(this);
|
1204 |
});
|
1205 |
if ("manual" != b.trigger) {
|
1206 |
+
var k = b.live ? "live" : "bind", g = "hover" == b.trigger ? "mouseleave" : "blur";
|
1207 |
+
this[k]("hover" == b.trigger ? "mouseenter" : "focus", e)[k](g, c);
|
1208 |
}
|
1209 |
return this;
|
1210 |
};
|
1211 |
+
h.fn.tipsy.defaults = {
|
1212 |
className: null,
|
1213 |
delayIn: 0,
|
1214 |
delayOut: 0,
|
1223 |
trigger: "hover",
|
1224 |
anchor: null
|
1225 |
};
|
1226 |
+
h.fn.tipsy.elementOptions = function(b, a) {
|
1227 |
+
return h.metadata ? h.extend({}, a, h(b).metadata()) : a;
|
1228 |
};
|
1229 |
+
h.fn.tipsy.autoNS = function() {
|
1230 |
+
return h(this).offset().top > h(p).scrollTop() + h(d).height() / 2 ? "s" : "n";
|
1231 |
};
|
1232 |
+
h.fn.tipsy.autoWE = function() {
|
1233 |
+
return h(this).offset().left > h(p).scrollLeft() + h(d).width() / 2 ? "e" : "w";
|
1234 |
};
|
1235 |
+
h.fn.tipsy.autoBounds = function(b, a) {
|
1236 |
return function() {
|
1237 |
+
var e = a[0], c = 1 < a.length ? a[1] : !1, k = h(p).scrollTop() + b, g = h(p).scrollLeft() + b, l = h(this);
|
1238 |
+
l.offset().top < k && (e = "n");
|
1239 |
+
l.offset().left < g && (c = "w");
|
1240 |
+
h(d).width() + h(p).scrollLeft() - l.offset().left < b && (c = "e");
|
1241 |
+
h(d).height() + h(p).scrollTop() - l.offset().top < b && (e = "s");
|
1242 |
return e + (c ? c : "");
|
1243 |
};
|
1244 |
};
|
1245 |
return f;
|
1246 |
+
}({}, y, w));
|
1247 |
+
p.register("$36", function(f, d, h) {
|
1248 |
"".localeCompare || (String.prototype.localeCompare = function() {
|
1249 |
return 0;
|
1250 |
});
|
1251 |
"".trim || (String.prototype.trim = function() {
|
1252 |
+
return p.require("$6", "string.js").trim(this, " \n\r\t");
|
1253 |
});
|
1254 |
f.html = function() {
|
1255 |
function d() {
|
1256 |
b = /[<>&]/g;
|
1257 |
a = /(\r\n|\n|\r)/g;
|
1258 |
e = /(?:https?):\/\/(\S+)/gi;
|
1259 |
+
m = location.hostname;
|
1260 |
d = null;
|
1261 |
}
|
1262 |
+
function l(a) {
|
1263 |
return "&#" + a.charCodeAt(0) + ";";
|
1264 |
}
|
1265 |
function c(a, b) {
|
1266 |
+
return '<a href="' + a + '" target="' + (b.indexOf(m) ? "_blank" : "_top") + '">' + b + "</a>";
|
1267 |
}
|
1268 |
+
var b, a, e, m;
|
1269 |
+
return function(m, g) {
|
1270 |
d && d();
|
1271 |
+
var z = m.replace(b, l);
|
1272 |
+
g && (z = z.replace(e, c).replace(a, "<br />"));
|
1273 |
+
return z;
|
1274 |
};
|
1275 |
}();
|
1276 |
return f;
|
1277 |
+
}({}, y, w));
|
1278 |
+
p.register("$37", function(f, d, h) {
|
1279 |
+
function n() {}
|
1280 |
+
var l, c, b = p.require("$22", "rtl.json");
|
1281 |
f.init = function() {
|
1282 |
+
return new n();
|
1283 |
};
|
1284 |
f.cast = function(a) {
|
1285 |
+
return a instanceof n ? a : "string" === typeof a ? f.parse(a) : f.clone(a);
|
1286 |
};
|
1287 |
f.clone = function(a) {
|
1288 |
+
var b, c = new n();
|
1289 |
for (b in a) c[b] = a[b];
|
1290 |
return c;
|
1291 |
};
|
1292 |
f.parse = function(a) {
|
1293 |
+
l || (c = /[-_+]/, l = /^([a-z]{2,3})(?:-([a-z]{4}))?(?:-([a-z]{2}|[0-9]{3}))?(?:-([0-9][a-z0-9]{3,8}|[a-z0-9]{5,8}))?(?:-([a-z]-[-a-z]+))?$/i);
|
1294 |
a = String(a).split(c).join("-");
|
1295 |
+
if (!l.exec(a)) return null;
|
1296 |
+
var b = new n();
|
1297 |
b.lang = RegExp.$1.toLowerCase();
|
1298 |
if (a = RegExp.$2) b.script = a.charAt(0).toUpperCase() + a.substr(1).toLowerCase();
|
1299 |
if (a = RegExp.$3) b.region = a.toUpperCase();
|
1301 |
if (a = RegExp.$5) b.extension = a;
|
1302 |
return b;
|
1303 |
};
|
1304 |
+
d = n.prototype;
|
1305 |
d.isValid = function() {
|
1306 |
return !!this.lang;
|
1307 |
};
|
1319 |
return c;
|
1320 |
};
|
1321 |
d.getIcon = function() {
|
1322 |
+
for (var a = 4, b, c, k = [ "variant", "region", "script", "lang" ], g = []; 0 !== a--; ) if (b = k[a],
|
1323 |
+
c = this[b]) c.join && (c = c.join("-")), 1 === a && 3 === c.length ? g.push("region-m49") : g = g.concat([ b, b + "-" + c.toLowerCase() ]);
|
1324 |
+
return g.join(" ");
|
1325 |
};
|
1326 |
d.isRTL = function() {
|
1327 |
return !!b[String(this.script || this.lang).toLowerCase()];
|
1328 |
};
|
1329 |
d = null;
|
1330 |
return f;
|
1331 |
+
}({}, y, w));
|
1332 |
+
p.register("$38", function(f, d, h) {
|
1333 |
+
function n(a) {
|
1334 |
d.console && console.error && console.error(a);
|
1335 |
}
|
1336 |
+
function l() {
|
1337 |
+
n("Method not implemented");
|
1338 |
}
|
1339 |
function c() {}
|
1340 |
function b(a) {}
|
1342 |
return "[Undefined]";
|
1343 |
};
|
1344 |
b.prototype._validate = function(a) {
|
1345 |
+
var b, m, k = !0;
|
1346 |
+
for (b in this) m = this[b], m === l ? (n(a + "." + b + "() must be implemented"),
|
1347 |
+
k = !1) : m instanceof c && (n(a + "." + b + " must be defined"), k = !1);
|
1348 |
+
return k;
|
1349 |
};
|
1350 |
f.init = function(a, e) {
|
1351 |
+
var m, k = new b();
|
1352 |
+
if (a) for (m = a.length; 0 !== m--; ) k[a[m]] = l;
|
1353 |
+
if (e) for (m = e.length; 0 !== m--; ) k[e[m]] = new c();
|
1354 |
+
return k;
|
1355 |
};
|
1356 |
f.validate = function(a) {
|
1357 |
var b = /function (\w+)\(/.exec(a.toString()) ? RegExp.$1 : "";
|
1358 |
a.prototype._validate(b || "Object");
|
1359 |
};
|
1360 |
return f;
|
1361 |
+
}({}, y, w));
|
1362 |
+
p.register("$50", function(f, d, h) {
|
1363 |
+
var n = d.requestAnimationFrame, l = d.cancelAnimationFrame, c = 0;
|
1364 |
+
if (!n || !l) for (var b in {
|
1365 |
ms: 1,
|
1366 |
moz: 1,
|
1367 |
webkit: 1,
|
1368 |
o: 1
|
1369 |
+
}) if (n = d[b + "RequestAnimationFrame"]) if (l = d[b + "CancelAnimationFrame"] || d[b + "CancelRequestAnimationFrame"]) break;
|
1370 |
+
n && l || (n = function(b) {
|
1371 |
+
var m = a();
|
1372 |
+
timeToCall = Math.max(0, 16 - (m - c));
|
1373 |
+
nextTime = m + timeToCall;
|
1374 |
timerId = d.setTimeout(function() {
|
1375 |
b(nextTime);
|
1376 |
}, timeToCall);
|
1377 |
c = nextTime;
|
1378 |
return timerId;
|
1379 |
+
}, l = function(a) {
|
1380 |
clearTimeout(a);
|
1381 |
});
|
1382 |
var a = Date.now || function() {
|
1384 |
};
|
1385 |
f.loop = function(a, b) {
|
1386 |
function c() {
|
1387 |
+
d = n(c, b);
|
1388 |
+
a(g++);
|
1389 |
}
|
1390 |
+
var g = 0, d;
|
1391 |
c();
|
1392 |
return {
|
1393 |
stop: function() {
|
1394 |
+
d && l(d);
|
1395 |
d = null;
|
1396 |
}
|
1397 |
};
|
1398 |
};
|
1399 |
return f;
|
1400 |
+
}({}, y, w));
|
1401 |
+
p.register("$47", function(f, d, h) {
|
1402 |
+
function n(a, c, e, q) {
|
1403 |
if (b) {
|
1404 |
+
var g = e;
|
1405 |
e = function(a) {
|
1406 |
+
if ((a.MSPOINTER_TYPE_TOUCH || "touch") === a.pointerType) return g(a);
|
1407 |
};
|
1408 |
}
|
1409 |
a.addEventListener(c, e, q);
|
1413 |
}
|
1414 |
};
|
1415 |
}
|
1416 |
+
function l(a) {
|
1417 |
a.preventDefault();
|
1418 |
a.stopPropagation();
|
1419 |
return !1;
|
1420 |
}
|
1421 |
+
var c, b = !!d.navigator.msPointerEnabled, a = b ? "MSPointerDown" : "touchstart", e = b ? "MSPointerMove" : "touchmove", m = b ? "MSPointerUp" : "touchend";
|
1422 |
f.ok = function(a) {
|
1423 |
+
null == c && (c = "function" === typeof h.body.addEventListener);
|
1424 |
c && a && a(f);
|
1425 |
return c;
|
1426 |
};
|
1428 |
return b;
|
1429 |
};
|
1430 |
f.dragger = function(b, c) {
|
1431 |
+
function g(a) {
|
1432 |
b.addEventListener(a, d[a], !1);
|
1433 |
}
|
1434 |
function q(a) {
|
1436 |
}
|
1437 |
var d = {};
|
1438 |
d[a] = function(b) {
|
1439 |
+
k(b, function(e, g) {
|
1440 |
+
g.type = a;
|
1441 |
+
c(b, g, f);
|
1442 |
});
|
1443 |
+
g(e);
|
1444 |
+
g(m);
|
1445 |
return !0;
|
1446 |
};
|
1447 |
+
d[m] = function(a) {
|
1448 |
q(e);
|
1449 |
+
q(m);
|
1450 |
+
k(a, function(b, e) {
|
1451 |
+
e.type = m;
|
1452 |
c(a, e, f);
|
1453 |
});
|
1454 |
return !0;
|
1455 |
};
|
1456 |
d[e] = function(a) {
|
1457 |
+
k(a, function(b, g) {
|
1458 |
+
g.type = e;
|
1459 |
+
c(a, g, f);
|
1460 |
});
|
1461 |
+
return l(a);
|
1462 |
};
|
1463 |
+
g(a);
|
1464 |
var f = {
|
1465 |
kill: function() {
|
1466 |
q(a);
|
1467 |
q(e);
|
1468 |
+
q(m);
|
1469 |
b = f = c = null;
|
1470 |
}
|
1471 |
};
|
1475 |
function q(a) {
|
1476 |
c.addEventListener(a, u[a], !1);
|
1477 |
}
|
1478 |
+
function B(a) {
|
1479 |
c.removeEventListener(a, u[a], !1);
|
1480 |
}
|
1481 |
+
function x() {
|
1482 |
+
r && r.stop();
|
1483 |
+
r = null;
|
1484 |
}
|
1485 |
+
var r, G, E, u = {}, v = [], F = [], h = [];
|
1486 |
u[a] = function(a) {
|
1487 |
G = !1;
|
1488 |
+
x();
|
1489 |
+
var b = g();
|
1490 |
+
k(a, function(a, c) {
|
1491 |
+
v[a] = b;
|
1492 |
F[a] = c.clientX;
|
1493 |
+
h[a] = c.clientY;
|
1494 |
});
|
1495 |
+
E = c.scrollLeft;
|
1496 |
return !0;
|
1497 |
};
|
1498 |
+
u[m] = function(a) {
|
1499 |
+
k(a, function(a, b) {
|
1500 |
+
var c = g() - v[a], e = F[a] - b.clientX, c = Math.abs(e) / c;
|
1501 |
d(c, e ? 0 > e ? -1 : 1 : 0);
|
1502 |
});
|
1503 |
+
E = null;
|
1504 |
return !0;
|
1505 |
};
|
1506 |
u[e] = function(a) {
|
1507 |
var b, e;
|
1508 |
+
null == E || k(a, function(a, c) {
|
1509 |
b = F[a] - c.clientX;
|
1510 |
+
e = h[a] - c.clientY;
|
1511 |
});
|
1512 |
if (e && Math.abs(e) > Math.abs(b)) return G = !0;
|
1513 |
+
b && (G = !0, c.scrollLeft = Math.max(0, E + b));
|
1514 |
+
return l(a);
|
1515 |
};
|
1516 |
+
if (!b || f) q(a), q(e), q(m), b && (c.className += " mstouch");
|
1517 |
return {
|
1518 |
kill: function() {
|
1519 |
+
B(a);
|
1520 |
+
B(e);
|
1521 |
+
B(m);
|
1522 |
+
x();
|
1523 |
},
|
1524 |
swiped: function() {
|
1525 |
return G;
|
1532 |
c.style["-ms-scroll-snap-type"] = "mandatory", c.style["-ms-scroll-chaining"] = "none");
|
1533 |
},
|
1534 |
scroll: function(a, b, e) {
|
1535 |
+
x();
|
1536 |
+
var v = c.scrollLeft, g = a > v ? 1 : -1, q = Math[1 === g ? "min" : "max"], k = Math.round(16 * b * g);
|
1537 |
+
return r = p.require("$50", "fps.js").loop(function(b) {
|
1538 |
+
b && (v = Math.max(0, q(a, v + k)), c.scrollLeft = v, a === v && (x(), e && e(v)));
|
1539 |
}, c);
|
1540 |
}
|
1541 |
};
|
1542 |
};
|
1543 |
f.start = function(b, c) {
|
1544 |
+
return n(b, a, c, !1);
|
1545 |
};
|
1546 |
f.move = function(a, b) {
|
1547 |
+
return n(a, e, b, !1);
|
1548 |
};
|
1549 |
f.end = function(a, b) {
|
1550 |
+
return n(a, m, b, !1);
|
1551 |
};
|
1552 |
+
var k = f.each = function(a, c) {
|
1553 |
+
if (b) (a.MSPOINTER_TYPE_TOUCH || "touch") === a.pointerType && c(0, a); else for (var e = -1, g = (a.originalEvent || a).changedTouches || []; ++e < g.length; ) c(e, g[e]);
|
1554 |
+
}, g = Date.now || function() {
|
1555 |
return new Date().getTime();
|
1556 |
};
|
1557 |
return f;
|
1558 |
+
}({}, y, w));
|
1559 |
+
p.register("$51", function(f, d, p) {
|
1560 |
f.init = function(d) {
|
1561 |
+
function l() {
|
1562 |
e.style.top = String(-d.scrollTop) + "px";
|
1563 |
return !0;
|
1564 |
}
|
1571 |
function b(a) {
|
1572 |
return '<span class="x' + a.charCodeAt(0).toString(16) + '">' + a + "</span>";
|
1573 |
}
|
1574 |
+
var a = d.parentNode, e = a.insertBefore(p.createElement("div"), d);
|
1575 |
+
h(d).on("input", c).on("scroll", l);
|
1576 |
+
h(a).addClass("has-mirror");
|
1577 |
e.className = "ta-mirror";
|
1578 |
+
var m = d.offsetWidth - d.clientWidth;
|
1579 |
+
2 < m && (e.style.marginRight = String(m - 2) + "px");
|
1580 |
c();
|
1581 |
+
l();
|
1582 |
return {
|
1583 |
kill: function() {
|
1584 |
+
h(d).off("input", c).off("scroll", l);
|
1585 |
a.removeChild(e);
|
1586 |
e = null;
|
1587 |
+
h(a).removeClass("has-mirror");
|
1588 |
}
|
1589 |
};
|
1590 |
};
|
1591 |
return f;
|
1592 |
+
}({}, y, w));
|
1593 |
+
p.register("$29", function(f, d, h) {
|
1594 |
+
function n(b, a) {
|
1595 |
+
for (var c = 0, m = -1, k = a && d[a], g = l[b] || [], f = g.length; ++m < f; ) callback = g[m],
|
1596 |
+
"function" === typeof callback && (callback(k), c++);
|
1597 |
return c;
|
1598 |
}
|
1599 |
+
var l = {}, c;
|
1600 |
f.load = function(b, a, c) {
|
1601 |
+
function m() {
|
1602 |
f && (clearTimeout(f), f = null);
|
1603 |
+
A && (A.onreadystatechange = null, A = A = A.onload = null);
|
1604 |
+
b && (delete l[b], b = null);
|
1605 |
}
|
1606 |
+
function k(a, g) {
|
1607 |
+
var d = A && A.readyState;
|
1608 |
+
if (g || !d || "loaded" === d || "complete" === d) g || n(b, c), m();
|
1609 |
}
|
1610 |
+
function g() {
|
1611 |
+
if (0 === n(b)) throw Error('Failed to load "' + (c || b) + '"');
|
1612 |
+
m();
|
1613 |
}
|
1614 |
+
if (c && d[c]) "function" === typeof a && a(d[c]); else if (null != l[b]) l[b].push(a); else {
|
1615 |
+
l[b] = [ a ];
|
1616 |
+
var f = setTimeout(g, 4e3), A = h.createElement("script");
|
1617 |
+
A.setAttribute("src", b);
|
1618 |
+
A.setAttribute("async", "true");
|
1619 |
+
A.onreadystatechange = k;
|
1620 |
+
A.onload = k;
|
1621 |
+
A.onerror = g;
|
1622 |
+
A.onabort = m;
|
1623 |
+
h.getElementsByTagName("head")[0].appendChild(A);
|
1624 |
}
|
1625 |
};
|
1626 |
f.stat = function(b) {
|
1627 |
var a;
|
1628 |
if (!(a = c)) {
|
1629 |
+
for (var e, d, k = h.getElementsByTagName("script"), g = -1, l = k.length; ++g < l; ) if (a = k[g].getAttribute("src")) if (e = a.indexOf("/lib/vendor"),
|
1630 |
-1 !== e) {
|
1631 |
+
d = a.substr(0, e);
|
1632 |
break;
|
1633 |
}
|
1634 |
+
a = c = d || "/static";
|
1635 |
}
|
1636 |
return a + b;
|
1637 |
};
|
1638 |
return f;
|
1639 |
+
}({}, y, w));
|
1640 |
+
p.register("$16", function(f, d, D) {
|
1641 |
+
function n(a, b) {
|
1642 |
a.setReadOnly(!1);
|
1643 |
a.on("change", function(a, c) {
|
1644 |
return b.val(c.getValue());
|
1650 |
return b.blur();
|
1651 |
});
|
1652 |
}
|
1653 |
+
function l(a) {
|
1654 |
a.off("change");
|
1655 |
a.off("focus");
|
1656 |
a.off("blur");
|
1657 |
}
|
1658 |
function c(a) {
|
1659 |
+
l(a);
|
1660 |
a.setReadOnly(!0);
|
1661 |
a.setHighlightGutterLine(!1);
|
1662 |
a.setHighlightActiveLine(!1);
|
1665 |
function e() {
|
1666 |
this.HighlightRules = d;
|
1667 |
}
|
1668 |
+
var d = a(c), q = b.require, m = q("ace/lib/oop");
|
1669 |
+
m.inherits(d, q("ace/mode/text_highlight_rules").TextHighlightRules);
|
1670 |
+
m.inherits(e, q("ace/mode/text").Mode);
|
1671 |
return new e();
|
1672 |
}
|
1673 |
function a(a) {
|
1757 |
case "auto":
|
1758 |
return /%(?:\d+\$|\([_A-Za-z][_A-Za-z0-9]*\))?(?:[-+0]?\d*(\.\d+)?[duxoefgaDUXOEFGA]|[@scSC%])/;
|
1759 |
|
1760 |
+
case k:
|
1761 |
+
return m || "%%";
|
1762 |
+
}
|
1763 |
+
}
|
1764 |
+
var m, k = "auto";
|
1765 |
+
f.init = function(a, e, m) {
|
1766 |
+
var f, q = !1, B = m || k, x = a.parentNode, r = x.appendChild(D.createElement("div"));
|
1767 |
+
h(x).addClass("has-proxy has-ace");
|
1768 |
+
p.require("$29", "remote.js").load("https://cdnjs.cloudflare.com/ajax/libs/ace/1.4.1/ace.js", function(d) {
|
1769 |
+
if (r) {
|
1770 |
+
if (!d) throw Error("Failed to load code editor");
|
1771 |
+
f = d.edit(r);
|
1772 |
+
var m = f.session, k = f.renderer;
|
1773 |
f.$blockScrolling = Infinity;
|
1774 |
f.setShowInvisibles(q);
|
1775 |
f.setWrapBehavioursEnabled(!1);
|
1776 |
f.setBehavioursEnabled(!1);
|
1777 |
f.setHighlightActiveLine(!1);
|
1778 |
+
m.setUseSoftTabs(!1);
|
1779 |
+
k.setShowGutter(!0);
|
1780 |
+
k.setPadding(10);
|
1781 |
+
k.setScrollMargin(8);
|
1782 |
+
m.setMode(b(d, B));
|
1783 |
f.setValue(a.value, -1);
|
1784 |
+
m.setUseWrapMode(!0);
|
1785 |
+
e ? n(f, e) : c(f);
|
1786 |
}
|
1787 |
}, "ace");
|
1788 |
return {
|
1789 |
kill: function() {
|
1790 |
+
f && (l(f), f.destroy(), f = null);
|
1791 |
+
r && (x.removeChild(r), h(x).removeClass("has-proxy has-ace"), r = null);
|
1792 |
return this;
|
1793 |
},
|
1794 |
disable: function() {
|
1798 |
},
|
1799 |
enable: function(a) {
|
1800 |
e = a;
|
1801 |
+
f && n(f, a);
|
1802 |
return this;
|
1803 |
},
|
1804 |
resize: function() {
|
1815 |
return this;
|
1816 |
},
|
1817 |
strf: function(a) {
|
1818 |
+
a = a || k;
|
1819 |
+
a !== B && (B = a, f && f.session.setMode(b(d.ace, a)));
|
1820 |
return this;
|
1821 |
},
|
1822 |
focus: function() {
|
1825 |
};
|
1826 |
};
|
1827 |
f.strf = function(a, b) {
|
1828 |
+
k = a;
|
1829 |
+
m = b;
|
1830 |
return f;
|
1831 |
};
|
1832 |
return f;
|
1833 |
+
}({}, y, w));
|
1834 |
+
p.register("$52", function(f, d, D) {
|
1835 |
+
function n(a, b) {
|
1836 |
function c() {
|
1837 |
return b.val(a.getContent());
|
1838 |
}
|
1846 |
});
|
1847 |
a.setMode("design");
|
1848 |
}
|
1849 |
+
function l(a) {
|
1850 |
a.off("input");
|
1851 |
a.off("change");
|
1852 |
a.off("focus");
|
1853 |
a.off("blur");
|
1854 |
}
|
1855 |
function c(a) {
|
1856 |
+
l(a);
|
1857 |
a.setMode("readonly");
|
1858 |
}
|
1859 |
var b = 0;
|
1860 |
f.load = function(a) {
|
1861 |
+
var b = p.require("$29", "remote.js");
|
1862 |
b.load(b.stat("/lib/tinymce.min.js"), a, "tinymce");
|
1863 |
return f;
|
1864 |
};
|
1865 |
f.init = function(a, e) {
|
1866 |
function d(a) {
|
1867 |
+
A = a;
|
1868 |
+
s = "<p>" === a.substr(0, 3) && "</p>" === a.substr(-4);
|
1869 |
return a.replace(/(<\/?)script/gi, "$1loco:script");
|
1870 |
}
|
1871 |
+
function k(a) {
|
1872 |
+
g = a;
|
1873 |
a._getContent = a.getContent;
|
1874 |
a.getContent = function(a) {
|
1875 |
a = this._getContent(a);
|
1876 |
a = a.replace(/(<\/?)loco:script/gi, "$1script");
|
1877 |
+
if (!s && "<p>" === a.substr(0, 3) && "</p>" === a.substr(-4)) {
|
1878 |
var b = a.substr(3, a.length - 7);
|
1879 |
+
if (b === A || -1 === b.indexOf("</p>")) a = b;
|
1880 |
}
|
1881 |
return a;
|
1882 |
};
|
1884 |
a.setContent = function(a, b) {
|
1885 |
return this._setContent(d(a), b);
|
1886 |
};
|
1887 |
+
e ? (n(a, e), e.reset()) : c(a);
|
1888 |
+
h(x).removeClass("loading");
|
1889 |
}
|
1890 |
+
var g, z = !1, A = "", s = !1, q = a.parentNode, B = q.parentNode, x = q.appendChild(D.createElement("div")), r = B.insertBefore(D.createElement("nav"), q);
|
1891 |
+
r.id = "_tb" + String(++b);
|
1892 |
+
h(q).addClass("has-proxy has-mce");
|
1893 |
+
h(x).addClass("mce-content-body loading").html(d(a.value));
|
1894 |
f.load(function(a) {
|
1895 |
if (!a) throw Error("Failed to load HTML editor");
|
1896 |
+
x && a.init({
|
1897 |
inline: !0,
|
1898 |
+
target: x,
|
1899 |
hidden_input: !1,
|
1900 |
theme: "modern",
|
1901 |
skin: !1,
|
1902 |
plugins: "link lists",
|
1903 |
browser_spellcheck: !0,
|
1904 |
menubar: !1,
|
1905 |
+
fixed_toolbar_container: "#" + r.id,
|
1906 |
toolbar: "formatselect | bold italic link unlink | bullist numlist outdent indent",
|
1907 |
block_formats: "Paragraph=p;Heading 1=h1;Heading 2=h2;Heading 3=h4;Heading 4=h4;Heading 5=h5;Heading 6=h6;",
|
1908 |
forced_root_block: "p",
|
1932 |
entities: "38,amp,60,lt,62,gt,160,nbsp",
|
1933 |
entity_encoding: "named",
|
1934 |
keep_styles: !1,
|
1935 |
+
init_instance_callback: k
|
1936 |
});
|
1937 |
});
|
1938 |
return {
|
1939 |
val: function(b) {
|
1940 |
b = d(b);
|
1941 |
+
null == g ? (a.value = b, h(x).html(b)) : g.getContent() !== b && g.setContent(b);
|
1942 |
e && e.val(b);
|
1943 |
return this;
|
1944 |
},
|
1945 |
kill: function() {
|
1946 |
+
g && (e && e.val(g.getContent()), l(g), g.destroy(), g = null);
|
1947 |
+
x && (q.removeChild(x), h(q).removeClass("has-proxy has-mce"), x = null);
|
1948 |
+
r && (B.removeChild(r), r = null);
|
1949 |
return this;
|
1950 |
},
|
1951 |
enable: function(a) {
|
1952 |
e = a;
|
1953 |
+
g && n(g, a);
|
1954 |
return this;
|
1955 |
},
|
1956 |
disable: function() {
|
1957 |
+
g && c(g);
|
1958 |
e = null;
|
1959 |
return this;
|
1960 |
},
|
1961 |
focus: function() {
|
1962 |
+
g && e && g.focus();
|
1963 |
return this;
|
1964 |
},
|
1965 |
invs: function(a) {
|
1966 |
a = a || !1;
|
1967 |
+
z !== a && (z = a, h(q)[a ? "addClass" : "removeClass"]("show-invs"));
|
1968 |
return this;
|
1969 |
}
|
1970 |
};
|
1971 |
};
|
1972 |
return f;
|
1973 |
+
}({}, y, w));
|
1974 |
+
p.register("$48", function(f, d, D) {
|
1975 |
+
function n(b) {
|
1976 |
function a() {
|
1977 |
+
l && (f.off("input", e), l = !1);
|
1978 |
}
|
1979 |
function e() {
|
1980 |
var a = b.value;
|
1981 |
+
a !== q && (f.trigger("changing", [ a, q ]), q = a);
|
1982 |
}
|
1983 |
function d() {
|
1984 |
e();
|
1985 |
+
l && B !== q && f.trigger("changed", [ q ]);
|
1986 |
}
|
1987 |
+
function k() {
|
1988 |
c = b;
|
1989 |
+
B = q;
|
1990 |
+
l || (f.on("input", e), l = !0);
|
1991 |
+
f.trigger("editFocus");
|
1992 |
+
s.addClass("has-focus");
|
1993 |
return !0;
|
1994 |
}
|
1995 |
+
function g() {
|
1996 |
c === b && (c = null);
|
1997 |
+
f.trigger("editBlur");
|
1998 |
+
s.removeClass("has-focus");
|
1999 |
+
l && (d(), a());
|
2000 |
return !0;
|
2001 |
}
|
2002 |
+
var l = !1, f = h(b), s = h(b.parentNode), q = b.value, B;
|
2003 |
+
f.on("blur", g).on("focus", k);
|
2004 |
return {
|
2005 |
val: function(a) {
|
2006 |
+
q !== a && (b.value = a, f.triggerHandler("input"), q = a);
|
2007 |
return !0;
|
2008 |
},
|
2009 |
kill: function() {
|
2010 |
a();
|
2011 |
+
f.off("blur", g).off("focus", k);
|
2012 |
},
|
2013 |
fire: function() {
|
2014 |
q = null;
|
2015 |
e();
|
2016 |
},
|
2017 |
ping: d,
|
2018 |
+
blur: g,
|
2019 |
+
focus: k,
|
2020 |
reset: function() {
|
2021 |
+
B = q = b.value;
|
2022 |
}
|
2023 |
};
|
2024 |
}
|
2025 |
+
function l(b) {
|
2026 |
this.e = b;
|
2027 |
}
|
2028 |
var c;
|
2029 |
f._new = function(b) {
|
2030 |
+
return new l(b);
|
2031 |
};
|
2032 |
f.init = function(b) {
|
2033 |
+
var a = new l(b);
|
2034 |
b.disabled ? (b.removeAttribute("disabled"), a.disable()) : b.readOnly ? a.disable() : a.enable();
|
2035 |
return a;
|
2036 |
};
|
2037 |
+
TextAreaPrototype = l.prototype;
|
2038 |
TextAreaPrototype.destroy = function() {
|
2039 |
this.unlisten();
|
2040 |
var b = this.p;
|
2054 |
var c = this.l, d = this.p;
|
2055 |
d && d.val(b);
|
2056 |
c && c.val(b);
|
2057 |
+
c || a.value === b || (a.value = b, h(a).triggerHandler("input"));
|
2058 |
return this;
|
2059 |
};
|
2060 |
TextAreaPrototype.fire = function() {
|
2067 |
};
|
2068 |
TextAreaPrototype.focus = function() {
|
2069 |
var b = this.p;
|
2070 |
+
b ? b.focus() : h(this.e).focus();
|
2071 |
};
|
2072 |
TextAreaPrototype.focused = function() {
|
2073 |
return c && c === this.el;
|
2101 |
TextAreaPrototype.listen = function() {
|
2102 |
var b = this.l;
|
2103 |
b && b.kill();
|
2104 |
+
this.l = n(this.e);
|
2105 |
return this;
|
2106 |
};
|
2107 |
TextAreaPrototype.unlisten = function() {
|
2111 |
};
|
2112 |
TextAreaPrototype.setInvs = function(b, a) {
|
2113 |
var c = this.i || !1;
|
2114 |
+
if (a || c !== b) this._i && (this._i.kill(), delete this._i), (c = this.p) ? c.invs && c.invs(b) : b && (this._i = p.require("$51", "mirror.js").init(this.e)),
|
2115 |
this.i = b;
|
2116 |
return this;
|
2117 |
};
|
2120 |
};
|
2121 |
TextAreaPrototype.setMode = function(b) {
|
2122 |
var a = this.p, e = this.i || !1;
|
2123 |
+
b !== (this.m || "") && (this.m = b, a && a.kill(), this.p = a = "code" === b ? p.require("$16", "ace.js").init(this.e, this.l, this["%"]) : "html" === b ? p.require("$52", "mce.js").init(this.e, this.l) : null,
|
2124 |
this.setInvs(e, !0), c && this.focus());
|
2125 |
return this;
|
2126 |
};
|
2143 |
};
|
2144 |
TextAreaPrototype = null;
|
2145 |
return f;
|
2146 |
+
}({}, y, w));
|
2147 |
+
p.register("$49", function(f, d, p) {
|
2148 |
+
function n(a) {
|
2149 |
var b = d.console;
|
2150 |
b && b.error && b.error(a);
|
2151 |
}
|
2152 |
+
function l(a) {
|
2153 |
+
var b = p.createElement("div");
|
2154 |
a && b.setAttribute("class", a);
|
2155 |
return b;
|
2156 |
}
|
2185 |
return !1;
|
2186 |
};
|
2187 |
}
|
2188 |
+
function m(a, b, c) {
|
2189 |
function e(a) {
|
2190 |
+
n("row[" + a + "] disappeared");
|
2191 |
return {
|
2192 |
cellVal: function() {
|
2193 |
return "";
|
2195 |
};
|
2196 |
}
|
2197 |
return function(d) {
|
2198 |
+
var g = b || 0, k = c ? -1 : 1, v = a.rows || [];
|
2199 |
d.sort(function(a, b) {
|
2200 |
+
return k * (v[a] || e(a)).cellVal(g).localeCompare((v[b] || e(b)).cellVal(g));
|
2201 |
});
|
2202 |
};
|
2203 |
}
|
2204 |
+
function k(a) {
|
2205 |
this.w = a;
|
2206 |
}
|
2207 |
+
function g(a) {
|
2208 |
this.t = a;
|
2209 |
this.length = 0;
|
2210 |
}
|
2211 |
+
function z(a, b, c) {
|
2212 |
+
var e = p.createElement("div");
|
2213 |
e.className = c || "";
|
2214 |
this._ = e;
|
2215 |
this.d = b || [];
|
2216 |
this.i = a || 0;
|
2217 |
this.length = b.length;
|
2218 |
}
|
2219 |
+
function A(a) {
|
2220 |
this.live = a;
|
2221 |
this.rows = [];
|
2222 |
}
|
2223 |
f.create = function(a) {
|
2224 |
+
return new k(a);
|
2225 |
};
|
2226 |
+
var s = k.prototype;
|
2227 |
+
s.init = function(d) {
|
2228 |
+
var g = this.w, k = g.id, m = g.splity(k + "-thead", k + "-tbody"), f = m[0], m = m[1], E = [], u = [], v = [], F = [];
|
2229 |
if (d) this.ds = d, this.idxs = u, this._idxs = null; else if (!(d = this.ds)) throw Error("No datasource");
|
2230 |
f.css.push("wg-thead");
|
2231 |
+
m.css.push("wg-tbody");
|
2232 |
d.eachCol(function(a, b, c) {
|
2233 |
+
v[a] = k + "-col-" + b;
|
2234 |
F[a] = c || b;
|
2235 |
});
|
2236 |
+
for (var N = l(), s = -1, A = v.length, n = l("wg-cols"), p = f.splitx.apply(f, v); ++s < A; ) p[s].header(F[s]),
|
2237 |
+
n.appendChild(N.cloneNode(!1)).setAttribute("for", v[s]);
|
2238 |
d.eachRow(function(a, b, c) {
|
2239 |
+
E[a] = new z(a, b, c);
|
2240 |
u[a] = a;
|
2241 |
});
|
2242 |
+
this.rows = E;
|
2243 |
+
this.cols = n;
|
2244 |
this.ww = null;
|
2245 |
+
this.root = N = m.body;
|
2246 |
this.head = f;
|
2247 |
f.redraw = c(this);
|
2248 |
+
f = m.fixed = p[0].bodyY() || 20;
|
2249 |
+
g.lock().resize(f, m);
|
2250 |
+
g.css.push("is-table");
|
2251 |
+
g.restyle();
|
2252 |
+
this.sc ? this._re_sort(A) : d.sort && d.sort(u);
|
2253 |
this.redrawDirty();
|
2254 |
this.render();
|
2255 |
+
h(N).attr("tabindex", "-1").on("keydown", e(this)).on("mousedown", b(this)).on("scroll", a(this));
|
2256 |
return this;
|
2257 |
};
|
2258 |
+
s.clear = function() {
|
2259 |
for (var a = this.pages || [], b = a.length; 0 !== b--; ) a[b].destroy();
|
2260 |
this.pages = [];
|
2261 |
this.sy = this.mx = this.mn = this.vh = null;
|
2262 |
void 0;
|
2263 |
return this;
|
2264 |
};
|
2265 |
+
s.render = function() {
|
2266 |
+
for (var a, b, c = [], e = this.rows || [], d = -1, g, k = this.idxs, v = k.length, m = this.idxr = {}, l = this.r, f = this._r, h = this.root, z = this.cols; ++d < v; ) {
|
2267 |
+
0 === d % 100 && (a = z.cloneNode(!0), b = new A(a), b.h = 2200, b.insert(h), c.push(b));
|
2268 |
+
g = k[d];
|
2269 |
+
m[g] = d;
|
2270 |
+
a = e[g];
|
2271 |
+
if (null == a) throw Error("Render error, no data at [" + g + "]");
|
2272 |
a.page = b;
|
2273 |
b.rows.push(a);
|
2274 |
}
|
2281 |
this._r = l);
|
2282 |
return this;
|
2283 |
};
|
2284 |
+
s.resize = function() {
|
2285 |
+
var a = -1, b = this.ww || (this.ww = []), c = this.w, e = c.cells[0], d = e.body.childNodes, g = d.length, k = this.pages || [], v = k.length;
|
2286 |
+
for (c.redraw.call(e); ++a < g; ) b[a] = d[a].style.width;
|
2287 |
+
if (v) {
|
2288 |
c = this.mx;
|
2289 |
+
for (a = this.mn; a <= c; a++) k[a].widths(b);
|
2290 |
this.redrawDirty() && this.redraw();
|
2291 |
}
|
2292 |
};
|
2293 |
+
s.redrawDirty = function() {
|
2294 |
var a = !1, b = this.root, c = b.scrollTop, b = b.clientHeight;
|
2295 |
this.sy !== c && (a = !0, this.sy = c);
|
2296 |
this.vh !== b && (a = !0, this.vh = b);
|
2297 |
return a;
|
2298 |
};
|
2299 |
+
s.redraw = function() {
|
2300 |
+
for (var a = 0, b = -1, c = null, e = null, d = this.ww, g = this.sy, k = this.vh, v = this.mn, m = this.mx, l = Math.max(0, g - 100), g = k + g + 100, f = this.pages || [], h = f.length; ++b < h && !(a > g); ) k = f[b],
|
2301 |
+
a += k.height(), a < l || (null === c && (c = b), e = b, k.rendered || k.render(d));
|
2302 |
+
if (v !== c) {
|
2303 |
+
if (null !== v && c > v) for (b = v; b < c; b++) {
|
2304 |
+
k = f[b];
|
2305 |
+
if (!k) throw Error("Shit!");
|
2306 |
+
k.rendered && k.sleep();
|
2307 |
}
|
2308 |
this.mn = c;
|
2309 |
}
|
2310 |
+
if (m !== e) {
|
2311 |
+
if (null !== m && e < m) for (b = m; b > e; b--) k = f[b], k.rendered && k.sleep();
|
2312 |
this.mx = e;
|
2313 |
}
|
2314 |
};
|
2315 |
+
s.selected = function() {
|
2316 |
return this.r;
|
2317 |
};
|
2318 |
+
s.thead = function() {
|
2319 |
return this.w.cells[0];
|
2320 |
};
|
2321 |
+
s.tbody = function() {
|
2322 |
return this.w.cells[1];
|
2323 |
};
|
2324 |
+
s.tr = function(a) {
|
2325 |
return (a = this.row(a)) ? a.cells() : [];
|
2326 |
};
|
2327 |
+
s.row = function(a) {
|
2328 |
return this.rows[a];
|
2329 |
};
|
2330 |
+
s.td = function(a, b) {
|
2331 |
return this.tr(a)[b];
|
2332 |
};
|
2333 |
+
s.next = function(a, b, c) {
|
2334 |
null == c && (c = this.r || 0);
|
2335 |
+
var e = this.idxs, d = e.length, g = (this.idxr || {})[c];
|
2336 |
+
for (c = g; c !== (g += a) && !(0 <= g && d > g); ) if (b && d) g = 1 === a ? -1 : d,
|
2337 |
b = !1; else return null;
|
2338 |
+
c = e[g];
|
2339 |
+
return null == c || null == this.rows[c] ? (n("Bad next: [" + g + "] does not map to data row"),
|
2340 |
null) : c;
|
2341 |
};
|
2342 |
+
s.selectNext = function(a, b, c) {
|
2343 |
a = this.next(a, b);
|
2344 |
null != a && this.r !== a && this.select(a, c);
|
2345 |
return this;
|
2346 |
};
|
2347 |
+
s.deselect = function(a) {
|
2348 |
var b = this.r;
|
2349 |
+
null != b && (this.r = null, h(this.tr(b)).removeClass("selected"), this.w.fire("wgRowDeselect", [ b, a ]));
|
2350 |
return this;
|
2351 |
};
|
2352 |
+
s.selectRow = function(a, b) {
|
2353 |
return this.select(this.idxs[a]);
|
2354 |
};
|
2355 |
+
s.select = function(a, b) {
|
2356 |
var c = this.rows[a], e = c && c.page;
|
2357 |
+
if (!e) return this.deselect(!1), n("Row is filtered out"), this;
|
2358 |
this.deselect(!0);
|
2359 |
+
var d, g = this.w.cells[1];
|
2360 |
+
e.rendered || (d = e.top(), g.scrollY(d), this.redrawDirty() && this.redraw());
|
2361 |
+
if (!c.rendered) return e.rendered || n("Failed to render page"), n("Row [" + c.i + "] not rendered"),
|
2362 |
this;
|
2363 |
e = c.cells();
|
2364 |
+
h(e).addClass("selected");
|
2365 |
this.r = a;
|
2366 |
+
b || (d = g.scrollY(), h(this.root).focus(), d !== g.scrollY() && g.scrollY(d));
|
2367 |
+
g.scrollTo(e[0], !0);
|
2368 |
this.w.fire("wgRowSelect", [ a, c.data() ]);
|
2369 |
return this;
|
2370 |
};
|
2371 |
+
s.unfilter = function() {
|
2372 |
this._idxs && (this.idxs = this._sort(this._idxs), this._idxs = null, this.clear().render());
|
2373 |
return this;
|
2374 |
};
|
2375 |
+
s.filter = function(a) {
|
2376 |
this._idxs || (this._idxs = this.idxs);
|
2377 |
this.idxs = this._sort(a);
|
2378 |
return this.clear().render();
|
2379 |
};
|
2380 |
+
s.each = function(a) {
|
2381 |
+
for (var b, c = -1, e = this.rows || [], d = this.idxs || [], g = d.length; ++c < g; ) b = d[c],
|
2382 |
a(e[b], c, b);
|
2383 |
return this;
|
2384 |
};
|
2385 |
+
s.sortable = function(a) {
|
2386 |
+
var b = this.sc || (this.sc = new g(this));
|
2387 |
b.has(a) || b.add(a);
|
2388 |
return this;
|
2389 |
};
|
2390 |
+
s._re_sort = function(a) {
|
2391 |
var b = -1, c = this.sc, e = c.active;
|
2392 |
+
for (this.sc = c = new g(this); ++b < a; ) c.add(b);
|
2393 |
e && (b = this.head.indexOf(e.id), -1 === b && (b = Math.min(e.idx, a - 1)), this.sort(b, e.desc));
|
2394 |
return this;
|
2395 |
};
|
2396 |
+
s._sort = function(a, b) {
|
2397 |
b ? (this.s = b, b(a)) : (b = this.s) && b(a);
|
2398 |
return a;
|
2399 |
};
|
2400 |
+
s.sort = function(a, b) {
|
2401 |
+
this._sort(this.idxs, m(this, a, b));
|
2402 |
this.sc.activate(a, b);
|
2403 |
return this;
|
2404 |
};
|
2405 |
+
s = null;
|
2406 |
+
s = g.prototype;
|
2407 |
+
s.has = function(a) {
|
2408 |
return null != this[a];
|
2409 |
};
|
2410 |
+
s.add = function(a) {
|
2411 |
var b = this, c = b.t.head.cells[a];
|
2412 |
b[a] = {
|
2413 |
desc: null,
|
2421 |
});
|
2422 |
return b;
|
2423 |
};
|
2424 |
+
s.toggle = function(a) {
|
2425 |
this.t.sort(a, !this[a].desc).clear().render();
|
2426 |
return this;
|
2427 |
};
|
2428 |
+
s.activate = function(a, b) {
|
2429 |
var c, e;
|
2430 |
c = this.active;
|
2431 |
+
var d = this[a], g = this.t.head.cells;
|
2432 |
+
c && (e = g[c.idx]) && (e.removeClass(c.css), c !== d && e.restyle());
|
2433 |
+
(e = g[a]) ? (d.desc = b, this.active = d, c = "wg-" + (b ? "desc" : "asc"), e.addClass(c).restyle(),
|
2434 |
d.css = c) : this.active = null;
|
2435 |
return this;
|
2436 |
};
|
2437 |
+
s = null;
|
2438 |
+
s = z.prototype;
|
2439 |
+
s.render = function(a) {
|
2440 |
var b, c = [], e = this._, d = this.length;
|
2441 |
if (e) {
|
2442 |
for (this.c = c; 0 !== d--; ) b = e.cloneNode(!1), c[d] = this.update(d, b), b.$index = this.i,
|
2446 |
this.rendered = !0;
|
2447 |
return this;
|
2448 |
};
|
2449 |
+
s.update = function(a, b) {
|
2450 |
var c = b || this.c[a] || {}, e = (this.d[a] || function() {})() || " ";
|
2451 |
null == e.innerHTML ? c.textContent = e : c.innerHTML = e.innerHTML;
|
2452 |
return c;
|
2453 |
};
|
2454 |
+
s.cells = function() {
|
2455 |
return this.c || [ this._ ];
|
2456 |
};
|
2457 |
+
s.data = function() {
|
2458 |
for (var a = -1, b = [], c = this.length; ++a < c; ) b[a] = this.cellVal(a);
|
2459 |
return b;
|
2460 |
};
|
2461 |
+
s.destroy = function() {
|
2462 |
this.page = null;
|
2463 |
this.rendered = !1;
|
2464 |
};
|
2465 |
+
s.cellVal = function(a) {
|
2466 |
a = this.d[a]() || "";
|
2467 |
return String(a.textContent || a);
|
2468 |
};
|
2469 |
+
s = null;
|
2470 |
+
s = A.prototype;
|
2471 |
+
s.size = function() {
|
2472 |
return this.rows.length;
|
2473 |
};
|
2474 |
+
s.insert = function(a) {
|
2475 |
+
var b = this.h, c = l("wg-dead");
|
2476 |
c.style.height = String(b) + "px";
|
2477 |
a.appendChild(c);
|
2478 |
return this.dead = c;
|
2479 |
};
|
2480 |
+
s.top = function() {
|
2481 |
return (this.rendered ? this.live : this.dead).offsetTop;
|
2482 |
};
|
2483 |
+
s.height = function() {
|
2484 |
var a = this.h;
|
2485 |
null == a && (this.h = a = this.rendered ? this.live.firstChild.offsetHeight : this.dead.offsetHight);
|
2486 |
+
a || n("row has zero height");
|
2487 |
return a;
|
2488 |
};
|
2489 |
+
s.render = function(a) {
|
2490 |
+
for (var b, c = -1, e = this.rows, d = e.length, g = this.dead, k = this.live, v = k.childNodes; ++c < d; ) b = e[c],
|
2491 |
+
b.rendered || b.render(v);
|
2492 |
d = a.length;
|
2493 |
+
for (c = 0; c < d; c++) v[c].style.width = a[c];
|
2494 |
+
g.parentNode.replaceChild(k, g);
|
2495 |
this.rendered = !0;
|
2496 |
this.h = null;
|
2497 |
return this;
|
2498 |
};
|
2499 |
+
s.sleep = function() {
|
2500 |
var a = this.height(), b = this.live, c = this.dead;
|
2501 |
c.style.height = String(a) + "px";
|
2502 |
b.parentNode.replaceChild(c, b);
|
2504 |
this.h = a;
|
2505 |
return this;
|
2506 |
};
|
2507 |
+
s.sleepH = function(a) {
|
2508 |
a *= this.rows.length;
|
2509 |
var b = this.dead;
|
2510 |
b && (b.style.height = String(a) + "px");
|
2511 |
this.rendered || (this.h = a);
|
2512 |
return this;
|
2513 |
};
|
2514 |
+
s.widths = function(a) {
|
2515 |
for (var b = this.live.childNodes, c = a.length; 0 !== c--; ) b[c].style.width = a[c];
|
2516 |
return this;
|
2517 |
};
|
2518 |
+
s.destroy = function() {
|
2519 |
var a = this.rendered ? this.live : this.dead, b = this.rows, c = b.length;
|
2520 |
for (a.parentNode.removeChild(a); 0 !== c--; ) b[c].destroy();
|
2521 |
};
|
2522 |
+
s = null;
|
2523 |
return f;
|
2524 |
+
}({}, y, w));
|
2525 |
+
p.register("$39", function(f, d, D) {
|
2526 |
+
function n(a, b) {
|
2527 |
var c = a.id, e = c && q[c], d = e && e.parent();
|
2528 |
if (!e || !d) return null;
|
2529 |
+
var g = d.dir === s, c = g ? "X" : "Y", k = "page" + c, g = g ? A : z, m = g(d.el), c = b["offset" + c], l = d.el, f = l.className;
|
2530 |
+
null == c && (c = b[k] - g(a));
|
2531 |
+
c && (m += c);
|
2532 |
+
l.className = f + " is-resizing";
|
2533 |
return {
|
2534 |
done: function() {
|
2535 |
+
l.className = f;
|
2536 |
},
|
2537 |
move: function(a) {
|
2538 |
+
d.resize(a[k] - m, e);
|
2539 |
return !0;
|
2540 |
}
|
2541 |
};
|
2542 |
}
|
2543 |
+
function l(a, c) {
|
2544 |
function e() {
|
2545 |
+
h(D).off("mousemove", d);
|
2546 |
+
x && (x.done(), x = null);
|
2547 |
return !0;
|
2548 |
}
|
2549 |
function d(a) {
|
2550 |
+
x ? x.move(a) : e();
|
2551 |
return !0;
|
2552 |
}
|
2553 |
+
if (x) return !0;
|
2554 |
+
x = n(a.target, a);
|
2555 |
+
if (!x) return !0;
|
2556 |
+
h(D).one("mouseup", e).on("mousemove", d);
|
2557 |
return b(a);
|
2558 |
}
|
2559 |
function c(a, b) {
|
2560 |
var c = b.type;
|
2561 |
+
"touchmove" === c ? x && x.move(b) : "touchstart" === c ? x = n(a.target, b) : "touchend" === c && x && (x.done(),
|
2562 |
+
x = null);
|
2563 |
}
|
2564 |
function b(a) {
|
2565 |
a.stopPropagation();
|
2567 |
return !1;
|
2568 |
}
|
2569 |
function a(a) {
|
2570 |
+
var b = B;
|
2571 |
b && b.redraw();
|
2572 |
a && a.redraw();
|
2573 |
+
return B = a;
|
2574 |
}
|
2575 |
function e(b, c) {
|
2576 |
+
var e = h(c).on("editFocus", function() {
|
2577 |
e.trigger("wgFocus", [ a(b) ]);
|
2578 |
}).on("editBlur", function() {
|
2579 |
e.trigger("wgBlur", [ a(null) ]);
|
2580 |
});
|
2581 |
}
|
2582 |
+
function m(a) {
|
2583 |
var b = a.id, c = a.className;
|
2584 |
this.id = b;
|
2585 |
this.el = a;
|
2589 |
q[b] = this;
|
2590 |
this.clear();
|
2591 |
}
|
2592 |
+
var k = p.include("$46", "html.js") || p.include("$2", "html.js", !0), g = p.require("$21", "dom.js"), z = g.top, A = g.left, s = 1, q = {}, B, x = !1;
|
2593 |
f.init = function(a) {
|
2594 |
+
var b = new m(a);
|
2595 |
b.redraw();
|
2596 |
+
p.require("$47", "touch.js").ok(function(b) {
|
2597 |
b.dragger(a, c);
|
2598 |
});
|
2599 |
+
h(a).on("mousedown", l);
|
2600 |
return b;
|
2601 |
};
|
2602 |
+
d = m.prototype;
|
2603 |
d.fire = function(a, b) {
|
2604 |
+
var c = h.Event(a);
|
2605 |
c.cell = this;
|
2606 |
+
h(this.el).trigger(c, b);
|
2607 |
return this;
|
2608 |
};
|
2609 |
d.each = function(a) {
|
2620 |
return this.$("off", arguments);
|
2621 |
};
|
2622 |
d.find = function(a) {
|
2623 |
+
return h(this.el).find(a);
|
2624 |
};
|
2625 |
d.$ = function(a, b) {
|
2626 |
+
h.fn[a].apply(h(this.el), b);
|
2627 |
return this;
|
2628 |
};
|
2629 |
d.addClass = function(a) {
|
2639 |
return this.pid && q[this.pid];
|
2640 |
};
|
2641 |
d.splitx = function() {
|
2642 |
+
return this._split(s, arguments);
|
2643 |
};
|
2644 |
d.splity = function() {
|
2645 |
return this._split(2, arguments);
|
2646 |
};
|
2647 |
d._split = function(a, b) {
|
2648 |
(this.length || this.field) && this.clear();
|
2649 |
+
for (var c = -1, e, d = b.length, k = 1 / d, l = 0; ++c < d; ) {
|
2650 |
+
e = g.el();
|
2651 |
this.body.appendChild(e);
|
2652 |
+
for (var f = e, h = b[c], z = h, s = 1; q[h]; ) h = z + "-" + ++s;
|
2653 |
+
f.id = h;
|
2654 |
+
e = new m(e);
|
2655 |
e.index = c;
|
2656 |
e.pid = this.id;
|
2657 |
e._locale(this.lang, this.rtl);
|
2658 |
+
e.pos = l;
|
2659 |
+
l += k;
|
2660 |
this.cells.push(e);
|
2661 |
this.length++;
|
2662 |
}
|
2671 |
a.innerHTML = "";
|
2672 |
this.body = null;
|
2673 |
a.className = this._cn || "";
|
2674 |
+
h(a).off();
|
2675 |
return this;
|
2676 |
};
|
2677 |
d.exists = function() {
|
2678 |
return this === q[this.id];
|
2679 |
};
|
2680 |
d.clear = function() {
|
2681 |
+
for (var a = this.el, b = this.cells, c = this.field, e = this.body, d = this.nav, m = this.length || 0; 0 !== m--; ) delete q[b[m].destroy().id];
|
2682 |
this.cells = [];
|
2683 |
this.length = 0;
|
2684 |
d && (a.removeChild(d), this.nav = null);
|
2685 |
+
e && (c && (k.ie() && h(e).triggerHandler("blur"), c.destroy(), this.field = null),
|
2686 |
this.table && (this.table = null), a === e.parentNode && a.removeChild(e));
|
2687 |
+
this.body = a.appendChild(g.el("", "wg-body"));
|
2688 |
this._h = null;
|
2689 |
return this;
|
2690 |
};
|
2691 |
d.resize = function(a, b) {
|
2692 |
if (!b && (b = this.cells[1], !b)) return;
|
2693 |
+
var c = b.index, e = this.cells, d = h(this.el)[this.dir === s ? "width" : "height"](), g = e[c + 1], c = e[c - 1];
|
2694 |
pad = (b.body || b.el.firstChild).offsetTop || 0;
|
2695 |
+
max = (g ? g.pos * d : d) - pad;
|
2696 |
min = c ? c.pos * d : 0;
|
2697 |
b.pos = Math.min(max, Math.max(min, a)) / d;
|
2698 |
this.redraw();
|
2699 |
return this;
|
2700 |
};
|
2701 |
d.distribute = function(a) {
|
2702 |
+
for (var b = -1, c = 0, e, d = this.cells, g = a.length; ++b < g && (e = d[++c]); ) e.pos = Math.max(0, Math.min(1, a[b]));
|
2703 |
this.redraw();
|
2704 |
return this;
|
2705 |
};
|
2722 |
this.restyle();
|
2723 |
var b = this.el, c = this.body, e = this.field;
|
2724 |
if (c) {
|
2725 |
+
var d, g = b.clientWidth || 0, k = b.clientHeight || 0, m = c.offsetTop || 0, k = m > k ? 0 : k - m;
|
2726 |
+
this._h !== k && (this._h = k, c.style.height = String(k) + "px", d = e);
|
2727 |
+
this._w !== g && (this._w = g, d = e);
|
2728 |
d && d.redraw();
|
2729 |
}
|
2730 |
c = this.length;
|
2731 |
+
g = 1;
|
2732 |
+
k = this.nav;
|
2733 |
+
for (m = 2 === this.dir ? "height" : "width"; 0 !== c--; ) e = this.cells[c], k ? d = 1 : (e.fixed && (e.pos = e.fixed / h(b)[m]()),
|
2734 |
+
d = g - e.pos, g = e.pos), e.el.style[m] = String(100 * d) + "%", e.redraw(a);
|
2735 |
return this;
|
2736 |
};
|
2737 |
d.contents = function(a, b) {
|
2738 |
var c = this.el, e = this.body;
|
2739 |
if (null == a) return e.innerHTML;
|
2740 |
this.length ? this.clear() : e && (c.removeChild(e), e = null);
|
2741 |
+
e || (this.body = e = c.appendChild(g.el("", b || "wg-content")), this._h = null,
|
2742 |
(c = this.lang) && this._locale(c, this.rtl, !0));
|
2743 |
+
"string" === typeof a ? h(e)._html(a) : a && this.append(a);
|
2744 |
this.redraw();
|
2745 |
return this;
|
2746 |
};
|
2750 |
var d = c.editable();
|
2751 |
c.reload(a, b);
|
2752 |
d !== b && this.restyle();
|
2753 |
+
} else this.length && this.clear(), d = g.el("textarea"), d.setAttribute("wrap", "virtual"),
|
2754 |
+
d.value = a, this.contents(d), c = p.require("$48", "field.js")._new(d)[b ? "enable" : "disable"](),
|
2755 |
e(this, d), this.field = c, this.restyle();
|
2756 |
this.lang || this.locale("en");
|
2757 |
return c;
|
2758 |
};
|
2759 |
d.locale = function(a) {
|
2760 |
+
a = p.require("$37", "locale.js").cast(a);
|
2761 |
return this._locale(String(a), a.isRTL());
|
2762 |
};
|
2763 |
d._locale = function(a, b, c) {
|
2784 |
return this;
|
2785 |
};
|
2786 |
d.append = function(a) {
|
2787 |
+
a && (a.nodeType ? k.init(this.body.appendChild(a)) : k.init(h(a).appendTo(this.body)));
|
2788 |
return this;
|
2789 |
};
|
2790 |
d.prepend = function(a) {
|
2791 |
var b = this.body;
|
2792 |
if (a.nodeType) {
|
2793 |
var c = b.firstChild;
|
2794 |
+
k.init(c ? b.insertBefore(a, c) : b.appendChild(a));
|
2795 |
+
} else k.init(h(a).prependTo(b));
|
2796 |
return this;
|
2797 |
};
|
2798 |
d.before = function(a) {
|
2799 |
var b = this.body;
|
2800 |
+
a.nodeType ? k.init(this.el.insertBefore(a, b)) : k.init(h(a).insertBefore(b));
|
2801 |
return this;
|
2802 |
};
|
2803 |
d.header = function(a, b) {
|
2804 |
if (null == a && null == b) return this.el.getElementsByTagName("header")[0];
|
2805 |
+
this.t = g.txt(a || "");
|
2806 |
+
this.el.insertBefore(g.el("header", b), this.body).appendChild(this.t);
|
2807 |
this.redraw();
|
2808 |
return this;
|
2809 |
};
|
2818 |
return a && a.nodeValue;
|
2819 |
};
|
2820 |
d.bodyY = function() {
|
2821 |
+
return z(this.body, this.el);
|
2822 |
};
|
2823 |
d.scrollY = function(a) {
|
2824 |
if (J === a) return this.body.scrollTop;
|
2826 |
};
|
2827 |
d.tabulate = function(a) {
|
2828 |
var b = this.table;
|
2829 |
+
b ? b.clear() : b = p.require("$49", "wgtable.js").create(this);
|
2830 |
b.init(a);
|
2831 |
return this.table = b;
|
2832 |
};
|
2837 |
d.scrollTo = function(a, b) {
|
2838 |
var c, e = this.body;
|
2839 |
c = e.scrollTop;
|
2840 |
+
var d = z(a, e);
|
2841 |
if (c > d) c = d; else {
|
2842 |
+
var g = e.clientHeight, d = d + h(a).outerHeight();
|
2843 |
+
if (g + c < d) c = d - g; else return;
|
2844 |
}
|
2845 |
+
b ? e.scrollTop = c : h(e).stop(!0).animate({
|
2846 |
scrollTop: c
|
2847 |
}, 250);
|
2848 |
};
|
2849 |
d.navigize = function(a, c) {
|
2850 |
function e(a) {
|
2851 |
+
var b = k[a], c = f[a], d = h(b.el).show();
|
2852 |
c.addClass("active");
|
2853 |
+
l = a;
|
2854 |
+
z.data("idx", a);
|
2855 |
b.fire("wgTabSelect", [ a ]);
|
2856 |
return d;
|
2857 |
}
|
2858 |
+
var d = this, k = d.cells, m = d.nav, l, f = [];
|
2859 |
+
m && d.el.removeChild(m);
|
2860 |
+
var m = d.nav = d.el.insertBefore(g.el("nav", "wg-tabs"), d.body), z = h(m).on("click", function(a) {
|
2861 |
+
var c = h(a.target).data("idx");
|
2862 |
if (null == c) return !0;
|
2863 |
+
if (null != l) {
|
2864 |
+
var g = f[l];
|
2865 |
+
h(k[l].el).hide();
|
2866 |
g.removeClass("active");
|
2867 |
}
|
2868 |
e(c);
|
2869 |
d.redraw();
|
2870 |
return b(a);
|
2871 |
});
|
2872 |
+
null == c && (c = z.data("idx") || 0);
|
2873 |
d.each(function(b, c) {
|
2874 |
+
f[c] = h('<a href="#' + b.id + '"></a>').data("idx", c).text(a[c]).appendTo(z);
|
2875 |
b.pos = 0;
|
2876 |
+
h(b.el).hide();
|
2877 |
});
|
2878 |
+
e(k[c] ? c : 0);
|
2879 |
d.lock();
|
2880 |
d.redraw();
|
2881 |
return d;
|
2882 |
};
|
2883 |
d.navigated = function() {
|
2884 |
var a = this.nav;
|
2885 |
+
if (a) return h(a).data("idx");
|
2886 |
};
|
2887 |
d = null;
|
2888 |
return f;
|
2889 |
+
}({}, y, w));
|
2890 |
+
p.register("$24", function(f, d, D) {
|
2891 |
+
function n(a) {
|
2892 |
var b = [];
|
2893 |
a && (a.saved() || b.push("po-unsaved"), a.fuzzy() ? b.push("po-fuzzy") : a.flagged() && b.push("po-flagged"),
|
2894 |
a.translation() || b.push("po-empty"), a.comment() && b.push("po-comment"));
|
2895 |
return b.join(" ");
|
2896 |
}
|
2897 |
+
function l(a, b, c) {
|
2898 |
+
b = h(a.title(b).parentNode);
|
2899 |
var e = b.find("span.lang");
|
2900 |
+
c ? (c = p.require("$37", "locale.js").cast(c), e.length || (e = h("<span></span>").prependTo(b)),
|
2901 |
e.attr("lang", c.lang).attr("class", c.getIcon() || "lang region region-" + (c.region || "zz").toLowerCase())) : (e.remove(),
|
2902 |
c = "en");
|
2903 |
a.locale(c);
|
2913 |
function b() {
|
2914 |
this.dirty = 0;
|
2915 |
}
|
2916 |
+
p.require("$3", "number.js");
|
2917 |
+
var a = "poUpdate", e = "changing", m = "changed", k = 0, g = 1, z = 2, A = 3, s = 4, q = 5, B, x, r = p.require("$36", "string.js").html, y = p.require("$6", "string.js").sprintf;
|
2918 |
f.extend = function(a) {
|
2919 |
return a.prototype = new b();
|
2920 |
};
|
2921 |
f.localise = function(a) {
|
2922 |
+
x = a;
|
2923 |
return f;
|
2924 |
};
|
2925 |
+
var w = function() {
|
2926 |
+
var a = D.createElement("p");
|
2927 |
return function(b) {
|
2928 |
a.innerHTML = b.replace("src=", "x=");
|
2929 |
return a.textContent.trim() || b.trim();
|
2930 |
};
|
2931 |
+
}(), u = b.prototype = p.require("$38", "abstract.js").init([ "getListColumns", "getListHeadings", "getListEntry" ], [ "editable", "t" ]);
|
2932 |
u.init = function() {
|
2933 |
this.localise();
|
2934 |
this.editable = {
|
2940 |
return this;
|
2941 |
};
|
2942 |
u.localise = function(a) {
|
2943 |
+
a || (a = x || p.require("$1", "t.js").init());
|
2944 |
var b = [];
|
2945 |
+
b[k] = a._x("Source text", "Editor") + ":";
|
2946 |
+
b[A] = a._x("%s translation", "Editor") + ":";
|
2947 |
+
b[s] = a._x("Context", "Editor") + ":";
|
2948 |
b[q] = a._x("Comments", "Editor") + ":";
|
2949 |
+
b[g] = a._x("Single", "Editor") + ":";
|
2950 |
+
b[z] = a._x("Plural", "Editor") + ":";
|
2951 |
b[6] = a._x("Untranslated", "Editor");
|
2952 |
b[7] = a._x("Translated", "Editor");
|
2953 |
b[8] = a._x("Toggle Fuzzy", "Editor");
|
2961 |
c.redraw(!0, a);
|
2962 |
return !0;
|
2963 |
}
|
2964 |
+
var c = p.require("$39", "wingrid.js").init(a);
|
2965 |
+
h(d).on("resize", b);
|
2966 |
this.redraw = b;
|
2967 |
+
h(a).on("wgFocus wgBlur", function(a, b) {
|
2968 |
a.stopPropagation();
|
2969 |
+
B = b;
|
2970 |
});
|
2971 |
this.destroy = function() {
|
2972 |
c.destroy();
|
2973 |
+
h(d).off("resize", b);
|
2974 |
};
|
2975 |
this.rootDiv = a;
|
2976 |
return c;
|
2977 |
};
|
2978 |
u.$ = function() {
|
2979 |
+
return h(this.rootDiv);
|
2980 |
};
|
2981 |
u.setListCell = function(a) {
|
2982 |
var b = this;
|
2996 |
this.targetCell = a;
|
2997 |
};
|
2998 |
u.next = function(a, b, c) {
|
2999 |
+
for (var e = this.listTable, d = e.selected(), g = d, k, m = this.po; null != (d = e.next(a, c, d)); ) {
|
3000 |
+
if (g === d) {
|
3001 |
d = null;
|
3002 |
break;
|
3003 |
}
|
3004 |
+
if (b && (k = m.row(d), k.translated(0))) continue;
|
3005 |
break;
|
3006 |
}
|
3007 |
null != d && e.select(d, !0);
|
3040 |
return this.lastSearch || "";
|
3041 |
};
|
3042 |
u.filter = function(a, b) {
|
3043 |
+
var c, e = this.listTable, d = this.lastFound, g = this.lastSearch;
|
3044 |
if (a) {
|
3045 |
+
if (g === a) return d || 0;
|
3046 |
+
if (g && !d && 0 === a.indexOf(g)) return 0;
|
3047 |
c = this.dict.find(a);
|
3048 |
}
|
3049 |
+
this.lastSearch = g = a;
|
3050 |
this.lastFound = d = c ? c.length : this.po.length;
|
3051 |
c ? e.filter(c) : e.unfilter();
|
3052 |
+
b || this.fire("poFilter", [ g, d ]);
|
3053 |
return d;
|
3054 |
};
|
3055 |
u.countFiltered = function() {
|
3067 |
var b = this.po.indexOf(a);
|
3068 |
if ((b = this.listTable.tr(b)) && b.length) {
|
3069 |
var c = b[0].className;
|
3070 |
+
a = c.replace(/(?:^| +)po-[a-z]+/g, "") + " " + n(a);
|
3071 |
+
a !== c && h(b).attr("class", a);
|
3072 |
}
|
3073 |
};
|
3074 |
u.save = function(a) {
|
3082 |
u.fire = function(a, b) {
|
3083 |
var c = this.handle;
|
3084 |
if (c && c[a] && (c = c[a].apply(this, b || []), !1 === c)) return !1;
|
3085 |
+
c = h.Event(a);
|
3086 |
this.$().trigger(c, b);
|
3087 |
return !c.isDefaultPrevented();
|
3088 |
};
|
3094 |
return null;
|
3095 |
};
|
3096 |
u.reload = function() {
|
3097 |
+
var a = this, b, c = a.listCell, e = a.listTable, d = a.po, g = d && d.locale(), k = g && g.isRTL(), m = d && d.length || 0;
|
3098 |
if (!d || !d.row) return c && c.clear().header("Error").contents("Invalid messages list"),
|
3099 |
!1;
|
3100 |
+
a.targetLocale = g;
|
3101 |
+
a.lastSearch && (a.lastSearch = "", a.lastFound = m, a.fire("poFilter", [ "", m ]));
|
3102 |
e && (b = e.thead().distribution());
|
3103 |
a.listTable = e = c.tabulate({
|
3104 |
eachCol: function(b) {
|
3105 |
+
var c, e, d = a.getListColumns(), g = a.getListHeadings();
|
3106 |
+
for (e in d) c = d[e], b(c, e, g[c]);
|
3107 |
},
|
3108 |
eachRow: function(b) {
|
3109 |
d.each(function(c, e) {
|
3110 |
+
b(e.idx, a.getListEntry(e), n(e));
|
3111 |
});
|
3112 |
},
|
3113 |
sort: a.getSorter()
|
3115 |
var l, c = a.getListColumns();
|
3116 |
for (l in c) e.sortable(c[l]);
|
3117 |
b && e.thead().distribute(b);
|
3118 |
+
e.tbody().$(k ? "addClass" : "removeClass", [ "is-rtl" ]);
|
3119 |
a.fire("poLoad");
|
3120 |
+
return !!m;
|
3121 |
};
|
3122 |
u.load = function(a, b) {
|
3123 |
this.po = a;
|
3149 |
return null;
|
3150 |
};
|
3151 |
u.setSrcMeta = function(a, b) {
|
3152 |
+
var e = [], d, g = !1, k = this.$smeta, m = this.labels, l = [], f = a.tags(), z = f && f.length;
|
3153 |
+
if (d = a.context()) l.push("<span>" + r(m[s]) + "</span>"), l.push("<mark>" + r(d) + "</mark>");
|
3154 |
+
if (z && this.getTag) for (l.push("<span>Tagged:</span>"); 0 <= --z; ) (d = this.getTag(f[z])) && l.push('<mark class="tag">' + r(d.mod_name) + "</mark>");
|
3155 |
l.length && e.push(l.join(" "));
|
3156 |
+
if (this.getMono() && (d = a.refs()) && (f = d.split(/\s/), z = f.length)) {
|
3157 |
+
for (l = []; 0 <= --z; ) d = f[z], l.push("<code>" + r(d) + "</code>");
|
3158 |
e.push('<p class="has-icon icon-file">' + l.join(" ") + "</p>");
|
3159 |
}
|
3160 |
+
(d = a.notes()) && e.push('<p class="has-icon icon-info">' + r(d, !0) + "</p>");
|
3161 |
+
e.length ? (k || (k = b.find("div.meta"), k.length || (k = h('<div class="meta"></div>').insertAfter(b.header())),
|
3162 |
+
c(this, k, "poMeta"), this.$smeta = k), k.html(e.join("\n")).show(), g = !0) : k && k.text() && (k.text("").hide(),
|
3163 |
+
g = !0);
|
3164 |
+
return g;
|
3165 |
};
|
3166 |
u.setTrgMeta = function(a, b, c) {
|
3167 |
+
var e = [], d = !1, g = this.$tmeta;
|
3168 |
b = (a = a.errors(b)) && a.length;
|
3169 |
+
var k;
|
3170 |
+
if (b) for (k = 0; k < b; k++) e.push('<p class="has-icon icon-warn">' + r(a[k], !0) + ".</p>");
|
3171 |
+
e.length ? (g || (g = c.find("div.meta"), g.length || (g = h('<div class="meta"></div>').insertAfter(c.header())),
|
3172 |
+
this.$tmeta = g), g.html(e.join("\n")).show(), d = !0) : g && g.text() && (g.text("").hide(),
|
3173 |
d = !0);
|
3174 |
return d;
|
3175 |
};
|
3182 |
return e.join(" ");
|
3183 |
}
|
3184 |
function d(a, e) {
|
3185 |
+
var m = J, h = L[k];
|
3186 |
a.off();
|
3187 |
+
a.titled() !== h && l(a, h, e || "en");
|
3188 |
+
h = !1;
|
3189 |
+
r.setSrcMeta(b, a) && (h = !0);
|
3190 |
if (b.plural()) {
|
3191 |
+
var h = -1, s = [], q = [], A = a.id + "-", n = b.sourceForms() || e && e.plurals || [ "One", "Other" ], p = n.length;
|
3192 |
+
if (2 !== p || "=" === n[0].charAt(0) && "=1" !== n[0]) for (;++h < p; ) s[h] = A + String(h),
|
3193 |
+
q[h] = c(n[h]) + ":"; else s = [ A + "-0", A + "-1" ], q = [ L[g], L[z] ];
|
3194 |
+
a.splity.apply(a, s);
|
3195 |
a.each(function(a, c) {
|
3196 |
+
a.header(q[c]).textarea(b.source(null, c), m).setStrf(C).setMode(x).setInvs(w);
|
3197 |
});
|
3198 |
a.lock();
|
3199 |
+
m && a.each(function(a, b) {
|
3200 |
f(a, b);
|
3201 |
});
|
3202 |
+
} else h && a.redraw(), a.textarea(b.source(), m).setStrf(C).setMode(x).setInvs(w),
|
3203 |
+
m && f(a, 0);
|
3204 |
}
|
3205 |
function f(c, d) {
|
3206 |
c.on(e, function(a, c) {
|
3207 |
b.source(c, d);
|
3208 |
+
0 === d && r.updateListCell(b, "source");
|
3209 |
+
r.unsave(b, d);
|
3210 |
+
}).on(m, function() {
|
3211 |
+
0 === d && r.po.reIndex(b);
|
3212 |
+
r.dict && r.rebuildSearch();
|
3213 |
+
r.fire(a, [ b ]);
|
3214 |
});
|
3215 |
}
|
3216 |
+
function h(a, e, d) {
|
3217 |
M && a.eachTextarea(function(a) {
|
3218 |
a.ping();
|
3219 |
});
|
3220 |
a.off();
|
3221 |
+
var g = e.isKnown() && e.label || "Target", g = y(L[A], g);
|
3222 |
+
a.titled() !== g && l(a, g, e);
|
3223 |
+
g = !1;
|
3224 |
+
!this.sourceCell && r.setSrcMeta(b, a) && (g = !0);
|
3225 |
+
r.setTrgMeta(b, d, a) && (g = !0);
|
3226 |
+
r.setStatus(b, d);
|
3227 |
+
if (1 !== e.nplurals && b.pluralized()) {
|
3228 |
+
var k = [], m = [], f = a.id + "-", z = b.targetForms() || e.plurals || [ "One", "Other" ], g = z.length, s = function(a) {
|
3229 |
+
var b = z[a];
|
3230 |
+
m.push(b ? c(b, !0) : "Form " + a);
|
3231 |
+
k.push(f + String(a));
|
3232 |
+
};
|
3233 |
+
for (b.each(s); (e = k.length) < g; ) s(e);
|
3234 |
+
a.splitx.apply(a, k);
|
3235 |
a.each(function(a, c) {
|
3236 |
var e = M && !b.disabled(c);
|
3237 |
+
a.textarea(b.translation(c), e).setStrf(C).setMode(x).setInvs(w);
|
3238 |
+
M && n(a, c);
|
3239 |
});
|
3240 |
+
a.navigize(m, d || null).on("wgTabSelect", function(c, e) {
|
3241 |
var d = M && c.cell.editable();
|
3242 |
d && d.focus();
|
3243 |
+
r.setTrgMeta(b, e, a);
|
3244 |
+
r.setStatus(b, e);
|
3245 |
+
r.fire("poTab", [ e ]);
|
3246 |
});
|
3247 |
+
} else g && a.redraw(), a.textarea(b.translation(), M && !b.disabled(0)).setStrf(C).setMode(x).setInvs(w),
|
3248 |
+
M && n(a, 0);
|
3249 |
}
|
3250 |
+
function n(c, d) {
|
3251 |
c.on(e, function(a, c, e) {
|
3252 |
b.translate(c, d);
|
3253 |
+
0 === d && r.updateListCell(b, "target");
|
3254 |
+
b.fuzzy(d) ? r.fuzzy(!1, b, d) : r.unsave(b, d);
|
3255 |
+
"" === c ? (r.fire("poEmpty", [ !0, b, d ]), r.setStatus(b, d)) : "" === e && (r.fire("poEmpty", [ !1, b, d ]),
|
3256 |
+
r.setStatus(b, d));
|
3257 |
+
}).on(m, function() {
|
3258 |
+
r.dict && r.rebuildSearch();
|
3259 |
+
r.fire(a, [ b ]);
|
3260 |
});
|
3261 |
}
|
3262 |
+
function p(c) {
|
3263 |
c.off();
|
3264 |
+
var d = L[s];
|
3265 |
+
c.titled() !== d && (l(c, d), r.setStatus(null));
|
3266 |
+
c.textarea(b.context(), !0).setMode(x).setInvs(w);
|
3267 |
X && c.on(e, function(a, c) {
|
3268 |
b.context(c);
|
3269 |
+
r.updateListCell(b, "source");
|
3270 |
+
r.unsave(b, O);
|
3271 |
+
}).on(m, function() {
|
3272 |
+
r.po.reIndex(b);
|
3273 |
+
r.dict && r.rebuildSearch();
|
3274 |
+
r.fire(a, [ b ]);
|
3275 |
});
|
3276 |
}
|
3277 |
function u(a) {
|
3278 |
var c = L[q];
|
3279 |
+
a.titled() !== c && l(a, c);
|
3280 |
a.off().on(e, function(a, c) {
|
3281 |
b.comment(c);
|
3282 |
+
r.fire("poComment", [ b, c ]);
|
3283 |
+
r.unsave(b, O);
|
3284 |
}).textarea(b.comment(), !0);
|
3285 |
}
|
3286 |
+
var r = this, x = r.mode, D = b.isHTML(), w = r.inv || !1, E = this.fmt || null, C = b.format() || null, I = b.is(r.active), O = 0, T = r.sourceCell, S = r.targetCell, U = r.contextCell, V = r.commentCell, M = r.editable.target, J = r.editable.source, X = r.editable.context, P = B, Y = r.sourceLocale, W = r.targetLocale, L = r.labels;
|
3287 |
+
r.html !== D && (r.html = D, "code" !== r.mode && (x = D ? "html" : "", r.setMode(x)));
|
3288 |
+
r.active = b;
|
3289 |
T && d(T, Y);
|
3290 |
+
U && p(U);
|
3291 |
+
S && W && (O = S.navigated() || 0, h(S, W, O));
|
3292 |
V && u(V);
|
3293 |
+
P && (P.exists() || (P = P.parent()), (D = P.editable()) && D.focus());
|
3294 |
+
E !== C && (this.fmt = C);
|
3295 |
+
I || r.fire("poSelected", [ b, O ]);
|
3296 |
};
|
3297 |
u.unloadActive = function() {
|
3298 |
function a(b) {
|
3325 |
(e = this.listTable.row(e)) && e.rendered && e.update(c);
|
3326 |
};
|
3327 |
u.cellText = function(a) {
|
3328 |
+
return (a = -1 !== a.indexOf("<") || -1 !== a.indexOf("&") ? w(a) : a.trim()) || " ";
|
3329 |
};
|
3330 |
u.fuzzy = function(a, b, c) {
|
3331 |
b = b || this.active;
|
3405 |
};
|
3406 |
u = null;
|
3407 |
return f;
|
3408 |
+
}({}, y, w));
|
3409 |
+
p.register("$13", function(f, d, D) {
|
3410 |
+
function n() {
|
3411 |
this.init()._validate();
|
3412 |
this.sourceLocale = {
|
3413 |
lang: "en",
|
3415 |
plurals: [ "One", "Other" ]
|
3416 |
};
|
3417 |
}
|
3418 |
+
function l(a) {
|
3419 |
+
a = h('<button type="button" class="button button-small icon icon-' + a + ' hastip"></button>');
|
3420 |
+
p.require("$12", "tooltip.js").init(a);
|
3421 |
return a;
|
3422 |
}
|
3423 |
function c(a) {
|
3424 |
+
return l("cloud").attr("title", a.labels[8] + " (Ctrl-U)").on("click", function(b) {
|
3425 |
b.preventDefault();
|
3426 |
a.focus().fuzzy(!a.fuzzy());
|
3427 |
});
|
3428 |
}
|
3429 |
function b(a) {
|
3430 |
+
return l("robot").attr("title", a.labels[9] + " (Ctrl-J)").on("click", function(b) {
|
3431 |
b.preventDefault();
|
3432 |
a.fire("poHint");
|
3433 |
});
|
3434 |
}
|
3435 |
+
d = p.require("$24", "base.js");
|
3436 |
f.init = function(a) {
|
3437 |
+
var b = new n();
|
3438 |
a = b.setRootCell(a);
|
3439 |
+
var c = a.splity("po-list", "po-edit"), d = c[0], g = c[1], c = g.splitx("po-trans", "po-comment"), l = c[0], f = c[1].header("Loading.."), c = l.splity("po-source", "po-target"), l = c[0].header("Loading.."), c = c[1].header("Loading..");
|
3440 |
a.distribute([ .34 ]);
|
3441 |
g.distribute([ .8 ]);
|
3442 |
b.setListCell(d);
|
3443 |
+
b.setSourceCell(l);
|
3444 |
b.setTargetCell(c);
|
3445 |
+
b.commentCell = f;
|
3446 |
b.editable.source = !1;
|
3447 |
return b;
|
3448 |
};
|
3449 |
+
d = n.prototype = d.extend(n);
|
3450 |
d.getListHeadings = function() {
|
3451 |
var a = this.t || {
|
3452 |
_x: function(a) {
|
3465 |
};
|
3466 |
d.getListEntry = function(a) {
|
3467 |
var b = this.cellText, c = [ function() {
|
3468 |
+
var c, d = b(a.source() || ""), l = a.context();
|
3469 |
+
return l ? (c = D.createElement("p"), c.appendChild(D.createElement("mark")).innerText = l,
|
3470 |
+
c.appendChild(D.createTextNode(" " + d)), c) : d;
|
3471 |
} ];
|
3472 |
this.targetLocale && (c[1] = function() {
|
3473 |
return b(a.translation() || "");
|
3512 |
d.setStatus = function(a) {
|
3513 |
var e = this.$tnav;
|
3514 |
if (null == a) e && (e.remove(), this.$tnav = null); else {
|
3515 |
+
e || (this.$tnav = e = h("<nav></nav>").append(c(this)).append(b(this)).appendTo(this.targetCell.header()));
|
3516 |
var d = [];
|
3517 |
a.translated() ? a.fuzzy() && d.push("po-fuzzy") : d.push("po-empty");
|
3518 |
e.attr("class", d.join(" "));
|
3520 |
};
|
3521 |
d.getSorter = function() {
|
3522 |
function a(a, c) {
|
3523 |
+
var d = a.weight(), l = c.weight();
|
3524 |
+
return d === l ? b(a, c) : d > l ? -1 : 1;
|
3525 |
}
|
3526 |
function b(a, c) {
|
3527 |
return a.hash().localeCompare(c.hash());
|
3528 |
}
|
3529 |
var c = this;
|
3530 |
return function(d) {
|
3531 |
+
var g = c.po, l = c.locked() ? a : b;
|
3532 |
d.sort(function(a, b) {
|
3533 |
+
return l(g.row(a), g.row(b));
|
3534 |
});
|
3535 |
};
|
3536 |
};
|
3537 |
return f;
|
3538 |
+
}({}, y, w));
|
3539 |
+
p.register("$14", function(f, d, p) {
|
3540 |
+
var n = {
|
3541 |
copy: 66,
|
3542 |
clear: 75,
|
3543 |
save: 83,
|
3547 |
enter: 13,
|
3548 |
invis: 73,
|
3549 |
hint: 74
|
3550 |
+
}, l = {
|
3551 |
38: !0,
|
3552 |
40: !0,
|
3553 |
73: !0
|
3583 |
function e(a) {
|
3584 |
if (a.isDefaultPrevented() || !a.metaKey && !a.ctrlKey) return !0;
|
3585 |
var e = a.which;
|
3586 |
+
if (!m[e]) return !0;
|
3587 |
var d = c[e];
|
3588 |
if (!d) throw Error("command undefined #" + e);
|
3589 |
+
if (a.altKey || a.shiftKey && !l[e] || !1 === d(a, b)) return !0;
|
3590 |
a.stopPropagation();
|
3591 |
a.preventDefault();
|
3592 |
return !1;
|
3593 |
}
|
3594 |
+
var m = {};
|
3595 |
+
h(a || d).on("keydown", e);
|
3596 |
return {
|
3597 |
add: function(a, b) {
|
3598 |
+
c[n[a]] = b;
|
3599 |
return this;
|
3600 |
},
|
3601 |
enable: function() {
|
3602 |
var a, b;
|
3603 |
+
for (b in arguments) a = n[arguments[b]], m[a] = !0;
|
3604 |
return this;
|
3605 |
},
|
3606 |
disable: function() {
|
3607 |
+
h(a || d).off("keydown", e);
|
3608 |
+
b = a = m = null;
|
3609 |
}
|
3610 |
};
|
3611 |
};
|
3612 |
return f;
|
3613 |
+
}({}, y, w));
|
3614 |
+
p.register("$25", function(f, d, h) {
|
3615 |
+
function n() {
|
3616 |
this.reIndex([]);
|
3617 |
}
|
3618 |
f.init = function() {
|
3619 |
+
return new n();
|
3620 |
};
|
3621 |
+
d = n.prototype;
|
3622 |
d.reIndex = function(d) {
|
3623 |
for (var c = {}, b = -1, a = d.length; ++b < a; ) c[d[b]] = b;
|
3624 |
this.keys = d;
|
3667 |
return this;
|
3668 |
};
|
3669 |
d.sort = function(d) {
|
3670 |
+
for (var c = -1, b = this.length, a, e = this.keys, m = this.ords, k = []; ++c < b; ) k[c] = [ this[c], e[c] ];
|
3671 |
+
k.sort(function(a, b) {
|
3672 |
return d(a[0], b[0]);
|
3673 |
});
|
3674 |
+
for (c = 0; c < b; c++) a = k[c], this[c] = a[0], a = a[1], e[c] = a, m[a] = c;
|
3675 |
return this;
|
3676 |
};
|
3677 |
d.join = function(d) {
|
3679 |
};
|
3680 |
d = null;
|
3681 |
return f;
|
3682 |
+
}({}, y, w));
|
3683 |
+
p.register("$26", function(f, d, h) {
|
3684 |
+
function n(d, c) {
|
3685 |
var b = RegExp("^.{0," + (d - 1) + "}[" + c + "]"), a = RegExp("^[^" + c + "]+");
|
3686 |
+
return function(c, m) {
|
3687 |
+
for (var k = c.length, g; k > d; ) {
|
3688 |
+
g = b.exec(c) || a.exec(c);
|
3689 |
+
if (null == g) break;
|
3690 |
+
g = g[0];
|
3691 |
+
m.push(g);
|
3692 |
+
g = g.length;
|
3693 |
+
k -= g;
|
3694 |
+
c = c.substr(g);
|
3695 |
+
}
|
3696 |
+
0 !== k && m.push(c);
|
3697 |
+
return m;
|
3698 |
};
|
3699 |
}
|
3700 |
f.create = function(d) {
|
3701 |
function c(a) {
|
3702 |
+
return g[a] || "\\" + a;
|
3703 |
}
|
3704 |
+
var b, a, e = /(?:\r\n|[\r\n\v\f\u2028\u2029])/g, m = /[ \r\n]+/g, k = /[\t\v\f\x07\x08\\\"]/g, g = {
|
3705 |
"\t": "\\t",
|
3706 |
"\v": "\\v",
|
3707 |
"\f": "\\f",
|
3709 |
"\b": "\\b"
|
3710 |
};
|
3711 |
if (null == d || isNaN(d = Number(d))) d = 79;
|
3712 |
+
0 < d && (b = n(d - 3, " "), a = n(d - 2, "-– \\.,:;\\?!\\)\\]\\}\\>"));
|
3713 |
return {
|
3714 |
+
pair: function(b, g) {
|
3715 |
+
if (!g) return b + ' ""';
|
3716 |
+
g = g.replace(k, c);
|
3717 |
+
var m = 0;
|
3718 |
+
g = g.replace(e, function() {
|
3719 |
+
m++;
|
3720 |
return "\\n\n";
|
3721 |
});
|
3722 |
+
if (!(m || d && d < g.length + b.length + 3)) return b + ' "' + g + '"';
|
3723 |
+
var f = [ b + ' "' ], h = g.split("\n");
|
3724 |
+
if (a) for (var n = -1, p = h.length; ++n < p; ) a(h[n], f); else f = f.concat(h);
|
3725 |
+
return f.join('"\n"') + '"';
|
3726 |
},
|
3727 |
prefix: function(a, b) {
|
3728 |
var c = a.split(e);
|
3729 |
return b + c.join("\n" + b);
|
3730 |
},
|
3731 |
refs: function(a) {
|
3732 |
+
a = a.replace(m, " ", a);
|
3733 |
b && (a = b(a, []).join("\n#: "));
|
3734 |
return "#: " + a;
|
3735 |
}
|
3736 |
};
|
3737 |
};
|
3738 |
return f;
|
3739 |
+
}({}, y, w));
|
3740 |
+
p.register("$40", function(f, d, h) {
|
3741 |
+
function n() {
|
3742 |
this.length = 0;
|
3743 |
}
|
3744 |
f.init = function() {
|
3745 |
+
return new n();
|
3746 |
};
|
3747 |
+
d = n.prototype;
|
3748 |
d.push = function(d) {
|
3749 |
this[this.length++] = d;
|
3750 |
return this;
|
3758 |
return this;
|
3759 |
};
|
3760 |
return f;
|
3761 |
+
}({}, y, w));
|
3762 |
+
p.register("$27", function(f, d, h) {
|
3763 |
+
function n() {}
|
3764 |
f.extend = function(d) {
|
3765 |
+
return d.prototype = new n();
|
3766 |
};
|
3767 |
+
d = n.prototype = p.require("$38", "abstract.js").init([ "add", "load" ]);
|
3768 |
d.row = function(d) {
|
3769 |
return this.rows[d];
|
3770 |
};
|
3782 |
return d;
|
3783 |
};
|
3784 |
d.locale = function(d) {
|
3785 |
+
null == d ? d = this.loc : this.loc = d = p.require("$37", "locale.js").cast(d);
|
3786 |
return d;
|
3787 |
};
|
3788 |
d.each = function(d) {
|
3820 |
return this;
|
3821 |
};
|
3822 |
d["export"] = function() {
|
3823 |
+
for (var d = -1, c = this.rows, b = c.length, a = p.require("$40", "list.js").init(); ++d < b; ) a.push(c[d]);
|
3824 |
return a;
|
3825 |
};
|
3826 |
d = null;
|
3827 |
return f;
|
3828 |
+
}({}, y, w));
|
3829 |
+
p.register("$28", function(f, d, h) {
|
3830 |
+
function n(c, b, a) {
|
3831 |
if (null == a) return c[b] || "";
|
3832 |
c[b] = a || "";
|
3833 |
return c;
|
3834 |
}
|
3835 |
+
function l() {
|
3836 |
this._id = this.id = "";
|
3837 |
}
|
3838 |
f.extend = function(c) {
|
3839 |
+
return c.prototype = new l();
|
3840 |
};
|
3841 |
+
d = l.prototype;
|
3842 |
d.flag = function(c, b) {
|
3843 |
var a = this.flg || (this.flg = []);
|
3844 |
if (null != b) a[b] = c; else for (var d = Math.max(a.length, this.src.length, this.msg.length); 0 !== d--; ) a[d] = c;
|
3851 |
return !1;
|
3852 |
};
|
3853 |
d.flags = function() {
|
3854 |
+
for (var c, b = {}, a = [], d = this.flg || [], m = d.length; 0 !== m--; ) c = d[m],
|
3855 |
b[c] || (b[c] = !0, a.push(c));
|
3856 |
return a;
|
3857 |
};
|
3883 |
return this.msgF;
|
3884 |
};
|
3885 |
d.each = function(c) {
|
3886 |
+
for (var b = -1, a = this.src, d = this.msg, m = Math.max(a.length, d.length); ++b < m; ) c(b, a[b], d[b]);
|
3887 |
return this;
|
3888 |
};
|
3889 |
d.count = function() {
|
3922 |
return !0;
|
3923 |
};
|
3924 |
d.comment = function(c) {
|
3925 |
+
return n(this, "cmt", c);
|
3926 |
};
|
3927 |
d.notes = function(c) {
|
3928 |
+
return n(this, "xcmt", c);
|
3929 |
};
|
3930 |
d.refs = function(c) {
|
3931 |
+
return n(this, "rf", c);
|
3932 |
};
|
3933 |
d.format = function(c) {
|
3934 |
+
return n(this, "fmt", c);
|
3935 |
};
|
3936 |
d.context = function(c) {
|
3937 |
+
return n(this, "ctx", c);
|
3938 |
};
|
3939 |
d.tags = function() {
|
3940 |
return this.tg;
|
3988 |
};
|
3989 |
d = null;
|
3990 |
return f;
|
3991 |
+
}({}, y, w));
|
3992 |
+
p.register("$15", function(f, d, h) {
|
3993 |
+
function n(a) {
|
3994 |
return {
|
3995 |
"Project-Id-Version": "PACKAGE VERSION",
|
3996 |
"Report-Msgid-Bugs-To": "",
|
4005 |
"Content-Transfer-Encoding": "8bit"
|
4006 |
};
|
4007 |
}
|
4008 |
+
function l(a, b) {
|
4009 |
var c = a || "";
|
4010 |
b && (c += "\0" + b);
|
4011 |
return c;
|
4015 |
b && b.error && b.error(a.message || String(a));
|
4016 |
}
|
4017 |
function b(a) {
|
4018 |
+
return p.require("$26", "format.js").create(a);
|
4019 |
}
|
4020 |
function a(a) {
|
4021 |
this.locale(a);
|
4022 |
this.clear();
|
4023 |
+
this.head = n(this.now());
|
4024 |
}
|
4025 |
function e(a, b) {
|
4026 |
this.src = [ a || "" ];
|
4029 |
f.create = function(b) {
|
4030 |
return new a(b);
|
4031 |
};
|
4032 |
+
h = p.require("$27", "messages.js").extend(a);
|
4033 |
+
h.clear = function() {
|
4034 |
+
this.rows = p.require("$25", "collection.js").init();
|
4035 |
this.length = 0;
|
4036 |
return this;
|
4037 |
};
|
4038 |
+
h.now = function() {
|
4039 |
function a(b, c) {
|
4040 |
for (var d = String(b); d.length < c; ) d = "0" + d;
|
4041 |
return d;
|
4043 |
var b = new Date(), c = b.getUTCFullYear(), d = b.getUTCMonth() + 1, e = b.getUTCDate(), f = b.getUTCHours(), b = b.getUTCMinutes();
|
4044 |
return a(c, 4) + "-" + a(d, 2) + "-" + a(e, 2) + " " + a(f, 2) + ":" + a(b, 2) + "+0000";
|
4045 |
};
|
4046 |
+
h.header = function(a, b) {
|
4047 |
var c = this.head || (this.head = {});
|
4048 |
if (null == b) return this.headers()[a] || "";
|
4049 |
c[a] = b || "";
|
4050 |
return this;
|
4051 |
};
|
4052 |
+
h.headers = function(a) {
|
4053 |
+
var b, c = this.now(), d = this.head || (this.head = n(c));
|
4054 |
if (null != a) {
|
4055 |
for (b in a) d[b] = a[b];
|
4056 |
return this;
|
4066 |
a["X-Generator"] = "Loco https://localise.biz/";
|
4067 |
return a;
|
4068 |
};
|
4069 |
+
h.get = function(a, b) {
|
4070 |
+
var c = l(a, b);
|
4071 |
return this.rows.get(c);
|
4072 |
};
|
4073 |
+
h.add = function(a, b) {
|
4074 |
a instanceof e || (a = new e(a));
|
4075 |
b && a.context(b);
|
4076 |
var d = a.hash();
|
4078 |
this.length = this.rows.length);
|
4079 |
return a;
|
4080 |
};
|
4081 |
+
h.load = function(a) {
|
4082 |
+
for (var b = -1, d, f, l, h, q, n, p = (l = this.locale()) && l.nplurals || 2, r = []; ++b < a.length; ) d = a[b],
|
4083 |
+
null == d.parent ? (f = d.source || d.id, l = d.target || "", h = d.context, f || h ? (q = new e(f, l),
|
4084 |
+
q._id = d._id, h && q.context(h), d.flag && q.flag(d.flag, 0), d.comment && q.comment(d.comment),
|
4085 |
d.notes && q.notes(d.notes), d.refs && q.refs(d.refs), q.format(d.format), d.message = q,
|
4086 |
this.add(q), d.prev && d.prev[0] && (q.prev(d.prev[0].source, d.prev[0].context),
|
4087 |
+
d.prev[1] && q._src.push(d.prev[1].source || ""))) : 0 === b && "object" === typeof l && (this.head = l,
|
4088 |
+
this.headcmt = d.comment)) : r.push(d);
|
4089 |
+
for (b = -1; ++b < r.length; ) try {
|
4090 |
+
d = r[b];
|
4091 |
f = d.source || d.id;
|
4092 |
q = a[d.parent] && a[d.parent].message;
|
4093 |
if (!q) throw Error("parent missing for plural " + f);
|
4094 |
+
n = d.plural;
|
4095 |
+
1 === n && q.plural(f);
|
4096 |
+
n >= p || (d.flag && q.flag(d.flag, n), q.translate(d.target || "", n), d.format && !q.format() && q.format(d.format));
|
4097 |
} catch (w) {
|
4098 |
c(w);
|
4099 |
}
|
4100 |
return this;
|
4101 |
};
|
4102 |
+
h.wrap = function(a) {
|
4103 |
this.fmtr = b(a);
|
4104 |
return this;
|
4105 |
};
|
4106 |
+
h.toString = function() {
|
4107 |
+
var a, c = this.locale(), d = [], f = [], l = this.headers(), h = !c, n = c && c.nplurals || 2, p = this.fmtr || b();
|
4108 |
+
l[c ? "PO-Revision-Date" : "POT-Creation-Date"] = this.now();
|
4109 |
+
for (a in l) f.push(a + ": " + l[a]);
|
4110 |
f = new e("", f.join("\n"));
|
4111 |
f.comment(this.headcmt || "");
|
4112 |
+
h && f.fuzzy(0, !0);
|
4113 |
d.push(f.toString());
|
4114 |
d.push("");
|
4115 |
this.rows.each(function(a, b) {
|
4116 |
+
a && (d.push(b.cat(p, h, n)), d.push(""));
|
4117 |
});
|
4118 |
return d.join("\n");
|
4119 |
};
|
4120 |
+
h = p.require("$28", "message.js").extend(e);
|
4121 |
+
h.prev = function(a, b) {
|
4122 |
this._src = [ a || "" ];
|
4123 |
this._ctx = b;
|
4124 |
};
|
4125 |
+
h.hash = function() {
|
4126 |
+
return l(this.source(), this.context());
|
4127 |
};
|
4128 |
+
h.toString = function() {
|
4129 |
return this.cat(b());
|
4130 |
};
|
4131 |
+
h.cat = function(a, b, c) {
|
4132 |
var d, e = [], f;
|
4133 |
(f = this.cmt) && e.push(a.prefix(f, "# "));
|
4134 |
(f = this.xcmt) && e.push(a.prefix(f, "#. "));
|
4145 |
e.push(a.pair("msgid_plural", this.src[1])), f = this.msg || [ "", "" ], c = c || f.length; ++d < c; ) e.push(a.pair("msgstr[" + d + "]", b ? "" : f[d] || ""));
|
4146 |
return e.join("\n");
|
4147 |
};
|
4148 |
+
h.compare = function(a, b) {
|
4149 |
var c = this.weight(), d = a.weight();
|
4150 |
if (c > d) return 1;
|
4151 |
if (c < d) return -1;
|
4157 |
}
|
4158 |
return 0;
|
4159 |
};
|
4160 |
+
h.copy = function() {
|
4161 |
var a = new e(), b, c;
|
4162 |
for (b in this) this.hasOwnProperty(b) && ((c = this[b]) && c.concat && (c = c.concat()),
|
4163 |
a[b] = c);
|
4164 |
return a;
|
4165 |
};
|
4166 |
+
h = h = null;
|
4167 |
return f;
|
4168 |
+
}({}, y, w));
|
4169 |
+
p.register("$17", function(f, d, p) {
|
4170 |
f.init = function(d, f) {
|
4171 |
function c() {
|
4172 |
+
return m || (m = h('<div id="loco-po-ref"></div>').dialog({
|
4173 |
dialogClass: "loco-modal loco-modal-wide",
|
4174 |
modal: !0,
|
4175 |
autoOpen: !1,
|
4179 |
}));
|
4180 |
}
|
4181 |
function b(a, b, d) {
|
4182 |
+
a = h("<p></p>").text(d);
|
4183 |
c().dialog("close").html("").dialog("option", "title", "Error").append(a).dialog("open");
|
4184 |
}
|
4185 |
function a(a) {
|
4186 |
var b = a && a.code;
|
4187 |
if (b) {
|
4188 |
+
for (var d = -1, e = b.length, f = h("<ol></ol>").attr("class", a.type); ++d < e; ) h("<li></li>").html(b[d]).appendTo(f);
|
4189 |
f.find("li").eq(a.line - 1).attr("class", "highlighted");
|
4190 |
c().dialog("close").html("").dialog("option", "title", a.path + ":" + a.line).append(f).dialog("open");
|
4191 |
}
|
4192 |
}
|
4193 |
function e(a) {
|
4194 |
a = a.target;
|
4195 |
+
var b = h(a).find("li.highlighted")[0], b = Math.max(0, (b && b.offsetTop || 0) - Math.floor(a.clientHeight / 2));
|
4196 |
a.scrollTop = b;
|
4197 |
}
|
4198 |
+
var m;
|
4199 |
return {
|
4200 |
+
load: function(k) {
|
4201 |
c().html('<div class="loco-loading"></div>').dialog("option", "title", "Loading..").off("dialogopen").dialog("open").on("dialogopen", e);
|
4202 |
+
k = h.extend({
|
4203 |
+
ref: k,
|
4204 |
path: f.popath
|
4205 |
}, f.project || {});
|
4206 |
+
d.ajax.post("fsReference", k, a, b);
|
4207 |
}
|
4208 |
};
|
4209 |
};
|
4210 |
return f;
|
4211 |
+
}({}, y, w));
|
4212 |
+
p.register("$30", function(f, d, h) {
|
4213 |
+
function n(d) {
|
4214 |
this.api = d;
|
4215 |
this.chars = 0;
|
4216 |
}
|
4217 |
f.create = function(d) {
|
4218 |
+
return new n(d);
|
4219 |
};
|
4220 |
+
d = n.prototype;
|
4221 |
d.init = function(d, c) {
|
4222 |
function b(a) {
|
4223 |
var b = {
|
4225 |
html: a.html,
|
4226 |
sources: []
|
4227 |
};
|
4228 |
+
B.push(b);
|
4229 |
+
return x[a.html ? 1 : 0] = b;
|
4230 |
}
|
4231 |
function a(a, d) {
|
4232 |
+
var l = a.source(null, d);
|
4233 |
+
if (l && (a.untranslated(d) || c)) {
|
4234 |
+
var u = q[l];
|
4235 |
+
if (u) u.push(a); else {
|
4236 |
+
var u = l.length, v = e.isHtml(l), v = x[v ? 1 : 0], B = v.sources;
|
4237 |
+
if (u > p) g++; else {
|
4238 |
+
if (v.length + u > n || B.length === h) v = b(v), B = v.sources;
|
4239 |
+
B.push(l);
|
4240 |
+
q[l] = [ a ];
|
4241 |
+
v.length += u;
|
4242 |
+
f += u;
|
4243 |
k += 1;
|
4244 |
}
|
4245 |
}
|
4246 |
}
|
4247 |
+
}
|
4248 |
+
var e = this.api, f = 0, k = 0, g = 0, h = 50, n = 5e3, p = e.maxChr(), q = {}, B = [], x = [];
|
4249 |
+
p && (n = Math.min(n, p));
|
4250 |
b({
|
4251 |
html: !1
|
4252 |
});
|
4257 |
a(c, 0);
|
4258 |
a(c, 1);
|
4259 |
});
|
4260 |
+
delete x;
|
4261 |
+
this.map = q;
|
4262 |
this.chars = f;
|
4263 |
this.length = k;
|
4264 |
+
this.batches = B;
|
4265 |
this.locale = d.locale();
|
4266 |
+
g && e.stderr("Strings over " + n + " characters long will be skipped");
|
4267 |
};
|
4268 |
d.abort = function() {
|
4269 |
this.state = "abort";
|
4271 |
};
|
4272 |
d.dispatch = function() {
|
4273 |
function d(a, b) {
|
4274 |
+
function e(c, d, g) {
|
4275 |
+
b !== g && (a === d || 1 < c && f.source(null, 1) === a) && (f.translate(b, c),
|
4276 |
+
m++, r++);
|
4277 |
return m;
|
4278 |
}
|
4279 |
if (!c()) return !1;
|
4280 |
if (!b) return !0;
|
4281 |
+
var f, g = n[a] || [], l = g.length, h = -1, m;
|
4282 |
+
for (B++; ++h < l; ) if (f = g[h]) m = 0, f.each(e), m && k("each", [ f ]);
|
4283 |
return !0;
|
4284 |
}
|
4285 |
function c() {
|
4286 |
+
return "abort" === g.state ? (h && (h.abort(), f()), !1) : !0;
|
4287 |
}
|
4288 |
function b() {
|
4289 |
+
var b = p.shift(), c;
|
4290 |
+
b ? (c = b.sources) && c.length ? h.batch(c, q, b.html, d).fail(a).always(e) : e() : f();
|
4291 |
}
|
4292 |
function a() {
|
4293 |
+
g.abort();
|
4294 |
f();
|
4295 |
}
|
4296 |
function e() {
|
4297 |
+
x++;
|
4298 |
+
k("prog", [ x, y ]);
|
4299 |
c() && b();
|
4300 |
}
|
4301 |
function f() {
|
4302 |
+
h = p = null;
|
4303 |
k("done");
|
4304 |
}
|
4305 |
function k(a, b) {
|
4306 |
for (var c = u[a] || [], d = c.length; 0 <= --d; ) c[d].apply(null, b);
|
4307 |
}
|
4308 |
+
var g = this, h = g.api, n = g.map, p = g.batches || [], q = g.locale, B = 0, x = 0, r = 0, w = g.length, y = p.length, u = {
|
4309 |
done: [],
|
4310 |
each: [],
|
4311 |
prog: []
|
4312 |
};
|
4313 |
+
g.state = "";
|
4314 |
b();
|
4315 |
return {
|
4316 |
done: function(a) {
|
4328 |
stat: function() {
|
4329 |
return {
|
4330 |
todo: function() {
|
4331 |
+
return Math.max(w - B, 0);
|
4332 |
},
|
4333 |
did: function() {
|
4334 |
+
return B;
|
4335 |
}
|
4336 |
};
|
4337 |
}
|
4338 |
};
|
4339 |
};
|
4340 |
return f;
|
4341 |
+
}({}, y, w));
|
4342 |
+
p.register("$41", {
|
4343 |
nn: [ "no" ]
|
4344 |
});
|
4345 |
+
p.register("$31", function(f, d, h) {
|
4346 |
+
function n() {}
|
4347 |
+
function l(c) {
|
4348 |
c.parseError = function(b) {
|
4349 |
return b && b.code && 200 !== b.code && b.message ? "Error " + b.code + ": " + b.message : "";
|
4350 |
};
|
4351 |
c.batch = function(b, a, d, f) {
|
4352 |
+
function k(c) {
|
4353 |
for (var d = b.length, e = -1; ++e < d && !1 !== f(b[e], c[e] || "", a); ) ;
|
4354 |
}
|
4355 |
d = d ? "html" : "plain";
|
4356 |
+
var g = this.getSrc(), h = this.toLang(a);
|
4357 |
return c._call({
|
4358 |
+
url: "https://translate.yandex.net/api/v1.5/tr.json/translate?format=" + d + "&lang=" + g + "-" + h,
|
4359 |
method: "POST",
|
4360 |
traditional: !0,
|
4361 |
data: {
|
4363 |
text: b
|
4364 |
}
|
4365 |
}).done(function(a, b, d) {
|
4366 |
+
a && 200 === a.code ? k(a.text || []) : (c.stderr(c.parseError(a) || c.httpError(d)),
|
4367 |
+
k([]));
|
4368 |
}).fail(function() {
|
4369 |
+
k([]);
|
4370 |
});
|
4371 |
};
|
4372 |
}
|
4373 |
f.create = function(c) {
|
4374 |
+
var b = n.prototype = new c();
|
4375 |
b.toString = function() {
|
4376 |
return "Yandex.Translate";
|
4377 |
};
|
4383 |
};
|
4384 |
b.init = function(a) {
|
4385 |
c.prototype.init.call(this, a);
|
4386 |
+
/^trnsl\./.test(this.key()) && l(this);
|
4387 |
};
|
4388 |
b.toLang = function(a) {
|
4389 |
+
return this.mapLang(a, p.require("$41", "yandex.json"));
|
4390 |
};
|
4391 |
+
return new n();
|
4392 |
};
|
4393 |
return f;
|
4394 |
+
}({}, y, w));
|
4395 |
+
p.register("$42", {
|
4396 |
zh: [ "zh", "zh-CN", "zh-TW" ],
|
4397 |
he: [ "iw" ],
|
4398 |
jv: [ "jw" ]
|
4399 |
});
|
4400 |
+
p.register("$32", function(f, d, h) {
|
4401 |
+
function n() {}
|
4402 |
f.create = function(d) {
|
4403 |
+
var c = n.prototype = new d();
|
4404 |
+
c.toString = function() {
|
4405 |
return "Google Translate";
|
4406 |
};
|
4407 |
+
c.getId = function() {
|
4408 |
return "google";
|
4409 |
};
|
4410 |
+
c.getUrl = function() {
|
4411 |
return "https://translate.google.com/";
|
4412 |
};
|
4413 |
+
c.batch = function(b, a, d, f) {
|
4414 |
+
function k(d) {
|
4415 |
+
var e = b.length, g = -1, k;
|
4416 |
+
for (c.parseError = function(a) {
|
4417 |
+
if (a.error) {
|
4418 |
+
for (var b = [], c = a.error.errors || [], d = c.length, e = -1; ++e < d; ) b.push(c[e].message || "");
|
4419 |
+
return "Error " + a.error.code + ": " + b.join(";");
|
4420 |
}
|
4421 |
return "";
|
4422 |
+
}; ++g < e && (k = d[g] || {}, !1 !== f(b[g], k.translatedText || "", a)); ) ;
|
|
|
|
|
|
|
4423 |
}
|
4424 |
+
var g = this, h = this.getSrc();
|
4425 |
+
d = d ? "html" : "text";
|
4426 |
+
var l = g.mapLang(a, p.require("$42", "google.json"));
|
4427 |
return g._call({
|
4428 |
+
url: "https://translation.googleapis.com/language/translate/v2?source=" + h + "&target=" + l + "&format=" + d,
|
4429 |
method: "POST",
|
4430 |
traditional: !0,
|
4431 |
data: {
|
4432 |
key: g.key(),
|
4433 |
+
q: b
|
4434 |
}
|
4435 |
}).done(function(a, b, c) {
|
4436 |
+
a.data ? k(a.data.translations || []) : (g.stderr(g.parseError(a) || g.httpError(c)),
|
4437 |
+
k([]));
|
4438 |
}).fail(function() {
|
4439 |
+
k([]);
|
4440 |
});
|
4441 |
};
|
4442 |
+
return new n();
|
4443 |
};
|
4444 |
return f;
|
4445 |
+
}({}, y, w));
|
4446 |
+
p.register("$43", {
|
4447 |
nn: [ "no" ],
|
4448 |
pt: [ "pt", "pt-pt" ],
|
4449 |
sr: [ "sr-Cyrl", "sr-Latn" ],
|
4455 |
zh_SG: [ "zh-Hans" ],
|
4456 |
zh_TW: [ "zh-Hant" ]
|
4457 |
});
|
4458 |
+
p.register("$33", function(f, d, h) {
|
4459 |
+
function n() {}
|
4460 |
f.create = function(d) {
|
4461 |
+
d = n.prototype = new d();
|
4462 |
d.toString = function() {
|
4463 |
return "Microsoft Translator text API";
|
4464 |
};
|
4473 |
};
|
4474 |
d.batch = function(c, b, a, d) {
|
4475 |
function f(a) {
|
4476 |
+
for (var g = -1, k; ++g < l && (k = a[g] || {}, k = k.translations || [], k = k[0] || {},
|
4477 |
+
!1 !== d(c[g], k.text || "", b)); ) ;
|
4478 |
}
|
4479 |
+
var k = this, g = [], h = k.getSrc(), l = c.length, n = -1;
|
4480 |
a = a ? "html" : "plain";
|
4481 |
+
for (var q = k.mapLang(b, p.require("$43", "ms.json")); ++n < l; ) g.push({
|
4482 |
+
text: c[n]
|
4483 |
});
|
4484 |
+
return k._call({
|
4485 |
+
url: "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=" + h + "&to=" + q + "&textType=" + a,
|
4486 |
method: "POST",
|
4487 |
+
data: JSON.stringify(g),
|
4488 |
headers: {
|
4489 |
"Content-Type": "application/json; charset=UTF-8",
|
4490 |
"Ocp-Apim-Subscription-Key": this.key(),
|
4491 |
+
"Ocp-Apim-Subscription-Region": k.param("region") || "global"
|
4492 |
}
|
4493 |
}).done(function(a, b, c) {
|
4494 |
+
a && a.length ? f(a) : (k.stderr(k.parseError(a) || k.httpError(c)), f([]));
|
4495 |
}).fail(function() {
|
4496 |
f([]);
|
4497 |
});
|
4498 |
};
|
4499 |
+
return new n();
|
4500 |
};
|
4501 |
return f;
|
4502 |
+
}({}, y, w));
|
4503 |
+
p.register("$44", {
|
4504 |
pt: [ "pt-PT", "pt-BR" ]
|
4505 |
});
|
4506 |
+
p.register("$34", function(f, d, h) {
|
4507 |
+
function n() {}
|
4508 |
f.create = function(d) {
|
4509 |
+
d = n.prototype = new d();
|
4510 |
d.toString = function() {
|
4511 |
return "DeepL Translator";
|
4512 |
};
|
4521 |
};
|
4522 |
d.batch = function(c, b, a, d) {
|
4523 |
function f(a) {
|
4524 |
+
for (var g = c.length, k = -1, h; ++k < g && (h = a[k] || {}, !1 !== d(c[k], h.text || "", b)); ) ;
|
4525 |
+
}
|
4526 |
+
var k = this;
|
4527 |
+
a = this.getSrc();
|
4528 |
+
var g = k.param("url") || "https://api.deepl.com", h = k.mapLang(b, p.require("$44", "deepl.json")), l = b.tone, n = "default";
|
4529 |
+
null == l && (l = String(b.variant || "").toLowerCase());
|
4530 |
+
"formal" === l ? n = "more" : "informal" === l && (n = "less");
|
4531 |
+
return k._call({
|
4532 |
+
url: k.fixURL(g + "/v2/translate"),
|
4533 |
method: "POST",
|
4534 |
traditional: !0,
|
4535 |
data: {
|
4536 |
+
source_lang: a.toUpperCase(),
|
4537 |
+
target_lang: h.toUpperCase(),
|
4538 |
+
formality: n,
|
4539 |
preserve_formatting: "1",
|
4540 |
+
auth_key: k.key(),
|
4541 |
text: c
|
4542 |
}
|
4543 |
}).done(function(a, b, c) {
|
4544 |
+
a.translations ? f(a.translations) : (k.stderr(k.parseError(a) || k.httpError(c)),
|
4545 |
f([]));
|
4546 |
}).fail(function() {
|
4547 |
f([]);
|
4548 |
});
|
4549 |
};
|
4550 |
+
return new n();
|
|
|
|
|
|
|
4551 |
};
|
4552 |
+
return f;
|
4553 |
+
}({}, y, w));
|
4554 |
+
p.register("$45", {
|
4555 |
+
zh: [ "zh", "zh-CN", "zh-TW" ],
|
4556 |
+
pt: [ "pt", "pt-PT", "pt-BR" ]
|
4557 |
+
});
|
4558 |
+
p.register("$35", function(f, d, h) {
|
4559 |
+
function n() {}
|
4560 |
+
f.create = function(d) {
|
4561 |
+
d = n.prototype = new d();
|
4562 |
+
d.getUrl = function() {
|
4563 |
+
return "https://lecto.ai/?ref=loco";
|
4564 |
+
};
|
4565 |
+
d.parseError = function(c) {
|
4566 |
+
var b = c.details || {}, a = b.message, b = b.texts;
|
4567 |
+
return a ? (b && b !== a && (a += "; " + b), a = a.replace(/https?:\/\/(?:[a-z]+\.)?lecto.ai[-\w\/?&=%.+~]*/, function(a) {
|
4568 |
+
a += -1 === a.indexOf("?") ? "?" : "&";
|
4569 |
+
return a + "ref=loco";
|
4570 |
+
}), "Error " + (c.status || "0") + ": " + a) : "";
|
4571 |
+
};
|
4572 |
+
d.maxChr = function() {
|
4573 |
+
return 1e3;
|
4574 |
+
};
|
4575 |
+
d.batch = function(c, b, a, d) {
|
4576 |
+
function f(a) {
|
4577 |
+
for (var g = c.length, k = -1, h = (a[0] || {
|
4578 |
+
translated: []
|
4579 |
+
}).translated || []; ++k < g && (a = h[k] || "", !1 !== d(c[k], a, b)); ) ;
|
4580 |
+
}
|
4581 |
+
var k = this;
|
4582 |
+
a = this.getSrc();
|
4583 |
+
var g = k.param("url") || "https://api.lecto.ai", h = k.mapLang(b, p.require("$45", "lecto.json"));
|
4584 |
+
return k._call({
|
4585 |
+
url: k.fixURL(g + "/v1/translate/text"),
|
4586 |
+
method: "POST",
|
4587 |
+
data: JSON.stringify({
|
4588 |
+
to: [ h ],
|
4589 |
+
from: a,
|
4590 |
+
texts: c
|
4591 |
+
}),
|
4592 |
+
headers: {
|
4593 |
+
"Content-Type": "application/json; charset=UTF-8",
|
4594 |
+
"X-API-Key": k.key(),
|
4595 |
+
Accept: "application/json"
|
4596 |
+
}
|
4597 |
+
}).done(function(a, b, c) {
|
4598 |
+
a ? f(a.translations || []) : (k.stderr(k.parseError(a) || k.httpError(c)), f([]));
|
4599 |
+
}).fail(function() {
|
4600 |
+
f([]);
|
4601 |
+
});
|
4602 |
+
};
|
4603 |
+
return new n();
|
4604 |
};
|
4605 |
return f;
|
4606 |
+
}({}, y, w));
|
4607 |
+
p.register("$18", function(f, d, w) {
|
4608 |
+
function n() {
|
4609 |
this.inf = {};
|
4610 |
}
|
4611 |
+
function l() {
|
4612 |
var a = w.createElement("p"), b = /&(#\d+|#x[0-9a-f]|[a-z]+);/i, c = /<[a-z]+\s/i, d, f;
|
4613 |
return {
|
4614 |
+
sniff: function(h) {
|
4615 |
+
if (h === d) return f;
|
4616 |
+
d = h;
|
4617 |
+
if (b.test(h) || c.test(h)) if (a.innerHTML = h, a.textContent !== h) return f = !0;
|
4618 |
return f = !1;
|
4619 |
}
|
4620 |
};
|
4621 |
}
|
4622 |
+
var c = n.prototype;
|
4623 |
c.init = function(a) {
|
4624 |
this.inf = a || {};
|
4625 |
};
|
4638 |
c.toString = function() {
|
4639 |
return this.param("name") || this.getId();
|
4640 |
};
|
4641 |
+
c.getSrc = function() {
|
4642 |
+
return this.param("src") || "en";
|
4643 |
+
};
|
4644 |
c.stderr = function(a) {
|
4645 |
var b = (d.loco || {}).notices || d.console;
|
4646 |
b && b.error && b.error(String(this) + ": " + String(a));
|
4652 |
return "";
|
4653 |
};
|
4654 |
c.mapLang = function(a, b) {
|
4655 |
+
var c = String(a).replace("-", "_"), d = a.lang, f = b[c] || b[d] || [], h = f.length;
|
4656 |
+
if (0 === h) return d;
|
4657 |
+
if (1 < h) for (var c = c.toLowerCase(), d = -1, l; ++d < h; ) if (l = f[d], l.toLowerCase().replace("-", "_") === c) return l;
|
4658 |
return f[0];
|
4659 |
};
|
4660 |
c.toLang = function(a) {
|
4661 |
return String(a);
|
4662 |
};
|
4663 |
+
c.maxChr = function() {
|
4664 |
+
return 0;
|
4665 |
+
};
|
4666 |
+
c.fixURL = function(a) {
|
4667 |
+
a = a.split("://", 2);
|
4668 |
+
1 === a.length && a.unshift("https");
|
4669 |
+
return a[0] + "://" + a[1].replace(/\/{2,}/g, "/");
|
4670 |
+
};
|
4671 |
c.translate = function(a, b, c) {
|
4672 |
return this.batch([ a ], b, this.isHtml(a), c);
|
4673 |
};
|
4678 |
a.dataType = "json";
|
4679 |
a.error = function(a, c, d) {
|
4680 |
try {
|
4681 |
+
var f = a.responseText, h = f && p.require("$5", "json.js").parse(f);
|
4682 |
+
d = h && b.parseError(h) || d;
|
4683 |
+
} catch (l) {}
|
4684 |
b.stderr(d || b.httpError(a));
|
4685 |
};
|
4686 |
+
return b.abortable(h.ajax(a));
|
4687 |
};
|
4688 |
c.abortable = function(a) {
|
4689 |
var b = this;
|
4697 |
a && a.abort();
|
4698 |
};
|
4699 |
c.isHtml = function(a) {
|
4700 |
+
return (b || (b = l())).sniff(a);
|
4701 |
};
|
4702 |
c.createJob = function() {
|
4703 |
+
return p.require("$30", "job.js").create(this);
|
4704 |
};
|
4705 |
c.batch = function(a, b, c, f) {
|
4706 |
function g(c) {
|
4707 |
+
for (var d = a.length, g = -1; ++g < d && !1 !== f(a[g], c[g], b); ) ;
|
4708 |
}
|
4709 |
+
var l = d.loco.ajax;
|
4710 |
c = {
|
4711 |
hook: this.getId(),
|
4712 |
type: c ? "html" : "text",
|
4713 |
locale: this.toLang(b),
|
4714 |
+
source: this.getSrc(),
|
4715 |
sources: a
|
4716 |
};
|
4717 |
+
var n = h.Deferred();
|
4718 |
+
this.abortable(l.post("apis", c, function(a) {
|
4719 |
g(a && a.targets || []);
|
4720 |
n.resolve();
|
4721 |
}, function() {
|
4727 |
f.create = function(a) {
|
4728 |
var b;
|
4729 |
b = a.id;
|
4730 |
+
b = "yandex" === b ? p.require("$31", "yandex.js").create(n) : "google" === b ? p.require("$32", "google.js").create(n) : "microsoft" === b ? p.require("$33", "ms.js").create(n) : "deepl" === b ? p.require("$34", "deepl.js").create(n) : "lecto" === b ? p.require("$35", "lecto.js").create(n) : new n();
|
4731 |
b.init(a);
|
4732 |
return b;
|
4733 |
};
|
4734 |
f.suggest = function(a, b, c, d) {
|
4735 |
+
var f, h, l = a.length;
|
4736 |
+
for (f = 0; f < l; f++) h = a[f], h.translate(b, c, d);
|
4737 |
};
|
4738 |
var b;
|
4739 |
return f;
|
4740 |
+
}({}, y, w));
|
4741 |
+
p.register("$19", function(f, d, p) {
|
4742 |
f.init = function(f) {
|
4743 |
+
function l() {
|
4744 |
+
H || (I.on("click", g), H = h('<div id="loco-fs-creds"></div>').dialog({
|
4745 |
dialogClass: "request-filesystem-credentials-dialog loco-modal",
|
4746 |
minWidth: 580,
|
4747 |
modal: !0,
|
4748 |
autoOpen: !1,
|
4749 |
closeOnEscape: !0
|
4750 |
}).on("change", 'input[name="connection_type"]', function() {
|
4751 |
+
this.checked && h("#ssh-keys").toggleClass("hidden", "ssh" !== h(this).val());
|
4752 |
}));
|
4753 |
return H;
|
4754 |
}
|
4755 |
function c() {
|
4756 |
+
R && (b(h(x)), R = !1);
|
4757 |
+
if (E && J) {
|
4758 |
+
var a = J, c = h(Q);
|
4759 |
c.find("span.loco-msg").text(a);
|
4760 |
K || (c.removeClass("jshide").hide().fadeIn(500), K = !0);
|
4761 |
+
} else K && (b(h(Q)), K = !1);
|
4762 |
}
|
4763 |
function b(a) {
|
4764 |
a.slideUp(250).fadeOut(250, function() {
|
4765 |
+
h(this).addClass("jshide");
|
4766 |
});
|
4767 |
}
|
4768 |
function a() {
|
4769 |
+
if (E) return H && H.dialog("close"), c(), h(f).find('button[type="submit"]').attr("disabled", !1),
|
4770 |
+
h(d).triggerHandler("resize"), y && y(!0), !0;
|
4771 |
+
v && H ? (R || (h(x).removeClass("jshide").hide().fadeIn(500), R = !0), K && (b(h(Q)),
|
4772 |
K = !1)) : c();
|
4773 |
+
h(f).find('input[type="submit"]').attr("disabled", !0);
|
4774 |
+
y && y(!1);
|
4775 |
return !1;
|
4776 |
}
|
4777 |
function e(a) {
|
4778 |
var b, c, d = q || {};
|
4779 |
+
for (b in d) d.hasOwnProperty(b) && (c = d[b], a[b] ? a[b].value = c : h('<input type="hidden" />').attr("name", b).appendTo(a).val(c));
|
4780 |
}
|
4781 |
+
function m(a) {
|
4782 |
a.preventDefault();
|
4783 |
+
a = h(a.target).serializeArray();
|
4784 |
+
s(a);
|
4785 |
+
C = !0;
|
4786 |
return !1;
|
4787 |
}
|
4788 |
+
function k(a) {
|
4789 |
a.preventDefault();
|
4790 |
H.dialog("close");
|
4791 |
return !1;
|
4792 |
}
|
4793 |
+
function g(a) {
|
4794 |
a.preventDefault();
|
4795 |
H.dialog("open").find('input[name="connection_type"]').change();
|
4796 |
return !1;
|
4797 |
}
|
4798 |
+
function z(b) {
|
4799 |
+
E = b.authed;
|
4800 |
+
r = b.method;
|
4801 |
+
h(x).find("span.loco-msg").text(b.message || "Something went wrong.");
|
4802 |
J = b.warning || "";
|
4803 |
b.notice && u.notices.info(b.notice);
|
4804 |
+
if (E) "direct" !== r && (q = b.creds, e(f), C && b.success && u.notices.success(b.success)),
|
4805 |
a(); else if (b.reason) u.notices.info(b.reason); else if (b = b.prompt) {
|
4806 |
+
var c = l();
|
4807 |
+
c.html(b).find("form").on("submit", m);
|
4808 |
c.dialog("option", "title", c.find("h2").remove().text());
|
4809 |
+
c.find("button.cancel-button").show().on("click", k);
|
4810 |
c.find('input[type="submit"]').addClass("button-primary");
|
4811 |
a();
|
4812 |
+
h(d).triggerHandler("resize");
|
4813 |
} else u.notices.error("Server didn't return credentials, nor a prompt for credentials");
|
4814 |
}
|
4815 |
+
function w() {
|
4816 |
a();
|
4817 |
}
|
4818 |
+
function s(a) {
|
4819 |
+
C = !1;
|
4820 |
+
u.ajax.setNonce("fsConnect", N).post("fsConnect", a, z, w);
|
4821 |
return a;
|
4822 |
}
|
4823 |
+
var q, y, x = f, r = null, C = !1, E = !1, u = d.loco, v = f.path.value, F = f.auth.value, N = f["loco-nonce"].value, I = h(x).find("button.button-primary"), Q = p.getElementById(x.id + "-warn"), R = !1, K = !1, J = "", H;
|
4824 |
+
u.notices.convert(Q).stick();
|
4825 |
+
f.connection_type ? (q = {}, q.connection_type = f.connection_type.value, E = !0) : v && F && s({
|
4826 |
+
path: v,
|
4827 |
auth: F
|
4828 |
});
|
4829 |
a();
|
4842 |
return this;
|
4843 |
},
|
4844 |
connect: function() {
|
4845 |
+
v = f.path.value;
|
4846 |
F = f.auth.value;
|
4847 |
+
s(h(f).serializeArray());
|
4848 |
return this;
|
4849 |
},
|
4850 |
listen: function(a) {
|
4851 |
+
y = a;
|
4852 |
+
E && a(!0);
|
4853 |
return this;
|
4854 |
},
|
4855 |
authed: function() {
|
4856 |
+
return E;
|
4857 |
}
|
4858 |
};
|
4859 |
};
|
4860 |
return f;
|
4861 |
+
}({}, y, w));
|
4862 |
+
p.register("$20", function(f, d, w) {
|
4863 |
+
function n(d, f, h, g) {
|
4864 |
+
f = "n" === h ? c(f) : b(f);
|
4865 |
+
g && (f = a(f));
|
4866 |
+
return l([].sort, [ f ])(d);
|
4867 |
+
}
|
4868 |
+
function l(a, b) {
|
4869 |
return function(c) {
|
4870 |
a.apply(c, b);
|
4871 |
return c;
|
4890 |
f.init = function(a) {
|
4891 |
function b(a) {
|
4892 |
var c = -1, d = a.length;
|
4893 |
+
for (h("tr", x).remove(); ++c < d; ) x.appendChild(a[c].$);
|
4894 |
}
|
4895 |
function c(a) {
|
4896 |
+
s = a ? y.find(a, d) : d.slice(0);
|
4897 |
+
w && (a = f[w], s = n(s, w, a.type, a.desc));
|
4898 |
+
b(s);
|
4899 |
}
|
4900 |
+
var d = [], f = [], l = 0, s, q, w, x = a.getElementsByTagName("tbody")[0], r = a.getElementsByTagName("thead")[0], y = p.require("$10", "fulltext.js").init();
|
4901 |
+
r && x && (h("th", r).each(function(a, c) {
|
4902 |
var e = c.getAttribute("data-sort-type");
|
4903 |
+
e && (a = l, h(c).addClass("loco-sort").on("click", function(c) {
|
4904 |
c.preventDefault();
|
4905 |
c = a;
|
4906 |
+
var e = f[c], k = e.type, l = !(e.desc = !e.desc);
|
4907 |
+
s = n(s || d.slice(0), c, k, l);
|
4908 |
+
b(s);
|
4909 |
q && q.removeClass("loco-desc loco-asc");
|
4910 |
+
q = h(e.$).addClass(l ? "loco-desc" : "loco-asc").removeClass(l ? "loco-asc" : "loco-desc");
|
4911 |
w = c;
|
4912 |
return !1;
|
4913 |
+
}), f[l] = {
|
4914 |
$: c,
|
4915 |
type: e
|
4916 |
});
|
4917 |
+
c.hasAttribute("colspan") ? l += Number(c.getAttribute("colspan")) : l++;
|
4918 |
+
}), h("tr", x).each(function(a, b) {
|
4919 |
+
var c, e, h, k = [], l = {
|
4920 |
_: a,
|
4921 |
$: b
|
4922 |
}, m = b.getElementsByTagName("td");
|
4923 |
for (e in f) {
|
4924 |
c = m[e];
|
4925 |
+
(h = c.textContent.replace(/(^\s+|\s+$)/g, "")) && k.push(h);
|
4926 |
+
c.hasAttribute("data-sort-value") && (h = c.getAttribute("data-sort-value"));
|
4927 |
switch (f[e].type) {
|
4928 |
case "n":
|
4929 |
+
h = Number(h);
|
4930 |
}
|
4931 |
+
l[e] = h;
|
4932 |
}
|
4933 |
+
d[a] = l;
|
4934 |
+
y.index(a, k);
|
4935 |
+
}), a = h('form.loco-filter input[type="text"]', a.parentNode), a.length && (a = a[0],
|
4936 |
+
r = h(a.form), 1 < d.length ? p.require("$11", "LocoTextListener.js").listen(a, c) : r.hide(),
|
4937 |
+
r.on("submit", function(a) {
|
4938 |
a.preventDefault();
|
4939 |
return !1;
|
4940 |
})));
|
4941 |
};
|
4942 |
return f;
|
4943 |
+
}({}, y, w));
|
4944 |
+
var C = y.loco || {}, I = C.conf || {
|
4945 |
$v: [ 0, 0 ]
|
4946 |
};
|
4947 |
+
y = p.require("$1", "t.js").init();
|
4948 |
+
w = I.wplang;
|
4949 |
+
C.version = function(f) {
|
4950 |
return I.$v[f || 0];
|
4951 |
};
|
4952 |
+
p.require("$2", "html.js");
|
4953 |
+
p.require("$3", "number.js");
|
4954 |
+
p.require("$4", "array.js");
|
4955 |
+
p.require("$5", "json.js");
|
4956 |
+
C.l10n = y;
|
4957 |
+
y.load(I.wpl10n);
|
4958 |
+
w && y.pluraleq(w.pluraleq);
|
4959 |
+
C.string = p.require("$6", "string.js");
|
4960 |
+
C.notices = p.require("$7", "notices.js").init(y);
|
4961 |
+
C.ajax = p.require("$8", "ajax.js").init(I).localise(y);
|
4962 |
+
C.locale = p.require("$9", "wplocale.js");
|
4963 |
+
C.fulltext = p.require("$10", "fulltext.js");
|
4964 |
+
C.watchtext = p.require("$11", "LocoTextListener.js").listen;
|
4965 |
+
C.tooltip = p.require("$12", "tooltip.js");
|
4966 |
+
C.po = {
|
4967 |
+
ed: p.require("$13", "poedit.js"),
|
4968 |
+
kbd: p.require("$14", "hotkeys.js"),
|
4969 |
+
init: p.require("$15", "po.js").create,
|
4970 |
+
ace: p.require("$16", "ace.js").strf("php"),
|
4971 |
+
ref: p.require("$17", "refs.js")
|
4972 |
+
};
|
4973 |
+
C.apis = p.require("$18", "apis.js");
|
4974 |
+
C.fs = p.require("$19", "fsconn.js");
|
4975 |
+
h("#loco-admin.wrap table.wp-list-table").each(function(f, d) {
|
4976 |
+
p.require("$20", "tables.js").init(d);
|
4977 |
});
|
4978 |
+
C.validate = function(f) {
|
4979 |
+
return "2.5.6" !== (/^\d+\.\d+\.\d+/.exec(f && f[0] || "") && RegExp.lastMatch) ? (C.notices.warn("admin.js is the wrong version (2.5.6). Please empty all relevant caches and reload this page."),
|
4980 |
!1) : !0;
|
4981 |
};
|
4982 |
})(window, document, window.jQuery);
|
pub/js/min/editor.js
CHANGED
@@ -1,25 +1,27 @@
|
|
1 |
-
!function(
|
2 |
-
var C =
|
3 |
if (C && i && u) {
|
4 |
-
var D, r, n, z, h, a, d = !!i.WP_DEBUG, l = C.po.ref && C.po.ref.init(C, i), s = null, c = null, o = i.multipart, t = C.l10n, m = C.string.sprintf, e = i.wpnum && i.wpnum.thousands_sep || ",", T = i.locale, b = C.po.init(T).wrap(i.powrap), p = !T, f =
|
|
|
|
|
5 |
my: "top",
|
6 |
at: "top",
|
7 |
of: "#loco-content"
|
8 |
};
|
9 |
-
!o ||
|
10 |
l || C.notices.warn("admin.js is out of date. Please empty your browser cache and reload the page.");
|
11 |
-
var
|
12 |
var n = function(n, t) {
|
13 |
for (var o = n.offsetTop || 0; (n = n.offsetParent) && n !== t; ) o += n.offsetTop || 0;
|
14 |
return o;
|
15 |
-
}(u, document.body), t =
|
16 |
-
|
17 |
});
|
18 |
-
|
19 |
-
D.dirty &&
|
20 |
-
} :
|
21 |
-
var
|
22 |
-
save:
|
23 |
function o() {
|
24 |
t.disabled = !0;
|
25 |
}
|
@@ -27,19 +29,19 @@ function n() {
|
|
27 |
t.disabled = !1;
|
28 |
}
|
29 |
function e() {
|
30 |
-
n(),
|
31 |
}
|
32 |
return t, D.on("poUnsaved", function() {
|
33 |
-
n(),
|
34 |
}).on("poSave", function() {
|
35 |
-
o(),
|
36 |
-
}), c =
|
37 |
-
path:
|
38 |
-
}, i.project || {}),
|
39 |
-
return n.preventDefault(), o(),
|
40 |
}), !0;
|
41 |
},
|
42 |
-
sync:
|
43 |
var n = i.project;
|
44 |
if (n) {
|
45 |
function o() {
|
@@ -49,7 +51,7 @@ function e() {
|
|
49 |
t.disabled = !1;
|
50 |
}
|
51 |
function a() {
|
52 |
-
e(),
|
53 |
}
|
54 |
D.on("poUnsaved", function() {
|
55 |
o();
|
@@ -59,11 +61,11 @@ e();
|
|
59 |
bundle: n.bundle,
|
60 |
domain: n.domain,
|
61 |
type: p ? "pot" : "po",
|
62 |
-
path:
|
63 |
-
sync:
|
64 |
-
mode:
|
65 |
-
},
|
66 |
-
return n.preventDefault(), o(),
|
67 |
}), e();
|
68 |
}
|
69 |
return !0;
|
@@ -73,12 +75,12 @@ return D.on("poUnsaved", function() {
|
|
73 |
n.disabled = !1;
|
74 |
}).on("poSave", function() {
|
75 |
n.disabled = !0;
|
76 |
-
}),
|
77 |
return n.preventDefault(), location.reload(), !1;
|
78 |
}), !0;
|
79 |
},
|
80 |
invs: function(n) {
|
81 |
-
var o =
|
82 |
return n.disabled = !1, D.on("poInvs", function(n, t) {
|
83 |
o[t ? "addClass" : "removeClass"]("inverted");
|
84 |
}), o.on("click", function(n) {
|
@@ -86,29 +88,29 @@ return n.preventDefault(), D.setInvs(!D.getInvs()), !1;
|
|
86 |
}), C.tooltip.init(o), !0;
|
87 |
},
|
88 |
code: function(n) {
|
89 |
-
var o =
|
90 |
return n.disabled = !1, o.on("click", function(n) {
|
91 |
n.preventDefault();
|
92 |
var t = !D.getMono();
|
93 |
return o[t ? "addClass" : "removeClass"]("inverted"), D.setMono(t), !1;
|
94 |
}), C.tooltip.init(o), !0;
|
95 |
},
|
96 |
-
source:
|
97 |
-
binary: p ? null :
|
98 |
};
|
99 |
-
p ? (
|
100 |
-
return n.disabled = !1,
|
101 |
n.preventDefault();
|
102 |
var t, o = 1, e = /(\d+)$/;
|
103 |
for (t = "New message"; b.get(t); ) o = e.exec(t) ? Math.max(o, Number(RegExp.$1)) : o,
|
104 |
t = "New message " + ++o;
|
105 |
return D.add(t), !1;
|
106 |
}), !0;
|
107 |
-
},
|
108 |
-
return n.disabled = !1,
|
109 |
return n.preventDefault(), D.del(), !1;
|
110 |
}), !0;
|
111 |
-
}) :
|
112 |
function t() {
|
113 |
n.disabled = !1;
|
114 |
}
|
@@ -116,13 +118,13 @@ return D.on("poUnsaved", function() {
|
|
116 |
n.disabled = !0;
|
117 |
}).on("poSave poAuto", function() {
|
118 |
t();
|
119 |
-
}),
|
120 |
-
},
|
121 |
-
var o = t.getAttribute("data-loco"), e =
|
122 |
-
e && e(t, o) ||
|
123 |
-
}),
|
124 |
function e(n) {
|
125 |
-
|
126 |
}
|
127 |
D.searchable(C.fulltext.init()), t.disabled = !1;
|
128 |
var a = t.value = "", i = C.watchtext(t, function(n) {
|
@@ -134,61 +136,61 @@ a = i.val(), i.val(t || ""), e(o);
|
|
134 |
a && D.filter(a);
|
135 |
});
|
136 |
}(document.getElementById("loco-search")), D.on("poUnsaved", function() {
|
137 |
-
|
138 |
}).on("poSave", function() {
|
139 |
-
|
140 |
-
}).on("poHint",
|
141 |
var o, e, a = (e = "CODE", (o = t).tagName === e ? o : o.getElementsByTagName(e)[0]);
|
142 |
return !a || !l || (l.load(a.textContent), n.preventDefault(), !1);
|
143 |
-
}), b.load(i.podata), D.load(b), (T = D.targetLocale) ? T.isRTL() &&
|
144 |
-
|
145 |
}
|
146 |
-
function
|
147 |
return C.l10n._(n);
|
148 |
}
|
149 |
-
function
|
150 |
return C.l10n.n(n, t, o);
|
151 |
}
|
152 |
-
function
|
153 |
return n.format(0, ".", e);
|
154 |
}
|
155 |
-
function
|
156 |
C.ajax.post("sync", s, function(n) {
|
157 |
var t = [], o = n.pot, e = n.po, a = n.done || {
|
158 |
add: [],
|
159 |
del: [],
|
160 |
fuz: []
|
161 |
}, i = a.add.length, r = a.del.length, l = a.fuz.length, s = a.trn || 0;
|
162 |
-
b.clear().load(e), D.load(b), i || r || l || s ? (o ? t.push(m(
|
163 |
-
i && t.push(m(
|
164 |
-
l && t.push(m(
|
165 |
-
s && t.push(m(
|
166 |
-
|
167 |
var o = -1, e = t.add.length;
|
168 |
for (;++o < e; ) n.log(" + " + String(t.add[o]));
|
169 |
for (e = t.del.length, o = 0; o < e; o++) n.log(" - " + String(t.del[o]));
|
170 |
for (e = t.fuz.length, o = 0; o < e; o++) n.log(" ~ " + String(t.fuz[o]));
|
171 |
-
}(console, a)) : o ? t.push(m(
|
172 |
-
C.notices.success(t.join(". ")),
|
173 |
}, c);
|
174 |
}
|
175 |
-
function
|
176 |
return n = n || function() {
|
177 |
-
for (var n, t = -1, o = [], e = r, a = e.length; ++t < a; ) try {
|
178 |
-
n = e[t], o.push(C.apis.create(n));
|
179 |
} catch (n) {
|
180 |
C.notices.error(String(n));
|
181 |
}
|
182 |
return o;
|
183 |
}();
|
184 |
}
|
185 |
-
function
|
186 |
var o;
|
187 |
function e() {
|
188 |
return new Date().getTime();
|
189 |
}
|
190 |
-
p ||
|
191 |
-
a = null, h && h.remove(), h = null, z && z.remove(), r = z = null, o =
|
192 |
dialogClass: "loco-modal loco-modal-no-close",
|
193 |
appendTo: "#loco-admin.wrap",
|
194 |
title: "Loading..",
|
@@ -197,17 +199,17 @@ autoOpen: !0,
|
|
197 |
closeOnEscape: !1,
|
198 |
resizable: !1,
|
199 |
draggable: !1,
|
200 |
-
position:
|
201 |
height: 200
|
202 |
}), C.ajax.get("apis", {
|
203 |
locale: String(T)
|
204 |
}, function(n) {
|
205 |
-
|
206 |
o.remove(), t(r);
|
207 |
-
})) : (
|
208 |
}
|
209 |
-
function
|
210 |
-
var o =
|
211 |
return o.attr("id", n), o.dialog({
|
212 |
dialogClass: "loco-modal",
|
213 |
appendTo: "#loco-admin.wrap",
|
@@ -217,11 +219,11 @@ autoOpen: !1,
|
|
217 |
closeOnEscape: !0,
|
218 |
resizable: !1,
|
219 |
draggable: !1,
|
220 |
-
position:
|
221 |
}), o;
|
222 |
}
|
223 |
-
function
|
224 |
-
|
225 |
n.length ? function() {
|
226 |
var n = D.current(), t = D.getTargetOffset(), o = n && n.source(null, t), p = 'lang="' + String(T) + '" dir="' + (T.isRTL() ? "RTL" : "LTR") + '"', f = 99;
|
227 |
if (!o) return;
|
@@ -231,41 +233,41 @@ n.stopPropagation(), o.click(), !1));
|
|
231 |
var t, o;
|
232 |
}
|
233 |
function a(n, t, o, e) {
|
234 |
-
var a = e.getId(), i = w[a], r = String(i + 1), l = e.getUrl(), s =
|
235 |
return function(n) {
|
236 |
n.preventDefault(), n.stopPropagation(), g();
|
237 |
var t = D.current(), o = D.getTargetOffset();
|
238 |
t && t.source(null, o) === e ? (t.translate(a, o), D.focus().reloadMessage(t)) : C.notices.warn("Source changed since suggestion");
|
239 |
};
|
240 |
}(n, t));
|
241 |
-
d.attr("accesskey", r), 1 < h.length && (s += " (" + r + ")"), d.text(s), u && u.replaceWith(
|
242 |
-
++y === m && (v && v.dialog("option", "title",
|
243 |
f += y), 0 === i && d.focus();
|
244 |
}
|
245 |
function g(n) {
|
246 |
-
v && null == n && v.dialog("close"), b = v = null, S
|
247 |
}
|
248 |
function i(e) {
|
249 |
return function(n, t, o) {
|
250 |
a(n, u[e.getId()] = t, o, e);
|
251 |
};
|
252 |
}
|
253 |
-
var v = (z = z ||
|
254 |
-
r &&
|
255 |
n.preventDefault(), g();
|
256 |
})).appendTo(v);
|
257 |
-
var l, s, h =
|
258 |
-
for (;++c < m; ) l = h[c], v.append((d = l, void 0, x =
|
259 |
b[d.getId()] = x)), s = l.getId(), w[s] = c, u[s] ? a(o, u[s], T, l) : l.translate(o, T, i(l));
|
260 |
var d, x;
|
261 |
-
S
|
262 |
-
}() :
|
263 |
});
|
264 |
}
|
265 |
-
function
|
266 |
-
return n.preventDefault(),
|
267 |
n.length ? function() {
|
268 |
-
var e, a, i, r = 0, t = !1, l = h.dialog("open"), n = l.find("form"), s = n.find("button.button-primary"), o =
|
269 |
function c() {
|
270 |
s[0].disabled = !0;
|
271 |
}
|
@@ -277,10 +279,10 @@ o.text(n);
|
|
277 |
}
|
278 |
function p(n) {
|
279 |
var t = function(n) {
|
280 |
-
for (var t, o =
|
281 |
C.notices.error("No " + n + " client");
|
282 |
-
}(
|
283 |
-
d("Calculating...."), (e = t.createJob()).init(b, o), a = t.toString(), d(m(
|
284 |
e.length ? s[0].disabled = !1 : c(), i = null;
|
285 |
}
|
286 |
function f(n) {
|
@@ -289,18 +291,18 @@ D.unsave(n, 0), r++);
|
|
289 |
}
|
290 |
function g(n, t) {
|
291 |
var o = t ? 100 * n / t : 0;
|
292 |
-
d(m(
|
293 |
}
|
294 |
function v() {
|
295 |
if (u(), e && i) {
|
296 |
var n = i.todo();
|
297 |
-
n && C.notices.warn(m(
|
298 |
var t = [], o = i.did();
|
299 |
-
o && t.push(m(
|
300 |
-
r ? t.push(m(
|
301 |
C.notices.success(t.join(". ")).slow(), i = e = null;
|
302 |
}
|
303 |
-
r && (
|
304 |
D.fire("poAuto");
|
305 |
}
|
306 |
u(), c(), C.notices.clear(), n.off("submit change"), p(n[0]), n.on("change", function(n) {
|
@@ -312,43 +314,43 @@ i = e.dispatch().done(v).each(f).prog(g).stat();
|
|
312 |
}), l.off("dialogclose").on("dialogclose", function() {
|
313 |
e.abort(), l = null, v();
|
314 |
});
|
315 |
-
}() :
|
316 |
}), !1;
|
317 |
}
|
318 |
-
function
|
319 |
a ? a.dialog("open") : C.notices.error("Logic error. Unconfigured API modal missing");
|
320 |
}
|
321 |
-
function
|
322 |
-
var n =
|
323 |
locale: String(b.locale() || "")
|
324 |
}, c || {});
|
325 |
-
|
326 |
var t, o = new FormData();
|
327 |
for (t in n) n.hasOwnProperty(t) && o.append(t, n[t]);
|
328 |
return o;
|
329 |
}(n)).append("po", new Blob([ String(b) ], {
|
330 |
type: "application/x-gettext"
|
331 |
}), String(n.path).split("/").pop() || "untitled.po") : n.data = String(b), C.ajax.post("save", n, function(n) {
|
332 |
-
t && t(), D.save(!0),
|
333 |
}, t);
|
334 |
}
|
335 |
-
function
|
336 |
-
return
|
337 |
}
|
338 |
-
function
|
339 |
-
return o.disabled = !1,
|
340 |
-
var n = o.form, t =
|
341 |
return "binary" === e && (t = t.replace(/\.po$/, ".mo")), n.path.value = t, n.source.value = b.toString(),
|
342 |
!0;
|
343 |
}), !0;
|
344 |
}
|
345 |
-
function
|
346 |
return n.preventDefault(), !1;
|
347 |
}
|
348 |
-
function
|
349 |
-
var n = D.stats(), t = n.t, o = n.f, e = n.u, a = m(
|
350 |
-
T && (a = m(
|
351 |
-
e && i.push(m(
|
352 |
-
|
353 |
}
|
354 |
}(window, window.jQuery);
|
1 |
+
!function(S, k) {
|
2 |
+
var C = S.loco, i = C && C.conf, u = document.getElementById("loco-editor-inner");
|
3 |
if (C && i && u) {
|
4 |
+
var D, r, n, z, h, a, d = !!i.WP_DEBUG, l = C.po.ref && C.po.ref.init(C, i), s = null, c = null, o = i.multipart, t = C.l10n, m = C.string.sprintf, e = i.wpnum && i.wpnum.thousands_sep || ",", T = i.locale, b = C.po.init(T).wrap(i.powrap), p = !T, f = C.locale.clone(i.source || {
|
5 |
+
lang: "en"
|
6 |
+
}), g = document.getElementById("loco-actions"), v = i.popath, y = i.potpath, w = i.syncmode, x = document.getElementById("loco-fs"), I = x && C.fs.init(x), j = i.readonly, M = !j, E = {}, L = 0, U = {
|
7 |
my: "top",
|
8 |
at: "top",
|
9 |
of: "#loco-content"
|
10 |
};
|
11 |
+
!o || S.FormData && S.Blob || (o = !1, C.notices.warn("Your browser doesn't support Ajax file uploads. Falling back to standard postdata")),
|
12 |
l || C.notices.warn("admin.js is out of date. Please empty your browser cache and reload the page.");
|
13 |
+
var P, q, B = (q = parseInt(k(u).css("min-height") || 0), function() {
|
14 |
var n = function(n, t) {
|
15 |
for (var o = n.offsetTop || 0; (n = n.offsetParent) && n !== t; ) o += n.offsetTop || 0;
|
16 |
return o;
|
17 |
+
}(u, document.body), t = S.innerHeight, o = Math.max(q, t - n - 20);
|
18 |
+
P !== o && (u.style.height = String(o) + "px", P = o);
|
19 |
});
|
20 |
+
B(), k(S).resize(B), u.innerHTML = "", D = C.po.ed.init(u).localise(t), C.po.kbd.init(D).add("save", M ? function() {
|
21 |
+
D.dirty && J();
|
22 |
+
} : V).add("hint", T && M && W || V).enable("copy", "clear", "enter", "next", "prev", "fuzzy", "save", "invis", "hint");
|
23 |
+
var N = {
|
24 |
+
save: M && function(t) {
|
25 |
function o() {
|
26 |
t.disabled = !0;
|
27 |
}
|
29 |
t.disabled = !1;
|
30 |
}
|
31 |
function e() {
|
32 |
+
n(), k(t).removeClass("loco-loading");
|
33 |
}
|
34 |
return t, D.on("poUnsaved", function() {
|
35 |
+
n(), k(t).addClass("button-primary");
|
36 |
}).on("poSave", function() {
|
37 |
+
o(), k(t).removeClass("button-primary");
|
38 |
+
}), c = k.extend({
|
39 |
+
path: v
|
40 |
+
}, i.project || {}), k(t).on("click", function(n) {
|
41 |
+
return n.preventDefault(), o(), k(t).addClass("loco-loading"), J(e), !1;
|
42 |
}), !0;
|
43 |
},
|
44 |
+
sync: M && function(t) {
|
45 |
var n = i.project;
|
46 |
if (n) {
|
47 |
function o() {
|
51 |
t.disabled = !1;
|
52 |
}
|
53 |
function a() {
|
54 |
+
e(), k(t).removeClass("loco-loading");
|
55 |
}
|
56 |
D.on("poUnsaved", function() {
|
57 |
o();
|
61 |
bundle: n.bundle,
|
62 |
domain: n.domain,
|
63 |
type: p ? "pot" : "po",
|
64 |
+
path: v || "",
|
65 |
+
sync: y || "",
|
66 |
+
mode: w || ""
|
67 |
+
}, k(t).on("click", function(n) {
|
68 |
+
return n.preventDefault(), o(), k(t).addClass("loco-loading"), $(a), !1;
|
69 |
}), e();
|
70 |
}
|
71 |
return !0;
|
75 |
n.disabled = !1;
|
76 |
}).on("poSave", function() {
|
77 |
n.disabled = !0;
|
78 |
+
}), k(n).on("click", function(n) {
|
79 |
return n.preventDefault(), location.reload(), !1;
|
80 |
}), !0;
|
81 |
},
|
82 |
invs: function(n) {
|
83 |
+
var o = k(n);
|
84 |
return n.disabled = !1, D.on("poInvs", function(n, t) {
|
85 |
o[t ? "addClass" : "removeClass"]("inverted");
|
86 |
}), o.on("click", function(n) {
|
88 |
}), C.tooltip.init(o), !0;
|
89 |
},
|
90 |
code: function(n) {
|
91 |
+
var o = k(n);
|
92 |
return n.disabled = !1, o.on("click", function(n) {
|
93 |
n.preventDefault();
|
94 |
var t = !D.getMono();
|
95 |
return o[t ? "addClass" : "removeClass"]("inverted"), D.setMono(t), !1;
|
96 |
}), C.tooltip.init(o), !0;
|
97 |
},
|
98 |
+
source: Q,
|
99 |
+
binary: p ? null : Q
|
100 |
};
|
101 |
+
p ? (N.add = M && function(n) {
|
102 |
+
return n.disabled = !1, k(n).on("click", function(n) {
|
103 |
n.preventDefault();
|
104 |
var t, o = 1, e = /(\d+)$/;
|
105 |
for (t = "New message"; b.get(t); ) o = e.exec(t) ? Math.max(o, Number(RegExp.$1)) : o,
|
106 |
t = "New message " + ++o;
|
107 |
return D.add(t), !1;
|
108 |
}), !0;
|
109 |
+
}, N.del = M && function(n) {
|
110 |
+
return n.disabled = !1, k(n).on("click", function(n) {
|
111 |
return n.preventDefault(), D.del(), !1;
|
112 |
}), !0;
|
113 |
+
}) : N.auto = function(n) {
|
114 |
function t() {
|
115 |
n.disabled = !1;
|
116 |
}
|
118 |
n.disabled = !0;
|
119 |
}).on("poSave poAuto", function() {
|
120 |
t();
|
121 |
+
}), k(n).on("click", Y), t(), !0;
|
122 |
+
}, k("#loco-editor > nav .button").each(function(n, t) {
|
123 |
+
var o = t.getAttribute("data-loco"), e = N[o];
|
124 |
+
e && e(t, o) || k(t).addClass("loco-noop");
|
125 |
+
}), k(g).on("submit", V), function(t) {
|
126 |
function e(n) {
|
127 |
+
k(t.parentNode)[n || null == n ? "removeClass" : "addClass"]("invalid");
|
128 |
}
|
129 |
D.searchable(C.fulltext.init()), t.disabled = !1;
|
130 |
var a = t.value = "", i = C.watchtext(t, function(n) {
|
136 |
a && D.filter(a);
|
137 |
});
|
138 |
}(document.getElementById("loco-search")), D.on("poUnsaved", function() {
|
139 |
+
S.onbeforeunload = K;
|
140 |
}).on("poSave", function() {
|
141 |
+
X(), S.onbeforeunload = null;
|
142 |
+
}).on("poHint", W).on("poUpdate", X).on("poMeta", function(n, t) {
|
143 |
var o, e, a = (e = "CODE", (o = t).tagName === e ? o : o.getElementsByTagName(e)[0]);
|
144 |
return !a || !l || (l.load(a.textContent), n.preventDefault(), !1);
|
145 |
+
}), b.load(i.podata), D.load(b), (T = D.targetLocale) ? T.isRTL() && k(u).addClass("trg-rtl") : D.unlock(),
|
146 |
+
X(), delete C.conf, i = N = null;
|
147 |
}
|
148 |
+
function O(n) {
|
149 |
return C.l10n._(n);
|
150 |
}
|
151 |
+
function A(n, t, o) {
|
152 |
return C.l10n.n(n, t, o);
|
153 |
}
|
154 |
+
function F(n) {
|
155 |
return n.format(0, ".", e);
|
156 |
}
|
157 |
+
function $(c) {
|
158 |
C.ajax.post("sync", s, function(n) {
|
159 |
var t = [], o = n.pot, e = n.po, a = n.done || {
|
160 |
add: [],
|
161 |
del: [],
|
162 |
fuz: []
|
163 |
}, i = a.add.length, r = a.del.length, l = a.fuz.length, s = a.trn || 0;
|
164 |
+
b.clear().load(e), D.load(b), i || r || l || s ? (o ? t.push(m(O("Merged from %s"), o)) : t.push(O("Merged from source code")),
|
165 |
+
i && t.push(m(A("%s new string added", "%s new strings added", i), F(i))), r && t.push(m(A("%s obsolete string removed", "%s obsolete strings removed", r), F(r))),
|
166 |
+
l && t.push(m(A("%s string marked Fuzzy", "%s strings marked Fuzzy", l), F(l))),
|
167 |
+
s && t.push(m(A("%s translation copied", "%s translations copied", s), F(s))), k(u).trigger("poUnsaved", []),
|
168 |
+
X(), d && S.console && function(n, t) {
|
169 |
var o = -1, e = t.add.length;
|
170 |
for (;++o < e; ) n.log(" + " + String(t.add[o]));
|
171 |
for (e = t.del.length, o = 0; o < e; o++) n.log(" - " + String(t.del[o]));
|
172 |
for (e = t.fuz.length, o = 0; o < e; o++) n.log(" ~ " + String(t.fuz[o]));
|
173 |
+
}(console, a)) : o ? t.push(m(O("Strings up to date with %s"), o)) : t.push(O("Strings up to date with source code")),
|
174 |
+
C.notices.success(t.join(". ")), k(u).trigger("poMerge", [ n ]), c && c();
|
175 |
}, c);
|
176 |
}
|
177 |
+
function R() {
|
178 |
return n = n || function() {
|
179 |
+
for (var n, t = -1, o = [], e = r, a = e.length, i = String(f); ++t < a; ) try {
|
180 |
+
null == (n = e[t]).src && (n.src = i), o.push(C.apis.create(n));
|
181 |
} catch (n) {
|
182 |
C.notices.error(String(n));
|
183 |
}
|
184 |
return o;
|
185 |
}();
|
186 |
}
|
187 |
+
function _(t) {
|
188 |
var o;
|
189 |
function e() {
|
190 |
return new Date().getTime();
|
191 |
}
|
192 |
+
p || j ? C.notices.error("Logic error. APIs not available in current mode") : null == r || 0 === r.length || 10 < Math.round((e() - L) / 1e3) ? (a && a.remove(),
|
193 |
+
a = null, h && h.remove(), h = null, z && z.remove(), r = z = null, o = k('<div><div class="loco-loading"></div></div>').dialog({
|
194 |
dialogClass: "loco-modal loco-modal-no-close",
|
195 |
appendTo: "#loco-admin.wrap",
|
196 |
title: "Loading..",
|
199 |
closeOnEscape: !1,
|
200 |
resizable: !1,
|
201 |
draggable: !1,
|
202 |
+
position: U,
|
203 |
height: 200
|
204 |
}), C.ajax.get("apis", {
|
205 |
locale: String(T)
|
206 |
}, function(n) {
|
207 |
+
L = e(), 0 === (r = n && n.apis || []).length ? a = H("loco-apis-empty", n.html) : h = H("loco-apis-batch", n.html),
|
208 |
o.remove(), t(r);
|
209 |
+
})) : (L = e(), t(r));
|
210 |
}
|
211 |
+
function H(n, t) {
|
212 |
+
var o = k(t);
|
213 |
return o.attr("id", n), o.dialog({
|
214 |
dialogClass: "loco-modal",
|
215 |
appendTo: "#loco-admin.wrap",
|
219 |
closeOnEscape: !0,
|
220 |
resizable: !1,
|
221 |
draggable: !1,
|
222 |
+
position: U
|
223 |
}), o;
|
224 |
}
|
225 |
+
function W() {
|
226 |
+
_(function(n) {
|
227 |
n.length ? function() {
|
228 |
var n = D.current(), t = D.getTargetOffset(), o = n && n.source(null, t), p = 'lang="' + String(T) + '" dir="' + (T.isRTL() ? "RTL" : "LTR") + '"', f = 99;
|
229 |
if (!o) return;
|
233 |
var t, o;
|
234 |
}
|
235 |
function a(n, t, o, e) {
|
236 |
+
var a = e.getId(), i = w[a], r = String(i + 1), l = e.getUrl(), s = O("Use this translation"), c = String(e), u = b && b[a], d = k('<button class="button button-primary"></button>').attr("tabindex", String(1 + f + i)).on("click", function(e, a) {
|
237 |
return function(n) {
|
238 |
n.preventDefault(), n.stopPropagation(), g();
|
239 |
var t = D.current(), o = D.getTargetOffset();
|
240 |
t && t.source(null, o) === e ? (t.translate(a, o), D.focus().reloadMessage(t)) : C.notices.warn("Source changed since suggestion");
|
241 |
};
|
242 |
}(n, t));
|
243 |
+
d.attr("accesskey", r), 1 < h.length && (s += " (" + r + ")"), d.text(s), u && u.replaceWith(k('<div class="loco-api loco-api-' + a + '"></div>').append(k('<a class="loco-api-credit" target="_blank" tabindex="-1"></a>').attr("href", l).text(c)).append(k("<blockquote " + p + "></blockquote>").text(t || "FAILED")).append(d)),
|
244 |
+
++y === m && (v && v.dialog("option", "title", O("Suggested translations") + " — " + o.label),
|
245 |
f += y), 0 === i && d.focus();
|
246 |
}
|
247 |
function g(n) {
|
248 |
+
v && null == n && v.dialog("close"), b = v = null, k(S).off("keydown", e);
|
249 |
}
|
250 |
function i(e) {
|
251 |
return function(n, t, o) {
|
252 |
a(n, u[e.getId()] = t, o, e);
|
253 |
};
|
254 |
}
|
255 |
+
var v = (z = z || H("loco-apis-hint", "<div></div>")).html("").append(k('<div class="loco-api"><p>Source text:</p></div>').append(k('<blockquote lang="en"></blockquote>').text(o))).dialog("option", "title", O("Loading suggestions") + "...").off("dialogclose").on("dialogclose", g).dialog("open"), r = n.translation(t);
|
256 |
+
r && k('<div class="loco-api"><p>Current translation:</p></div>').append(k("<blockquote " + p + "></blockquote>").text(r)).append(k('<button class="button"></button>').attr("tabindex", String(++f)).text(O("Keep this translation")).on("click", function(n) {
|
257 |
n.preventDefault(), g();
|
258 |
})).appendTo(v);
|
259 |
+
var l, s, h = R(), m = h.length, c = -1, u = E[o] || (E[o] = {}), b = {}, y = 0, w = {};
|
260 |
+
for (;++c < m; ) l = h[c], v.append((d = l, void 0, x = k('<div class="loco-api loco-api-loading"></div>').text("Calling " + d + " ..."),
|
261 |
b[d.getId()] = x)), s = l.getId(), w[s] = c, u[s] ? a(o, u[s], T, l) : l.translate(o, T, i(l));
|
262 |
var d, x;
|
263 |
+
k(S).on("keydown", e);
|
264 |
+
}() : G();
|
265 |
});
|
266 |
}
|
267 |
+
function Y(n) {
|
268 |
+
return n.preventDefault(), _(function(n) {
|
269 |
n.length ? function() {
|
270 |
+
var e, a, i, r = 0, t = !1, l = h.dialog("open"), n = l.find("form"), s = n.find("button.button-primary"), o = k("#loco-job-progress");
|
271 |
function c() {
|
272 |
s[0].disabled = !0;
|
273 |
}
|
279 |
}
|
280 |
function p(n) {
|
281 |
var t = function(n) {
|
282 |
+
for (var t, o = R(), e = o.length, a = -1; ++a < e; ) if ((t = o[a]).getId() === n) return t;
|
283 |
C.notices.error("No " + n + " client");
|
284 |
+
}(k(n.api).val()), o = n.existing.checked;
|
285 |
+
d("Calculating...."), (e = t.createJob()).init(b, o), a = t.toString(), d(m(O("%s unique source strings."), F(e.length)) + " " + m(O("%s characters will be sent for translation."), F(e.chars))),
|
286 |
e.length ? s[0].disabled = !1 : c(), i = null;
|
287 |
}
|
288 |
function f(n) {
|
291 |
}
|
292 |
function g(n, t) {
|
293 |
var o = t ? 100 * n / t : 0;
|
294 |
+
d(m(O("Translation progress %s%%"), F(o)));
|
295 |
}
|
296 |
function v() {
|
297 |
if (u(), e && i) {
|
298 |
var n = i.todo();
|
299 |
+
n && C.notices.warn(m(A("Translation job aborted with %s string remaining", "Translation job aborted with %s strings remaining", n), F(n))).slow();
|
300 |
var t = [], o = i.did();
|
301 |
+
o && t.push(m(A("%1$s string translated via %2$s", "%1$s strings translated via %2$s", o), F(o), a)),
|
302 |
+
r ? t.push(m(A("%s string updated", "%s strings updated", r), F(r))) : t.push(O("Nothing needed updating")),
|
303 |
C.notices.success(t.join(". ")).slow(), i = e = null;
|
304 |
}
|
305 |
+
r && (X(), D.rebuildSearch()), l && (l.off("dialogclose").dialog("close"), l = null),
|
306 |
D.fire("poAuto");
|
307 |
}
|
308 |
u(), c(), C.notices.clear(), n.off("submit change"), p(n[0]), n.on("change", function(n) {
|
314 |
}), l.off("dialogclose").on("dialogclose", function() {
|
315 |
e.abort(), l = null, v();
|
316 |
});
|
317 |
+
}() : G();
|
318 |
}), !1;
|
319 |
}
|
320 |
+
function G() {
|
321 |
a ? a.dialog("open") : C.notices.error("Logic error. Unconfigured API modal missing");
|
322 |
}
|
323 |
+
function J(t) {
|
324 |
+
var n = k.extend({
|
325 |
locale: String(b.locale() || "")
|
326 |
}, c || {});
|
327 |
+
I && I.applyCreds(n), o ? (n = function(n) {
|
328 |
var t, o = new FormData();
|
329 |
for (t in n) n.hasOwnProperty(t) && o.append(t, n[t]);
|
330 |
return o;
|
331 |
}(n)).append("po", new Blob([ String(b) ], {
|
332 |
type: "application/x-gettext"
|
333 |
}), String(n.path).split("/").pop() || "untitled.po") : n.data = String(b), C.ajax.post("save", n, function(n) {
|
334 |
+
t && t(), D.save(!0), k("#loco-po-modified").text(n.datetime || "[datetime error]");
|
335 |
}, t);
|
336 |
}
|
337 |
+
function K() {
|
338 |
+
return O("Your changes will be lost if you continue without saving");
|
339 |
}
|
340 |
+
function Q(o, e) {
|
341 |
+
return o.disabled = !1, k(o).on("click", function() {
|
342 |
+
var n = o.form, t = v;
|
343 |
return "binary" === e && (t = t.replace(/\.po$/, ".mo")), n.path.value = t, n.source.value = b.toString(),
|
344 |
!0;
|
345 |
}), !0;
|
346 |
}
|
347 |
+
function V(n) {
|
348 |
return n.preventDefault(), !1;
|
349 |
}
|
350 |
+
function X() {
|
351 |
+
var n = D.stats(), t = n.t, o = n.f, e = n.u, a = m(A("%s string", "%s strings", t), F(t)), i = [];
|
352 |
+
T && (a = m(O("%s%% translated"), n.p.replace("%", "")) + ", " + a, o && i.push(m(O("%s fuzzy"), F(o))),
|
353 |
+
e && i.push(m(O("%s untranslated"), F(e))), i.length && (a += " (" + i.join(", ") + ")")),
|
354 |
+
k("#loco-po-status").text(a);
|
355 |
}
|
356 |
}(window, window.jQuery);
|
readme.txt
CHANGED
@@ -3,8 +3,8 @@ Contributors: timwhitlock
|
|
3 |
Tags: translation, translators, localization, localisation, l10n, i18n, Gettext, PO, MO, productivity, multilingual, internationalization
|
4 |
Requires at least: 4.1
|
5 |
Requires PHP: 5.2.4
|
6 |
-
Tested up to: 5.8.
|
7 |
-
Stable tag: 2.5.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -100,6 +100,14 @@ We don't collect your data or snoop on you. See the [plugin privacy notice](http
|
|
100 |
|
101 |
== Changelog ==
|
102 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
103 |
= 2.5.5 =
|
104 |
* Fixed double file extension vulnerability reported by WordFence
|
105 |
* Better performance when scanning directories for file types
|
@@ -431,7 +439,7 @@ We don't collect your data or snoop on you. See the [plugin privacy notice](http
|
|
431 |
|
432 |
== Upgrade Notice ==
|
433 |
|
434 |
-
= 2.5.
|
435 |
* Various improvements and bug fixes
|
436 |
|
437 |
|
3 |
Tags: translation, translators, localization, localisation, l10n, i18n, Gettext, PO, MO, productivity, multilingual, internationalization
|
4 |
Requires at least: 4.1
|
5 |
Requires PHP: 5.2.4
|
6 |
+
Tested up to: 5.8.3
|
7 |
+
Stable tag: 2.5.6
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
100 |
|
101 |
== Changelog ==
|
102 |
|
103 |
+
= 2.5.6 =
|
104 |
+
* Added loco_api_provider_source filter
|
105 |
+
* Fixed bug loading user preferences saved in older version
|
106 |
+
* Refactored file finder to avoid recursive function calls
|
107 |
+
* Fixed bug displaying two forms for zero plural languages
|
108 |
+
* Added Lecto AI to translation API providers
|
109 |
+
* Bumped WordPress version to 5.8.3
|
110 |
+
|
111 |
= 2.5.5 =
|
112 |
* Fixed double file extension vulnerability reported by WordFence
|
113 |
* Better performance when scanning directories for file types
|
439 |
|
440 |
== Upgrade Notice ==
|
441 |
|
442 |
+
= 2.5.6 =
|
443 |
* Various improvements and bug fixes
|
444 |
|
445 |
|
src/admin/config/DebugController.php
CHANGED
@@ -64,6 +64,10 @@ class Loco_admin_config_DebugController extends Loco_admin_config_BaseController
|
|
64 |
if( function_exists('apache_get_modules') && ( $mods = preg_grep('/^mod_/',apache_get_modules() ) ) ){
|
65 |
$versions['Server'] .= ' + '.implode(', ',$mods);
|
66 |
}
|
|
|
|
|
|
|
|
|
67 |
|
68 |
// byte code cache (currently only checking for Zend OPcache)
|
69 |
if( function_exists('opcache_get_configuration') && ini_get('opcache.enable') ){
|
@@ -110,7 +114,7 @@ class Loco_admin_config_DebugController extends Loco_admin_config_BaseController
|
|
110 |
// Third party API integrations:
|
111 |
$apis = array();
|
112 |
$jsapis = array();
|
113 |
-
foreach( Loco_api_Providers::export() as $api ){
|
114 |
$apis[] = new Loco_mvc_ViewParams($api);
|
115 |
$jsapis[] = $api;
|
116 |
}
|
64 |
if( function_exists('apache_get_modules') && ( $mods = preg_grep('/^mod_/',apache_get_modules() ) ) ){
|
65 |
$versions['Server'] .= ' + '.implode(', ',$mods);
|
66 |
}
|
67 |
+
// Add Xdebug version if installed
|
68 |
+
if( extension_loaded('xdebug') ){
|
69 |
+
$versions['PHP'] .= ' + Xdebug '. phpversion('xdebug');
|
70 |
+
}
|
71 |
|
72 |
// byte code cache (currently only checking for Zend OPcache)
|
73 |
if( function_exists('opcache_get_configuration') && ini_get('opcache.enable') ){
|
114 |
// Third party API integrations:
|
115 |
$apis = array();
|
116 |
$jsapis = array();
|
117 |
+
foreach( Loco_api_Providers::sort( Loco_api_Providers::export() ) as $api ){
|
118 |
$apis[] = new Loco_mvc_ViewParams($api);
|
119 |
$jsapis[] = $api;
|
120 |
}
|
src/admin/file/EditController.php
CHANGED
@@ -48,6 +48,7 @@ class Loco_admin_file_EditController extends Loco_admin_file_BaseController {
|
|
48 |
public function render(){
|
49 |
|
50 |
// file must exist for editing
|
|
|
51 |
$file = $this->get('file');
|
52 |
if( $fail = $this->getFileError($file) ){
|
53 |
return $fail;
|
@@ -146,6 +147,10 @@ class Loco_admin_file_EditController extends Loco_admin_file_BaseController {
|
|
146 |
}
|
147 |
}
|
148 |
|
|
|
|
|
|
|
|
|
149 |
$settings = Loco_data_Settings::get();
|
150 |
|
151 |
if( is_null($locale) ){
|
@@ -171,16 +176,16 @@ class Loco_admin_file_EditController extends Loco_admin_file_BaseController {
|
|
171 |
'powrap' => (int) $settings->po_width,
|
172 |
'multipart' => (bool) $settings->ajax_files,
|
173 |
'locale' => $locale ? $locale->jsonSerialize() : null,
|
|
|
174 |
'potpath' => $locale && $potfile ? $potfile->getRelativePath($wp_content) : null,
|
175 |
'syncmode' => $syncmode,
|
176 |
'popath' => $this->get('path'),
|
177 |
'readonly' => $readonly,
|
178 |
'project' => $project ? array (
|
179 |
'bundle' => $bundle->getId(),
|
180 |
-
'domain' =>
|
181 |
) : null,
|
182 |
'nonces' => $this->getNonces($readonly),
|
183 |
-
'apis' => $locale && ! $readonly ? Loco_api_Providers::configured() : null,
|
184 |
) ) );
|
185 |
$this->set( 'ui', new Loco_mvc_ViewParams( array(
|
186 |
// Translators: button for adding a new string when manually editing a POT file
|
48 |
public function render(){
|
49 |
|
50 |
// file must exist for editing
|
51 |
+
/* @var Loco_fs_File $file */
|
52 |
$file = $this->get('file');
|
53 |
if( $fail = $this->getFileError($file) ){
|
54 |
return $fail;
|
147 |
}
|
148 |
}
|
149 |
|
150 |
+
// WordPress source locale is always en_US, but filter allows override for purpose of sending to translation APIs.
|
151 |
+
$tag = apply_filters('loco_api_provider_source', 'en', $file->getPath() );
|
152 |
+
$source = Loco_Locale::parse($tag);
|
153 |
+
|
154 |
$settings = Loco_data_Settings::get();
|
155 |
|
156 |
if( is_null($locale) ){
|
176 |
'powrap' => (int) $settings->po_width,
|
177 |
'multipart' => (bool) $settings->ajax_files,
|
178 |
'locale' => $locale ? $locale->jsonSerialize() : null,
|
179 |
+
'source' => $source->jsonSerialize(),
|
180 |
'potpath' => $locale && $potfile ? $potfile->getRelativePath($wp_content) : null,
|
181 |
'syncmode' => $syncmode,
|
182 |
'popath' => $this->get('path'),
|
183 |
'readonly' => $readonly,
|
184 |
'project' => $project ? array (
|
185 |
'bundle' => $bundle->getId(),
|
186 |
+
'domain' => $project->getId(),
|
187 |
) : null,
|
188 |
'nonces' => $this->getNonces($readonly),
|
|
|
189 |
) ) );
|
190 |
$this->set( 'ui', new Loco_mvc_ViewParams( array(
|
191 |
// Translators: button for adding a new string when manually editing a POT file
|
src/ajax/ApisController.php
CHANGED
@@ -45,9 +45,8 @@ class Loco_ajax_ApisController extends Loco_mvc_AjaxController {
|
|
45 |
$hook = (string) $post->hook;
|
46 |
|
47 |
// API client must be hooked in using loco_api_providers filter
|
48 |
-
// this normally filters on Loco_api_Providers::export() but should do the same with an empty array.
|
49 |
$config = null;
|
50 |
-
foreach(
|
51 |
if( is_array($candidate) && array_key_exists('id',$candidate) && $candidate['id'] === $hook ){
|
52 |
$config = $candidate;
|
53 |
break;
|
45 |
$hook = (string) $post->hook;
|
46 |
|
47 |
// API client must be hooked in using loco_api_providers filter
|
|
|
48 |
$config = null;
|
49 |
+
foreach( Loco_api_Providers::export() as $candidate ){
|
50 |
if( is_array($candidate) && array_key_exists('id',$candidate) && $candidate['id'] === $hook ){
|
51 |
$config = $candidate;
|
52 |
break;
|
src/api/Providers.php
CHANGED
@@ -42,6 +42,11 @@ abstract class Loco_api_Providers {
|
|
42 |
'name' => 'Yandex.Translate',
|
43 |
'key' => $settings->offsetGet('yandex_api_key'),
|
44 |
),
|
|
|
|
|
|
|
|
|
|
|
45 |
);
|
46 |
}
|
47 |
|
@@ -51,9 +56,7 @@ abstract class Loco_api_Providers {
|
|
51 |
* @return array[]
|
52 |
*/
|
53 |
public static function configured(){
|
54 |
-
|
55 |
-
usort( $apis, array(__CLASS__,'compareNames') );
|
56 |
-
return $apis;
|
57 |
}
|
58 |
|
59 |
|
@@ -71,10 +74,21 @@ abstract class Loco_api_Providers {
|
|
71 |
* @internal
|
72 |
* @param string[]
|
73 |
* @param string[]
|
74 |
-
* @return
|
75 |
*/
|
76 |
private static function compareNames( array $a, array $b ){
|
77 |
return strcasecmp($a['name'],$b['name']);
|
78 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
79 |
|
80 |
}
|
42 |
'name' => 'Yandex.Translate',
|
43 |
'key' => $settings->offsetGet('yandex_api_key'),
|
44 |
),
|
45 |
+
array (
|
46 |
+
'id' => 'lecto',
|
47 |
+
'name' => 'Lecto AI',
|
48 |
+
'key' => $settings->offsetGet('lecto_api_key'),
|
49 |
+
),
|
50 |
);
|
51 |
}
|
52 |
|
56 |
* @return array[]
|
57 |
*/
|
58 |
public static function configured(){
|
59 |
+
return self::sort( array_filter( self::export(), array(__CLASS__,'filterConfigured') ) );
|
|
|
|
|
60 |
}
|
61 |
|
62 |
|
74 |
* @internal
|
75 |
* @param string[]
|
76 |
* @param string[]
|
77 |
+
* @return int
|
78 |
*/
|
79 |
private static function compareNames( array $a, array $b ){
|
80 |
return strcasecmp($a['name'],$b['name']);
|
81 |
}
|
82 |
+
|
83 |
+
|
84 |
+
/**
|
85 |
+
* Sort providers alphabetically
|
86 |
+
* @param array
|
87 |
+
* @return array
|
88 |
+
*/
|
89 |
+
public static function sort( array $apis ){
|
90 |
+
usort( $apis, array(__CLASS__,'compareNames') );
|
91 |
+
return $apis;
|
92 |
+
}
|
93 |
|
94 |
}
|
src/data/Preferences.php
CHANGED
@@ -9,7 +9,7 @@ class Loco_data_Preferences extends Loco_data_Serializable {
|
|
9 |
|
10 |
/**
|
11 |
* User preference singletons
|
12 |
-
* @var
|
13 |
*/
|
14 |
private static $current = array();
|
15 |
|
@@ -90,9 +90,10 @@ class Loco_data_Preferences extends Loco_data_Serializable {
|
|
90 |
$data = get_user_meta( $this->user_id, 'loco_prefs', true );
|
91 |
// See comments in Loco_data_Settings
|
92 |
if( is_array($data) ){
|
93 |
-
$this->setUnserialized($data);
|
94 |
$copy = new Loco_data_Preferences;
|
95 |
-
$
|
|
|
|
|
96 |
$this->clean();
|
97 |
return true;
|
98 |
}
|
9 |
|
10 |
/**
|
11 |
* User preference singletons
|
12 |
+
* @var Loco_data_Preferences[]
|
13 |
*/
|
14 |
private static $current = array();
|
15 |
|
90 |
$data = get_user_meta( $this->user_id, 'loco_prefs', true );
|
91 |
// See comments in Loco_data_Settings
|
92 |
if( is_array($data) ){
|
|
|
93 |
$copy = new Loco_data_Preferences;
|
94 |
+
$copy->setUnserialized($data);
|
95 |
+
$data = $copy->getArrayCopy() + $this->getArrayCopy();
|
96 |
+
$this->exchangeArray($data);
|
97 |
$this->clean();
|
98 |
return true;
|
99 |
}
|
src/data/Settings.php
CHANGED
@@ -25,6 +25,7 @@
|
|
25 |
* @property string $deepl_api_url Base URL for DeepL Translator version
|
26 |
* @property string $google_api_key API key for Google Translate
|
27 |
* @property string $yandex_api_key API key for Yandex.Translate
|
|
|
28 |
* @property string $microsoft_api_key API key for Microsoft Translator text API
|
29 |
* @property string $microsoft_api_region API region for Microsoft Translator text API
|
30 |
*
|
@@ -67,6 +68,7 @@ class Loco_data_Settings extends Loco_data_Serializable {
|
|
67 |
'yandex_api_key' => '',
|
68 |
'microsoft_api_key' => '',
|
69 |
'microsoft_api_region' => 'global',
|
|
|
70 |
);
|
71 |
|
72 |
|
25 |
* @property string $deepl_api_url Base URL for DeepL Translator version
|
26 |
* @property string $google_api_key API key for Google Translate
|
27 |
* @property string $yandex_api_key API key for Yandex.Translate
|
28 |
+
* @property string $lecto_api_key API key for Lecto Translation API
|
29 |
* @property string $microsoft_api_key API key for Microsoft Translator text API
|
30 |
* @property string $microsoft_api_region API region for Microsoft Translator text API
|
31 |
*
|
68 |
'yandex_api_key' => '',
|
69 |
'microsoft_api_key' => '',
|
70 |
'microsoft_api_region' => 'global',
|
71 |
+
'lecto_api_key' => '',
|
72 |
);
|
73 |
|
74 |
|
src/fs/FileFinder.php
CHANGED
@@ -12,7 +12,7 @@ class Loco_fs_FileFinder implements Iterator, Countable, Loco_fs_FileListInterfa
|
|
12 |
|
13 |
/**
|
14 |
* Directories to search, including those descended into
|
15 |
-
* @var Loco_fs_FileList
|
16 |
*/
|
17 |
private $subdir;
|
18 |
|
@@ -24,7 +24,7 @@ class Loco_fs_FileFinder implements Iterator, Countable, Loco_fs_FileListInterfa
|
|
24 |
|
25 |
/**
|
26 |
* File listing already matched
|
27 |
-
* @var Loco_fs_FileList
|
28 |
*/
|
29 |
private $cache;
|
30 |
|
@@ -36,13 +36,13 @@ class Loco_fs_FileFinder implements Iterator, Countable, Loco_fs_FileListInterfa
|
|
36 |
|
37 |
/**
|
38 |
* Internal pointer for directory being read
|
39 |
-
* @var int
|
40 |
*/
|
41 |
private $d;
|
42 |
|
43 |
/**
|
44 |
* Current directory being read
|
45 |
-
* @var resource
|
46 |
*/
|
47 |
private $dir;
|
48 |
|
@@ -61,7 +61,7 @@ class Loco_fs_FileFinder implements Iterator, Countable, Loco_fs_FileListInterfa
|
|
61 |
/**
|
62 |
* Whether currently recursing into subdirectories
|
63 |
* This is switched on and off as each directories is opened
|
64 |
-
* @var bool
|
65 |
*/
|
66 |
private $recursing;
|
67 |
|
@@ -74,19 +74,19 @@ class Loco_fs_FileFinder implements Iterator, Countable, Loco_fs_FileListInterfa
|
|
74 |
|
75 |
/**
|
76 |
* Registry of followed links by their original path
|
77 |
-
* @var Loco_fs_FileList
|
78 |
*/
|
79 |
private $linked;
|
80 |
|
81 |
/**
|
82 |
* List of file extensions to filter on and group by
|
83 |
-
* @var Loco_fs_FileList[]
|
84 |
*/
|
85 |
private $exts;
|
86 |
|
87 |
/**
|
88 |
* List of directory names to exclude from recursion
|
89 |
-
* @var Loco_fs_File[]
|
90 |
*/
|
91 |
private $excluded;
|
92 |
|
@@ -330,8 +330,7 @@ class Loco_fs_FileFinder implements Iterator, Countable, Loco_fs_FileListInterfa
|
|
330 |
* @return Loco_fs_File|null
|
331 |
*/
|
332 |
private function read(){
|
333 |
-
$
|
334 |
-
if( is_resource($this->dir) ){
|
335 |
while( $f = readdir($this->dir) ){
|
336 |
// dot-files always excluded
|
337 |
if( '.' === substr($f,0,1) ){
|
@@ -388,15 +387,18 @@ class Loco_fs_FileFinder implements Iterator, Countable, Loco_fs_FileListInterfa
|
|
388 |
return $file;
|
389 |
}
|
390 |
$this->close();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
391 |
}
|
392 |
-
//
|
393 |
-
$d = $this->d + 1;
|
394 |
-
if( isset($this->subdir[$d]) ){
|
395 |
-
$this->d = $d;
|
396 |
-
$this->open( $this->subdir[$d] );
|
397 |
-
return $this->read();
|
398 |
-
}
|
399 |
-
// else at end of all available files
|
400 |
$this->cached = true;
|
401 |
return null;
|
402 |
}
|
@@ -429,7 +431,6 @@ class Loco_fs_FileFinder implements Iterator, Countable, Loco_fs_FileListInterfa
|
|
429 |
}
|
430 |
|
431 |
|
432 |
-
|
433 |
/**
|
434 |
* @return Loco_fs_File|null
|
435 |
*/
|
@@ -442,7 +443,6 @@ class Loco_fs_FileFinder implements Iterator, Countable, Loco_fs_FileListInterfa
|
|
442 |
}
|
443 |
|
444 |
|
445 |
-
|
446 |
/**
|
447 |
* @return Loco_fs_File|null
|
448 |
*/
|
@@ -454,8 +454,11 @@ class Loco_fs_FileFinder implements Iterator, Countable, Loco_fs_FileListInterfa
|
|
454 |
return $this->cache[$i];
|
455 |
}
|
456 |
}
|
457 |
-
else
|
458 |
-
|
|
|
|
|
|
|
459 |
}
|
460 |
// else at end of all directory listings
|
461 |
$this->i = null;
|
@@ -516,11 +519,11 @@ class Loco_fs_FileFinder implements Iterator, Countable, Loco_fs_FileListInterfa
|
|
516 |
|
517 |
|
518 |
/**
|
519 |
-
*
|
|
|
520 |
*/
|
521 |
public function isCached(){
|
522 |
return $this->cached;
|
523 |
}
|
524 |
|
525 |
-
|
526 |
}
|
12 |
|
13 |
/**
|
14 |
* Directories to search, including those descended into
|
15 |
+
* @var Loco_fs_FileList|null
|
16 |
*/
|
17 |
private $subdir;
|
18 |
|
24 |
|
25 |
/**
|
26 |
* File listing already matched
|
27 |
+
* @var Loco_fs_FileList|null
|
28 |
*/
|
29 |
private $cache;
|
30 |
|
36 |
|
37 |
/**
|
38 |
* Internal pointer for directory being read
|
39 |
+
* @var int|null
|
40 |
*/
|
41 |
private $d;
|
42 |
|
43 |
/**
|
44 |
* Current directory being read
|
45 |
+
* @var resource|null
|
46 |
*/
|
47 |
private $dir;
|
48 |
|
61 |
/**
|
62 |
* Whether currently recursing into subdirectories
|
63 |
* This is switched on and off as each directories is opened
|
64 |
+
* @var bool|null
|
65 |
*/
|
66 |
private $recursing;
|
67 |
|
74 |
|
75 |
/**
|
76 |
* Registry of followed links by their original path
|
77 |
+
* @var Loco_fs_FileList|null
|
78 |
*/
|
79 |
private $linked;
|
80 |
|
81 |
/**
|
82 |
* List of file extensions to filter on and group by
|
83 |
+
* @var null|Loco_fs_FileList[]
|
84 |
*/
|
85 |
private $exts;
|
86 |
|
87 |
/**
|
88 |
* List of directory names to exclude from recursion
|
89 |
+
* @var null|Loco_fs_File[]
|
90 |
*/
|
91 |
private $excluded;
|
92 |
|
330 |
* @return Loco_fs_File|null
|
331 |
*/
|
332 |
private function read(){
|
333 |
+
while( is_resource($this->dir) ){
|
|
|
334 |
while( $f = readdir($this->dir) ){
|
335 |
// dot-files always excluded
|
336 |
if( '.' === substr($f,0,1) ){
|
387 |
return $file;
|
388 |
}
|
389 |
$this->close();
|
390 |
+
// Advance directory and continue outer loop
|
391 |
+
$d = $this->d + 1;
|
392 |
+
if( $this->subdir->offsetExists($d) ){
|
393 |
+
$this->d = $d;
|
394 |
+
$this->open( $this->subdir->offsetGet($d) );
|
395 |
+
}
|
396 |
+
// else no directories left to search
|
397 |
+
else {
|
398 |
+
break;
|
399 |
+
}
|
400 |
}
|
401 |
+
// at end of all available files
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
402 |
$this->cached = true;
|
403 |
return null;
|
404 |
}
|
431 |
}
|
432 |
|
433 |
|
|
|
434 |
/**
|
435 |
* @return Loco_fs_File|null
|
436 |
*/
|
443 |
}
|
444 |
|
445 |
|
|
|
446 |
/**
|
447 |
* @return Loco_fs_File|null
|
448 |
*/
|
454 |
return $this->cache[$i];
|
455 |
}
|
456 |
}
|
457 |
+
else {
|
458 |
+
$file = $this->read();
|
459 |
+
if( $file instanceof Loco_fs_File ) {
|
460 |
+
return $file;
|
461 |
+
}
|
462 |
}
|
463 |
// else at end of all directory listings
|
464 |
$this->i = null;
|
519 |
|
520 |
|
521 |
/**
|
522 |
+
* Test whether internal list has been fully cached in memory
|
523 |
+
* @return bool
|
524 |
*/
|
525 |
public function isCached(){
|
526 |
return $this->cached;
|
527 |
}
|
528 |
|
|
|
529 |
}
|
tpl/admin/config/apis.php
CHANGED
@@ -62,6 +62,27 @@ $help = apply_filters('loco_external','https://localise.biz/wordpress/plugin/man
|
|
62 |
</fieldset>
|
63 |
</td>
|
64 |
</tr><?php
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
65 |
// MICROSOFT
|
66 |
$api = $apis['microsoft']?>
|
67 |
<tr>
|
62 |
</fieldset>
|
63 |
</td>
|
64 |
</tr><?php
|
65 |
+
// LECTO AI
|
66 |
+
$api = $apis['lecto']?>
|
67 |
+
<tr>
|
68 |
+
<th scope="row"><?php $api->e('name')?></th>
|
69 |
+
<td>
|
70 |
+
<fieldset>
|
71 |
+
<legend class="screen-reader-text">
|
72 |
+
<span><?php $ui->e('api_key')?></span>
|
73 |
+
</legend>
|
74 |
+
<p>
|
75 |
+
<label for="loco--lecto_api_key">
|
76 |
+
<?php $ui->e('api_key')?>:
|
77 |
+
</label>
|
78 |
+
<input type="text" size="50" name="api[lecto][key]" id="loco--lecto_api_key" value="<?php $api->e('key')?>" spellcheck="false" />
|
79 |
+
</p>
|
80 |
+
<p>
|
81 |
+
<span class="description"><a href="https://lecto.ai/?ref=loco" target="_blank" tabindex="-1">https://lecto.ai/?ref=loco</a></span>
|
82 |
+
</p>
|
83 |
+
</fieldset>
|
84 |
+
</td>
|
85 |
+
</tr><?php
|
86 |
// MICROSOFT
|
87 |
$api = $apis['microsoft']?>
|
88 |
<tr>
|