From fd745953d8b04258eda7366d00cfd082ece4c7fa Mon Sep 17 00:00:00 2001 From: Soonjae Kim Date: Tue, 13 May 2014 13:45:10 +0900 Subject: [PATCH 001/236] Update DB.class.php --- classes/db/DB.class.php | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/classes/db/DB.class.php b/classes/db/DB.class.php index 25a7cdb10..9003d51e8 100644 --- a/classes/db/DB.class.php +++ b/classes/db/DB.class.php @@ -552,7 +552,7 @@ class DB * @param array $arg_columns column list. if you want get specific colums from executed result, add column list to $arg_columns * @return object result of query */ - function executeQuery($query_id, $args = NULL, $arg_columns = NULL) + function executeQuery($query_id, $args = NULL, $arg_columns = NULL, $type = NULL) { static $cache_file = array(); @@ -606,7 +606,7 @@ class DB // look for cache file $cache_file[$query_id] = $this->checkQueryCacheFile($query_id, $xml_file); } - $result = $this->_executeQuery($cache_file[$query_id], $args, $query_id, $arg_columns); + $result = $this->_executeQuery($cache_file[$query_id], $args, $query_id, $arg_columns, $type); $this->actDBClassFinish(); // execute query @@ -649,9 +649,11 @@ class DB * @param array $arg_columns column list. if you want get specific colums from executed result, add column list to $arg_columns * @return object result of query */ - function _executeQuery($cache_file, $source_args, $query_id, $arg_columns) + function _executeQuery($cache_file, $source_args, $query_id, $arg_columns, $type) { global $lang; + + if(!in_array($type, array('master','slave'))) $type = 'slave'; if(!file_exists($cache_file)) { @@ -689,7 +691,7 @@ class DB case 'select' : $arg_columns = is_array($arg_columns) ? $arg_columns : array(); $output->setColumnList($arg_columns); - $connection = $this->_getConnection('slave'); + $connection = $this->_getConnection($type); $output = $this->_executeSelectAct($output, $connection); break; } From 46ec1e8d3b9c3a946a95083de42a8ff79b89d122 Mon Sep 17 00:00:00 2001 From: Soonjae Kim Date: Tue, 13 May 2014 13:52:41 +0900 Subject: [PATCH 002/236] Update comment.model.php --- modules/comment/comment.model.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/comment/comment.model.php b/modules/comment/comment.model.php index 9d5439a13..11195be03 100644 --- a/modules/comment/comment.model.php +++ b/modules/comment/comment.model.php @@ -126,7 +126,7 @@ class commentModel extends comment { $args = new stdClass(); $args->comment_srl = $comment_srl; - $output = executeQuery('comment.getChildCommentCount', $args); + $output = executeQuery('comment.getChildCommentCount', $args, NULL, 'master'); return (int) $output->data->count; } @@ -139,7 +139,7 @@ class commentModel extends comment { $args = new stdClass(); $args->comment_srl = $comment_srl; - $output = executeQueryArray('comment.getChildComments', $args); + $output = executeQueryArray('comment.getChildComments', $args, NULL, 'master'); return $output->data; } @@ -248,7 +248,7 @@ class commentModel extends comment $args->status = 1; } - $output = executeQuery('comment.getCommentCount', $args); + $output = executeQuery('comment.getCommentCount', $args, NULL, 'master'); $total_count = $output->data->count; return (int) $total_count; From 49760d39d318becfd09e4fd9dc2496c8ab7ed8c6 Mon Sep 17 00:00:00 2001 From: Soonjae Kim Date: Wed, 14 May 2014 09:23:26 +0900 Subject: [PATCH 003/236] Update member.controller.php --- modules/member/member.controller.php | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index 860aef260..e57b04773 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -314,6 +314,10 @@ class memberController extends member unset($all_args->captchaType); unset($all_args->secret_text); + // check musthave field + $checkmusthave = $this->checkMusthave($all_args, $config->signupForm); + if($checkmusthave) return $this->stop($checkmusthave); + // Set the user state as "denied" when using mail authentication if($config->enable_confirm == 'Y') $args->denied = 'Y'; // Add extra vars after excluding necessary information from all the requested arguments @@ -412,6 +416,22 @@ class memberController extends member $this->setRedirectUrl($returnUrl); } + // check the value of musthave fields + function checkMusthave($args, $signupForm) + { + if(!$signupForm) return false; + + foreach($signupForm as $formInfo) + { + if($formInfo->mustRequired)) + { + $val = $args->{$formInfo->name}; + if(!$val) return $formInfo->name; + } + } + return false; + } + function procMemberModifyInfoBefore() { if($_SESSION['rechecked_password_step'] != 'INPUT_PASSWORD') From 95e0cf458c71ad6e13fae497c0022186855e780b Mon Sep 17 00:00:00 2001 From: Soonjae Kim Date: Thu, 15 May 2014 10:37:02 +0900 Subject: [PATCH 004/236] Update member.controller.php --- modules/member/member.controller.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index e57b04773..94b6cfae4 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -423,7 +423,7 @@ class memberController extends member foreach($signupForm as $formInfo) { - if($formInfo->mustRequired)) + if($formInfo->mustRequired) { $val = $args->{$formInfo->name}; if(!$val) return $formInfo->name; From a89741ddde81590822fb3425099cafa81d676232 Mon Sep 17 00:00:00 2001 From: Soonjae Kim Date: Thu, 15 May 2014 10:38:33 +0900 Subject: [PATCH 005/236] Update admin.admin.controller.php --- modules/admin/admin.admin.controller.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/modules/admin/admin.admin.controller.php b/modules/admin/admin.admin.controller.php index 6e1d09f3b..331adec58 100644 --- a/modules/admin/admin.admin.controller.php +++ b/modules/admin/admin.admin.controller.php @@ -61,6 +61,9 @@ class adminAdminController extends admin FileHandler::rename('./files/cache', $temp_cache_dir); FileHandler::makeDir('./files/cache'); + // remove module extend cache + FileHandler::removeFile(_XE_PATH_ . 'files/config/module_extend.php'); + // remove debug files FileHandler::removeFile(_XE_PATH_ . 'files/_debug_message.php'); FileHandler::removeFile(_XE_PATH_ . 'files/_debug_db_query.php'); From 023b0b5f3e804969c40cc25436de8c0f4bf37694 Mon Sep 17 00:00:00 2001 From: sejin7940 Date: Tue, 30 Sep 2014 01:42:56 +0900 Subject: [PATCH 006/236] Update trash_list.html --- modules/trash/tpl/trash_list.html | 2 ++ 1 file changed, 2 insertions(+) diff --git a/modules/trash/tpl/trash_list.html b/modules/trash/tpl/trash_list.html index 64393fdb1..f69476fb9 100644 --- a/modules/trash/tpl/trash_list.html +++ b/modules/trash/tpl/trash_list.html @@ -29,6 +29,7 @@ var no_text_comment = '{$lang->no_text_comment}'; {$lang->document} + {$lang->nick_name} {$lang->origin_module_type} {$lang->trash_nick_name} {$lang->trash_date} @@ -48,6 +49,7 @@ var no_text_comment = '{$lang->no_text_comment}'; {$oTrashVO->getTitle()} + {$oTrashVO->unserializedObject['nick_name']} {$lang->document}{$lang->comment} {$oTrashVO->getNickName()} {zdate($oTrashVO->getRegdate(), "Y-m-d H:i:s")} From c9bbafaee8629abefcd9b2a49666cb24a43ba895 Mon Sep 17 00:00:00 2001 From: sejin7940 Date: Tue, 4 Nov 2014 07:09:52 +0900 Subject: [PATCH 007/236] Update send_message.html --- modules/communication/skins/default/send_message.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/communication/skins/default/send_message.html b/modules/communication/skins/default/send_message.html index 50f6f401e..461d05f4c 100644 --- a/modules/communication/skins/default/send_message.html +++ b/modules/communication/skins/default/send_message.html @@ -14,7 +14,7 @@ - + From 7499a2a6c71bb3425d9dd628e907889d7c3de598 Mon Sep 17 00:00:00 2001 From: Kijin Sung Date: Wed, 12 Nov 2014 19:27:47 +0900 Subject: [PATCH 008/236] Add a new class for improved password hashing --- classes/security/Password.class.php | 341 ++++++++++++++++++++++++++++ config/config.inc.php | 1 + 2 files changed, 342 insertions(+) create mode 100644 classes/security/Password.class.php diff --git a/classes/security/Password.class.php b/classes/security/Password.class.php new file mode 100644 index 000000000..0cbeb59b3 --- /dev/null +++ b/classes/security/Password.class.php @@ -0,0 +1,341 @@ + */ + +/** + * This class can be used to hash passwords using various algorithms and check their validity. + * It is fully compatible with previous defaults, while also supporting bcrypt and pbkdf2. + * + * @file Password.class.php + * @author Kijin Sung (kijin@kijinsung.com) + * @package /classes/security + * @version 1.1 + */ +class Password +{ + /** + * @brief Return the list of hashing algorithms supported by this server + * @return array + */ + public function getSupportedAlgorithms() + { + $retval = array(); + if(version_compare(PHP_VERSION, '5.3.7', '>=') && defined('CRYPT_BLOWFISH')) + { + $retval['bcrypt'] = 'bcrypt'; + } + if(function_exists('hash_hmac') && in_array('sha256', hash_algos())) + { + $retval['pbkdf2'] = 'pbkdf2'; + } + $retval['md5'] = 'md5'; + return $retval; + } + + /** + * @brief Return the best hashing algorithm supported by this server + * @return string + */ + public function getBestAlgorithm() + { + $algos = $this->getSupportedAlgorithms(); + return key($algos); + } + + /** + * @brief Return the currently selected hashing algorithm + * @return string + */ + public function getCurrentlySelectedAlgorithm() + { + if(function_exists('getModel')) + { + $config = getModel('member')->getMemberConfig(); + $algorithm = $config->password_hashing_algorithm; + if(strval($algorithm) === '') + { + $algorithm = 'md5'; // Historical default for XE + } + } + else + { + $algorithm = 'md5'; + } + return $algorithm; + } + + /** + * @brief Return the currently configured work factor for bcrypt and other adjustable algorithms + * @return int + */ + public function getWorkFactor() + { + if(function_exists('getModel')) + { + $config = getModel('member')->getMemberConfig(); + $work_factor = $config->password_hashing_work_factor; + if(!$work_factor || $work_factor < 4 || $work_factor > 31) + { + $work_factor = 8; // Reasonable default + } + } + else + { + $work_factor = 8; + } + return $work_factor; + } + + /** + * @brief Create a hash using the specified algorithm + * @param string $password The password + * @param string $algorithm The algorithm (optional) + * @return string + */ + public function createHash($password, $algorithm = null) + { + if($algorithm === null) + { + $algorithm = $this->getCurrentlySelectedAlgorithm(); + } + if(!array_key_exists($algorithm, $this->getSupportedAlgorithms())) + { + return false; + } + + $password = trim($password); + + switch($algorithm) + { + case 'md5': + return md5($password); + + case 'pbkdf2': + $iterations = pow(2, $this->getWorkFactor() + 5); + $salt = $this->createSecureSalt(12); + $hash = base64_encode($this->pbkdf2($password, $salt, 'sha256', $iterations, 24)); + return 'sha256:'.sprintf('%07d', $iterations).':'.$salt.':'.$hash; + + case 'bcrypt': + return $this->bcrypt($password); + + default: + return false; + } + } + + /** + * @brief Check if a password matches a hash + * @param string $password The password + * @param string $hash The hash + * @param string $algorithm The algorithm (optional) + * @return bool + */ + public function checkPassword($password, $hash, $algorithm = null) + { + $password = trim($password); + + if($algorithm === null) + { + $algorithm = $this->checkAlgorithm($hash); + } + if(!array_key_exists($algorithm, $this->getSupportedAlgorithms())) + { + return false; + } + + switch($algorithm) + { + case 'md5': + return md5($password) === $hash || md5(sha1(md5($password))) === $hash; + + case 'pbkdf2': + $hash = explode(':', $hash); + $hash[3] = base64_decode($hash[3]); + $hash_to_compare = $this->pbkdf2($password, $hash[2], $hash[0], intval($hash[1], 10), strlen($hash[3])); + return $this->strcmpConstantTime($hash_to_compare, $hash[3]); + + case 'bcrypt': + $hash_to_compare = $this->bcrypt($password, $hash); + return $this->strcmpConstantTime($hash_to_compare, $hash); + + default: + return false; + } + } + + /** + * @brief Check the algorithm used to create a hash + * @param string $hash The hash + * @return string + */ + function checkAlgorithm($hash) + { + if(preg_match('/^\$2[axy]\$([0-9]{2})\$/', $hash, $matches)) + { + return 'bcrypt'; + } + elseif(preg_match('/^sha[0-9]+:([0-9]+):/', $hash, $matches)) + { + return 'pbkdf2'; + } + elseif(strlen($hash) === 32 && ctype_xdigit($hash)) + { + return 'md5'; + } + else + { + return false; + } + } + + /** + * @brief Check the work factor of a hash + * @param string $hash The hash + * @return int + */ + function checkWorkFactor($hash) + { + if(preg_match('/^\$2[axy]\$([0-9]{2})\$/', $hash, $matches)) + { + return intval($matches[1], 10); + } + elseif(preg_match('/^sha[0-9]+:([0-9]+):/', $hash, $matches)) + { + return max(0, round(log($matches[1], 2)) - 5); + } + else + { + return false; + } + } + + /** + * @brief Generate a cryptographically secure random string to use as a salt + * @param int $length The number of bytes to return + * @param string $format hex or alnum + * @return string + */ + public function createSecureSalt($length, $format = 'hex') + { + // Find out how many bytes of entropy we really need + $entropy_required_bytes = ceil(($format === 'hex') ? ($length / 2) : ($length * 3 / 4)); + + // Cap entropy to 256 bits from any one source, because anything more is meaningless + $entropy_capped_bytes = min(32, $entropy_required_bytes); + + // Find and use the most secure way to generate a random string + $is_windows = (defined('PHP_OS') && strtoupper(substr(PHP_OS, 0, 3)) === 'WIN'); + if(function_exists('openssl_random_pseudo_bytes') && (!$is_windows || version_compare(PHP_VERSION, '5.4', '>='))) + { + $entropy = openssl_random_pseudo_bytes($entropy_capped_bytes); + } + elseif(function_exists('mcrypt_create_iv') && (!$is_windows || version_compare(PHP_VERSION, '5.3.7', '>='))) + { + $entropy = mcrypt_create_iv($entropy_capped_bytes, MCRYPT_DEV_URANDOM); + } + elseif(function_exists('mcrypt_create_iv') && $is_windows) + { + $entropy = mcrypt_create_iv($entropy_capped_bytes, MCRYPT_RAND); + } + elseif(!$is_windows && @is_readable('/dev/urandom')) + { + $fp = fopen('/dev/urandom', 'rb'); + $entropy = fread($fp, $entropy_capped_bytes); + fclose($fp); + } + else + { + $entropy = ''; + for($i = 0; $i < $entropy_capped_bytes; $i += 2) + { + $entropy .= pack('S', rand(0, 65536) ^ mt_rand(0, 65535)); + } + } + + // Mixing (see RFC 4086 section 5) + $output = ''; + for($i = 0; $i < $entropy_required_bytes; $i += 32) + { + $output .= hash('sha256', $entropy . $i . rand(), true); + } + + // Encode and return the random string + if($format === 'hex') + { + return substr(bin2hex($output), 0, $length); + } + else + { + $salt = substr(base64_encode($output), 0, $length); + $replacements = chr(rand(65, 90)) . chr(rand(97, 122)) . rand(0, 9); + return strtr($salt, '+/=', $replacements); + } + } + + /** + * @brief Generate the PBKDF2 hash of a string using a salt + * @param string $password The password + * @param string $salt The salt + * @param string $algorithm The algorithm (optional, default is sha256) + * @param int $iterations Iteration count (optional, default is 8192) + * @param int $length The length of the hash (optional, default is 32) + * @return string + */ + public function pbkdf2($password, $salt, $algorithm = 'sha256', $iterations = 8192, $length = 24) + { + if(function_exists('hash_pbkdf2')) + { + return hash_pbkdf2($algorithm, $password, $salt, $iterations, $length, true); + } + else + { + $output = ''; + $block_count = ceil($length / strlen(hash($algorithm, '', true))); // key length divided by the length of one hash + for($i = 1; $i <= $block_count; $i++) + { + $last = $salt . pack('N', $i); // $i encoded as 4 bytes, big endian + $last = $xorsum = hash_hmac($algorithm, $last, $password, true); // first iteration + for($j = 1; $j < $iterations; $j++) // The other $count - 1 iterations + { + $xorsum ^= ($last = hash_hmac($algorithm, $last, $password, true)); + } + $output .= $xorsum; + } + return substr($output, 0, $length); + } + } + + /** + * @brief Generate the bcrypt hash of a string using a salt + * @param string $password The password + * @param string $salt The salt (optional, auto-generated if empty) + * @return string + */ + public function bcrypt($password, $salt = null) + { + if($salt === null) + { + $salt = '$2y$'.sprintf('%02d', $this->getWorkFactor()).'$'.$this->createSecureSalt(22, 'alnum'); + } + return crypt($password, $salt); + } + + /** + * @brief Compare two strings in constant time + * @param string $a The first string + * @param string $b The second string + * @return bool + */ + function strcmpConstantTime($a, $b) + { + $diff = strlen($a) ^ strlen($b); + $maxlen = min(strlen($a), strlen($b)); + for($i = 0; $i < $maxlen; $i++) + { + $diff |= ord($a[$i]) ^ ord($b[$i]); + } + return $diff === 0; + } +} +/* End of file : Password.class.php */ +/* Location: ./classes/security/Password.class.php */ diff --git a/config/config.inc.php b/config/config.inc.php index f37b5eb4a..bed056b11 100644 --- a/config/config.inc.php +++ b/config/config.inc.php @@ -283,6 +283,7 @@ if(!defined('__XE_LOADED_CLASS__')) require(_XE_PATH_ . 'classes/mobile/Mobile.class.php'); require(_XE_PATH_ . 'classes/validator/Validator.class.php'); require(_XE_PATH_ . 'classes/frontendfile/FrontEndFileHandler.class.php'); + require(_XE_PATH_ . 'classes/security/Password.class.php'); require(_XE_PATH_ . 'classes/security/Security.class.php'); require(_XE_PATH_ . 'classes/security/IpFilter.class.php'); if(__DEBUG__) From 7c6b82a522405dd87b3961f11bfba20532f26e91 Mon Sep 17 00:00:00 2001 From: Kijin Sung Date: Wed, 12 Nov 2014 19:28:00 +0900 Subject: [PATCH 009/236] Modify member module to make use of improved password hashing --- modules/member/lang/lang.xml | 30 ++++++ modules/member/member.admin.controller.php | 25 ++++- modules/member/member.admin.view.php | 4 +- modules/member/member.class.php | 14 +++ modules/member/member.controller.php | 15 +-- modules/member/member.model.php | 98 ++++++++++--------- .../member/ruleset/insertDefaultConfig.xml | 3 + modules/member/tpl/default_config.html | 26 +++++ 8 files changed, 156 insertions(+), 59 deletions(-) diff --git a/modules/member/lang/lang.xml b/modules/member/lang/lang.xml index 59f123c97..1368cd301 100644 --- a/modules/member/lang/lang.xml +++ b/modules/member/lang/lang.xml @@ -1685,6 +1685,21 @@ + + + + + + + + + + + + + + + @@ -1707,6 +1722,21 @@ + + + + + + + + + + + + + + + diff --git a/modules/member/member.admin.controller.php b/modules/member/member.admin.controller.php index bb31d60b6..2897e1ee9 100644 --- a/modules/member/member.admin.controller.php +++ b/modules/member/member.admin.controller.php @@ -159,8 +159,31 @@ class memberAdminController extends member 'enable_confirm', 'webmaster_name', 'webmaster_email', - 'password_strength' + 'password_strength', + 'password_hashing_algorithm', + 'password_hashing_work_factor', + 'password_hashing_auto_upgrade' ); + + $oPassword = new Password(); + if(!array_key_exists($args->password_hashing_algorithm, $oPassword->getSupportedAlgorithms())) + { + $args->password_hashing_algorithm = 'md5'; + } + + $args->password_hashing_work_factor = intval($args->password_hashing_work_factor, 10); + if($args->password_hashing_work_factor < 4) + { + $args->password_hashing_work_factor = 4; + } + if($args->password_hashing_work_factor > 16) + { + $args->password_hashing_work_factor = 16; + } + if($args->password_hashing_auto_upgrade != 'Y') + { + $args->password_hashing_auto_upgrade = 'N'; + } if((!$args->webmaster_name || !$args->webmaster_email) && $args->enable_confirm == 'Y') { diff --git a/modules/member/member.admin.view.php b/modules/member/member.admin.view.php index d7fe43ade..f1662c382 100644 --- a/modules/member/member.admin.view.php +++ b/modules/member/member.admin.view.php @@ -129,8 +129,10 @@ class memberAdminView extends member */ public function dispMemberAdminConfig() { + $oPassword = new Password(); + Context::set('password_hashing_algos', $oPassword->getSupportedAlgorithms()); + $this->setTemplateFile('default_config'); - } public function dispMemberAdminSignUpConfig() diff --git a/modules/member/member.class.php b/modules/member/member.class.php index 10dbd9a68..ba85688f9 100644 --- a/modules/member/member.class.php +++ b/modules/member/member.class.php @@ -71,6 +71,20 @@ class member extends ModuleObject { if($config->group_image_mark!='Y') $config->group_image_mark = 'N'; if(!$config->password_strength) $config->password_strength = 'normal'; + if(!$config->password_hashing_algorithm) + { + $oPassword = new Password(); + $config->password_hashing_algorithm = $oPassword->getBestAlgorithm(); + } + if(!$config->password_hashing_work_factor) + { + $config->password_hashing_work_factor = 8; + } + if(!$config->password_hashing_auto_upgrade) + { + $config->password_hashing_auto_upgrade = 'Y'; + } + global $lang; $oMemberModel = getModel('member'); // Create a member controller object diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index 9e3b3fa25..4a86a6ff0 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -1101,7 +1101,7 @@ class memberController extends member } else { - $args->password = md5($output->data->new_password); + $args->password = getModel('member')->hashPassword($args->password); unset($args->denied); } // Back up the value of $Output->data->is_register @@ -1956,7 +1956,7 @@ class memberController extends member $message = Context::getLang('about_password_strength'); return new Object(-1, $message[$config->password_strength]); } - $args->password = md5($args->password); + $args->password = $oMemberModel->hashPassword($args->password); } elseif(!$args->password) unset($args->password); if($oMemberModel->isDeniedID($args->user_id)) return new Object(-1,'denied_user_id'); @@ -2149,7 +2149,7 @@ class memberController extends member return new Object(-1, $message[$config->password_strength]); } - $args->password = md5($args->password); + $args->password = $oMemberModel->hashPassword($args->password); } else $args->password = $orgMemberInfo->password; if(!$args->user_name) $args->user_name = $orgMemberInfo->user_name; @@ -2239,14 +2239,7 @@ class memberController extends member return new Object(-1, $message[$config->password_strength]); } - if($this->useSha1) - { - $args->password = md5(sha1(md5($args->password))); - } - else - { - $args->password = md5($args->password); - } + $args->password = $oMemberModel->hashPassword($args->password); } else if($args->hashed_password) { diff --git a/modules/member/member.model.php b/modules/member/member.model.php index f0f7f70d8..6696f906a 100644 --- a/modules/member/member.model.php +++ b/modules/member/member.model.php @@ -996,65 +996,71 @@ class memberModel extends member /** * @brief Compare plain text password to the password saved in DB + * @param string $hashed_password The hash that was saved in DB + * @param string $password_text The password to check + * @param int $member_srl Set this to member_srl when comparing a member's password (optional) + * @return bool */ function isValidPassword($hashed_password, $password_text, $member_srl=null) { // False if no password in entered - if(!$password_text) return false; - - $isSha1 = ($this->useSha1 && function_exists('sha1')); - - // Return true if the user input is equal to md5 hash value - if($hashed_password == md5($password_text)) + if(!$password_text) { - if($isSha1 && $member_srl > 0) + return false; + } + + // Check the password + $oPassword = new Password(); + $current_algorithm = $oPassword->checkAlgorithm($hashed_password); + $match = $oPassword->checkPassword($password_text, $hashed_password, $current_algorithm); + if(!$match) + { + return false; + } + + // Update the encryption method if necessary + $config = $this->getMemberConfig(); + if($member_srl > 0 && $config->password_hashing_auto_upgrade != 'N') + { + $need_upgrade = false; + + if(!$need_upgrade) + { + $required_algorithm = $oPassword->getCurrentlySelectedAlgorithm(); + if($required_algorithm !== $current_algorithm) $need_upgrade = true; + } + + if(!$need_upgrade) + { + $required_work_factor = $oPassword->getWorkFactor(); + $current_work_factor = $oPassword->checkWorkFactor($hashed_password); + if($current_work_factor !== false && $required_work_factor > $current_work_factor) $need_upgrade = true; + } + + if($need_upgrade === true) { $args = new stdClass(); $args->member_srl = $member_srl; - $args->hashed_password = md5(sha1(md5($password_text))); + $args->hashed_password = $this->hashPassword($password_text, $required_algorithm); $oMemberController = getController('member'); $oMemberController->updateMemberPassword($args); } - return true; } - - // Return true if the user input is equal to the value of mysql_pre4_hash_password - if(mysql_pre4_hash_password($password_text) == $hashed_password) - { - if($isSha1 && $member_srl > 0) - { - $args = new stdClass(); - $args->member_srl = $member_srl; - $args->hashed_password = md5(sha1(md5($password_text))); - $oMemberController = getController('member'); - $oMemberController->updateMemberPassword($args); - } - return true; - } - - // Verify the password by using old_password if the current db is MySQL. If correct, return true. - if(substr(Context::getDBType(),0,5)=='mysql') - { - $oDB = &DB::getInstance(); - if($oDB->isValidOldPassword($password_text, $hashed_password)) - { - if($isSha1 && $member_srl > 0) - { - $args = new stdClass(); - $args->member_srl = $member_srl; - $args->hashed_password = md5(sha1(md5($password_text))); - $oMemberController = getController('member'); - $oMemberController->updateMemberPassword($args); - } - return true; - } - } - - if($isSha1 && $hashed_password == md5(sha1(md5($password_text)))) return true; - - return false; + + return true; + } + + /** + * @brief Create a hash of plain text password + * @param string $password_text The password to hash + * @param string $algorithm The algorithm to use (optional, only set this when you want to use a non-default algorithm) + * @return string + */ + function hashPassword($password_text, $algorithm = null) + { + $oPassword = new Password(); + return $oPassword->createHash($password_text, $algorithm); } - function checkPasswordStrength($password, $strength) { diff --git a/modules/member/ruleset/insertDefaultConfig.xml b/modules/member/ruleset/insertDefaultConfig.xml index 0a9554629..482c00d29 100644 --- a/modules/member/ruleset/insertDefaultConfig.xml +++ b/modules/member/ruleset/insertDefaultConfig.xml @@ -7,5 +7,8 @@ + + + diff --git a/modules/member/tpl/default_config.html b/modules/member/tpl/default_config.html index ccb8d83f9..d04032437 100644 --- a/modules/member/tpl/default_config.html +++ b/modules/member/tpl/default_config.html @@ -29,6 +29,32 @@

{$lang->about_password_strength_config}

+
+ +
+ +

{$lang->about_password_hashing_algorithm}

+
+
+
+ +
+ +

{$lang->about_password_hashing_work_factor}

+
+
+
+ +
+ + +

{$lang->about_password_hashing_auto_upgrade}

+
+
From 8fd32d09beff18c33f5982f8c0c02c09cb006612 Mon Sep 17 00:00:00 2001 From: Kijin Sung Date: Thu, 13 Nov 2014 12:29:20 +0900 Subject: [PATCH 010/236] Ensure full compatibility with previous versions of XE and migration tools --- classes/security/Password.class.php | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/classes/security/Password.class.php b/classes/security/Password.class.php index 0cbeb59b3..ce4572063 100644 --- a/classes/security/Password.class.php +++ b/classes/security/Password.class.php @@ -132,22 +132,25 @@ class Password */ public function checkPassword($password, $hash, $algorithm = null) { - $password = trim($password); - if($algorithm === null) { $algorithm = $this->checkAlgorithm($hash); } - if(!array_key_exists($algorithm, $this->getSupportedAlgorithms())) - { - return false; - } + + $password = trim($password); switch($algorithm) { case 'md5': return md5($password) === $hash || md5(sha1(md5($password))) === $hash; + case 'mysql_old_password': + return (class_exists('Context') && substr(Context::getDBType(), 0, 5) === 'mysql') ? + DB::getInstance()->isValidOldPassword($password, $hash) : false; + + case 'mysql_password': + return $hash[0] === '*' && substr($hash, 1) === strtoupper(sha1(sha1($password, true))); + case 'pbkdf2': $hash = explode(':', $hash); $hash[3] = base64_decode($hash[3]); @@ -182,6 +185,14 @@ class Password { return 'md5'; } + elseif(strlen($hash) === 16 && ctype_xdigit($hash)) + { + return 'mysql_old_password'; + } + elseif(strlen($hash) === 41 && $hash[0] === '*') + { + return 'mysql_password'; + } else { return false; From 3e198f94f497f27096b9ea127c566b4169e6587b Mon Sep 17 00:00:00 2001 From: Kijin Sung Date: Fri, 14 Nov 2014 12:36:00 +0900 Subject: [PATCH 011/236] Always prefer PBKDF2 to bcrypt, for better PHP 5.2 compatibility --- classes/security/Password.class.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/classes/security/Password.class.php b/classes/security/Password.class.php index ce4572063..75ff1e039 100644 --- a/classes/security/Password.class.php +++ b/classes/security/Password.class.php @@ -19,14 +19,14 @@ class Password public function getSupportedAlgorithms() { $retval = array(); - if(version_compare(PHP_VERSION, '5.3.7', '>=') && defined('CRYPT_BLOWFISH')) - { - $retval['bcrypt'] = 'bcrypt'; - } if(function_exists('hash_hmac') && in_array('sha256', hash_algos())) { $retval['pbkdf2'] = 'pbkdf2'; } + if(version_compare(PHP_VERSION, '5.3.7', '>=') && defined('CRYPT_BLOWFISH')) + { + $retval['bcrypt'] = 'bcrypt'; + } $retval['md5'] = 'md5'; return $retval; } From ca439d4440f877a9dcc8dc311a1154f809cc1c53 Mon Sep 17 00:00:00 2001 From: Kijin Sung Date: Wed, 12 Nov 2014 19:27:47 +0900 Subject: [PATCH 012/236] Add a new class for improved password hashing --- classes/security/Password.class.php | 341 ++++++++++++++++++++++++++++ config/config.inc.php | 1 + 2 files changed, 342 insertions(+) create mode 100644 classes/security/Password.class.php diff --git a/classes/security/Password.class.php b/classes/security/Password.class.php new file mode 100644 index 000000000..0cbeb59b3 --- /dev/null +++ b/classes/security/Password.class.php @@ -0,0 +1,341 @@ + */ + +/** + * This class can be used to hash passwords using various algorithms and check their validity. + * It is fully compatible with previous defaults, while also supporting bcrypt and pbkdf2. + * + * @file Password.class.php + * @author Kijin Sung (kijin@kijinsung.com) + * @package /classes/security + * @version 1.1 + */ +class Password +{ + /** + * @brief Return the list of hashing algorithms supported by this server + * @return array + */ + public function getSupportedAlgorithms() + { + $retval = array(); + if(version_compare(PHP_VERSION, '5.3.7', '>=') && defined('CRYPT_BLOWFISH')) + { + $retval['bcrypt'] = 'bcrypt'; + } + if(function_exists('hash_hmac') && in_array('sha256', hash_algos())) + { + $retval['pbkdf2'] = 'pbkdf2'; + } + $retval['md5'] = 'md5'; + return $retval; + } + + /** + * @brief Return the best hashing algorithm supported by this server + * @return string + */ + public function getBestAlgorithm() + { + $algos = $this->getSupportedAlgorithms(); + return key($algos); + } + + /** + * @brief Return the currently selected hashing algorithm + * @return string + */ + public function getCurrentlySelectedAlgorithm() + { + if(function_exists('getModel')) + { + $config = getModel('member')->getMemberConfig(); + $algorithm = $config->password_hashing_algorithm; + if(strval($algorithm) === '') + { + $algorithm = 'md5'; // Historical default for XE + } + } + else + { + $algorithm = 'md5'; + } + return $algorithm; + } + + /** + * @brief Return the currently configured work factor for bcrypt and other adjustable algorithms + * @return int + */ + public function getWorkFactor() + { + if(function_exists('getModel')) + { + $config = getModel('member')->getMemberConfig(); + $work_factor = $config->password_hashing_work_factor; + if(!$work_factor || $work_factor < 4 || $work_factor > 31) + { + $work_factor = 8; // Reasonable default + } + } + else + { + $work_factor = 8; + } + return $work_factor; + } + + /** + * @brief Create a hash using the specified algorithm + * @param string $password The password + * @param string $algorithm The algorithm (optional) + * @return string + */ + public function createHash($password, $algorithm = null) + { + if($algorithm === null) + { + $algorithm = $this->getCurrentlySelectedAlgorithm(); + } + if(!array_key_exists($algorithm, $this->getSupportedAlgorithms())) + { + return false; + } + + $password = trim($password); + + switch($algorithm) + { + case 'md5': + return md5($password); + + case 'pbkdf2': + $iterations = pow(2, $this->getWorkFactor() + 5); + $salt = $this->createSecureSalt(12); + $hash = base64_encode($this->pbkdf2($password, $salt, 'sha256', $iterations, 24)); + return 'sha256:'.sprintf('%07d', $iterations).':'.$salt.':'.$hash; + + case 'bcrypt': + return $this->bcrypt($password); + + default: + return false; + } + } + + /** + * @brief Check if a password matches a hash + * @param string $password The password + * @param string $hash The hash + * @param string $algorithm The algorithm (optional) + * @return bool + */ + public function checkPassword($password, $hash, $algorithm = null) + { + $password = trim($password); + + if($algorithm === null) + { + $algorithm = $this->checkAlgorithm($hash); + } + if(!array_key_exists($algorithm, $this->getSupportedAlgorithms())) + { + return false; + } + + switch($algorithm) + { + case 'md5': + return md5($password) === $hash || md5(sha1(md5($password))) === $hash; + + case 'pbkdf2': + $hash = explode(':', $hash); + $hash[3] = base64_decode($hash[3]); + $hash_to_compare = $this->pbkdf2($password, $hash[2], $hash[0], intval($hash[1], 10), strlen($hash[3])); + return $this->strcmpConstantTime($hash_to_compare, $hash[3]); + + case 'bcrypt': + $hash_to_compare = $this->bcrypt($password, $hash); + return $this->strcmpConstantTime($hash_to_compare, $hash); + + default: + return false; + } + } + + /** + * @brief Check the algorithm used to create a hash + * @param string $hash The hash + * @return string + */ + function checkAlgorithm($hash) + { + if(preg_match('/^\$2[axy]\$([0-9]{2})\$/', $hash, $matches)) + { + return 'bcrypt'; + } + elseif(preg_match('/^sha[0-9]+:([0-9]+):/', $hash, $matches)) + { + return 'pbkdf2'; + } + elseif(strlen($hash) === 32 && ctype_xdigit($hash)) + { + return 'md5'; + } + else + { + return false; + } + } + + /** + * @brief Check the work factor of a hash + * @param string $hash The hash + * @return int + */ + function checkWorkFactor($hash) + { + if(preg_match('/^\$2[axy]\$([0-9]{2})\$/', $hash, $matches)) + { + return intval($matches[1], 10); + } + elseif(preg_match('/^sha[0-9]+:([0-9]+):/', $hash, $matches)) + { + return max(0, round(log($matches[1], 2)) - 5); + } + else + { + return false; + } + } + + /** + * @brief Generate a cryptographically secure random string to use as a salt + * @param int $length The number of bytes to return + * @param string $format hex or alnum + * @return string + */ + public function createSecureSalt($length, $format = 'hex') + { + // Find out how many bytes of entropy we really need + $entropy_required_bytes = ceil(($format === 'hex') ? ($length / 2) : ($length * 3 / 4)); + + // Cap entropy to 256 bits from any one source, because anything more is meaningless + $entropy_capped_bytes = min(32, $entropy_required_bytes); + + // Find and use the most secure way to generate a random string + $is_windows = (defined('PHP_OS') && strtoupper(substr(PHP_OS, 0, 3)) === 'WIN'); + if(function_exists('openssl_random_pseudo_bytes') && (!$is_windows || version_compare(PHP_VERSION, '5.4', '>='))) + { + $entropy = openssl_random_pseudo_bytes($entropy_capped_bytes); + } + elseif(function_exists('mcrypt_create_iv') && (!$is_windows || version_compare(PHP_VERSION, '5.3.7', '>='))) + { + $entropy = mcrypt_create_iv($entropy_capped_bytes, MCRYPT_DEV_URANDOM); + } + elseif(function_exists('mcrypt_create_iv') && $is_windows) + { + $entropy = mcrypt_create_iv($entropy_capped_bytes, MCRYPT_RAND); + } + elseif(!$is_windows && @is_readable('/dev/urandom')) + { + $fp = fopen('/dev/urandom', 'rb'); + $entropy = fread($fp, $entropy_capped_bytes); + fclose($fp); + } + else + { + $entropy = ''; + for($i = 0; $i < $entropy_capped_bytes; $i += 2) + { + $entropy .= pack('S', rand(0, 65536) ^ mt_rand(0, 65535)); + } + } + + // Mixing (see RFC 4086 section 5) + $output = ''; + for($i = 0; $i < $entropy_required_bytes; $i += 32) + { + $output .= hash('sha256', $entropy . $i . rand(), true); + } + + // Encode and return the random string + if($format === 'hex') + { + return substr(bin2hex($output), 0, $length); + } + else + { + $salt = substr(base64_encode($output), 0, $length); + $replacements = chr(rand(65, 90)) . chr(rand(97, 122)) . rand(0, 9); + return strtr($salt, '+/=', $replacements); + } + } + + /** + * @brief Generate the PBKDF2 hash of a string using a salt + * @param string $password The password + * @param string $salt The salt + * @param string $algorithm The algorithm (optional, default is sha256) + * @param int $iterations Iteration count (optional, default is 8192) + * @param int $length The length of the hash (optional, default is 32) + * @return string + */ + public function pbkdf2($password, $salt, $algorithm = 'sha256', $iterations = 8192, $length = 24) + { + if(function_exists('hash_pbkdf2')) + { + return hash_pbkdf2($algorithm, $password, $salt, $iterations, $length, true); + } + else + { + $output = ''; + $block_count = ceil($length / strlen(hash($algorithm, '', true))); // key length divided by the length of one hash + for($i = 1; $i <= $block_count; $i++) + { + $last = $salt . pack('N', $i); // $i encoded as 4 bytes, big endian + $last = $xorsum = hash_hmac($algorithm, $last, $password, true); // first iteration + for($j = 1; $j < $iterations; $j++) // The other $count - 1 iterations + { + $xorsum ^= ($last = hash_hmac($algorithm, $last, $password, true)); + } + $output .= $xorsum; + } + return substr($output, 0, $length); + } + } + + /** + * @brief Generate the bcrypt hash of a string using a salt + * @param string $password The password + * @param string $salt The salt (optional, auto-generated if empty) + * @return string + */ + public function bcrypt($password, $salt = null) + { + if($salt === null) + { + $salt = '$2y$'.sprintf('%02d', $this->getWorkFactor()).'$'.$this->createSecureSalt(22, 'alnum'); + } + return crypt($password, $salt); + } + + /** + * @brief Compare two strings in constant time + * @param string $a The first string + * @param string $b The second string + * @return bool + */ + function strcmpConstantTime($a, $b) + { + $diff = strlen($a) ^ strlen($b); + $maxlen = min(strlen($a), strlen($b)); + for($i = 0; $i < $maxlen; $i++) + { + $diff |= ord($a[$i]) ^ ord($b[$i]); + } + return $diff === 0; + } +} +/* End of file : Password.class.php */ +/* Location: ./classes/security/Password.class.php */ diff --git a/config/config.inc.php b/config/config.inc.php index b79323919..fed228d7d 100644 --- a/config/config.inc.php +++ b/config/config.inc.php @@ -314,6 +314,7 @@ if(!defined('__XE_LOADED_CLASS__')) require(_XE_PATH_ . 'classes/mobile/Mobile.class.php'); require(_XE_PATH_ . 'classes/validator/Validator.class.php'); require(_XE_PATH_ . 'classes/frontendfile/FrontEndFileHandler.class.php'); + require(_XE_PATH_ . 'classes/security/Password.class.php'); require(_XE_PATH_ . 'classes/security/Security.class.php'); require(_XE_PATH_ . 'classes/security/IpFilter.class.php'); if(__DEBUG__) From 837977e26f3176aff322094e034a9568e11d94b4 Mon Sep 17 00:00:00 2001 From: Kijin Sung Date: Wed, 12 Nov 2014 19:28:00 +0900 Subject: [PATCH 013/236] Modify member module to make use of improved password hashing --- modules/member/lang/lang.xml | 30 ++++++ modules/member/member.admin.controller.php | 25 ++++- modules/member/member.admin.view.php | 4 +- modules/member/member.class.php | 14 +++ modules/member/member.controller.php | 15 +-- modules/member/member.model.php | 98 ++++++++++--------- .../member/ruleset/insertDefaultConfig.xml | 3 + modules/member/tpl/default_config.html | 26 +++++ 8 files changed, 156 insertions(+), 59 deletions(-) diff --git a/modules/member/lang/lang.xml b/modules/member/lang/lang.xml index 5bfa9928a..a62da2f1e 100644 --- a/modules/member/lang/lang.xml +++ b/modules/member/lang/lang.xml @@ -1699,6 +1699,21 @@ + + + + + + + + + + + + + + + @@ -1721,6 +1736,21 @@ + + + + + + + + + + + + + + + diff --git a/modules/member/member.admin.controller.php b/modules/member/member.admin.controller.php index 1b951187f..13140c91c 100644 --- a/modules/member/member.admin.controller.php +++ b/modules/member/member.admin.controller.php @@ -159,8 +159,31 @@ class memberAdminController extends member 'enable_confirm', 'webmaster_name', 'webmaster_email', - 'password_strength' + 'password_strength', + 'password_hashing_algorithm', + 'password_hashing_work_factor', + 'password_hashing_auto_upgrade' ); + + $oPassword = new Password(); + if(!array_key_exists($args->password_hashing_algorithm, $oPassword->getSupportedAlgorithms())) + { + $args->password_hashing_algorithm = 'md5'; + } + + $args->password_hashing_work_factor = intval($args->password_hashing_work_factor, 10); + if($args->password_hashing_work_factor < 4) + { + $args->password_hashing_work_factor = 4; + } + if($args->password_hashing_work_factor > 16) + { + $args->password_hashing_work_factor = 16; + } + if($args->password_hashing_auto_upgrade != 'Y') + { + $args->password_hashing_auto_upgrade = 'N'; + } if((!$args->webmaster_name || !$args->webmaster_email) && $args->enable_confirm == 'Y') { diff --git a/modules/member/member.admin.view.php b/modules/member/member.admin.view.php index d7fe43ade..f1662c382 100644 --- a/modules/member/member.admin.view.php +++ b/modules/member/member.admin.view.php @@ -129,8 +129,10 @@ class memberAdminView extends member */ public function dispMemberAdminConfig() { + $oPassword = new Password(); + Context::set('password_hashing_algos', $oPassword->getSupportedAlgorithms()); + $this->setTemplateFile('default_config'); - } public function dispMemberAdminSignUpConfig() diff --git a/modules/member/member.class.php b/modules/member/member.class.php index 10dbd9a68..ba85688f9 100644 --- a/modules/member/member.class.php +++ b/modules/member/member.class.php @@ -71,6 +71,20 @@ class member extends ModuleObject { if($config->group_image_mark!='Y') $config->group_image_mark = 'N'; if(!$config->password_strength) $config->password_strength = 'normal'; + if(!$config->password_hashing_algorithm) + { + $oPassword = new Password(); + $config->password_hashing_algorithm = $oPassword->getBestAlgorithm(); + } + if(!$config->password_hashing_work_factor) + { + $config->password_hashing_work_factor = 8; + } + if(!$config->password_hashing_auto_upgrade) + { + $config->password_hashing_auto_upgrade = 'Y'; + } + global $lang; $oMemberModel = getModel('member'); // Create a member controller object diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index dc1ae7401..34dc7f01a 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -1114,7 +1114,7 @@ class memberController extends member } else { - $args->password = md5($output->data->new_password); + $args->password = getModel('member')->hashPassword($args->password); unset($args->denied); } // Back up the value of $Output->data->is_register @@ -1969,7 +1969,7 @@ class memberController extends member $message = Context::getLang('about_password_strength'); return new Object(-1, $message[$config->password_strength]); } - $args->password = md5($args->password); + $args->password = $oMemberModel->hashPassword($args->password); } elseif(!$args->password) unset($args->password); if($oMemberModel->isDeniedID($args->user_id)) return new Object(-1,'denied_user_id'); @@ -2162,7 +2162,7 @@ class memberController extends member return new Object(-1, $message[$config->password_strength]); } - $args->password = md5($args->password); + $args->password = $oMemberModel->hashPassword($args->password); } else $args->password = $orgMemberInfo->password; if(!$args->user_name) $args->user_name = $orgMemberInfo->user_name; @@ -2252,14 +2252,7 @@ class memberController extends member return new Object(-1, $message[$config->password_strength]); } - if($this->useSha1) - { - $args->password = md5(sha1(md5($args->password))); - } - else - { - $args->password = md5($args->password); - } + $args->password = $oMemberModel->hashPassword($args->password); } else if($args->hashed_password) { diff --git a/modules/member/member.model.php b/modules/member/member.model.php index f0f7f70d8..6696f906a 100644 --- a/modules/member/member.model.php +++ b/modules/member/member.model.php @@ -996,65 +996,71 @@ class memberModel extends member /** * @brief Compare plain text password to the password saved in DB + * @param string $hashed_password The hash that was saved in DB + * @param string $password_text The password to check + * @param int $member_srl Set this to member_srl when comparing a member's password (optional) + * @return bool */ function isValidPassword($hashed_password, $password_text, $member_srl=null) { // False if no password in entered - if(!$password_text) return false; - - $isSha1 = ($this->useSha1 && function_exists('sha1')); - - // Return true if the user input is equal to md5 hash value - if($hashed_password == md5($password_text)) + if(!$password_text) { - if($isSha1 && $member_srl > 0) + return false; + } + + // Check the password + $oPassword = new Password(); + $current_algorithm = $oPassword->checkAlgorithm($hashed_password); + $match = $oPassword->checkPassword($password_text, $hashed_password, $current_algorithm); + if(!$match) + { + return false; + } + + // Update the encryption method if necessary + $config = $this->getMemberConfig(); + if($member_srl > 0 && $config->password_hashing_auto_upgrade != 'N') + { + $need_upgrade = false; + + if(!$need_upgrade) + { + $required_algorithm = $oPassword->getCurrentlySelectedAlgorithm(); + if($required_algorithm !== $current_algorithm) $need_upgrade = true; + } + + if(!$need_upgrade) + { + $required_work_factor = $oPassword->getWorkFactor(); + $current_work_factor = $oPassword->checkWorkFactor($hashed_password); + if($current_work_factor !== false && $required_work_factor > $current_work_factor) $need_upgrade = true; + } + + if($need_upgrade === true) { $args = new stdClass(); $args->member_srl = $member_srl; - $args->hashed_password = md5(sha1(md5($password_text))); + $args->hashed_password = $this->hashPassword($password_text, $required_algorithm); $oMemberController = getController('member'); $oMemberController->updateMemberPassword($args); } - return true; } - - // Return true if the user input is equal to the value of mysql_pre4_hash_password - if(mysql_pre4_hash_password($password_text) == $hashed_password) - { - if($isSha1 && $member_srl > 0) - { - $args = new stdClass(); - $args->member_srl = $member_srl; - $args->hashed_password = md5(sha1(md5($password_text))); - $oMemberController = getController('member'); - $oMemberController->updateMemberPassword($args); - } - return true; - } - - // Verify the password by using old_password if the current db is MySQL. If correct, return true. - if(substr(Context::getDBType(),0,5)=='mysql') - { - $oDB = &DB::getInstance(); - if($oDB->isValidOldPassword($password_text, $hashed_password)) - { - if($isSha1 && $member_srl > 0) - { - $args = new stdClass(); - $args->member_srl = $member_srl; - $args->hashed_password = md5(sha1(md5($password_text))); - $oMemberController = getController('member'); - $oMemberController->updateMemberPassword($args); - } - return true; - } - } - - if($isSha1 && $hashed_password == md5(sha1(md5($password_text)))) return true; - - return false; + + return true; + } + + /** + * @brief Create a hash of plain text password + * @param string $password_text The password to hash + * @param string $algorithm The algorithm to use (optional, only set this when you want to use a non-default algorithm) + * @return string + */ + function hashPassword($password_text, $algorithm = null) + { + $oPassword = new Password(); + return $oPassword->createHash($password_text, $algorithm); } - function checkPasswordStrength($password, $strength) { diff --git a/modules/member/ruleset/insertDefaultConfig.xml b/modules/member/ruleset/insertDefaultConfig.xml index 0a9554629..482c00d29 100644 --- a/modules/member/ruleset/insertDefaultConfig.xml +++ b/modules/member/ruleset/insertDefaultConfig.xml @@ -7,5 +7,8 @@ + + + diff --git a/modules/member/tpl/default_config.html b/modules/member/tpl/default_config.html index ccb8d83f9..d04032437 100644 --- a/modules/member/tpl/default_config.html +++ b/modules/member/tpl/default_config.html @@ -29,6 +29,32 @@

{$lang->about_password_strength_config}

+
+ +
+ +

{$lang->about_password_hashing_algorithm}

+
+
+
+ +
+ +

{$lang->about_password_hashing_work_factor}

+
+
+
+ +
+ + +

{$lang->about_password_hashing_auto_upgrade}

+
+
From 3923bf40fc81432aa1e974683d2b2bd202fec0e7 Mon Sep 17 00:00:00 2001 From: Kijin Sung Date: Thu, 13 Nov 2014 12:29:20 +0900 Subject: [PATCH 014/236] Ensure full compatibility with previous versions of XE and migration tools --- classes/security/Password.class.php | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/classes/security/Password.class.php b/classes/security/Password.class.php index 0cbeb59b3..ce4572063 100644 --- a/classes/security/Password.class.php +++ b/classes/security/Password.class.php @@ -132,22 +132,25 @@ class Password */ public function checkPassword($password, $hash, $algorithm = null) { - $password = trim($password); - if($algorithm === null) { $algorithm = $this->checkAlgorithm($hash); } - if(!array_key_exists($algorithm, $this->getSupportedAlgorithms())) - { - return false; - } + + $password = trim($password); switch($algorithm) { case 'md5': return md5($password) === $hash || md5(sha1(md5($password))) === $hash; + case 'mysql_old_password': + return (class_exists('Context') && substr(Context::getDBType(), 0, 5) === 'mysql') ? + DB::getInstance()->isValidOldPassword($password, $hash) : false; + + case 'mysql_password': + return $hash[0] === '*' && substr($hash, 1) === strtoupper(sha1(sha1($password, true))); + case 'pbkdf2': $hash = explode(':', $hash); $hash[3] = base64_decode($hash[3]); @@ -182,6 +185,14 @@ class Password { return 'md5'; } + elseif(strlen($hash) === 16 && ctype_xdigit($hash)) + { + return 'mysql_old_password'; + } + elseif(strlen($hash) === 41 && $hash[0] === '*') + { + return 'mysql_password'; + } else { return false; From 2df137e82b2a7e1715058c48017ea7e0ebafdbd1 Mon Sep 17 00:00:00 2001 From: Kijin Sung Date: Fri, 14 Nov 2014 12:36:00 +0900 Subject: [PATCH 015/236] Always prefer PBKDF2 to bcrypt, for better PHP 5.2 compatibility --- classes/security/Password.class.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/classes/security/Password.class.php b/classes/security/Password.class.php index ce4572063..75ff1e039 100644 --- a/classes/security/Password.class.php +++ b/classes/security/Password.class.php @@ -19,14 +19,14 @@ class Password public function getSupportedAlgorithms() { $retval = array(); - if(version_compare(PHP_VERSION, '5.3.7', '>=') && defined('CRYPT_BLOWFISH')) - { - $retval['bcrypt'] = 'bcrypt'; - } if(function_exists('hash_hmac') && in_array('sha256', hash_algos())) { $retval['pbkdf2'] = 'pbkdf2'; } + if(version_compare(PHP_VERSION, '5.3.7', '>=') && defined('CRYPT_BLOWFISH')) + { + $retval['bcrypt'] = 'bcrypt'; + } $retval['md5'] = 'md5'; return $retval; } From 623ef0e36b684d6e278fb8144e22d24056acdc4a Mon Sep 17 00:00:00 2001 From: SMaker Date: Sun, 9 Feb 2014 23:45:34 +0900 Subject: [PATCH 016/236] =?UTF-8?q?Router=20=EA=B8=B0=EB=8A=A5=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .htaccess | 36 +---- classes/context/Context.class.php | 12 +- classes/router/Router.class.php | 240 ++++++++++++++++++++++++++++++ config/config.inc.php | 1 + 4 files changed, 255 insertions(+), 34 deletions(-) create mode 100644 classes/router/Router.class.php diff --git a/.htaccess b/.htaccess index 89ecf951f..43536f5e9 100644 --- a/.htaccess +++ b/.htaccess @@ -15,37 +15,7 @@ RewriteRule ^(.+)/files/(member_extra_info|attach|cache|faceOff)/(.*) ./files/$2 RewriteCond %{SCRIPT_FILENAME} !-f RewriteRule ^(.+)/(files|modules|widgets|widgetstyles|layouts|m.layouts|addons)/(.*) ./$2/$3 [L] -# rss , blogAPI -RewriteRule ^(rss|atom)$ ./index.php?module=rss&act=$1 [L] -RewriteRule ^([a-zA-Z0-9_]+)/(rss|atom|api)$ ./index.php?mid=$1&act=$2 [L] -RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/(rss|atom|api)$ ./index.php?vid=$1&mid=$2&act=$3 [L] - -# trackback -RewriteRule ^([0-9]+)/(.+)/trackback$ ./index.php?document_srl=$1&key=$2&act=trackback [L] -RewriteRule ^([a-zA-Z0-9_]+)/([0-9]+)/(.+)/trackback$ ./index.php?mid=$1&document_srl=$2&key=$3&act=trackback [L] -RewriteRule ^([a-zA-Z0-9_]+)/([0-9]+)/(.+)/trackback$ ./index.php?vid=$1&document_srl=$2&key=$3&act=trackback [L] -RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([0-9]+)/(.+)/trackback$ ./index.php?vid=$1&mid=$2&document_srl=$3&key=$4&act=trackback [L] - -# document permanent link -RewriteRule ^([0-9]+)$ ./index.php?document_srl=$1 [L,QSA] - -# mid link -RewriteCond %{SCRIPT_FILENAME} !-d -RewriteRule ^([a-zA-Z0-9_]+)/?$ ./index.php?mid=$1 [L,QSA] -# mid + document link -RewriteRule ^([a-zA-Z0-9_]+)/([0-9]+)$ ./index.php?mid=$1&document_srl=$2 [L,QSA] - -# vid + mid link -RewriteCond %{SCRIPT_FILENAME} !-d -RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/?$ ./index.php?vid=$1&mid=$2 [L,QSA] -# vid + mid + document link -RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([0-9]+)$ ./index.php?vid=$1&mid=$2&document_srl=$3 [L,QSA] - -# mid + entry title -RewriteRule ^([a-zA-Z0-9_]+)/entry/(.+)$ ./index.php?mid=$1&entry=$2 [L,QSA] -# vid + mid + entry title -RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/entry/(.+)$ ./index.php?vid=$1&mid=$2&entry=$3 [L,QSA] - -#shop / vid / [category|product] / identifier +# router RewriteCond %{SCRIPT_FILENAME} !-f -RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_\.-]+)$ ./index.php?act=route&vid=$1&type=$2&identifier=$3 [L,QSA] +RewriteCond %{SCRIPT_FILENAME} !-d +RewriteRule ^(.*)$ ./index.php [L] diff --git a/classes/context/Context.class.php b/classes/context/Context.class.php index fec8c5449..f93227338 100644 --- a/classes/context/Context.class.php +++ b/classes/context/Context.class.php @@ -366,6 +366,13 @@ class Context // check if using rewrite module $this->allow_rewrite = ($this->db_info->use_rewrite == 'Y' ? TRUE : FALSE); + // If using rewrite module, initializes router + if($this->allow_rewrite) + { + $oRouter = Router::getInstance(); + $oRouter->proc(); + } + // set locations for javascript use if($_SERVER['REQUEST_METHOD'] == 'GET') { @@ -1568,7 +1575,10 @@ class Context 'act.document_srl.key.mid.vid' => ($act == 'trackback') ? "$vid/$mid/$srl/$key/$act" : '' ); - $query = $target_map[$target]; + $oRouter = Router::getInstance(); + $oRouter->setMap($target_map); + + $query = $oRouter->makePrettyUrl($target); } if(!$query) diff --git a/classes/router/Router.class.php b/classes/router/Router.class.php new file mode 100644 index 000000000..d71a23854 --- /dev/null +++ b/classes/router/Router.class.php @@ -0,0 +1,240 @@ + 0) + { + self::$segments = explode('/', $path); + + // Remove the meanless segment + unset(self::$segments[0]); + } + + $self = Router::getInstance(); + + // Set default routes + $self->routes = array( + // rss , blogAPI + '(rss|atom)' => array('module' => 'rss', 'act' => '$1'), + '([a-zA-Z0-9_]+)/(rss|atom|api)' => array('mid' => '$1', 'act' => '$2'), + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/(rss|atom|api)' => array('vid' => '$1', 'mid' => '$2', 'act' => '$3'), + // trackback + '([0-9]+)/(.+)/trackback' => array('document_srl' => '$1', 'key' => '$2', 'act' => 'trackback'), + '([a-zA-Z0-9_]+)/([0-9]+)/(.+)/trackback' => array('mid' => '$1', 'document_srl' => '$2', 'key' => '$3', 'act' => 'trackback'), + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([0-9]+)/(.+)/trackback' => array('vid' => '$1', 'mid' => '$2', 'document_srl' => '$3' , 'key' => '$4', 'act' => 'trackback'), + // mid + '([a-zA-Z0-9_]+)/?' => array('mid' => '$1'), + // mid + document_srl + '([a-zA-Z0-9_]+)/([0-9]+)' => array('mid' => '$1', 'document_srl' => '$2'), + // vid + mid + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/' => array('vid' => '$1', 'mid' => '$2'), + // vid + mid + document_srl + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([0-9]+)?' => array('vid' => '$1', 'mid' => '$2', 'document_srl' => '$3'), + // document_srl + '([0-9]+)' => array('document_srl' => '$1'), + // mid + entry title + '([a-zA-Z0-9_]+)/entry/(.+)' => array('mid' => '$1', 'entry' => '$2'), + // vid + mid + entry title + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/entry/(.+)' => array('vid' => '$1', 'mid' => '$2', 'entry' => '$3'), + // shop / vid / [category|product] / identifier + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_\.-]+)' => array('act' => 'route', 'vid' => '$1', 'type' => '$2', 'identifier'=> '$3'), + ); + + if(isset($self->routes[$path])) + { + foreach($self->routes[$path] as $key => $val) + { + $val = preg_replace('#^\$([0-9]+)$#e', '\$matches[$1]', $val); + + Context::set($key, $val, TRUE); + } + + return; + } + + // Apply routes + foreach($self->routes as $regex => $query) + { + if(preg_match('#^' . $regex . '$#', $path, $matches)) + { + foreach($query as $key => $val) + { + $val = preg_replace('#^\$([0-9]+)$#e', '\$matches[$1]', $val); + + Context::set($key, $val, TRUE); + } + } + } + } + + /** + * @brief Add a rewrite map(s) + * @param array $map + * @return void + */ + public function setMap($map) + { + $self = Router::getInstance(); + $self->rewrite_map = array_merge($self->rewrite_map, $map); + } + + /** + * @brief Add a route + * @param string $target + * @param array $query + * @return void + */ + public function add($target, $query) + { + $self = Router::getInstance(); + $self->routes[$target] = $query; + } + + /** + * @brief Add multiple routes + * @param array $routes + * @return void + */ + public function adds($routes) + { + $self = Router::getInstance(); + $self->routes = array_merge($self->routes, $routes); + } + + /** + * @brief Get segment from request uri + * @param int $index + * @return string + */ + public function getSegment($index) + { + $self = Router::getInstance(); + return $self->segments[$index]; + } + + + /** + * @brief Get segment from request uri + * @param int $index + * @return string + */ + public function getSegments() + { + $self = Router::getInstance(); + return $self->segments; + } + + /** + * @brief Get route info + * @param string $regex + * @return array + */ + public function getRoute($regex) + { + $self = Router::getInstance(); + return $self->routes[$regex]; + } + + /** + * @brief Get routes list + * @return array + */ + public function getRoutes() + { + $self = Router::getInstance(); + return $self->routes; + } + + /** + * @brief Get routes list + * @param string $regex + * @return boolean + */ + public function isExistsRoute($regex) + { + $self = Router::getInstance(); + return isset($self->routes[$regex]); + } + + /** + * @brief Makes shortten url + * @param string $regex + * @return string + */ + public function makePrettyUrl($regex) + { + $self = Router::getInstance(); + return $self->rewrite_map[$regex]; + } +} \ No newline at end of file diff --git a/config/config.inc.php b/config/config.inc.php index 16530850a..b79323919 100644 --- a/config/config.inc.php +++ b/config/config.inc.php @@ -299,6 +299,7 @@ if(!defined('__XE_LOADED_CLASS__')) require(_XE_PATH_ . 'classes/xml/XmlJsFilter.class.php'); require(_XE_PATH_ . 'classes/xml/XmlLangParser.class.php'); require(_XE_PATH_ . 'classes/cache/CacheHandler.class.php'); + require(_XE_PATH_ . 'classes/router/Router.class.php'); require(_XE_PATH_ . 'classes/context/Context.class.php'); require(_XE_PATH_ . 'classes/db/DB.class.php'); require(_XE_PATH_ . 'classes/file/FileHandler.class.php'); From b52421457201f1fdf1f061b7dd3e3caa699d0f88 Mon Sep 17 00:00:00 2001 From: SMaker Date: Thu, 13 Feb 2014 12:23:01 +0900 Subject: [PATCH 017/236] =?UTF-8?q?singleton=20=EA=B0=9D=EC=B2=B4=EB=A5=BC?= =?UTF-8?q?=20=EC=82=AC=EC=9A=A9=ED=95=98=EB=8A=94=20=EB=8C=80=EC=8B=A0?= =?UTF-8?q?=EC=97=90=20static=20method=EB=A1=9C=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- classes/context/Context.class.php | 8 +- classes/router/Router.class.php | 131 +++++++++++------------------- 2 files changed, 51 insertions(+), 88 deletions(-) diff --git a/classes/context/Context.class.php b/classes/context/Context.class.php index f93227338..7c0918a03 100644 --- a/classes/context/Context.class.php +++ b/classes/context/Context.class.php @@ -369,8 +369,7 @@ class Context // If using rewrite module, initializes router if($this->allow_rewrite) { - $oRouter = Router::getInstance(); - $oRouter->proc(); + Router::proc(); } // set locations for javascript use @@ -1575,10 +1574,9 @@ class Context 'act.document_srl.key.mid.vid' => ($act == 'trackback') ? "$vid/$mid/$srl/$key/$act" : '' ); - $oRouter = Router::getInstance(); - $oRouter->setMap($target_map); + Router::setMap($target_map); - $query = $oRouter->makePrettyUrl($target); + $query = Router::makePrettyUrl($target); } if(!$query) diff --git a/classes/router/Router.class.php b/classes/router/Router.class.php index d71a23854..94de130b3 100644 --- a/classes/router/Router.class.php +++ b/classes/router/Router.class.php @@ -6,12 +6,6 @@ */ class Router { - /** - * Singleton - * @var object - */ - private static $theInstance = null; - /** * URI Segments * @var array @@ -22,35 +16,45 @@ class Router * Routes * @var array */ - private $routes = array(); + private static $routes = array( + // rss , blogAPI + '(rss|atom)' => array('module' => 'rss', 'act' => '$1'), + '([a-zA-Z0-9_]+)/(rss|atom|api)' => array('mid' => '$1', 'act' => '$2'), + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/(rss|atom|api)' => array('vid' => '$1', 'mid' => '$2', 'act' => '$3'), + // trackback + '([0-9]+)/(.+)/trackback' => array('document_srl' => '$1', 'key' => '$2', 'act' => 'trackback'), + '([a-zA-Z0-9_]+)/([0-9]+)/(.+)/trackback' => array('mid' => '$1', 'document_srl' => '$2', 'key' => '$3', 'act' => 'trackback'), + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([0-9]+)/(.+)/trackback' => array('vid' => '$1', 'mid' => '$2', 'document_srl' => '$3' , 'key' => '$4', 'act' => 'trackback'), + // mid + '([a-zA-Z0-9_]+)/?' => array('mid' => '$1'), + // mid + document_srl + '([a-zA-Z0-9_]+)/([0-9]+)' => array('mid' => '$1', 'document_srl' => '$2'), + // vid + mid + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/' => array('vid' => '$1', 'mid' => '$2'), + // vid + mid + document_srl + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([0-9]+)?' => array('vid' => '$1', 'mid' => '$2', 'document_srl' => '$3'), + // document_srl + '([0-9]+)' => array('document_srl' => '$1'), + // mid + entry title + '([a-zA-Z0-9_]+)/entry/(.+)' => array('mid' => '$1', 'entry' => '$2'), + // vid + mid + entry title + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/entry/(.+)' => array('vid' => '$1', 'mid' => '$2', 'entry' => '$3'), + // shop / vid / [category|product] / identifier + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_\.-]+)' => array('act' => 'route', 'vid' => '$1', 'type' => '$2', 'identifier'=> '$3') + ); /** * Rewrite map * @var array */ - private $rewrite_map = array(); - - /** - * @brief returns static context object (Singleton). It's to use Router without declaration of an object - * @return object Instance - */ - public static function getInstance() - { - if(!isset(self::$theInstance)) - { - self::$theInstance = new Router(); - } - - return self::$theInstance; - } - + private static $rewrite_map = array(); /** * @brief Applys routes. * @see This function should be called only once * @return void */ - public function proc() + public static function proc() { $uri = $_SERVER['REQUEST_URI']; @@ -81,39 +85,9 @@ class Router unset(self::$segments[0]); } - $self = Router::getInstance(); - - // Set default routes - $self->routes = array( - // rss , blogAPI - '(rss|atom)' => array('module' => 'rss', 'act' => '$1'), - '([a-zA-Z0-9_]+)/(rss|atom|api)' => array('mid' => '$1', 'act' => '$2'), - '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/(rss|atom|api)' => array('vid' => '$1', 'mid' => '$2', 'act' => '$3'), - // trackback - '([0-9]+)/(.+)/trackback' => array('document_srl' => '$1', 'key' => '$2', 'act' => 'trackback'), - '([a-zA-Z0-9_]+)/([0-9]+)/(.+)/trackback' => array('mid' => '$1', 'document_srl' => '$2', 'key' => '$3', 'act' => 'trackback'), - '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([0-9]+)/(.+)/trackback' => array('vid' => '$1', 'mid' => '$2', 'document_srl' => '$3' , 'key' => '$4', 'act' => 'trackback'), - // mid - '([a-zA-Z0-9_]+)/?' => array('mid' => '$1'), - // mid + document_srl - '([a-zA-Z0-9_]+)/([0-9]+)' => array('mid' => '$1', 'document_srl' => '$2'), - // vid + mid - '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/' => array('vid' => '$1', 'mid' => '$2'), - // vid + mid + document_srl - '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([0-9]+)?' => array('vid' => '$1', 'mid' => '$2', 'document_srl' => '$3'), - // document_srl - '([0-9]+)' => array('document_srl' => '$1'), - // mid + entry title - '([a-zA-Z0-9_]+)/entry/(.+)' => array('mid' => '$1', 'entry' => '$2'), - // vid + mid + entry title - '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/entry/(.+)' => array('vid' => '$1', 'mid' => '$2', 'entry' => '$3'), - // shop / vid / [category|product] / identifier - '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_\.-]+)' => array('act' => 'route', 'vid' => '$1', 'type' => '$2', 'identifier'=> '$3'), - ); - - if(isset($self->routes[$path])) + if(isset(self::$routes[$path])) { - foreach($self->routes[$path] as $key => $val) + foreach(self::$routes[$path] as $key => $val) { $val = preg_replace('#^\$([0-9]+)$#e', '\$matches[$1]', $val); @@ -124,7 +98,7 @@ class Router } // Apply routes - foreach($self->routes as $regex => $query) + foreach(self::$routes as $regex => $query) { if(preg_match('#^' . $regex . '$#', $path, $matches)) { @@ -143,10 +117,9 @@ class Router * @param array $map * @return void */ - public function setMap($map) + public static function setMap($map) { - $self = Router::getInstance(); - $self->rewrite_map = array_merge($self->rewrite_map, $map); + self::$rewrite_map = array_merge(self::$rewrite_map, $map); } /** @@ -155,10 +128,9 @@ class Router * @param array $query * @return void */ - public function add($target, $query) + public static function add($target, $query) { - $self = Router::getInstance(); - $self->routes[$target] = $query; + self::$routes[$target] = $query; } /** @@ -168,8 +140,7 @@ class Router */ public function adds($routes) { - $self = Router::getInstance(); - $self->routes = array_merge($self->routes, $routes); + self::$routes = array_merge(self::$routes, $routes); } /** @@ -177,10 +148,9 @@ class Router * @param int $index * @return string */ - public function getSegment($index) + public static function getSegment($index) { - $self = Router::getInstance(); - return $self->segments[$index]; + return self::$segments[$index]; } @@ -189,10 +159,9 @@ class Router * @param int $index * @return string */ - public function getSegments() + public static function getSegments() { - $self = Router::getInstance(); - return $self->segments; + return self::$segments; } /** @@ -200,20 +169,18 @@ class Router * @param string $regex * @return array */ - public function getRoute($regex) + public static function getRoute($regex) { - $self = Router::getInstance(); - return $self->routes[$regex]; + return self::$routes[$regex]; } /** * @brief Get routes list * @return array */ - public function getRoutes() + public static function getRoutes() { - $self = Router::getInstance(); - return $self->routes; + return self::$routes; } /** @@ -221,10 +188,9 @@ class Router * @param string $regex * @return boolean */ - public function isExistsRoute($regex) + public static function isExistsRoute($regex) { - $self = Router::getInstance(); - return isset($self->routes[$regex]); + return isset(self::$routes[$regex]); } /** @@ -232,9 +198,8 @@ class Router * @param string $regex * @return string */ - public function makePrettyUrl($regex) + public static function makePrettyUrl($regex) { - $self = Router::getInstance(); - return $self->rewrite_map[$regex]; + return self::$rewrite_map[$regex]; } } \ No newline at end of file From 33d26ca17967fb60aea64cf3158adf5a86a22e39 Mon Sep 17 00:00:00 2001 From: SMaker Date: Sat, 16 Aug 2014 23:19:18 +0900 Subject: [PATCH 018/236] =?UTF-8?q?Router=20class=20=EA=B0=9C=EC=84=A0=20?= =?UTF-8?q?=EB=B0=8F=20=EC=98=A4=EB=A5=98=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - RewriteRule의 break 문법 지원 -- Apache RewriteRule의 [L] 플래그 -- Nginx RewriteRule의 break 문법 -성능 이슈 및 deprecated 이슈로 preg_replace() 대신에 substr_compare() 함수와 substr() 함수를 이용하여 동작하도록 개선 ps. preg_replace() 함수의 /e modifier가 PHP 5.5에서 deprecated 처리됨 - URI Segment가 1개인 경우 해당 Segment를 Unset 하던 오류 수정 --- classes/router/Router.class.php | 100 +++++++++++++++++++++++--------- 1 file changed, 74 insertions(+), 26 deletions(-) diff --git a/classes/router/Router.class.php b/classes/router/Router.class.php index 94de130b3..8b95c2275 100644 --- a/classes/router/Router.class.php +++ b/classes/router/Router.class.php @@ -18,29 +18,29 @@ class Router */ private static $routes = array( // rss , blogAPI - '(rss|atom)' => array('module' => 'rss', 'act' => '$1'), - '([a-zA-Z0-9_]+)/(rss|atom|api)' => array('mid' => '$1', 'act' => '$2'), - '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/(rss|atom|api)' => array('vid' => '$1', 'mid' => '$2', 'act' => '$3'), + '(rss|atom)' => array('module' => 'rss', 'act' => '$1', '[L]' => TRUE), + '([a-zA-Z0-9_]+)/(rss|atom|api)' => array('mid' => '$1', 'act' => '$2', '[L]' => TRUE), + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/(rss|atom|api)' => array('vid' => '$1', 'mid' => '$2', 'act' => '$3', '[L]' => TRUE), // trackback - '([0-9]+)/(.+)/trackback' => array('document_srl' => '$1', 'key' => '$2', 'act' => 'trackback'), - '([a-zA-Z0-9_]+)/([0-9]+)/(.+)/trackback' => array('mid' => '$1', 'document_srl' => '$2', 'key' => '$3', 'act' => 'trackback'), - '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([0-9]+)/(.+)/trackback' => array('vid' => '$1', 'mid' => '$2', 'document_srl' => '$3' , 'key' => '$4', 'act' => 'trackback'), - // mid - '([a-zA-Z0-9_]+)/?' => array('mid' => '$1'), - // mid + document_srl - '([a-zA-Z0-9_]+)/([0-9]+)' => array('mid' => '$1', 'document_srl' => '$2'), - // vid + mid - '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/' => array('vid' => '$1', 'mid' => '$2'), - // vid + mid + document_srl - '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([0-9]+)?' => array('vid' => '$1', 'mid' => '$2', 'document_srl' => '$3'), + '([0-9]+)/(.+)/trackback' => array('document_srl' => '$1', 'key' => '$2', 'act' => 'trackback', '[L]' => TRUE), + '([a-zA-Z0-9_]+)/([0-9]+)/(.+)/trackback' => array('mid' => '$1', 'document_srl' => '$2', 'key' => '$3', 'act' => 'trackback', '[L]' => TRUE), + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([0-9]+)/(.+)/trackback' => array('vid' => '$1', 'mid' => '$2', 'document_srl' => '$3' , 'key' => '$4', 'act' => 'trackback', '[L]' => TRUE), // document_srl - '([0-9]+)' => array('document_srl' => '$1'), + '([0-9]+)' => array('document_srl' => '$1', '[L]' => TRUE), + // mid + '([a-zA-Z0-9_]+)/?' => array('mid' => '$1', '[L]' => TRUE), + // mid + document_srl + '([a-zA-Z0-9_]+)/([0-9]+)' => array('mid' => '$1', 'document_srl' => '$2', '[L]' => TRUE), + // vid + mid + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/' => array('vid' => '$1', 'mid' => '$2', '[L]' => TRUE), + // vid + mid + document_srl + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([0-9]+)?' => array('vid' => '$1', 'mid' => '$2', 'document_srl' => '$3', '[L]' => TRUE), // mid + entry title - '([a-zA-Z0-9_]+)/entry/(.+)' => array('mid' => '$1', 'entry' => '$2'), + '([a-zA-Z0-9_]+)/entry/(.+)' => array('mid' => '$1', 'entry' => '$2', '[L]' => TRUE), // vid + mid + entry title - '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/entry/(.+)' => array('vid' => '$1', 'mid' => '$2', 'entry' => '$3'), + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/entry/(.+)' => array('vid' => '$1', 'mid' => '$2', 'entry' => '$3', '[L]' => TRUE), // shop / vid / [category|product] / identifier - '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_\.-]+)' => array('act' => 'route', 'vid' => '$1', 'type' => '$2', 'identifier'=> '$3') + '([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_\.-]+)' => array('act' => 'route', 'vid' => '$1', 'type' => '$2', 'identifier'=> '$3', '[L]' => TRUE) ); /** @@ -72,6 +72,7 @@ class Router return; } + // Get relative path from request uri $path = parse_url($uri, PHP_URL_PATH); // Do some final cleaning of the URI and return it @@ -80,33 +81,80 @@ class Router if(strlen($path) > 0) { self::$segments = explode('/', $path); - - // Remove the meanless segment - unset(self::$segments[0]); } if(isset(self::$routes[$path])) { foreach(self::$routes[$path] as $key => $val) { - $val = preg_replace('#^\$([0-9]+)$#e', '\$matches[$1]', $val); + if(strlen($val) > 0) + { + if(substr_compare($val, '$', 0, 1) == 0) + { + $segment_index = (int) substr($val, 1) - 1; + if($segment_index < 0) + { + continue; + } - Context::set($key, $val, TRUE); + Context::set($key, self::$segments[$segment_index], TRUE); + } + else + { + Context::set($key, $val, TRUE); + } + } + else + { + Context::set($key, '', TRUE); + } } return; } + $break = FALSE; + // Apply routes foreach(self::$routes as $regex => $query) { + // Stop the routing proccess + if($break) + { + break; + } if(preg_match('#^' . $regex . '$#', $path, $matches)) { foreach($query as $key => $val) { - $val = preg_replace('#^\$([0-9]+)$#e', '\$matches[$1]', $val); + // If [L] keyword is defined + if($key == '[L]') + { + // Stop the routing process and don't apply any more rules + $break = TRUE; + continue; + } - Context::set($key, $val, TRUE); + if(strlen($val) > 0) + { + if(substr($val, 0, 1) == '$') + { + $segment_index = (int) substr($val, 1) - 1; + if($segment_index < 0) + { + continue; + } + Context::set($key, self::$segments[$segment_index], TRUE); + } + else + { + Context::set($key, $val, TRUE); + } + } + else + { + Context::set($key, '', TRUE); + } } } } @@ -150,7 +198,7 @@ class Router */ public static function getSegment($index) { - return self::$segments[$index]; + return self::$segments[$index - 1]; } From 2ecbec7296655b3db33cc4b6f5e6b21bf6a88c1e Mon Sep 17 00:00:00 2001 From: akasima Date: Tue, 26 Aug 2014 12:34:15 +0900 Subject: [PATCH 019/236] #930 modify Router class call position --- classes/context/Context.class.php | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/classes/context/Context.class.php b/classes/context/Context.class.php index 7c0918a03..e055f320a 100644 --- a/classes/context/Context.class.php +++ b/classes/context/Context.class.php @@ -242,9 +242,18 @@ class Context } } + // check if using rewrite module + $this->allow_rewrite = ($this->db_info->use_rewrite == 'Y' ? TRUE : FALSE); + // If XE is installed, get virtual site information if(self::isInstalled()) { + // If using rewrite module, initializes router + if($this->allow_rewrite) + { + Router::proc(); + } + $oModuleModel = getModel('module'); $site_module_info = $oModuleModel->getDefaultMid(); @@ -363,15 +372,6 @@ class Context $this->lang = &$GLOBALS['lang']; $this->loadLang(_XE_PATH_ . 'common/lang/'); - // check if using rewrite module - $this->allow_rewrite = ($this->db_info->use_rewrite == 'Y' ? TRUE : FALSE); - - // If using rewrite module, initializes router - if($this->allow_rewrite) - { - Router::proc(); - } - // set locations for javascript use if($_SERVER['REQUEST_METHOD'] == 'GET') { From f391b59e1c8d0f3c47465e7cea75f891334b61e7 Mon Sep 17 00:00:00 2001 From: YJSoft Date: Tue, 30 Dec 2014 15:45:46 +0900 Subject: [PATCH 020/236] =?UTF-8?q?=EB=A0=88=EB=B2=A8=20=ED=8F=AC=EC=9D=B8?= =?UTF-8?q?=ED=8A=B8=20=EC=9E=85=EB=A0=A5=EC=B9=B8=EC=9D=98=20=EB=84=88?= =?UTF-8?q?=EB=B9=84=EB=A5=BC=20=EB=8A=98=EC=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 기본 60px로는 레벨이 어느 정도 넘어갈 경우 포인트가 커져서 잘리기에 정확한 비교가 어려우므로 120px로 두배가량 늘였습니다. --- modules/point/tpl/config.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/point/tpl/config.html b/modules/point/tpl/config.html index 0f64c8994..d91422586 100644 --- a/modules/point/tpl/config.html +++ b/modules/point/tpl/config.html @@ -125,7 +125,7 @@
- + {@$point_group_item = $point_group[1]} {@$title=array()} @@ -149,7 +149,7 @@ - + From d2b05732abfd85020335ce272abd37c0ad1c6654 Mon Sep 17 00:00:00 2001 From: MinSoo Kim Date: Thu, 1 Jan 2015 01:35:32 +0900 Subject: [PATCH 021/236] fix for Not-Alphabet URL MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://github.com/xpressengine/xe-core/issues/634 # Internet Explorer send punycode URL(ASCII) URL and non-alphabet Unicode URL URL as a referer. 인터넷 익스플로러는 리퍼러 주소로 퓨니코드 주소와 유니코드 URL을 섞어 쓰고 있습니다. AJAX 통신에는 리퍼러로 Unicode를 사용하고 요청 호스트로는 퓨니코드 URL을 사용(이건 다국어 주소 형식으로 접속하려면 이렇게 했어야 할 것)합니다. - XE strictly compare referer and server host for denying CSRF, but punycode URL and Unicode URL should be dealt as a same one. 그런데 XE는 리퍼러의 호스트와 서버 호스트를 비교합니다. punycode로 쓰인 주소와 Unicode로 쓰인 주소는 같은 주소를 지시하더라도 문자열이 다릅니다. 같은 주소를 지칭하는 다른 문자열을 punycode로 변환해서 같은 주소라고 인식할 수 있게 수정했습니다. - Fix checkCSRF function to deal both form as a same one. - Convert Unicode URL input to punycode URL on the Admin Default URL Settings. 관리자가 유니코드 형식으로 기본 주소를 입력하더라도, 퓨니코드로 변환해 저장하도록 했습니다. 퓨니코드로 저장하는 것이 여러모로 유용하기 때문입니다. - For converting punycode URL, include IDNA coverting class. 퓨니코드와 유니코드 간 변환을 위해서 IDNA 변환 클래스(LGPL사용권)를 포함시켰습니다. --- config/func.inc.php | 12 +- libs/idna_convert/LICENCE | 502 +++ libs/idna_convert/ReadMe.txt | 198 + libs/idna_convert/example.php | 133 + libs/idna_convert/idna_convert.class.php | 3461 ++++++++++++++++++ libs/idna_convert/transcode_wrapper.php | 137 + libs/idna_convert/uctc.php | 300 ++ modules/install/install.admin.controller.php | 6 + 8 files changed, 4748 insertions(+), 1 deletion(-) create mode 100644 libs/idna_convert/LICENCE create mode 100644 libs/idna_convert/ReadMe.txt create mode 100644 libs/idna_convert/example.php create mode 100644 libs/idna_convert/idna_convert.class.php create mode 100644 libs/idna_convert/transcode_wrapper.php create mode 100644 libs/idna_convert/uctc.php diff --git a/config/func.inc.php b/config/func.inc.php index d59ab3e43..54bfff981 100644 --- a/config/func.inc.php +++ b/config/func.inc.php @@ -1517,7 +1517,17 @@ function checkCSRF() } $defaultUrl = Context::getDefaultUrl(); - $referer = parse_url($_SERVER["HTTP_REFERER"]); + + if(strpos(Context::getRequestUri(), 'xn--') !== FALSE) + { + require_once(_XE_PATH_ . 'libs/idna_convert/idna_convert.class.php'); + $IDN = new idna_convert(array('idn_version' => 2008)); + $referer = parse_url($IDN->encode($_SERVER["HTTP_REFERER"])); + } + else + { + $referer = parse_url($_SERVER["HTTP_REFERER"]); + } $oModuleModel = getModel('module'); $siteModuleInfo = $oModuleModel->getDefaultMid(); diff --git a/libs/idna_convert/LICENCE b/libs/idna_convert/LICENCE new file mode 100644 index 000000000..02edb77b7 --- /dev/null +++ b/libs/idna_convert/LICENCE @@ -0,0 +1,502 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 51 Franklin St, Boston, MA 02110, United States + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! diff --git a/libs/idna_convert/ReadMe.txt b/libs/idna_convert/ReadMe.txt new file mode 100644 index 000000000..6439a8ff1 --- /dev/null +++ b/libs/idna_convert/ReadMe.txt @@ -0,0 +1,198 @@ +******************************************************************************* +* * +* IDNA Convert (idna_convert.class.php) * +* * +* http://idnaconv.phlymail.de mailto:phlymail@phlylabs.de * +******************************************************************************* +* (c) 2004-2014 phlyLabs, Berlin * +* This file is encoded in UTF-8 * +******************************************************************************* + +Introduction +------------ + +The class idna_convert allows to convert internationalized domain names +(see RFC 3490, 3491, 3492 and 3454 for detials) as they can be used with various +registries worldwide to be translated between their original (localized) form +and their encoded form as it will be used in the DNS (Domain Name System). + +The class provides two public methods, encode() and decode(), which do exactly +what you would expect them to do. You are allowed to use complete domain names, +simple strings and complete email addresses as well. That means, that you might +use any of the following notations: + +- www.nörgler.com +- xn--nrgler-wxa +- xn--brse-5qa.xn--knrz-1ra.info + +Errors, incorrectly encoded or invalid strings will lead to either a FALSE +response (when in strict mode) or to only partially converted strings. +You can query the occured error by calling the method get_last_error(). + +Unicode strings are expected to be either UTF-8 strings, UCS-4 strings or UCS-4 +arrays. The default format is UTF-8. For setting different encodings, you can +call the method setParams() - please see the inline documentation for details. +ACE strings (the Punycode form) are always 7bit ASCII strings. + +ATTENTION: As of version 0.6.0 this class is written in the OOP style of PHP5. +Since PHP4 is no longer actively maintained, you should switch to PHP5 as fast as +possible. +We expect to see no compatibility issues with the upcoming PHP6, too. + +ATTENTION: BC break! As of version 0.6.4 the class per default allows the German +ligature ß to be encoded as the DeNIC, the registry for .DE allows domains +containing ß. +In older builds "ß" was mapped to "ss". Should you still need this behaviour, +see example 5 below. + +ATTENTION: As of version 0.8.0 the class fully supports IDNA 2008. Thus the +aforementioned parameter is deprecated and replaced by a parameter to switch +between the standards. See the updated example 5 below. + +Files +----- +idna_convert.class.php - The actual class +example.php - An example web page for converting +transcode_wrapper.php - Convert various encodings, see below +uctc.php - phlyLabs' Unicode Transcoder, see below +ReadMe.txt - This file +LICENCE - The LGPL licence file + +The class is contained in idna_convert.class.php. + + +Examples +-------- +1. Say we wish to encode the domain name nörgler.com: + +// Include the class +require_once('idna_convert.class.php'); +// Instantiate it +$IDN = new idna_convert(); +// The input string, if input is not UTF-8 or UCS-4, it must be converted before +$input = utf8_encode('nörgler.com'); +// Encode it to its punycode presentation +$output = $IDN->encode($input); +// Output, what we got now +echo $output; // This will read: xn--nrgler-wxa.com + + +2. We received an email from a punycoded domain and are willing to learn, how + the domain name reads originally + +// Include the class +require_once('idna_convert.class.php'); +// Instantiate it +$IDN = new idna_convert(); +// The input string +$input = 'andre@xn--brse-5qa.xn--knrz-1ra.info'; +// Encode it to its punycode presentation +$output = $IDN->decode($input); +// Output, what we got now, if output should be in a format different to UTF-8 +// or UCS-4, you will have to convert it before outputting it +echo utf8_decode($output); // This will read: andre@börse.knörz.info + + +3. The input is read from a UCS-4 coded file and encoded line by line. By + appending the optional second parameter we tell enode() about the input + format to be used + +// Include the class +require_once('idna_convert.class.php'); +// Instantiate it +$IDN = new dinca_convert(); +// Iterate through the input file line by line +foreach (file('ucs4-domains.txt') as $line) { + echo $IDN->encode(trim($line), 'ucs4_string'); + echo "\n"; +} + + +4. We wish to convert a whole URI into the IDNA form, but leave the path or + query string component of it alone. Just using encode() would lead to mangled + paths or query strings. Here the public method encode_uri() comes into play: + +// Include the class +require_once('idna_convert.class.php'); +// Instantiate it +$IDN = new idna_convert(); +// The input string, a whole URI in UTF-8 (!) +$input = 'http://nörgler:secret@nörgler.com/my_päth_is_not_ÄSCII/'); +// Encode it to its punycode presentation +$output = $IDN->encode_uri($input); +// Output, what we got now +echo $output; // http://nörgler:secret@xn--nrgler-wxa.com/my_päth_is_not_ÄSCII/ + + +5. To support IDNA 2008, the class needs to be invoked with an additional + parameter. This can also be achieved on an instance. + +// Include the class +require_once('idna_convert.class.php'); +// Instantiate it +$IDN = new idna_convert(array('idn_version' => 2008)); +// Sth. containing the German letter ß +$input = 'meine-straße.de'); +// Encode it to its punycode presentation +$output = $IDN->encode_uri($input); +// Output, what we got now +echo $output; // xn--meine-strae-46a.de +// Switch back to old IDNA 2003, the original standard +$IDN->set_parameter('idn_version', 2003); +// Sth. containing the German letter ß +$input = 'meine-straße.de'); +// Encode it to its punycode presentation +$output = $IDN->encode_uri($input); +// Output, what we got now +echo $output; // meine-strasse.de + + +Transcode wrapper +----------------- +In case you have strings in different encoding than ISO-8859-1 and UTF-8 you might need to +translate these strings to UTF-8 before feeding the IDNA converter with it. +PHP's built in functions utf8_encode() and utf8_decode() can only deal with ISO-8859-1. +Use the file transcode_wrapper.php for the conversion. It requires either iconv, libiconv +or mbstring installed together with one of the relevant PHP extensions. +The functions you will find useful are +encode_utf8() as a replacement for utf8_encode() and +decode_utf8() as a replacement for utf8_decode(). + +Example usage: +encode($mystring); +?> + + +UCTC - Unicode Transcoder +------------------------- +Another class you might find useful when dealing with one or more of the Unicode encoding +flavours. The class is static, it requires PHP5. It can transcode into each other: +- UCS-4 string / array +- UTF-8 +- UTF-7 +- UTF-7 IMAP (modified UTF-7) +All encodings expect / return a string in the given format, with one major exception: +UCS-4 array is jsut an array, where each value represents one codepoint in the string, i.e. +every value is a 32bit integer value. + +Example usage: + + + +Contact us +---------- +In case of errors, bugs, questions, wishes, please don't hesitate to contact us +under the email address above. + +The team of phlyLabs +http://phlylabs.de +mailto:phlymail@phlylabs.de \ No newline at end of file diff --git a/libs/idna_convert/example.php b/libs/idna_convert/example.php new file mode 100644 index 000000000..0ee314f50 --- /dev/null +++ b/libs/idna_convert/example.php @@ -0,0 +1,133 @@ + $idn_version)); + +$version_select = ''."\n"; + } +} +?> + + + +phlyLabs Punycode Converter + + + + + +
+
phlyLabs' pure PHP IDNA Converter

+ + See the RFCs 3490, + 3491, + 3492 and + 3454 as well as + 5890, + 5891, + 5892, + 5893 and + RFC5894.
+
+
+
+ Dieser Konverter erlaubt die Übersetzung von Domainnamen zwischen der Punycode- und der + Unicode-Schreibweise.
+ Geben Sie einfach den Domainnamen im entsprechend bezeichneten Feld ein und klicken Sie dann auf den darunter + liegenden Button. Sie können einfache Domainnamen, komplette URLs (wie http://jürgen-müller.de) + oder Emailadressen eingeben.
+
+ Stellen Sie aber sicher, dass Ihr Browser den Zeichensatz UTF-8 unterstützt.
+
+ Wenn Sie Interesse an der zugrundeliegenden PHP-Klasse haben, können Sie diese + hier herunterladen.
+
+ Diese Klasse wird ohne Garantie ihrer Funktionstüchtigkeit bereit gestellt. Nutzung auf eigene Gefahr.
+ Um sicher zu stellen, dass eine Zeichenkette korrekt umgewandelt wurde, sollten Sie diese immer zurückwandeln + und das Ergebnis mit Ihrer ursprünglichen Eingabe vergleichen.
+
+ Fehler und Probleme können Sie gern an team@phlymail.de senden.
+ + This converter allows you to transfer domain names between the encoded (Punycode) notation + and the decoded (UTF-8) notation.
+ Just enter the domain name in the respective field and click on the button right below it to have + it converted. Please note, that you might even enter complete domain names (like jürgen-müller.de) + or a email addresses.
+
+ Make sure, that your browser is capable of the UTF-8 character encoding.
+
+ For those of you interested in the PHP source of the underlying class, you might + download it here.
+
+ Please be aware, that this class is provided as is and without any liability. Use at your own risk.
+ To ensure, that a certain string has been converted correctly, you should convert it both ways and compare the + results.
+
+ Please feel free to report bugs and problems to: team@phlymail.com.
+ +
+
+
{$receiver_info->nick_name}{$receiver_info->nick_name}
{$lang->title}
1 1
{$i} {$i} {implode(', ', $title)}
+ + + + + + + + + + + + +
Original (Unicode)Punycode (ACE)
+
+
+ + +
+
+
+
+ +
+
+
+ Version used: 0.9.0; © 2004-2014 phlyLabs Berlin; part of phlyMail + + + \ No newline at end of file diff --git a/libs/idna_convert/idna_convert.class.php b/libs/idna_convert/idna_convert.class.php new file mode 100644 index 000000000..ed32dc807 --- /dev/null +++ b/libs/idna_convert/idna_convert.class.php @@ -0,0 +1,3461 @@ + + * @copyright 2004-2014 phlyLabs Berlin, http://phlylabs.de + * @version 0.9.0 2014-12-12 + */ +class idna_convert { + + private $version = '0.9.0'; + protected $sub_version = 'main'; + + // NP See below + // Internal settings, do not mess with them + protected $_punycode_prefix = 'xn--'; + protected $_invalid_ucs = 0x80000000; + protected $_max_ucs = 0x10FFFF; + protected $_base = 36; + protected $_tmin = 1; + protected $_tmax = 26; + protected $_skew = 38; + protected $_damp = 700; + protected $_initial_bias = 72; + protected $_initial_n = 0x80; + protected $_sbase = 0xAC00; + protected $_lbase = 0x1100; + protected $_vbase = 0x1161; + protected $_tbase = 0x11A7; + protected $_lcount = 19; + protected $_vcount = 21; + protected $_tcount = 28; + protected $_ncount = 588; // _vcount * _tcount + protected $_scount = 11172; // _lcount * _tcount * _vcount + protected $_error = false; + protected static $_mb_string_overload = null; + // See {@link set_paramter()} for details of how to change the following + // settings from within your script / application + protected $_api_encoding = 'utf8'; // Default input charset is UTF-8 + protected $_allow_overlong = false; // Overlong UTF-8 encodings are forbidden + protected $_strict_mode = false; // Behave strict or not + protected $_idn_version = 2003; // Can be either 2003 (old, default) or 2008 + + /** + * the constructor + * + * @param array $options + * @return boolean + * @since 0.5.2 + */ + public function __construct($options = false) + { + $this->slast = $this->_sbase + $this->_lcount * $this->_vcount * $this->_tcount; + // If parameters are given, pass these to the respective method + if (is_array($options)) { + $this->set_parameter($options); + } + + // populate mbstring overloading cache if not set + if (self::$_mb_string_overload === null) { + self::$_mb_string_overload = (extension_loaded('mbstring') && (ini_get('mbstring.func_overload') & 0x02) === 0x02); + } + } + + public function get_version() + { + return $this->version.'-'.$this->sub_version; + } + + /** + * Sets a new option value. Available options and values: + * [encoding - Use either UTF-8, UCS4 as array or UCS4 as string as input ('utf8' for UTF-8, + * 'ucs4_string' and 'ucs4_array' respectively for UCS4); The output is always UTF-8] + * [overlong - Unicode does not allow unnecessarily long encodings of chars, + * to allow this, set this parameter to true, else to false; + * default is false.] + * [strict - true: strict mode, good for registration purposes - Causes errors + * on failures; false: loose mode, ideal for "wildlife" applications + * by silently ignoring errors and returning the original input instead + * + * @param mixed Parameter to set (string: single parameter; array of Parameter => Value pairs) + * @param string Value to use (if parameter 1 is a string) + * @return boolean true on success, false otherwise + */ + public function set_parameter($option, $value = false) + { + if (!is_array($option)) { + $option = array($option => $value); + } + foreach ($option as $k => $v) { + switch ($k) { + case 'encoding': + switch ($v) { + case 'utf8': + case 'ucs4_string': + case 'ucs4_array': + $this->_api_encoding = $v; + break; + default: + $this->_error('Set Parameter: Unknown parameter ' . $v . ' for option ' . $k); + return false; + } + break; + case 'overlong': + $this->_allow_overlong = ($v) ? true : false; + break; + case 'strict': + $this->_strict_mode = ($v) ? true : false; + break; + case 'idn_version': + if (in_array($v, array('2003', '2008'))) { + $this->_idn_version = $v; + } else { + $this->_error('Set Parameter: Unknown parameter ' . $v . ' for option ' . $k); + } + break; + case 'encode_german_sz': // Deprecated + if (!$v) { + self::$NP['replacemaps'][0xDF] = array(0x73, 0x73); + } else { + unset(self::$NP['replacemaps'][0xDF]); + } + break; + default: + $this->_error('Set Parameter: Unknown option ' . $k); + return false; + } + } + return true; + } + + /** + * Decode a given ACE domain name + * @param string Domain name (ACE string) + * [@param string Desired output encoding, see {@link set_parameter}] + * @return string Decoded Domain name (UTF-8 or UCS-4) + */ + public function decode($input, $one_time_encoding = false) + { + // Optionally set + if ($one_time_encoding) { + switch ($one_time_encoding) { + case 'utf8': + case 'ucs4_string': + case 'ucs4_array': + break; + default: + $this->_error('Unknown encoding ' . $one_time_encoding); + return false; + } + } + // Make sure to drop any newline characters around + $input = trim($input); + + // Negotiate input and try to determine, whether it is a plain string, + // an email address or something like a complete URL + if (strpos($input, '@')) { // Maybe it is an email address + // No no in strict mode + if ($this->_strict_mode) { + $this->_error('Only simple domain name parts can be handled in strict mode'); + return false; + } + list ($email_pref, $input) = explode('@', $input, 2); + $arr = explode('.', $input); + foreach ($arr as $k => $v) { + if (preg_match('!^' . preg_quote($this->_punycode_prefix, '!') . '!', $v)) { + $conv = $this->_decode($v); + if ($conv) { + $arr[$k] = $conv; + } + } + } + $input = join('.', $arr); + $arr = explode('.', $email_pref); + foreach ($arr as $k => $v) { + if (preg_match('!^' . preg_quote($this->_punycode_prefix, '!') . '!', $v)) { + $conv = $this->_decode($v); + if ($conv) { + $arr[$k] = $conv; + } + } + } + $email_pref = join('.', $arr); + $return = $email_pref . '@' . $input; + } elseif (preg_match('![:\./]!', $input)) { // Or a complete domain name (with or without paths / parameters) + // No no in strict mode + if ($this->_strict_mode) { + $this->_error('Only simple domain name parts can be handled in strict mode'); + return false; + } + $parsed = parse_url($input); + if (isset($parsed['host'])) { + $arr = explode('.', $parsed['host']); + foreach ($arr as $k => $v) { + $conv = $this->_decode($v); + if ($conv) { + $arr[$k] = $conv; + } + } + $parsed['host'] = join('.', $arr); + $return = (empty($parsed['scheme']) ? '' : $parsed['scheme'] . (strtolower($parsed['scheme']) == 'mailto' ? ':' : '://')). + (empty($parsed['user']) ? '' : $parsed['user'] . (empty($parsed['pass']) ? '' : ':' . $parsed['pass']) . '@'). + $parsed['host']. + (empty($parsed['port']) ? '' : ':' . $parsed['port']). + (empty($parsed['path']) ? '' : $parsed['path']). + (empty($parsed['query']) ? '' : '?' . $parsed['query']). + (empty($parsed['fragment']) ? '' : '#' . $parsed['fragment']); + } else { // parse_url seems to have failed, try without it + $arr = explode('.', $input); + foreach ($arr as $k => $v) { + $conv = $this->_decode($v); + $arr[$k] = ($conv) ? $conv : $v; + } + $return = join('.', $arr); + } + } else { // Otherwise we consider it being a pure domain name string + $return = $this->_decode($input); + if (!$return) { + $return = $input; + } + } + // The output is UTF-8 by default, other output formats need conversion here + // If one time encoding is given, use this, else the objects property + switch (($one_time_encoding) ? $one_time_encoding : $this->_api_encoding) { + case 'utf8': return $return; // break; + case 'ucs4_string': return $this->_ucs4_to_ucs4_string($this->_utf8_to_ucs4($return)); // break; + case 'ucs4_array': return $this->_utf8_to_ucs4($return); // break; + default: $this->_error('Unsupported output format'); return false; + } + } + + /** + * Encode a given UTF-8 domain name + * @param string Domain name (UTF-8 or UCS-4) + * [@param string Desired input encoding, see {@link set_parameter}] + * @return string Encoded Domain name (ACE string) + */ + public function encode($decoded, $one_time_encoding = false) + { + // Forcing conversion of input to UCS4 array + // If one time encoding is given, use this, else the objects property + switch ($one_time_encoding ? $one_time_encoding : $this->_api_encoding) { + case 'utf8': + $decoded = $this->_utf8_to_ucs4($decoded); + break; + case 'ucs4_string': + $decoded = $this->_ucs4_string_to_ucs4($decoded); + case 'ucs4_array': + break; + default: + $this->_error('Unsupported input format: ' . ($one_time_encoding ? $one_time_encoding : $this->_api_encoding)); + return false; + } + + // No input, no output, what else did you expect? + if (empty($decoded)) { + return ''; + } + + // Anchors for iteration + $last_begin = 0; + // Output string + $output = ''; + foreach ($decoded as $k => $v) { + // Make sure to use just the plain dot + switch ($v) { + case 0x3002: + case 0xFF0E: + case 0xFF61: + $decoded[$k] = 0x2E; + // Right, no break here, the above are converted to dots anyway + // Stumbling across an anchoring character + case 0x2E: + case 0x2F: + case 0x3A: + case 0x3F: + case 0x40: + // Neither email addresses nor URLs allowed in strict mode + if ($this->_strict_mode) { + $this->_error('Neither email addresses nor URLs are allowed in strict mode.'); + return false; + } else { + // Skip first char + if ($k) { + $encoded = ''; + $encoded = $this->_encode(array_slice($decoded, $last_begin, (($k) - $last_begin))); + if ($encoded) { + $output .= $encoded; + } else { + $output .= $this->_ucs4_to_utf8(array_slice($decoded, $last_begin, (($k) - $last_begin))); + } + $output .= chr($decoded[$k]); + } + $last_begin = $k + 1; + } + } + } + // Catch the rest of the string + if ($last_begin) { + $inp_len = sizeof($decoded); + $encoded = ''; + $encoded = $this->_encode(array_slice($decoded, $last_begin, (($inp_len) - $last_begin))); + if ($encoded) { + $output .= $encoded; + } else { + $output .= $this->_ucs4_to_utf8(array_slice($decoded, $last_begin, (($inp_len) - $last_begin))); + } + return $output; + } else { + if (false !== ($output = $this->_encode($decoded))) { + return $output; + } else { + return $this->_ucs4_to_utf8($decoded); + } + } + } + + /** + * Removes a weakness of encode(), which cannot properly handle URIs but instead encodes their + * path or query components, too. + * @param string $uri Expects the URI as a UTF-8 (or ASCII) string + * @return string The URI encoded to Punycode, everything but the host component is left alone + * @since 0.6.4 + */ + public function encode_uri($uri) + { + $parsed = parse_url($uri); + if (!isset($parsed['host'])) { + $this->_error('The given string does not look like a URI'); + return false; + } + $arr = explode('.', $parsed['host']); + foreach ($arr as $k => $v) { + $conv = $this->encode($v, 'utf8'); + if ($conv) { + $arr[$k] = $conv; + } + } + $parsed['host'] = join('.', $arr); + $return = (empty($parsed['scheme']) ? '' : $parsed['scheme'] . (strtolower($parsed['scheme']) == 'mailto' ? ':' : '://')). + (empty($parsed['user']) ? '' : $parsed['user'] . (empty($parsed['pass']) ? '' : ':' . $parsed['pass']) . '@'). + $parsed['host']. + (empty($parsed['port']) ? '' : ':' . $parsed['port']). + (empty($parsed['path']) ? '' : $parsed['path']). + (empty($parsed['query']) ? '' : '?' . $parsed['query']). + (empty($parsed['fragment']) ? '' : '#' . $parsed['fragment']); + return $return; + } + + /** + * Use this method to get the last error ocurred + * @param void + * @return string The last error, that occured + */ + public function get_last_error() + { + return $this->_error; + } + + /** + * The actual decoding algorithm + * @param string + * @return mixed + */ + protected function _decode($encoded) + { + $decoded = array(); + // find the Punycode prefix + if (!preg_match('!^' . preg_quote($this->_punycode_prefix, '!') . '!', $encoded)) { + $this->_error('This is not a punycode string'); + return false; + } + $encode_test = preg_replace('!^' . preg_quote($this->_punycode_prefix, '!') . '!', '', $encoded); + // If nothing left after removing the prefix, it is hopeless + if (!$encode_test) { + $this->_error('The given encoded string was empty'); + return false; + } + // Find last occurence of the delimiter + $delim_pos = strrpos($encoded, '-'); + if ($delim_pos > self::byteLength($this->_punycode_prefix)) { + for ($k = self::byteLength($this->_punycode_prefix); $k < $delim_pos; ++$k) { + $decoded[] = ord($encoded{$k}); + } + } + $deco_len = count($decoded); + $enco_len = self::byteLength($encoded); + + // Wandering through the strings; init + $is_first = true; + $bias = $this->_initial_bias; + $idx = 0; + $char = $this->_initial_n; + + for ($enco_idx = ($delim_pos) ? ($delim_pos + 1) : 0; $enco_idx < $enco_len; ++$deco_len) { + for ($old_idx = $idx, $w = 1, $k = $this->_base; 1; $k += $this->_base) { + $digit = $this->_decode_digit($encoded{$enco_idx++}); + $idx += $digit * $w; + $t = ($k <= $bias) ? $this->_tmin : + (($k >= $bias + $this->_tmax) ? $this->_tmax : ($k - $bias)); + if ($digit < $t) { + break; + } + $w = (int) ($w * ($this->_base - $t)); + } + $bias = $this->_adapt($idx - $old_idx, $deco_len + 1, $is_first); + $is_first = false; + $char += (int) ($idx / ($deco_len + 1)); + $idx %= ($deco_len + 1); + if ($deco_len > 0) { + // Make room for the decoded char + for ($i = $deco_len; $i > $idx; $i--) { + $decoded[$i] = $decoded[($i - 1)]; + } + } + $decoded[$idx++] = $char; + } + return $this->_ucs4_to_utf8($decoded); + } + + /** + * The actual encoding algorithm + * @param string + * @return mixed + */ + protected function _encode($decoded) + { + // We cannot encode a domain name containing the Punycode prefix + $extract = self::byteLength($this->_punycode_prefix); + $check_pref = $this->_utf8_to_ucs4($this->_punycode_prefix); + $check_deco = array_slice($decoded, 0, $extract); + + if ($check_pref == $check_deco) { + $this->_error('This is already a punycode string'); + return false; + } + // We will not try to encode strings consisting of basic code points only + $encodable = false; + foreach ($decoded as $k => $v) { + if ($v > 0x7a) { + $encodable = true; + break; + } + } + if (!$encodable) { + $this->_error('The given string does not contain encodable chars'); + return false; + } + // Do NAMEPREP + $decoded = $this->_nameprep($decoded); + if (!$decoded || !is_array($decoded)) { + return false; // NAMEPREP failed + } + $deco_len = count($decoded); + if (!$deco_len) { + return false; // Empty array + } + $codecount = 0; // How many chars have been consumed + $encoded = ''; + // Copy all basic code points to output + for ($i = 0; $i < $deco_len; ++$i) { + $test = $decoded[$i]; + // Will match [-0-9a-zA-Z] + if ((0x2F < $test && $test < 0x40) || (0x40 < $test && $test < 0x5B) || (0x60 < $test && $test <= 0x7B) || (0x2D == $test)) { + $encoded .= chr($decoded[$i]); + $codecount++; + } + } + if ($codecount == $deco_len) { + return $encoded; // All codepoints were basic ones + } + // Start with the prefix; copy it to output + $encoded = $this->_punycode_prefix . $encoded; + // If we have basic code points in output, add an hyphen to the end + if ($codecount) { + $encoded .= '-'; + } + // Now find and encode all non-basic code points + $is_first = true; + $cur_code = $this->_initial_n; + $bias = $this->_initial_bias; + $delta = 0; + while ($codecount < $deco_len) { + // Find the smallest code point >= the current code point and + // remember the last ouccrence of it in the input + for ($i = 0, $next_code = $this->_max_ucs; $i < $deco_len; $i++) { + if ($decoded[$i] >= $cur_code && $decoded[$i] <= $next_code) { + $next_code = $decoded[$i]; + } + } + $delta += ($next_code - $cur_code) * ($codecount + 1); + $cur_code = $next_code; + + // Scan input again and encode all characters whose code point is $cur_code + for ($i = 0; $i < $deco_len; $i++) { + if ($decoded[$i] < $cur_code) { + $delta++; + } elseif ($decoded[$i] == $cur_code) { + for ($q = $delta, $k = $this->_base; 1; $k += $this->_base) { + $t = ($k <= $bias) ? $this->_tmin : + (($k >= $bias + $this->_tmax) ? $this->_tmax : $k - $bias); + if ($q < $t) { + break; + } + $encoded .= $this->_encode_digit(intval($t + (($q - $t) % ($this->_base - $t)))); //v0.4.5 Changed from ceil() to intval() + $q = (int) (($q - $t) / ($this->_base - $t)); + } + $encoded .= $this->_encode_digit($q); + $bias = $this->_adapt($delta, $codecount + 1, $is_first); + $codecount++; + $delta = 0; + $is_first = false; + } + } + $delta++; + $cur_code++; + } + return $encoded; + } + + /** + * Adapt the bias according to the current code point and position + * @param int $delta + * @param int $npoints + * @param int $is_first + * @return int + */ + protected function _adapt($delta, $npoints, $is_first) + { + $delta = intval($is_first ? ($delta / $this->_damp) : ($delta / 2)); + $delta += intval($delta / $npoints); + for ($k = 0; $delta > (($this->_base - $this->_tmin) * $this->_tmax) / 2; $k += $this->_base) { + $delta = intval($delta / ($this->_base - $this->_tmin)); + } + return intval($k + ($this->_base - $this->_tmin + 1) * $delta / ($delta + $this->_skew)); + } + + /** + * Encoding a certain digit + * @param int $d + * @return string + */ + protected function _encode_digit($d) + { + return chr($d + 22 + 75 * ($d < 26)); + } + + /** + * Decode a certain digit + * @param int $cp + * @return int + */ + protected function _decode_digit($cp) + { + $cp = ord($cp); + return ($cp - 48 < 10) ? $cp - 22 : (($cp - 65 < 26) ? $cp - 65 : (($cp - 97 < 26) ? $cp - 97 : $this->_base)); + } + + /** + * Internal error handling method + * @param string $error + */ + protected function _error($error = '') + { + $this->_error = $error; + } + + /** + * Do Nameprep according to RFC3491 and RFC3454 + * @param array Unicode Characters + * @return string Unicode Characters, Nameprep'd + */ + protected function _nameprep($input) + { + $output = array(); + // + // Mapping + // Walking through the input array, performing the required steps on each of + // the input chars and putting the result into the output array + // While mapping required chars we apply the cannonical ordering + foreach ($input as $v) { + // Map to nothing == skip that code point + if (in_array($v, self::$NP['map_nothing'])) { + continue; + } + // Try to find prohibited input + if (in_array($v, self::$NP['prohibit']) || in_array($v, self::$NP['general_prohibited'])) { + $this->_error('NAMEPREP: Prohibited input U+' . sprintf('%08X', $v)); + return false; + } + foreach (self::$NP['prohibit_ranges'] as $range) { + if ($range[0] <= $v && $v <= $range[1]) { + $this->_error('NAMEPREP: Prohibited input U+' . sprintf('%08X', $v)); + return false; + } + } + + if (0xAC00 <= $v && $v <= 0xD7AF) { + // Hangul syllable decomposition + foreach ($this->_hangul_decompose($v) as $out) { + $output[] = (int) $out; + } + } elseif (($this->_idn_version == '2003') && isset(self::$NP['replacemaps_2003'][$v])) { + foreach ($this->_apply_cannonical_ordering(self::$NP['replacemaps_2003'][$v]) as $out) { + $output[] = (int) $out; + } + } elseif (($this->_idn_version == '2008') && isset(self::$NP['replacemaps'][$v])) { + foreach ($this->_apply_cannonical_ordering(self::$NP['replacemaps'][$v]) as $out) { + $output[] = (int) $out; + } + } else { + $output[] = (int) $v; + } + } + // Before applying any Combining, try to rearrange any Hangul syllables + $output = $this->_hangul_compose($output); + // + // Combine code points + // + $last_class = 0; + $last_starter = 0; + $out_len = count($output); + for ($i = 0; $i < $out_len; ++$i) { + $class = $this->_get_combining_class($output[$i]); + if ((!$last_class || $last_class > $class) && $class) { + // Try to match + $seq_len = $i - $last_starter; + $out = $this->_combine(array_slice($output, $last_starter, $seq_len)); + // On match: Replace the last starter with the composed character and remove + // the now redundant non-starter(s) + if ($out) { + $output[$last_starter] = $out; + if (count($out) != $seq_len) { + for ($j = $i + 1; $j < $out_len; ++$j) { + $output[$j - 1] = $output[$j]; + } + unset($output[$out_len]); + } + // Rewind the for loop by one, since there can be more possible compositions + $i--; + $out_len--; + $last_class = ($i == $last_starter) ? 0 : $this->_get_combining_class($output[$i - 1]); + continue; + } + } + // The current class is 0 + if (!$class) { + $last_starter = $i; + } + $last_class = $class; + } + return $output; + } + + /** + * Decomposes a Hangul syllable + * (see http://www.unicode.org/unicode/reports/tr15/#Hangul + * @param integer 32bit UCS4 code point + * @return array Either Hangul Syllable decomposed or original 32bit value as one value array + */ + protected function _hangul_decompose($char) + { + $sindex = (int) $char - $this->_sbase; + if ($sindex < 0 || $sindex >= $this->_scount) { + return array($char); + } + $result = array(); + $result[] = (int) $this->_lbase + $sindex / $this->_ncount; + $result[] = (int) $this->_vbase + ($sindex % $this->_ncount) / $this->_tcount; + $T = intval($this->_tbase + $sindex % $this->_tcount); + if ($T != $this->_tbase) { + $result[] = $T; + } + return $result; + } + + /** + * Ccomposes a Hangul syllable + * (see http://www.unicode.org/unicode/reports/tr15/#Hangul + * @param array Decomposed UCS4 sequence + * @return array UCS4 sequence with syllables composed + */ + protected function _hangul_compose($input) + { + $inp_len = count($input); + if (!$inp_len) { + return array(); + } + $result = array(); + $last = (int) $input[0]; + $result[] = $last; // copy first char from input to output + + for ($i = 1; $i < $inp_len; ++$i) { + $char = (int) $input[$i]; + $sindex = $last - $this->_sbase; + $lindex = $last - $this->_lbase; + $vindex = $char - $this->_vbase; + $tindex = $char - $this->_tbase; + // Find out, whether two current characters are LV and T + if (0 <= $sindex && $sindex < $this->_scount && ($sindex % $this->_tcount == 0) && 0 <= $tindex && $tindex <= $this->_tcount) { + // create syllable of form LVT + $last += $tindex; + $result[(count($result) - 1)] = $last; // reset last + continue; // discard char + } + // Find out, whether two current characters form L and V + if (0 <= $lindex && $lindex < $this->_lcount && 0 <= $vindex && $vindex < $this->_vcount) { + // create syllable of form LV + $last = (int) $this->_sbase + ($lindex * $this->_vcount + $vindex) * $this->_tcount; + $result[(count($result) - 1)] = $last; // reset last + continue; // discard char + } + // if neither case was true, just add the character + $last = $char; + $result[] = $char; + } + return $result; + } + + /** + * Returns the combining class of a certain wide char + * @param integer Wide char to check (32bit integer) + * @return integer Combining class if found, else 0 + */ + protected function _get_combining_class($char) + { + return isset(self::$NP['norm_combcls'][$char]) ? self::$NP['norm_combcls'][$char] : 0; + } + + /** + * Applies the cannonical ordering of a decomposed UCS4 sequence + * @param array Decomposed UCS4 sequence + * @return array Ordered USC4 sequence + */ + protected function _apply_cannonical_ordering($input) + { + $swap = true; + $size = count($input); + while ($swap) { + $swap = false; + $last = $this->_get_combining_class(intval($input[0])); + for ($i = 0; $i < $size - 1; ++$i) { + $next = $this->_get_combining_class(intval($input[$i + 1])); + if ($next != 0 && $last > $next) { + // Move item leftward until it fits + for ($j = $i + 1; $j > 0; --$j) { + if ($this->_get_combining_class(intval($input[$j - 1])) <= $next) { + break; + } + $t = intval($input[$j]); + $input[$j] = intval($input[$j - 1]); + $input[$j - 1] = $t; + $swap = true; + } + // Reentering the loop looking at the old character again + $next = $last; + } + $last = $next; + } + } + return $input; + } + + /** + * Do composition of a sequence of starter and non-starter + * @param array UCS4 Decomposed sequence + * @return array Ordered USC4 sequence + */ + protected function _combine($input) + { + $inp_len = count($input); + if (0 == $inp_len) { + return false; + } + foreach (self::$NP['replacemaps'] as $np_src => $np_target) { + if ($np_target[0] != $input[0]) { + continue; + } + if (count($np_target) != $inp_len) { + continue; + } + $hit = false; + foreach ($input as $k2 => $v2) { + if ($v2 == $np_target[$k2]) { + $hit = true; + } else { + $hit = false; + break; + } + } + if ($hit) { + return $np_src; + } + } + return false; + } + + /** + * This converts an UTF-8 encoded string to its UCS-4 representation + * By talking about UCS-4 "strings" we mean arrays of 32bit integers representing + * each of the "chars". This is due to PHP not being able to handle strings with + * bit depth different from 8. This apllies to the reverse method _ucs4_to_utf8(), too. + * The following UTF-8 encodings are supported: + * bytes bits representation + * 1 7 0xxxxxxx + * 2 11 110xxxxx 10xxxxxx + * 3 16 1110xxxx 10xxxxxx 10xxxxxx + * 4 21 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx + * 5 26 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx + * 6 31 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx + * Each x represents a bit that can be used to store character data. + * The five and six byte sequences are part of Annex D of ISO/IEC 10646-1:2000 + * @param string $input + * @return string + */ + protected function _utf8_to_ucs4($input) + { + $output = array(); + $out_len = 0; + $inp_len = self::byteLength($input); + $mode = 'next'; + $test = 'none'; + for ($k = 0; $k < $inp_len; ++$k) { + $v = ord($input{$k}); // Extract byte from input string + if ($v < 128) { // We found an ASCII char - put into stirng as is + $output[$out_len] = $v; + ++$out_len; + if ('add' == $mode) { + $this->_error('Conversion from UTF-8 to UCS-4 failed: malformed input at byte ' . $k); + return false; + } + continue; + } + if ('next' == $mode) { // Try to find the next start byte; determine the width of the Unicode char + $start_byte = $v; + $mode = 'add'; + $test = 'range'; + if ($v >> 5 == 6) { // &110xxxxx 10xxxxx + $next_byte = 0; // Tells, how many times subsequent bitmasks must rotate 6bits to the left + $v = ($v - 192) << 6; + } elseif ($v >> 4 == 14) { // &1110xxxx 10xxxxxx 10xxxxxx + $next_byte = 1; + $v = ($v - 224) << 12; + } elseif ($v >> 3 == 30) { // &11110xxx 10xxxxxx 10xxxxxx 10xxxxxx + $next_byte = 2; + $v = ($v - 240) << 18; + } elseif ($v >> 2 == 62) { // &111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx + $next_byte = 3; + $v = ($v - 248) << 24; + } elseif ($v >> 1 == 126) { // &1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx + $next_byte = 4; + $v = ($v - 252) << 30; + } else { + $this->_error('This might be UTF-8, but I don\'t understand it at byte ' . $k); + return false; + } + if ('add' == $mode) { + $output[$out_len] = (int) $v; + ++$out_len; + continue; + } + } + if ('add' == $mode) { + if (!$this->_allow_overlong && $test == 'range') { + $test = 'none'; + if (($v < 0xA0 && $start_byte == 0xE0) || ($v < 0x90 && $start_byte == 0xF0) || ($v > 0x8F && $start_byte == 0xF4)) { + $this->_error('Bogus UTF-8 character detected (out of legal range) at byte ' . $k); + return false; + } + } + if ($v >> 6 == 2) { // Bit mask must be 10xxxxxx + $v = ($v - 128) << ($next_byte * 6); + $output[($out_len - 1)] += $v; + --$next_byte; + } else { + $this->_error('Conversion from UTF-8 to UCS-4 failed: malformed input at byte ' . $k); + return false; + } + if ($next_byte < 0) { + $mode = 'next'; + } + } + } // for + return $output; + } + + /** + * Convert UCS-4 string into UTF-8 string + * See _utf8_to_ucs4() for details + * @param string $input + * @return string + */ + protected function _ucs4_to_utf8($input) + { + $output = ''; + foreach ($input as $k => $v) { + if ($v < 128) { // 7bit are transferred literally + $output .= chr($v); + } elseif ($v < (1 << 11)) { // 2 bytes + $output .= chr(192 + ($v >> 6)) . chr(128 + ($v & 63)); + } elseif ($v < (1 << 16)) { // 3 bytes + $output .= chr(224 + ($v >> 12)) . chr(128 + (($v >> 6) & 63)) . chr(128 + ($v & 63)); + } elseif ($v < (1 << 21)) { // 4 bytes + $output .= chr(240 + ($v >> 18)) . chr(128 + (($v >> 12) & 63)) . chr(128 + (($v >> 6) & 63)) . chr(128 + ($v & 63)); + } else { + $this->_error('Conversion from UCS-4 to UTF-8 failed: malformed input at byte ' . $k); + return false; + } + } + return $output; + } + + /** + * Convert UCS-4 array into UCS-4 string + * + * @param array $input + * @return string + */ + protected function _ucs4_to_ucs4_string($input) + { + $output = ''; + // Take array values and split output to 4 bytes per value + // The bit mask is 255, which reads &11111111 + foreach ($input as $v) { + $output .= chr(($v >> 24) & 255) . chr(($v >> 16) & 255) . chr(($v >> 8) & 255) . chr($v & 255); + } + return $output; + } + + /** + * Convert UCS-4 strin into UCS-4 garray + * + * @param string $input + * @return array + */ + protected function _ucs4_string_to_ucs4($input) + { + $output = array(); + $inp_len = self::byteLength($input); + // Input length must be dividable by 4 + if ($inp_len % 4) { + $this->_error('Input UCS4 string is broken'); + return false; + } + // Empty input - return empty output + if (!$inp_len) { + return $output; + } + for ($i = 0, $out_len = -1; $i < $inp_len; ++$i) { + // Increment output position every 4 input bytes + if (!($i % 4)) { + $out_len++; + $output[$out_len] = 0; + } + $output[$out_len] += ord($input{$i}) << (8 * (3 - ($i % 4) ) ); + } + return $output; + } + + /** + * Gets the length of a string in bytes even if mbstring function + * overloading is turned on + * + * @param string $string the string for which to get the length. + * @return integer the length of the string in bytes. + */ + protected static function byteLength($string) + { + if (self::$_mb_string_overload) { + return mb_strlen($string, '8bit'); + } + return strlen((binary) $string); + } + + /** + * Attempts to return a concrete IDNA instance. + * + * @param array $params Set of paramaters + * @return idna_convert + * @access public + */ + public function getInstance($params = array()) + { + return new idna_convert($params); + } + + /** + * Attempts to return a concrete IDNA instance for either php4 or php5, + * only creating a new instance if no IDNA instance with the same + * parameters currently exists. + * + * @param array $params Set of paramaters + * + * @return object idna_convert + * @access public + */ + public function singleton($params = array()) + { + static $instances = array(); + + $signature = serialize($params); + if (!isset($instances[$signature])) { + $instances[$signature] = idna_convert::getInstance($params); + } + return $instances[$signature]; + } + + /** + * Holds all relevant mapping tables + * See RFC3454 for details + * + * @private array + * @since 0.5.2 + */ + protected static $NP = array( + 'map_nothing' => array(0xAD, 0x34F, 0x1806, 0x180B, 0x180C, 0x180D, 0x200B, 0x200C, + 0x200D, 0x2060, 0xFE00, 0xFE01, 0xFE02, 0xFE03, 0xFE04, 0xFE05, 0xFE06, 0xFE07, + 0xFE08, 0xFE09, 0xFE0A, 0xFE0B, 0xFE0C, 0xFE0D, 0xFE0E, 0xFE0F, 0xFEFF + ), + 'general_prohibited' => array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 47, 59, 60, 61, 62, 63, 64, 91, 92, 93, 94, 95, 96, 123, 124, 125, 126, 127, 0x3002 + ), + 'prohibit' => array(0xA0, 0x340, 0x341, 0x6DD, 0x70F, 0x1680, 0x180E, 0x2000, 0x2001, 0x2002, 0x2003, + 0x2004, 0x2005, 0x2006, 0x2007, 0x2008, 0x2009, 0x200A, 0x200B, 0x200C, 0x200D, 0x200E, 0x200F, + 0x2028, 0x2029, 0x202A, 0x202B, 0x202C, 0x202D, 0x202E, 0x202F, 0x205F, 0x206A, 0x206B, 0x206C, + 0x206D, 0x206E, 0x206F, 0x3000, 0x33C2, 0xFEFF, 0xFFF9, 0xFFFA, 0xFFFB, 0xFFFC, 0xFFFD, 0xFFFE, 0xFFFF, + 0x1FFFE, 0x1FFFF, 0x2FFFE, 0x2FFFF, 0x3FFFE, 0x3FFFF, 0x4FFFE, 0x4FFFF, 0x5FFFE, 0x5FFFF, 0x6FFFE, + 0x6FFFF, 0x7FFFE, 0x7FFFF, 0x8FFFE, 0x8FFFF, 0x9FFFE, 0x9FFFF, 0xAFFFE, 0xAFFFF, 0xBFFFE, 0xBFFFF, + 0xCFFFE, 0xCFFFF, 0xDFFFE, 0xDFFFF, 0xE0001, 0xEFFFE, 0xEFFFF, 0xFFFFE, 0xFFFFF, 0x10FFFE, 0x10FFFF + ), + 'prohibit_ranges' => array(array(0x80, 0x9F), array(0x2060, 0x206F), array(0x1D173, 0x1D17A), + array(0xE000, 0xF8FF), array(0xF0000, 0xFFFFD), array(0x100000, 0x10FFFD), + array(0xFDD0, 0xFDEF), array(0xD800, 0xDFFF), array(0x2FF0, 0x2FFB), array(0xE0020, 0xE007F) + ), + 'replacemaps_2003' => array(0x41 => array(0x61), 0x42 => array(0x62), 0x43 => array(0x63), + 0x44 => array(0x64), 0x45 => array(0x65), 0x46 => array(0x66), 0x47 => array(0x67), + 0x48 => array(0x68), 0x49 => array(0x69), 0x4A => array(0x6A), 0x4B => array(0x6B), + 0x4C => array(0x6C), 0x4D => array(0x6D), 0x4E => array(0x6E), 0x4F => array(0x6F), + 0x50 => array(0x70), 0x51 => array(0x71), 0x52 => array(0x72), 0x53 => array(0x73), + 0x54 => array(0x74), 0x55 => array(0x75), 0x56 => array(0x76), 0x57 => array(0x77), + 0x58 => array(0x78), 0x59 => array(0x79), 0x5A => array(0x7A), 0xB5 => array(0x3BC), + 0xC0 => array(0xE0), 0xC1 => array(0xE1), 0xC2 => array(0xE2), 0xC3 => array(0xE3), + 0xC4 => array(0xE4), 0xC5 => array(0xE5), 0xC6 => array(0xE6), 0xC7 => array(0xE7), + 0xC8 => array(0xE8), 0xC9 => array(0xE9), 0xCA => array(0xEA), 0xCB => array(0xEB), + 0xCC => array(0xEC), 0xCD => array(0xED), 0xCE => array(0xEE), 0xCF => array(0xEF), + 0xD0 => array(0xF0), 0xD1 => array(0xF1), 0xD2 => array(0xF2), 0xD3 => array(0xF3), + 0xD4 => array(0xF4), 0xD5 => array(0xF5), 0xD6 => array(0xF6), 0xD8 => array(0xF8), + 0xD9 => array(0xF9), 0xDA => array(0xFA), 0xDB => array(0xFB), 0xDC => array(0xFC), + 0xDD => array(0xFD), 0xDE => array(0xFE), 0xDF => array(0x73, 0x73), + 0x100 => array(0x101), 0x102 => array(0x103), 0x104 => array(0x105), + 0x106 => array(0x107), 0x108 => array(0x109), 0x10A => array(0x10B), + 0x10C => array(0x10D), 0x10E => array(0x10F), 0x110 => array(0x111), + 0x112 => array(0x113), 0x114 => array(0x115), 0x116 => array(0x117), + 0x118 => array(0x119), 0x11A => array(0x11B), 0x11C => array(0x11D), + 0x11E => array(0x11F), 0x120 => array(0x121), 0x122 => array(0x123), + 0x124 => array(0x125), 0x126 => array(0x127), 0x128 => array(0x129), + 0x12A => array(0x12B), 0x12C => array(0x12D), 0x12E => array(0x12F), + 0x130 => array(0x69, 0x307), 0x132 => array(0x133), 0x134 => array(0x135), + 0x136 => array(0x137), 0x139 => array(0x13A), 0x13B => array(0x13C), + 0x13D => array(0x13E), 0x13F => array(0x140), 0x141 => array(0x142), + 0x143 => array(0x144), 0x145 => array(0x146), 0x147 => array(0x148), + 0x149 => array(0x2BC, 0x6E), 0x14A => array(0x14B), 0x14C => array(0x14D), + 0x14E => array(0x14F), 0x150 => array(0x151), 0x152 => array(0x153), + 0x154 => array(0x155), 0x156 => array(0x157), 0x158 => array(0x159), + 0x15A => array(0x15B), 0x15C => array(0x15D), 0x15E => array(0x15F), + 0x160 => array(0x161), 0x162 => array(0x163), 0x164 => array(0x165), + 0x166 => array(0x167), 0x168 => array(0x169), 0x16A => array(0x16B), + 0x16C => array(0x16D), 0x16E => array(0x16F), 0x170 => array(0x171), + 0x172 => array(0x173), 0x174 => array(0x175), 0x176 => array(0x177), + 0x178 => array(0xFF), 0x179 => array(0x17A), 0x17B => array(0x17C), + 0x17D => array(0x17E), 0x17F => array(0x73), 0x181 => array(0x253), + 0x182 => array(0x183), 0x184 => array(0x185), 0x186 => array(0x254), + 0x187 => array(0x188), 0x189 => array(0x256), 0x18A => array(0x257), + 0x18B => array(0x18C), 0x18E => array(0x1DD), 0x18F => array(0x259), + 0x190 => array(0x25B), 0x191 => array(0x192), 0x193 => array(0x260), + 0x194 => array(0x263), 0x196 => array(0x269), 0x197 => array(0x268), + 0x198 => array(0x199), 0x19C => array(0x26F), 0x19D => array(0x272), + 0x19F => array(0x275), 0x1A0 => array(0x1A1), 0x1A2 => array(0x1A3), + 0x1A4 => array(0x1A5), 0x1A6 => array(0x280), 0x1A7 => array(0x1A8), + 0x1A9 => array(0x283), 0x1AC => array(0x1AD), 0x1AE => array(0x288), + 0x1AF => array(0x1B0), 0x1B1 => array(0x28A), 0x1B2 => array(0x28B), + 0x1B3 => array(0x1B4), 0x1B5 => array(0x1B6), 0x1B7 => array(0x292), + 0x1B8 => array(0x1B9), 0x1BC => array(0x1BD), 0x1C4 => array(0x1C6), + 0x1C5 => array(0x1C6), 0x1C7 => array(0x1C9), 0x1C8 => array(0x1C9), + 0x1CA => array(0x1CC), 0x1CB => array(0x1CC), 0x1CD => array(0x1CE), + 0x1CF => array(0x1D0), 0x1D1 => array(0x1D2), 0x1D3 => array(0x1D4), + 0x1D5 => array(0x1D6), 0x1D7 => array(0x1D8), 0x1D9 => array(0x1DA), + 0x1DB => array(0x1DC), 0x1DE => array(0x1DF), 0x1E0 => array(0x1E1), + 0x1E2 => array(0x1E3), 0x1E4 => array(0x1E5), 0x1E6 => array(0x1E7), + 0x1E8 => array(0x1E9), 0x1EA => array(0x1EB), 0x1EC => array(0x1ED), + 0x1EE => array(0x1EF), 0x1F0 => array(0x6A, 0x30C), 0x1F1 => array(0x1F3), + 0x1F2 => array(0x1F3), 0x1F4 => array(0x1F5), 0x1F6 => array(0x195), + 0x1F7 => array(0x1BF), 0x1F8 => array(0x1F9), 0x1FA => array(0x1FB), + 0x1FC => array(0x1FD), 0x1FE => array(0x1FF), 0x200 => array(0x201), + 0x202 => array(0x203), 0x204 => array(0x205), 0x206 => array(0x207), + 0x208 => array(0x209), 0x20A => array(0x20B), 0x20C => array(0x20D), + 0x20E => array(0x20F), 0x210 => array(0x211), 0x212 => array(0x213), + 0x214 => array(0x215), 0x216 => array(0x217), 0x218 => array(0x219), + 0x21A => array(0x21B), 0x21C => array(0x21D), 0x21E => array(0x21F), + 0x220 => array(0x19E), 0x222 => array(0x223), 0x224 => array(0x225), + 0x226 => array(0x227), 0x228 => array(0x229), 0x22A => array(0x22B), + 0x22C => array(0x22D), 0x22E => array(0x22F), 0x230 => array(0x231), + 0x232 => array(0x233), 0x345 => array(0x3B9), 0x37A => array(0x20, 0x3B9), + 0x386 => array(0x3AC), 0x388 => array(0x3AD), 0x389 => array(0x3AE), + 0x38A => array(0x3AF), 0x38C => array(0x3CC), 0x38E => array(0x3CD), + 0x38F => array(0x3CE), 0x390 => array(0x3B9, 0x308, 0x301), + 0x391 => array(0x3B1), 0x392 => array(0x3B2), 0x393 => array(0x3B3), + 0x394 => array(0x3B4), 0x395 => array(0x3B5), 0x396 => array(0x3B6), + 0x397 => array(0x3B7), 0x398 => array(0x3B8), 0x399 => array(0x3B9), + 0x39A => array(0x3BA), 0x39B => array(0x3BB), 0x39C => array(0x3BC), + 0x39D => array(0x3BD), 0x39E => array(0x3BE), 0x39F => array(0x3BF), + 0x3A0 => array(0x3C0), 0x3A1 => array(0x3C1), 0x3A3 => array(0x3C3), + 0x3A4 => array(0x3C4), 0x3A5 => array(0x3C5), 0x3A6 => array(0x3C6), + 0x3A7 => array(0x3C7), 0x3A8 => array(0x3C8), 0x3A9 => array(0x3C9), + 0x3AA => array(0x3CA), 0x3AB => array(0x3CB), 0x3B0 => array(0x3C5, 0x308, 0x301), + 0x3C2 => array(0x3C3), 0x3D0 => array(0x3B2), 0x3D1 => array(0x3B8), + 0x3D2 => array(0x3C5), 0x3D3 => array(0x3CD), 0x3D4 => array(0x3CB), + 0x3D5 => array(0x3C6), 0x3D6 => array(0x3C0), 0x3D8 => array(0x3D9), + 0x3DA => array(0x3DB), 0x3DC => array(0x3DD), 0x3DE => array(0x3DF), + 0x3E0 => array(0x3E1), 0x3E2 => array(0x3E3), 0x3E4 => array(0x3E5), + 0x3E6 => array(0x3E7), 0x3E8 => array(0x3E9), 0x3EA => array(0x3EB), + 0x3EC => array(0x3ED), 0x3EE => array(0x3EF), 0x3F0 => array(0x3BA), + 0x3F1 => array(0x3C1), 0x3F2 => array(0x3C3), 0x3F4 => array(0x3B8), + 0x3F5 => array(0x3B5), 0x400 => array(0x450), 0x401 => array(0x451), + 0x402 => array(0x452), 0x403 => array(0x453), 0x404 => array(0x454), + 0x405 => array(0x455), 0x406 => array(0x456), 0x407 => array(0x457), + 0x408 => array(0x458), 0x409 => array(0x459), 0x40A => array(0x45A), + 0x40B => array(0x45B), 0x40C => array(0x45C), 0x40D => array(0x45D), + 0x40E => array(0x45E), 0x40F => array(0x45F), 0x410 => array(0x430), + 0x411 => array(0x431), 0x412 => array(0x432), 0x413 => array(0x433), + 0x414 => array(0x434), 0x415 => array(0x435), 0x416 => array(0x436), + 0x417 => array(0x437), 0x418 => array(0x438), 0x419 => array(0x439), + 0x41A => array(0x43A), 0x41B => array(0x43B), 0x41C => array(0x43C), + 0x41D => array(0x43D), 0x41E => array(0x43E), 0x41F => array(0x43F), + 0x420 => array(0x440), 0x421 => array(0x441), 0x422 => array(0x442), + 0x423 => array(0x443), 0x424 => array(0x444), 0x425 => array(0x445), + 0x426 => array(0x446), 0x427 => array(0x447), 0x428 => array(0x448), + 0x429 => array(0x449), 0x42A => array(0x44A), 0x42B => array(0x44B), + 0x42C => array(0x44C), 0x42D => array(0x44D), 0x42E => array(0x44E), + 0x42F => array(0x44F), 0x460 => array(0x461), 0x462 => array(0x463), + 0x464 => array(0x465), 0x466 => array(0x467), 0x468 => array(0x469), + 0x46A => array(0x46B), 0x46C => array(0x46D), 0x46E => array(0x46F), + 0x470 => array(0x471), 0x472 => array(0x473), 0x474 => array(0x475), + 0x476 => array(0x477), 0x478 => array(0x479), 0x47A => array(0x47B), + 0x47C => array(0x47D), 0x47E => array(0x47F), 0x480 => array(0x481), + 0x48A => array(0x48B), 0x48C => array(0x48D), 0x48E => array(0x48F), + 0x490 => array(0x491), 0x492 => array(0x493), 0x494 => array(0x495), + 0x496 => array(0x497), 0x498 => array(0x499), 0x49A => array(0x49B), + 0x49C => array(0x49D), 0x49E => array(0x49F), 0x4A0 => array(0x4A1), + 0x4A2 => array(0x4A3), 0x4A4 => array(0x4A5), 0x4A6 => array(0x4A7), + 0x4A8 => array(0x4A9), 0x4AA => array(0x4AB), 0x4AC => array(0x4AD), + 0x4AE => array(0x4AF), 0x4B0 => array(0x4B1), 0x4B2 => array(0x4B3), + 0x4B4 => array(0x4B5), 0x4B6 => array(0x4B7), 0x4B8 => array(0x4B9), + 0x4BA => array(0x4BB), 0x4BC => array(0x4BD), 0x4BE => array(0x4BF), + 0x4C1 => array(0x4C2), 0x4C3 => array(0x4C4), 0x4C5 => array(0x4C6), + 0x4C7 => array(0x4C8), 0x4C9 => array(0x4CA), 0x4CB => array(0x4CC), + 0x4CD => array(0x4CE), 0x4D0 => array(0x4D1), 0x4D2 => array(0x4D3), + 0x4D4 => array(0x4D5), 0x4D6 => array(0x4D7), 0x4D8 => array(0x4D9), + 0x4DA => array(0x4DB), 0x4DC => array(0x4DD), 0x4DE => array(0x4DF), + 0x4E0 => array(0x4E1), 0x4E2 => array(0x4E3), 0x4E4 => array(0x4E5), + 0x4E6 => array(0x4E7), 0x4E8 => array(0x4E9), 0x4EA => array(0x4EB), + 0x4EC => array(0x4ED), 0x4EE => array(0x4EF), 0x4F0 => array(0x4F1), + 0x4F2 => array(0x4F3), 0x4F4 => array(0x4F5), 0x4F8 => array(0x4F9), + 0x500 => array(0x501), 0x502 => array(0x503), 0x504 => array(0x505), + 0x506 => array(0x507), 0x508 => array(0x509), 0x50A => array(0x50B), + 0x50C => array(0x50D), 0x50E => array(0x50F), 0x531 => array(0x561), + 0x532 => array(0x562), 0x533 => array(0x563), 0x534 => array(0x564), + 0x535 => array(0x565), 0x536 => array(0x566), 0x537 => array(0x567), + 0x538 => array(0x568), 0x539 => array(0x569), 0x53A => array(0x56A), + 0x53B => array(0x56B), 0x53C => array(0x56C), 0x53D => array(0x56D), + 0x53E => array(0x56E), 0x53F => array(0x56F), 0x540 => array(0x570), + 0x541 => array(0x571), 0x542 => array(0x572), 0x543 => array(0x573), + 0x544 => array(0x574), 0x545 => array(0x575), 0x546 => array(0x576), + 0x547 => array(0x577), 0x548 => array(0x578), 0x549 => array(0x579), + 0x54A => array(0x57A), 0x54B => array(0x57B), 0x54C => array(0x57C), + 0x54D => array(0x57D), 0x54E => array(0x57E), 0x54F => array(0x57F), + 0x550 => array(0x580), 0x551 => array(0x581), 0x552 => array(0x582), + 0x553 => array(0x583), 0x554 => array(0x584), 0x555 => array(0x585), + 0x556 => array(0x586), 0x587 => array(0x565, 0x582), 0xE33 => array(0xE4D, 0xE32), + 0x1E00 => array(0x1E01), 0x1E02 => array(0x1E03), 0x1E04 => array(0x1E05), + 0x1E06 => array(0x1E07), 0x1E08 => array(0x1E09), 0x1E0A => array(0x1E0B), + 0x1E0C => array(0x1E0D), 0x1E0E => array(0x1E0F), 0x1E10 => array(0x1E11), + 0x1E12 => array(0x1E13), 0x1E14 => array(0x1E15), 0x1E16 => array(0x1E17), + 0x1E18 => array(0x1E19), 0x1E1A => array(0x1E1B), 0x1E1C => array(0x1E1D), + 0x1E1E => array(0x1E1F), 0x1E20 => array(0x1E21), 0x1E22 => array(0x1E23), + 0x1E24 => array(0x1E25), 0x1E26 => array(0x1E27), 0x1E28 => array(0x1E29), + 0x1E2A => array(0x1E2B), 0x1E2C => array(0x1E2D), 0x1E2E => array(0x1E2F), + 0x1E30 => array(0x1E31), 0x1E32 => array(0x1E33), 0x1E34 => array(0x1E35), + 0x1E36 => array(0x1E37), 0x1E38 => array(0x1E39), 0x1E3A => array(0x1E3B), + 0x1E3C => array(0x1E3D), 0x1E3E => array(0x1E3F), 0x1E40 => array(0x1E41), + 0x1E42 => array(0x1E43), 0x1E44 => array(0x1E45), 0x1E46 => array(0x1E47), + 0x1E48 => array(0x1E49), 0x1E4A => array(0x1E4B), 0x1E4C => array(0x1E4D), + 0x1E4E => array(0x1E4F), 0x1E50 => array(0x1E51), 0x1E52 => array(0x1E53), + 0x1E54 => array(0x1E55), 0x1E56 => array(0x1E57), 0x1E58 => array(0x1E59), + 0x1E5A => array(0x1E5B), 0x1E5C => array(0x1E5D), 0x1E5E => array(0x1E5F), + 0x1E60 => array(0x1E61), 0x1E62 => array(0x1E63), 0x1E64 => array(0x1E65), + 0x1E66 => array(0x1E67), 0x1E68 => array(0x1E69), 0x1E6A => array(0x1E6B), + 0x1E6C => array(0x1E6D), 0x1E6E => array(0x1E6F), 0x1E70 => array(0x1E71), + 0x1E72 => array(0x1E73), 0x1E74 => array(0x1E75), 0x1E76 => array(0x1E77), + 0x1E78 => array(0x1E79), 0x1E7A => array(0x1E7B), 0x1E7C => array(0x1E7D), + 0x1E7E => array(0x1E7F), 0x1E80 => array(0x1E81), 0x1E82 => array(0x1E83), + 0x1E84 => array(0x1E85), 0x1E86 => array(0x1E87), 0x1E88 => array(0x1E89), + 0x1E8A => array(0x1E8B), 0x1E8C => array(0x1E8D), 0x1E8E => array(0x1E8F), + 0x1E90 => array(0x1E91), 0x1E92 => array(0x1E93), 0x1E94 => array(0x1E95), + 0x1E96 => array(0x68, 0x331), 0x1E97 => array(0x74, 0x308), 0x1E98 => array(0x77, 0x30A), + 0x1E99 => array(0x79, 0x30A), 0x1E9A => array(0x61, 0x2BE), 0x1E9B => array(0x1E61), + 0x1EA0 => array(0x1EA1), 0x1EA2 => array(0x1EA3), 0x1EA4 => array(0x1EA5), + 0x1EA6 => array(0x1EA7), 0x1EA8 => array(0x1EA9), 0x1EAA => array(0x1EAB), + 0x1EAC => array(0x1EAD), 0x1EAE => array(0x1EAF), 0x1EB0 => array(0x1EB1), + 0x1EB2 => array(0x1EB3), 0x1EB4 => array(0x1EB5), 0x1EB6 => array(0x1EB7), + 0x1EB8 => array(0x1EB9), 0x1EBA => array(0x1EBB), 0x1EBC => array(0x1EBD), + 0x1EBE => array(0x1EBF), 0x1EC0 => array(0x1EC1), 0x1EC2 => array(0x1EC3), + 0x1EC4 => array(0x1EC5), 0x1EC6 => array(0x1EC7), 0x1EC8 => array(0x1EC9), + 0x1ECA => array(0x1ECB), 0x1ECC => array(0x1ECD), 0x1ECE => array(0x1ECF), + 0x1ED0 => array(0x1ED1), 0x1ED2 => array(0x1ED3), 0x1ED4 => array(0x1ED5), + 0x1ED6 => array(0x1ED7), 0x1ED8 => array(0x1ED9), 0x1EDA => array(0x1EDB), + 0x1EDC => array(0x1EDD), 0x1EDE => array(0x1EDF), 0x1EE0 => array(0x1EE1), + 0x1EE2 => array(0x1EE3), 0x1EE4 => array(0x1EE5), 0x1EE6 => array(0x1EE7), + 0x1EE8 => array(0x1EE9), 0x1EEA => array(0x1EEB), 0x1EEC => array(0x1EED), + 0x1EEE => array(0x1EEF), 0x1EF0 => array(0x1EF1), 0x1EF2 => array(0x1EF3), + 0x1EF4 => array(0x1EF5), 0x1EF6 => array(0x1EF7), 0x1EF8 => array(0x1EF9), + 0x1F08 => array(0x1F00), 0x1F09 => array(0x1F01), 0x1F0A => array(0x1F02), + 0x1F0B => array(0x1F03), 0x1F0C => array(0x1F04), 0x1F0D => array(0x1F05), + 0x1F0E => array(0x1F06), 0x1F0F => array(0x1F07), 0x1F18 => array(0x1F10), + 0x1F19 => array(0x1F11), 0x1F1A => array(0x1F12), 0x1F1B => array(0x1F13), + 0x1F1C => array(0x1F14), 0x1F1D => array(0x1F15), 0x1F28 => array(0x1F20), + 0x1F29 => array(0x1F21), 0x1F2A => array(0x1F22), 0x1F2B => array(0x1F23), + 0x1F2C => array(0x1F24), 0x1F2D => array(0x1F25), 0x1F2E => array(0x1F26), + 0x1F2F => array(0x1F27), 0x1F38 => array(0x1F30), 0x1F39 => array(0x1F31), + 0x1F3A => array(0x1F32), 0x1F3B => array(0x1F33), 0x1F3C => array(0x1F34), + 0x1F3D => array(0x1F35), 0x1F3E => array(0x1F36), 0x1F3F => array(0x1F37), + 0x1F48 => array(0x1F40), 0x1F49 => array(0x1F41), 0x1F4A => array(0x1F42), + 0x1F4B => array(0x1F43), 0x1F4C => array(0x1F44), 0x1F4D => array(0x1F45), + 0x1F50 => array(0x3C5, 0x313), 0x1F52 => array(0x3C5, 0x313, 0x300), + 0x1F54 => array(0x3C5, 0x313, 0x301), 0x1F56 => array(0x3C5, 0x313, 0x342), + 0x1F59 => array(0x1F51), 0x1F5B => array(0x1F53), 0x1F5D => array(0x1F55), + 0x1F5F => array(0x1F57), 0x1F68 => array(0x1F60), 0x1F69 => array(0x1F61), + 0x1F6A => array(0x1F62), 0x1F6B => array(0x1F63), 0x1F6C => array(0x1F64), + 0x1F6D => array(0x1F65), 0x1F6E => array(0x1F66), 0x1F6F => array(0x1F67), + 0x1F80 => array(0x1F00, 0x3B9), 0x1F81 => array(0x1F01, 0x3B9), + 0x1F82 => array(0x1F02, 0x3B9), 0x1F83 => array(0x1F03, 0x3B9), + 0x1F84 => array(0x1F04, 0x3B9), 0x1F85 => array(0x1F05, 0x3B9), + 0x1F86 => array(0x1F06, 0x3B9), 0x1F87 => array(0x1F07, 0x3B9), + 0x1F88 => array(0x1F00, 0x3B9), 0x1F89 => array(0x1F01, 0x3B9), + 0x1F8A => array(0x1F02, 0x3B9), 0x1F8B => array(0x1F03, 0x3B9), + 0x1F8C => array(0x1F04, 0x3B9), 0x1F8D => array(0x1F05, 0x3B9), + 0x1F8E => array(0x1F06, 0x3B9), 0x1F8F => array(0x1F07, 0x3B9), + 0x1F90 => array(0x1F20, 0x3B9), 0x1F91 => array(0x1F21, 0x3B9), + 0x1F92 => array(0x1F22, 0x3B9), 0x1F93 => array(0x1F23, 0x3B9), + 0x1F94 => array(0x1F24, 0x3B9), 0x1F95 => array(0x1F25, 0x3B9), + 0x1F96 => array(0x1F26, 0x3B9), 0x1F97 => array(0x1F27, 0x3B9), + 0x1F98 => array(0x1F20, 0x3B9), 0x1F99 => array(0x1F21, 0x3B9), + 0x1F9A => array(0x1F22, 0x3B9), 0x1F9B => array(0x1F23, 0x3B9), + 0x1F9C => array(0x1F24, 0x3B9), 0x1F9D => array(0x1F25, 0x3B9), + 0x1F9E => array(0x1F26, 0x3B9), 0x1F9F => array(0x1F27, 0x3B9), + 0x1FA0 => array(0x1F60, 0x3B9), 0x1FA1 => array(0x1F61, 0x3B9), + 0x1FA2 => array(0x1F62, 0x3B9), 0x1FA3 => array(0x1F63, 0x3B9), + 0x1FA4 => array(0x1F64, 0x3B9), 0x1FA5 => array(0x1F65, 0x3B9), + 0x1FA6 => array(0x1F66, 0x3B9), 0x1FA7 => array(0x1F67, 0x3B9), + 0x1FA8 => array(0x1F60, 0x3B9), 0x1FA9 => array(0x1F61, 0x3B9), + 0x1FAA => array(0x1F62, 0x3B9), 0x1FAB => array(0x1F63, 0x3B9), + 0x1FAC => array(0x1F64, 0x3B9), 0x1FAD => array(0x1F65, 0x3B9), + 0x1FAE => array(0x1F66, 0x3B9), 0x1FAF => array(0x1F67, 0x3B9), + 0x1FB2 => array(0x1F70, 0x3B9), 0x1FB3 => array(0x3B1, 0x3B9), + 0x1FB4 => array(0x3AC, 0x3B9), 0x1FB6 => array(0x3B1, 0x342), + 0x1FB7 => array(0x3B1, 0x342, 0x3B9), 0x1FB8 => array(0x1FB0), + 0x1FB9 => array(0x1FB1), 0x1FBA => array(0x1F70), 0x1FBB => array(0x1F71), + 0x1FBC => array(0x3B1, 0x3B9), 0x1FBE => array(0x3B9), + 0x1FC2 => array(0x1F74, 0x3B9), 0x1FC3 => array(0x3B7, 0x3B9), + 0x1FC4 => array(0x3AE, 0x3B9), 0x1FC6 => array(0x3B7, 0x342), + 0x1FC7 => array(0x3B7, 0x342, 0x3B9), 0x1FC8 => array(0x1F72), + 0x1FC9 => array(0x1F73), 0x1FCA => array(0x1F74), 0x1FCB => array(0x1F75), + 0x1FCC => array(0x3B7, 0x3B9), 0x1FD2 => array(0x3B9, 0x308, 0x300), + 0x1FD3 => array(0x3B9, 0x308, 0x301), 0x1FD6 => array(0x3B9, 0x342), + 0x1FD7 => array(0x3B9, 0x308, 0x342), 0x1FD8 => array(0x1FD0), + 0x1FD9 => array(0x1FD1), 0x1FDA => array(0x1F76), + 0x1FDB => array(0x1F77), 0x1FE2 => array(0x3C5, 0x308, 0x300), + 0x1FE3 => array(0x3C5, 0x308, 0x301), 0x1FE4 => array(0x3C1, 0x313), + 0x1FE6 => array(0x3C5, 0x342), 0x1FE7 => array(0x3C5, 0x308, 0x342), + 0x1FE8 => array(0x1FE0), 0x1FE9 => array(0x1FE1), + 0x1FEA => array(0x1F7A), 0x1FEB => array(0x1F7B), + 0x1FEC => array(0x1FE5), 0x1FF2 => array(0x1F7C, 0x3B9), + 0x1FF3 => array(0x3C9, 0x3B9), 0x1FF4 => array(0x3CE, 0x3B9), + 0x1FF6 => array(0x3C9, 0x342), 0x1FF7 => array(0x3C9, 0x342, 0x3B9), + 0x1FF8 => array(0x1F78), 0x1FF9 => array(0x1F79), 0x1FFA => array(0x1F7C), + 0x1FFB => array(0x1F7D), 0x1FFC => array(0x3C9, 0x3B9), + 0x20A8 => array(0x72, 0x73), 0x2102 => array(0x63), 0x2103 => array(0xB0, 0x63), + 0x2107 => array(0x25B), 0x2109 => array(0xB0, 0x66), 0x210B => array(0x68), + 0x210C => array(0x68), 0x210D => array(0x68), 0x2110 => array(0x69), + 0x2111 => array(0x69), 0x2112 => array(0x6C), 0x2115 => array(0x6E), + 0x2116 => array(0x6E, 0x6F), 0x2119 => array(0x70), 0x211A => array(0x71), + 0x211B => array(0x72), 0x211C => array(0x72), 0x211D => array(0x72), + 0x2120 => array(0x73, 0x6D), 0x2121 => array(0x74, 0x65, 0x6C), + 0x2122 => array(0x74, 0x6D), 0x2124 => array(0x7A), 0x2126 => array(0x3C9), + 0x2128 => array(0x7A), 0x212A => array(0x6B), 0x212B => array(0xE5), + 0x212C => array(0x62), 0x212D => array(0x63), 0x2130 => array(0x65), + 0x2131 => array(0x66), 0x2133 => array(0x6D), 0x213E => array(0x3B3), + 0x213F => array(0x3C0), 0x2145 => array(0x64), 0x2160 => array(0x2170), + 0x2161 => array(0x2171), 0x2162 => array(0x2172), 0x2163 => array(0x2173), + 0x2164 => array(0x2174), 0x2165 => array(0x2175), 0x2166 => array(0x2176), + 0x2167 => array(0x2177), 0x2168 => array(0x2178), 0x2169 => array(0x2179), + 0x216A => array(0x217A), 0x216B => array(0x217B), 0x216C => array(0x217C), + 0x216D => array(0x217D), 0x216E => array(0x217E), 0x216F => array(0x217F), + 0x24B6 => array(0x24D0), 0x24B7 => array(0x24D1), 0x24B8 => array(0x24D2), + 0x24B9 => array(0x24D3), 0x24BA => array(0x24D4), 0x24BB => array(0x24D5), + 0x24BC => array(0x24D6), 0x24BD => array(0x24D7), 0x24BE => array(0x24D8), + 0x24BF => array(0x24D9), 0x24C0 => array(0x24DA), 0x24C1 => array(0x24DB), + 0x24C2 => array(0x24DC), 0x24C3 => array(0x24DD), 0x24C4 => array(0x24DE), + 0x24C5 => array(0x24DF), 0x24C6 => array(0x24E0), 0x24C7 => array(0x24E1), + 0x24C8 => array(0x24E2), 0x24C9 => array(0x24E3), 0x24CA => array(0x24E4), + 0x24CB => array(0x24E5), 0x24CC => array(0x24E6), 0x24CD => array(0x24E7), + 0x24CE => array(0x24E8), 0x24CF => array(0x24E9), 0x3371 => array(0x68, 0x70, 0x61), + 0x3373 => array(0x61, 0x75), 0x3375 => array(0x6F, 0x76), + 0x3380 => array(0x70, 0x61), 0x3381 => array(0x6E, 0x61), + 0x3382 => array(0x3BC, 0x61), 0x3383 => array(0x6D, 0x61), + 0x3384 => array(0x6B, 0x61), 0x3385 => array(0x6B, 0x62), + 0x3386 => array(0x6D, 0x62), 0x3387 => array(0x67, 0x62), + 0x338A => array(0x70, 0x66), 0x338B => array(0x6E, 0x66), + 0x338C => array(0x3BC, 0x66), 0x3390 => array(0x68, 0x7A), + 0x3391 => array(0x6B, 0x68, 0x7A), 0x3392 => array(0x6D, 0x68, 0x7A), + 0x3393 => array(0x67, 0x68, 0x7A), 0x3394 => array(0x74, 0x68, 0x7A), + 0x33A9 => array(0x70, 0x61), 0x33AA => array(0x6B, 0x70, 0x61), + 0x33AB => array(0x6D, 0x70, 0x61), 0x33AC => array(0x67, 0x70, 0x61), + 0x33B4 => array(0x70, 0x76), 0x33B5 => array(0x6E, 0x76), + 0x33B6 => array(0x3BC, 0x76), 0x33B7 => array(0x6D, 0x76), + 0x33B8 => array(0x6B, 0x76), 0x33B9 => array(0x6D, 0x76), + 0x33BA => array(0x70, 0x77), 0x33BB => array(0x6E, 0x77), + 0x33BC => array(0x3BC, 0x77), 0x33BD => array(0x6D, 0x77), + 0x33BE => array(0x6B, 0x77), 0x33BF => array(0x6D, 0x77), + 0x33C0 => array(0x6B, 0x3C9), 0x33C1 => array(0x6D, 0x3C9), /* + 0x33C2 => array(0x61, 0x2E, 0x6D, 0x2E), */ + 0x33C3 => array(0x62, 0x71), 0x33C6 => array(0x63, 0x2215, 0x6B, 0x67), + 0x33C7 => array(0x63, 0x6F, 0x2E), 0x33C8 => array(0x64, 0x62), + 0x33C9 => array(0x67, 0x79), 0x33CB => array(0x68, 0x70), + 0x33CD => array(0x6B, 0x6B), 0x33CE => array(0x6B, 0x6D), + 0x33D7 => array(0x70, 0x68), 0x33D9 => array(0x70, 0x70, 0x6D), + 0x33DA => array(0x70, 0x72), 0x33DC => array(0x73, 0x76), + 0x33DD => array(0x77, 0x62), 0xFB00 => array(0x66, 0x66), + 0xFB01 => array(0x66, 0x69), 0xFB02 => array(0x66, 0x6C), + 0xFB03 => array(0x66, 0x66, 0x69), 0xFB04 => array(0x66, 0x66, 0x6C), + 0xFB05 => array(0x73, 0x74), 0xFB06 => array(0x73, 0x74), + 0xFB13 => array(0x574, 0x576), 0xFB14 => array(0x574, 0x565), + 0xFB15 => array(0x574, 0x56B), 0xFB16 => array(0x57E, 0x576), + 0xFB17 => array(0x574, 0x56D), 0xFF21 => array(0xFF41), + 0xFF22 => array(0xFF42), 0xFF23 => array(0xFF43), 0xFF24 => array(0xFF44), + 0xFF25 => array(0xFF45), 0xFF26 => array(0xFF46), 0xFF27 => array(0xFF47), + 0xFF28 => array(0xFF48), 0xFF29 => array(0xFF49), 0xFF2A => array(0xFF4A), + 0xFF2B => array(0xFF4B), 0xFF2C => array(0xFF4C), 0xFF2D => array(0xFF4D), + 0xFF2E => array(0xFF4E), 0xFF2F => array(0xFF4F), 0xFF30 => array(0xFF50), + 0xFF31 => array(0xFF51), 0xFF32 => array(0xFF52), 0xFF33 => array(0xFF53), + 0xFF34 => array(0xFF54), 0xFF35 => array(0xFF55), 0xFF36 => array(0xFF56), + 0xFF37 => array(0xFF57), 0xFF38 => array(0xFF58), 0xFF39 => array(0xFF59), + 0xFF3A => array(0xFF5A), 0x10400 => array(0x10428), 0x10401 => array(0x10429), + 0x10402 => array(0x1042A), 0x10403 => array(0x1042B), 0x10404 => array(0x1042C), + 0x10405 => array(0x1042D), 0x10406 => array(0x1042E), 0x10407 => array(0x1042F), + 0x10408 => array(0x10430), 0x10409 => array(0x10431), 0x1040A => array(0x10432), + 0x1040B => array(0x10433), 0x1040C => array(0x10434), 0x1040D => array(0x10435), + 0x1040E => array(0x10436), 0x1040F => array(0x10437), 0x10410 => array(0x10438), + 0x10411 => array(0x10439), 0x10412 => array(0x1043A), 0x10413 => array(0x1043B), + 0x10414 => array(0x1043C), 0x10415 => array(0x1043D), 0x10416 => array(0x1043E), + 0x10417 => array(0x1043F), 0x10418 => array(0x10440), 0x10419 => array(0x10441), + 0x1041A => array(0x10442), 0x1041B => array(0x10443), 0x1041C => array(0x10444), + 0x1041D => array(0x10445), 0x1041E => array(0x10446), 0x1041F => array(0x10447), + 0x10420 => array(0x10448), 0x10421 => array(0x10449), 0x10422 => array(0x1044A), + 0x10423 => array(0x1044B), 0x10424 => array(0x1044C), 0x10425 => array(0x1044D), + 0x1D400 => array(0x61), 0x1D401 => array(0x62), 0x1D402 => array(0x63), + 0x1D403 => array(0x64), 0x1D404 => array(0x65), 0x1D405 => array(0x66), + 0x1D406 => array(0x67), 0x1D407 => array(0x68), 0x1D408 => array(0x69), + 0x1D409 => array(0x6A), 0x1D40A => array(0x6B), 0x1D40B => array(0x6C), + 0x1D40C => array(0x6D), 0x1D40D => array(0x6E), 0x1D40E => array(0x6F), + 0x1D40F => array(0x70), 0x1D410 => array(0x71), 0x1D411 => array(0x72), + 0x1D412 => array(0x73), 0x1D413 => array(0x74), 0x1D414 => array(0x75), + 0x1D415 => array(0x76), 0x1D416 => array(0x77), 0x1D417 => array(0x78), + 0x1D418 => array(0x79), 0x1D419 => array(0x7A), 0x1D434 => array(0x61), + 0x1D435 => array(0x62), 0x1D436 => array(0x63), 0x1D437 => array(0x64), + 0x1D438 => array(0x65), 0x1D439 => array(0x66), 0x1D43A => array(0x67), + 0x1D43B => array(0x68), 0x1D43C => array(0x69), 0x1D43D => array(0x6A), + 0x1D43E => array(0x6B), 0x1D43F => array(0x6C), 0x1D440 => array(0x6D), + 0x1D441 => array(0x6E), 0x1D442 => array(0x6F), 0x1D443 => array(0x70), + 0x1D444 => array(0x71), 0x1D445 => array(0x72), 0x1D446 => array(0x73), + 0x1D447 => array(0x74), 0x1D448 => array(0x75), 0x1D449 => array(0x76), + 0x1D44A => array(0x77), 0x1D44B => array(0x78), 0x1D44C => array(0x79), + 0x1D44D => array(0x7A), 0x1D468 => array(0x61), 0x1D469 => array(0x62), + 0x1D46A => array(0x63), 0x1D46B => array(0x64), 0x1D46C => array(0x65), + 0x1D46D => array(0x66), 0x1D46E => array(0x67), 0x1D46F => array(0x68), + 0x1D470 => array(0x69), 0x1D471 => array(0x6A), 0x1D472 => array(0x6B), + 0x1D473 => array(0x6C), 0x1D474 => array(0x6D), 0x1D475 => array(0x6E), + 0x1D476 => array(0x6F), 0x1D477 => array(0x70), 0x1D478 => array(0x71), + 0x1D479 => array(0x72), 0x1D47A => array(0x73), 0x1D47B => array(0x74), + 0x1D47C => array(0x75), 0x1D47D => array(0x76), 0x1D47E => array(0x77), + 0x1D47F => array(0x78), 0x1D480 => array(0x79), 0x1D481 => array(0x7A), + 0x1D49C => array(0x61), 0x1D49E => array(0x63), 0x1D49F => array(0x64), + 0x1D4A2 => array(0x67), 0x1D4A5 => array(0x6A), 0x1D4A6 => array(0x6B), + 0x1D4A9 => array(0x6E), 0x1D4AA => array(0x6F), 0x1D4AB => array(0x70), + 0x1D4AC => array(0x71), 0x1D4AE => array(0x73), 0x1D4AF => array(0x74), + 0x1D4B0 => array(0x75), 0x1D4B1 => array(0x76), 0x1D4B2 => array(0x77), + 0x1D4B3 => array(0x78), 0x1D4B4 => array(0x79), 0x1D4B5 => array(0x7A), + 0x1D4D0 => array(0x61), 0x1D4D1 => array(0x62), 0x1D4D2 => array(0x63), + 0x1D4D3 => array(0x64), 0x1D4D4 => array(0x65), 0x1D4D5 => array(0x66), + 0x1D4D6 => array(0x67), 0x1D4D7 => array(0x68), 0x1D4D8 => array(0x69), + 0x1D4D9 => array(0x6A), 0x1D4DA => array(0x6B), 0x1D4DB => array(0x6C), + 0x1D4DC => array(0x6D), 0x1D4DD => array(0x6E), 0x1D4DE => array(0x6F), + 0x1D4DF => array(0x70), 0x1D4E0 => array(0x71), 0x1D4E1 => array(0x72), + 0x1D4E2 => array(0x73), 0x1D4E3 => array(0x74), 0x1D4E4 => array(0x75), + 0x1D4E5 => array(0x76), 0x1D4E6 => array(0x77), 0x1D4E7 => array(0x78), + 0x1D4E8 => array(0x79), 0x1D4E9 => array(0x7A), 0x1D504 => array(0x61), + 0x1D505 => array(0x62), 0x1D507 => array(0x64), 0x1D508 => array(0x65), + 0x1D509 => array(0x66), 0x1D50A => array(0x67), 0x1D50D => array(0x6A), + 0x1D50E => array(0x6B), 0x1D50F => array(0x6C), 0x1D510 => array(0x6D), + 0x1D511 => array(0x6E), 0x1D512 => array(0x6F), 0x1D513 => array(0x70), + 0x1D514 => array(0x71), 0x1D516 => array(0x73), 0x1D517 => array(0x74), + 0x1D518 => array(0x75), 0x1D519 => array(0x76), 0x1D51A => array(0x77), + 0x1D51B => array(0x78), 0x1D51C => array(0x79), 0x1D538 => array(0x61), + 0x1D539 => array(0x62), 0x1D53B => array(0x64), 0x1D53C => array(0x65), + 0x1D53D => array(0x66), 0x1D53E => array(0x67), 0x1D540 => array(0x69), + 0x1D541 => array(0x6A), 0x1D542 => array(0x6B), 0x1D543 => array(0x6C), + 0x1D544 => array(0x6D), 0x1D546 => array(0x6F), 0x1D54A => array(0x73), + 0x1D54B => array(0x74), 0x1D54C => array(0x75), 0x1D54D => array(0x76), + 0x1D54E => array(0x77), 0x1D54F => array(0x78), 0x1D550 => array(0x79), + 0x1D56C => array(0x61), 0x1D56D => array(0x62), 0x1D56E => array(0x63), + 0x1D56F => array(0x64), 0x1D570 => array(0x65), 0x1D571 => array(0x66), + 0x1D572 => array(0x67), 0x1D573 => array(0x68), 0x1D574 => array(0x69), + 0x1D575 => array(0x6A), 0x1D576 => array(0x6B), 0x1D577 => array(0x6C), + 0x1D578 => array(0x6D), 0x1D579 => array(0x6E), 0x1D57A => array(0x6F), + 0x1D57B => array(0x70), 0x1D57C => array(0x71), 0x1D57D => array(0x72), + 0x1D57E => array(0x73), 0x1D57F => array(0x74), 0x1D580 => array(0x75), + 0x1D581 => array(0x76), 0x1D582 => array(0x77), 0x1D583 => array(0x78), + 0x1D584 => array(0x79), 0x1D585 => array(0x7A), 0x1D5A0 => array(0x61), + 0x1D5A1 => array(0x62), 0x1D5A2 => array(0x63), 0x1D5A3 => array(0x64), + 0x1D5A4 => array(0x65), 0x1D5A5 => array(0x66), 0x1D5A6 => array(0x67), + 0x1D5A7 => array(0x68), 0x1D5A8 => array(0x69), 0x1D5A9 => array(0x6A), + 0x1D5AA => array(0x6B), 0x1D5AB => array(0x6C), 0x1D5AC => array(0x6D), + 0x1D5AD => array(0x6E), 0x1D5AE => array(0x6F), 0x1D5AF => array(0x70), + 0x1D5B0 => array(0x71), 0x1D5B1 => array(0x72), 0x1D5B2 => array(0x73), + 0x1D5B3 => array(0x74), 0x1D5B4 => array(0x75), 0x1D5B5 => array(0x76), + 0x1D5B6 => array(0x77), 0x1D5B7 => array(0x78), 0x1D5B8 => array(0x79), + 0x1D5B9 => array(0x7A), 0x1D5D4 => array(0x61), 0x1D5D5 => array(0x62), + 0x1D5D6 => array(0x63), 0x1D5D7 => array(0x64), 0x1D5D8 => array(0x65), + 0x1D5D9 => array(0x66), 0x1D5DA => array(0x67), 0x1D5DB => array(0x68), + 0x1D5DC => array(0x69), 0x1D5DD => array(0x6A), 0x1D5DE => array(0x6B), + 0x1D5DF => array(0x6C), 0x1D5E0 => array(0x6D), 0x1D5E1 => array(0x6E), + 0x1D5E2 => array(0x6F), 0x1D5E3 => array(0x70), 0x1D5E4 => array(0x71), + 0x1D5E5 => array(0x72), 0x1D5E6 => array(0x73), 0x1D5E7 => array(0x74), + 0x1D5E8 => array(0x75), 0x1D5E9 => array(0x76), 0x1D5EA => array(0x77), + 0x1D5EB => array(0x78), 0x1D5EC => array(0x79), 0x1D5ED => array(0x7A), + 0x1D608 => array(0x61), 0x1D609 => array(0x62), 0x1D60A => array(0x63), + 0x1D60B => array(0x64), 0x1D60C => array(0x65), 0x1D60D => array(0x66), + 0x1D60E => array(0x67), 0x1D60F => array(0x68), 0x1D610 => array(0x69), + 0x1D611 => array(0x6A), 0x1D612 => array(0x6B), 0x1D613 => array(0x6C), + 0x1D614 => array(0x6D), 0x1D615 => array(0x6E), 0x1D616 => array(0x6F), + 0x1D617 => array(0x70), 0x1D618 => array(0x71), 0x1D619 => array(0x72), + 0x1D61A => array(0x73), 0x1D61B => array(0x74), 0x1D61C => array(0x75), + 0x1D61D => array(0x76), 0x1D61E => array(0x77), 0x1D61F => array(0x78), + 0x1D620 => array(0x79), 0x1D621 => array(0x7A), 0x1D63C => array(0x61), + 0x1D63D => array(0x62), 0x1D63E => array(0x63), 0x1D63F => array(0x64), + 0x1D640 => array(0x65), 0x1D641 => array(0x66), 0x1D642 => array(0x67), + 0x1D643 => array(0x68), 0x1D644 => array(0x69), 0x1D645 => array(0x6A), + 0x1D646 => array(0x6B), 0x1D647 => array(0x6C), 0x1D648 => array(0x6D), + 0x1D649 => array(0x6E), 0x1D64A => array(0x6F), 0x1D64B => array(0x70), + 0x1D64C => array(0x71), 0x1D64D => array(0x72), 0x1D64E => array(0x73), + 0x1D64F => array(0x74), 0x1D650 => array(0x75), 0x1D651 => array(0x76), + 0x1D652 => array(0x77), 0x1D653 => array(0x78), 0x1D654 => array(0x79), + 0x1D655 => array(0x7A), 0x1D670 => array(0x61), 0x1D671 => array(0x62), + 0x1D672 => array(0x63), 0x1D673 => array(0x64), 0x1D674 => array(0x65), + 0x1D675 => array(0x66), 0x1D676 => array(0x67), 0x1D677 => array(0x68), + 0x1D678 => array(0x69), 0x1D679 => array(0x6A), 0x1D67A => array(0x6B), + 0x1D67B => array(0x6C), 0x1D67C => array(0x6D), 0x1D67D => array(0x6E), + 0x1D67E => array(0x6F), 0x1D67F => array(0x70), 0x1D680 => array(0x71), + 0x1D681 => array(0x72), 0x1D682 => array(0x73), 0x1D683 => array(0x74), + 0x1D684 => array(0x75), 0x1D685 => array(0x76), 0x1D686 => array(0x77), + 0x1D687 => array(0x78), 0x1D688 => array(0x79), 0x1D689 => array(0x7A), + 0x1D6A8 => array(0x3B1), 0x1D6A9 => array(0x3B2), 0x1D6AA => array(0x3B3), + 0x1D6AB => array(0x3B4), 0x1D6AC => array(0x3B5), 0x1D6AD => array(0x3B6), + 0x1D6AE => array(0x3B7), 0x1D6AF => array(0x3B8), 0x1D6B0 => array(0x3B9), + 0x1D6B1 => array(0x3BA), 0x1D6B2 => array(0x3BB), 0x1D6B3 => array(0x3BC), + 0x1D6B4 => array(0x3BD), 0x1D6B5 => array(0x3BE), 0x1D6B6 => array(0x3BF), + 0x1D6B7 => array(0x3C0), 0x1D6B8 => array(0x3C1), 0x1D6B9 => array(0x3B8), + 0x1D6BA => array(0x3C3), 0x1D6BB => array(0x3C4), 0x1D6BC => array(0x3C5), + 0x1D6BD => array(0x3C6), 0x1D6BE => array(0x3C7), 0x1D6BF => array(0x3C8), + 0x1D6C0 => array(0x3C9), 0x1D6D3 => array(0x3C3), 0x1D6E2 => array(0x3B1), + 0x1D6E3 => array(0x3B2), 0x1D6E4 => array(0x3B3), 0x1D6E5 => array(0x3B4), + 0x1D6E6 => array(0x3B5), 0x1D6E7 => array(0x3B6), 0x1D6E8 => array(0x3B7), + 0x1D6E9 => array(0x3B8), 0x1D6EA => array(0x3B9), 0x1D6EB => array(0x3BA), + 0x1D6EC => array(0x3BB), 0x1D6ED => array(0x3BC), 0x1D6EE => array(0x3BD), + 0x1D6EF => array(0x3BE), 0x1D6F0 => array(0x3BF), 0x1D6F1 => array(0x3C0), + 0x1D6F2 => array(0x3C1), 0x1D6F3 => array(0x3B8), 0x1D6F4 => array(0x3C3), + 0x1D6F5 => array(0x3C4), 0x1D6F6 => array(0x3C5), 0x1D6F7 => array(0x3C6), + 0x1D6F8 => array(0x3C7), 0x1D6F9 => array(0x3C8), 0x1D6FA => array(0x3C9), + 0x1D70D => array(0x3C3), 0x1D71C => array(0x3B1), 0x1D71D => array(0x3B2), + 0x1D71E => array(0x3B3), 0x1D71F => array(0x3B4), 0x1D720 => array(0x3B5), + 0x1D721 => array(0x3B6), 0x1D722 => array(0x3B7), 0x1D723 => array(0x3B8), + 0x1D724 => array(0x3B9), 0x1D725 => array(0x3BA), 0x1D726 => array(0x3BB), + 0x1D727 => array(0x3BC), 0x1D728 => array(0x3BD), 0x1D729 => array(0x3BE), + 0x1D72A => array(0x3BF), 0x1D72B => array(0x3C0), 0x1D72C => array(0x3C1), + 0x1D72D => array(0x3B8), 0x1D72E => array(0x3C3), 0x1D72F => array(0x3C4), + 0x1D730 => array(0x3C5), 0x1D731 => array(0x3C6), 0x1D732 => array(0x3C7), + 0x1D733 => array(0x3C8), 0x1D734 => array(0x3C9), 0x1D747 => array(0x3C3), + 0x1D756 => array(0x3B1), 0x1D757 => array(0x3B2), 0x1D758 => array(0x3B3), + 0x1D759 => array(0x3B4), 0x1D75A => array(0x3B5), 0x1D75B => array(0x3B6), + 0x1D75C => array(0x3B7), 0x1D75D => array(0x3B8), 0x1D75E => array(0x3B9), + 0x1D75F => array(0x3BA), 0x1D760 => array(0x3BB), 0x1D761 => array(0x3BC), + 0x1D762 => array(0x3BD), 0x1D763 => array(0x3BE), 0x1D764 => array(0x3BF), + 0x1D765 => array(0x3C0), 0x1D766 => array(0x3C1), 0x1D767 => array(0x3B8), + 0x1D768 => array(0x3C3), 0x1D769 => array(0x3C4), 0x1D76A => array(0x3C5), + 0x1D76B => array(0x3C6), 0x1D76C => array(0x3C7), 0x1D76D => array(0x3C8), + 0x1D76E => array(0x3C9), 0x1D781 => array(0x3C3), 0x1D790 => array(0x3B1), + 0x1D791 => array(0x3B2), 0x1D792 => array(0x3B3), 0x1D793 => array(0x3B4), + 0x1D794 => array(0x3B5), 0x1D795 => array(0x3B6), 0x1D796 => array(0x3B7), + 0x1D797 => array(0x3B8), 0x1D798 => array(0x3B9), 0x1D799 => array(0x3BA), + 0x1D79A => array(0x3BB), 0x1D79B => array(0x3BC), 0x1D79C => array(0x3BD), + 0x1D79D => array(0x3BE), 0x1D79E => array(0x3BF), 0x1D79F => array(0x3C0), + 0x1D7A0 => array(0x3C1), 0x1D7A1 => array(0x3B8), 0x1D7A2 => array(0x3C3), + 0x1D7A3 => array(0x3C4), 0x1D7A4 => array(0x3C5), 0x1D7A5 => array(0x3C6), + 0x1D7A6 => array(0x3C7), 0x1D7A7 => array(0x3C8), 0x1D7A8 => array(0x3C9), + 0x1D7BB => array(0x3C3), 0x3F9 => array(0x3C3), 0x1D2C => array(0x61), + 0x1D2D => array(0xE6), 0x1D2E => array(0x62), 0x1D30 => array(0x64), + 0x1D31 => array(0x65), 0x1D32 => array(0x1DD), 0x1D33 => array(0x67), + 0x1D34 => array(0x68), 0x1D35 => array(0x69), 0x1D36 => array(0x6A), + 0x1D37 => array(0x6B), 0x1D38 => array(0x6C), 0x1D39 => array(0x6D), + 0x1D3A => array(0x6E), 0x1D3C => array(0x6F), 0x1D3D => array(0x223), + 0x1D3E => array(0x70), 0x1D3F => array(0x72), 0x1D40 => array(0x74), + 0x1D41 => array(0x75), 0x1D42 => array(0x77), 0x213B => array(0x66, 0x61, 0x78), + 0x3250 => array(0x70, 0x74, 0x65), 0x32CC => array(0x68, 0x67), + 0x32CE => array(0x65, 0x76), 0x32CF => array(0x6C, 0x74, 0x64), + 0x337A => array(0x69, 0x75), 0x33DE => array(0x76, 0x2215, 0x6D), + 0x33DF => array(0x61, 0x2215, 0x6D) + ), + 'replacemaps' => array(0x41 => array(0x61), 0x42 => array(0x62), 0x43 => array(0x63), + 0x44 => array(0x64), 0x45 => array(0x65), 0x46 => array(0x66), + 0x47 => array(0x67), 0x48 => array(0x68), 0x49 => array(0x69), + 0x4A => array(0x6A), 0x4B => array(0x6B), 0x4C => array(0x6C), + 0x4D => array(0x6D), 0x4E => array(0x6E), 0x4F => array(0x6F), + 0x50 => array(0x70), 0x51 => array(0x71), 0x52 => array(0x72), + 0x53 => array(0x73), 0x54 => array(0x74), 0x55 => array(0x75), + 0x56 => array(0x76), 0x57 => array(0x77), 0x58 => array(0x78), + 0x59 => array(0x79), 0x5A => array(0x7A), 0xAA => array(0x61), + 0xB2 => array(0x32), 0xB3 => array(0x33), 0xB5 => array(0x3BC), + 0xB9 => array(0x31), 0xBA => array(0x6F), 0xBC => array(0x31, 0x2044, 0x34), + 0xBD => array(0x31, 0x2044, 0x32), 0xBE => array(0x33, 0x2044, 0x34), 0xC0 => array(0xE0), + 0xC1 => array(0xE1), 0xC2 => array(0xE2), 0xC3 => array(0xE3), + 0xC4 => array(0xE4), 0xC5 => array(0xE5), 0xC6 => array(0xE6), + 0xC7 => array(0xE7), 0xC8 => array(0xE8), 0xC9 => array(0xE9), + 0xCA => array(0xEA), 0xCB => array(0xEB), 0xCC => array(0xEC), + 0xCD => array(0xED), 0xCE => array(0xEE), 0xCF => array(0xEF), + 0xD0 => array(0xF0), 0xD1 => array(0xF1), 0xD2 => array(0xF2), + 0xD3 => array(0xF3), 0xD4 => array(0xF4), 0xD5 => array(0xF5), + 0xD6 => array(0xF6), 0xD8 => array(0xF8), 0xD9 => array(0xF9), + 0xDA => array(0xFA), 0xDB => array(0xFB), 0xDC => array(0xFC), + 0xDD => array(0xFD), 0xDE => array(0xFE), 0x100 => array(0x101), + 0x102 => array(0x103), 0x104 => array(0x105), 0x106 => array(0x107), + 0x108 => array(0x109), 0x10A => array(0x10B), 0x10C => array(0x10D), + 0x10E => array(0x10F), 0x110 => array(0x111), 0x112 => array(0x113), + 0x114 => array(0x115), 0x116 => array(0x117), 0x118 => array(0x119), + 0x11A => array(0x11B), 0x11C => array(0x11D), 0x11E => array(0x11F), + 0x120 => array(0x121), 0x122 => array(0x123), 0x124 => array(0x125), + 0x126 => array(0x127), 0x128 => array(0x129), 0x12A => array(0x12B), + 0x12C => array(0x12D), 0x12E => array(0x12F), 0x130 => array(0x69, 0x307), + 0x132 => array(0x69, 0x6A), 0x133 => array(0x69, 0x6A), 0x134 => array(0x135), + 0x136 => array(0x137), 0x139 => array(0x13A), 0x13B => array(0x13C), + 0x13D => array(0x13E), 0x13F => array(0x6C, 0xB7), 0x140 => array(0x6C, 0xB7), + 0x141 => array(0x142), 0x143 => array(0x144), 0x145 => array(0x146), + 0x147 => array(0x148), 0x149 => array(0x2BC, 0x6E), 0x14A => array(0x14B), + 0x14C => array(0x14D), 0x14E => array(0x14F), 0x150 => array(0x151), + 0x152 => array(0x153), 0x154 => array(0x155), 0x156 => array(0x157), + 0x158 => array(0x159), 0x15A => array(0x15B), 0x15C => array(0x15D), + 0x15E => array(0x15F), 0x160 => array(0x161), 0x162 => array(0x163), + 0x164 => array(0x165), 0x166 => array(0x167), 0x168 => array(0x169), + 0x16A => array(0x16B), 0x16C => array(0x16D), 0x16E => array(0x16F), + 0x170 => array(0x171), 0x172 => array(0x173), 0x174 => array(0x175), + 0x176 => array(0x177), 0x178 => array(0xFF), 0x179 => array(0x17A), + 0x17B => array(0x17C), 0x17D => array(0x17E), 0x17F => array(0x73), + 0x181 => array(0x253), 0x182 => array(0x183), 0x184 => array(0x185), + 0x186 => array(0x254), 0x187 => array(0x188), 0x189 => array(0x256), + 0x18A => array(0x257), 0x18B => array(0x18C), 0x18E => array(0x1DD), + 0x18F => array(0x259), 0x190 => array(0x25B), 0x191 => array(0x192), + 0x193 => array(0x260), 0x194 => array(0x263), 0x196 => array(0x269), + 0x197 => array(0x268), 0x198 => array(0x199), 0x19C => array(0x26F), + 0x19D => array(0x272), 0x19F => array(0x275), 0x1A0 => array(0x1A1), + 0x1A2 => array(0x1A3), 0x1A4 => array(0x1A5), 0x1A6 => array(0x280), + 0x1A7 => array(0x1A8), 0x1A9 => array(0x283), 0x1AC => array(0x1AD), + 0x1AE => array(0x288), 0x1AF => array(0x1B0), 0x1B1 => array(0x28A), + 0x1B2 => array(0x28B), 0x1B3 => array(0x1B4), 0x1B5 => array(0x1B6), + 0x1B7 => array(0x292), 0x1B8 => array(0x1B9), 0x1BC => array(0x1BD), + 0x1C4 => array(0x64, 0x17E), 0x1C5 => array(0x64, 0x17E), 0x1C6 => array(0x64, 0x17E), + 0x1C7 => array(0x6C, 0x6A), 0x1C8 => array(0x6C, 0x6A), 0x1C9 => array(0x6C, 0x6A), + 0x1CA => array(0x6E, 0x6A), 0x1CB => array(0x6E, 0x6A), 0x1CC => array(0x6E, 0x6A), + 0x1CD => array(0x1CE), 0x1CF => array(0x1D0), 0x1D1 => array(0x1D2), + 0x1D3 => array(0x1D4), 0x1D5 => array(0x1D6), 0x1D7 => array(0x1D8), + 0x1D9 => array(0x1DA), 0x1DB => array(0x1DC), 0x1DE => array(0x1DF), + 0x1E0 => array(0x1E1), 0x1E2 => array(0x1E3), 0x1E4 => array(0x1E5), + 0x1E6 => array(0x1E7), 0x1E8 => array(0x1E9), 0x1EA => array(0x1EB), + 0x1EC => array(0x1ED), 0x1EE => array(0x1EF), 0x1F1 => array(0x64, 0x7A), + 0x1F2 => array(0x64, 0x7A), 0x1F3 => array(0x64, 0x7A), 0x1F4 => array(0x1F5), + 0x1F6 => array(0x195), 0x1F7 => array(0x1BF), 0x1F8 => array(0x1F9), + 0x1FA => array(0x1FB), 0x1FC => array(0x1FD), 0x1FE => array(0x1FF), + 0x200 => array(0x201), 0x202 => array(0x203), 0x204 => array(0x205), + 0x206 => array(0x207), 0x208 => array(0x209), 0x20A => array(0x20B), + 0x20C => array(0x20D), 0x20E => array(0x20F), 0x210 => array(0x211), + 0x212 => array(0x213), 0x214 => array(0x215), 0x216 => array(0x217), + 0x218 => array(0x219), 0x21A => array(0x21B), 0x21C => array(0x21D), + 0x21E => array(0x21F), 0x220 => array(0x19E), 0x222 => array(0x223), + 0x224 => array(0x225), 0x226 => array(0x227), 0x228 => array(0x229), + 0x22A => array(0x22B), 0x22C => array(0x22D), 0x22E => array(0x22F), + 0x230 => array(0x231), 0x232 => array(0x233), 0x23A => array(0x2C65), + 0x23B => array(0x23C), 0x23D => array(0x19A), 0x23E => array(0x2C66), + 0x241 => array(0x242), 0x243 => array(0x180), 0x244 => array(0x289), + 0x245 => array(0x28C), 0x246 => array(0x247), 0x248 => array(0x249), + 0x24A => array(0x24B), 0x24C => array(0x24D), 0x24E => array(0x24F), + 0x2B0 => array(0x68), 0x2B1 => array(0x266), 0x2B2 => array(0x6A), + 0x2B3 => array(0x72), 0x2B4 => array(0x279), 0x2B5 => array(0x27B), + 0x2B6 => array(0x281), 0x2B7 => array(0x77), 0x2B8 => array(0x79), + 0x2E0 => array(0x263), 0x2E1 => array(0x6C), 0x2E2 => array(0x73), + 0x2E3 => array(0x78), 0x2E4 => array(0x295), 0x340 => array(0x300), + 0x341 => array(0x301), 0x343 => array(0x313), 0x344 => array(0x308, 0x301), + 0x345 => array(0x3B9), 0x370 => array(0x371), 0x372 => array(0x373), + 0x374 => array(0x2B9), 0x376 => array(0x377), 0x37F => array(0x3F3), + 0x386 => array(0x3AC), 0x387 => array(0xB7), 0x388 => array(0x3AD), + 0x389 => array(0x3AE), 0x38A => array(0x3AF), 0x38C => array(0x3CC), + 0x38E => array(0x3CD), 0x38F => array(0x3CE), 0x391 => array(0x3B1), + 0x392 => array(0x3B2), 0x393 => array(0x3B3), 0x394 => array(0x3B4), + 0x395 => array(0x3B5), 0x396 => array(0x3B6), 0x397 => array(0x3B7), + 0x398 => array(0x3B8), 0x399 => array(0x3B9), 0x39A => array(0x3BA), + 0x39B => array(0x3BB), 0x39C => array(0x3BC), 0x39D => array(0x3BD), + 0x39E => array(0x3BE), 0x39F => array(0x3BF), 0x3A0 => array(0x3C0), + 0x3A1 => array(0x3C1), 0x3A3 => array(0x3C3), 0x3A4 => array(0x3C4), + 0x3A5 => array(0x3C5), 0x3A6 => array(0x3C6), 0x3A7 => array(0x3C7), + 0x3A8 => array(0x3C8), 0x3A9 => array(0x3C9), 0x3AA => array(0x3CA), + 0x3AB => array(0x3CB), 0x3CF => array(0x3D7), 0x3D0 => array(0x3B2), + 0x3D1 => array(0x3B8), 0x3D2 => array(0x3C5), 0x3D3 => array(0x3CD), + 0x3D4 => array(0x3CB), 0x3D5 => array(0x3C6), 0x3D6 => array(0x3C0), + 0x3D8 => array(0x3D9), 0x3DA => array(0x3DB), 0x3DC => array(0x3DD), + 0x3DE => array(0x3DF), 0x3E0 => array(0x3E1), 0x3E2 => array(0x3E3), + 0x3E4 => array(0x3E5), 0x3E6 => array(0x3E7), 0x3E8 => array(0x3E9), + 0x3EA => array(0x3EB), 0x3EC => array(0x3ED), 0x3EE => array(0x3EF), + 0x3F0 => array(0x3BA), 0x3F1 => array(0x3C1), 0x3F2 => array(0x3C3), + 0x3F4 => array(0x3B8), 0x3F5 => array(0x3B5), 0x3F7 => array(0x3F8), + 0x3F9 => array(0x3C3), 0x3FA => array(0x3FB), 0x3FD => array(0x37B), + 0x3FE => array(0x37C), 0x3FF => array(0x37D), 0x400 => array(0x450), + 0x401 => array(0x451), 0x402 => array(0x452), 0x403 => array(0x453), + 0x404 => array(0x454), 0x405 => array(0x455), 0x406 => array(0x456), + 0x407 => array(0x457), 0x408 => array(0x458), 0x409 => array(0x459), + 0x40A => array(0x45A), 0x40B => array(0x45B), 0x40C => array(0x45C), + 0x40D => array(0x45D), 0x40E => array(0x45E), 0x40F => array(0x45F), + 0x410 => array(0x430), 0x411 => array(0x431), 0x412 => array(0x432), + 0x413 => array(0x433), 0x414 => array(0x434), 0x415 => array(0x435), + 0x416 => array(0x436), 0x417 => array(0x437), 0x418 => array(0x438), + 0x419 => array(0x439), 0x41A => array(0x43A), 0x41B => array(0x43B), + 0x41C => array(0x43C), 0x41D => array(0x43D), 0x41E => array(0x43E), + 0x41F => array(0x43F), 0x420 => array(0x440), 0x421 => array(0x441), + 0x422 => array(0x442), 0x423 => array(0x443), 0x424 => array(0x444), + 0x425 => array(0x445), 0x426 => array(0x446), 0x427 => array(0x447), + 0x428 => array(0x448), 0x429 => array(0x449), 0x42A => array(0x44A), + 0x42B => array(0x44B), 0x42C => array(0x44C), 0x42D => array(0x44D), + 0x42E => array(0x44E), 0x42F => array(0x44F), 0x460 => array(0x461), + 0x462 => array(0x463), 0x464 => array(0x465), 0x466 => array(0x467), + 0x468 => array(0x469), 0x46A => array(0x46B), 0x46C => array(0x46D), + 0x46E => array(0x46F), 0x470 => array(0x471), 0x472 => array(0x473), + 0x474 => array(0x475), 0x476 => array(0x477), 0x478 => array(0x479), + 0x47A => array(0x47B), 0x47C => array(0x47D), 0x47E => array(0x47F), + 0x480 => array(0x481), 0x48A => array(0x48B), 0x48C => array(0x48D), + 0x48E => array(0x48F), 0x490 => array(0x491), 0x492 => array(0x493), + 0x494 => array(0x495), 0x496 => array(0x497), 0x498 => array(0x499), + 0x49A => array(0x49B), 0x49C => array(0x49D), 0x49E => array(0x49F), + 0x4A0 => array(0x4A1), 0x4A2 => array(0x4A3), 0x4A4 => array(0x4A5), + 0x4A6 => array(0x4A7), 0x4A8 => array(0x4A9), 0x4AA => array(0x4AB), + 0x4AC => array(0x4AD), 0x4AE => array(0x4AF), 0x4B0 => array(0x4B1), + 0x4B2 => array(0x4B3), 0x4B4 => array(0x4B5), 0x4B6 => array(0x4B7), + 0x4B8 => array(0x4B9), 0x4BA => array(0x4BB), 0x4BC => array(0x4BD), + 0x4BE => array(0x4BF), 0x4C1 => array(0x4C2), 0x4C3 => array(0x4C4), + 0x4C5 => array(0x4C6), 0x4C7 => array(0x4C8), 0x4C9 => array(0x4CA), + 0x4CB => array(0x4CC), 0x4CD => array(0x4CE), 0x4D0 => array(0x4D1), + 0x4D2 => array(0x4D3), 0x4D4 => array(0x4D5), 0x4D6 => array(0x4D7), + 0x4D8 => array(0x4D9), 0x4DA => array(0x4DB), 0x4DC => array(0x4DD), + 0x4DE => array(0x4DF), 0x4E0 => array(0x4E1), 0x4E2 => array(0x4E3), + 0x4E4 => array(0x4E5), 0x4E6 => array(0x4E7), 0x4E8 => array(0x4E9), + 0x4EA => array(0x4EB), 0x4EC => array(0x4ED), 0x4EE => array(0x4EF), + 0x4F0 => array(0x4F1), 0x4F2 => array(0x4F3), 0x4F4 => array(0x4F5), + 0x4F6 => array(0x4F7), 0x4F8 => array(0x4F9), 0x4FA => array(0x4FB), + 0x4FC => array(0x4FD), 0x4FE => array(0x4FF), 0x500 => array(0x501), + 0x502 => array(0x503), 0x504 => array(0x505), 0x506 => array(0x507), + 0x508 => array(0x509), 0x50A => array(0x50B), 0x50C => array(0x50D), + 0x50E => array(0x50F), 0x510 => array(0x511), 0x512 => array(0x513), + 0x514 => array(0x515), 0x516 => array(0x517), 0x518 => array(0x519), + 0x51A => array(0x51B), 0x51C => array(0x51D), 0x51E => array(0x51F), + 0x520 => array(0x521), 0x522 => array(0x523), 0x524 => array(0x525), + 0x526 => array(0x527), 0x528 => array(0x529), 0x52A => array(0x52B), + 0x52C => array(0x52D), 0x52E => array(0x52F), 0x531 => array(0x561), + 0x532 => array(0x562), 0x533 => array(0x563), 0x534 => array(0x564), + 0x535 => array(0x565), 0x536 => array(0x566), 0x537 => array(0x567), + 0x538 => array(0x568), 0x539 => array(0x569), 0x53A => array(0x56A), + 0x53B => array(0x56B), 0x53C => array(0x56C), 0x53D => array(0x56D), + 0x53E => array(0x56E), 0x53F => array(0x56F), 0x540 => array(0x570), + 0x541 => array(0x571), 0x542 => array(0x572), 0x543 => array(0x573), + 0x544 => array(0x574), 0x545 => array(0x575), 0x546 => array(0x576), + 0x547 => array(0x577), 0x548 => array(0x578), 0x549 => array(0x579), + 0x54A => array(0x57A), 0x54B => array(0x57B), 0x54C => array(0x57C), + 0x54D => array(0x57D), 0x54E => array(0x57E), 0x54F => array(0x57F), + 0x550 => array(0x580), 0x551 => array(0x581), 0x552 => array(0x582), + 0x553 => array(0x583), 0x554 => array(0x584), 0x555 => array(0x585), + 0x556 => array(0x586), 0x587 => array(0x565, 0x582), 0x675 => array(0x627, 0x674), + 0x676 => array(0x648, 0x674), 0x677 => array(0x6C7, 0x674), 0x678 => array(0x64A, 0x674), + 0x958 => array(0x915, 0x93C), 0x959 => array(0x916, 0x93C), 0x95A => array(0x917, 0x93C), + 0x95B => array(0x91C, 0x93C), 0x95C => array(0x921, 0x93C), 0x95D => array(0x922, 0x93C), + 0x95E => array(0x92B, 0x93C), 0x95F => array(0x92F, 0x93C), 0x9DC => array(0x9A1, 0x9BC), + 0x9DD => array(0x9A2, 0x9BC), 0x9DF => array(0x9AF, 0x9BC), 0xA33 => array(0xA32, 0xA3C), + 0xA36 => array(0xA38, 0xA3C), 0xA59 => array(0xA16, 0xA3C), 0xA5A => array(0xA17, 0xA3C), + 0xA5B => array(0xA1C, 0xA3C), 0xA5E => array(0xA2B, 0xA3C), 0xB5C => array(0xB21, 0xB3C), + 0xB5D => array(0xB22, 0xB3C), 0xE33 => array(0xE4D, 0xE32), 0xEB3 => array(0xECD, 0xEB2), + 0xEDC => array(0xEAB, 0xE99), 0xEDD => array(0xEAB, 0xEA1), 0xF0C => array(0xF0B), + 0xF43 => array(0xF42, 0xFB7), 0xF4D => array(0xF4C, 0xFB7), 0xF52 => array(0xF51, 0xFB7), + 0xF57 => array(0xF56, 0xFB7), 0xF5C => array(0xF5B, 0xFB7), 0xF69 => array(0xF40, 0xFB5), + 0xF73 => array(0xF71, 0xF72), 0xF75 => array(0xF71, 0xF74), 0xF76 => array(0xFB2, 0xF80), + 0xF77 => array(0xFB2, 0xF71, 0xF80), 0xF78 => array(0xFB3, 0xF80), 0xF79 => array(0xFB3, 0xF71, 0xF80), + 0xF81 => array(0xF71, 0xF80), 0xF93 => array(0xF92, 0xFB7), 0xF9D => array(0xF9C, 0xFB7), + 0xFA2 => array(0xFA1, 0xFB7), 0xFA7 => array(0xFA6, 0xFB7), 0xFAC => array(0xFAB, 0xFB7), + 0xFB9 => array(0xF90, 0xFB5), 0x10C7 => array(0x2D27), 0x10CD => array(0x2D2D), + 0x10FC => array(0x10DC), 0x1D2C => array(0x61), 0x1D2D => array(0xE6), + 0x1D2E => array(0x62), 0x1D30 => array(0x64), 0x1D31 => array(0x65), + 0x1D32 => array(0x1DD), 0x1D33 => array(0x67), 0x1D34 => array(0x68), + 0x1D35 => array(0x69), 0x1D36 => array(0x6A), 0x1D37 => array(0x6B), + 0x1D38 => array(0x6C), 0x1D39 => array(0x6D), 0x1D3A => array(0x6E), + 0x1D3C => array(0x6F), 0x1D3D => array(0x223), 0x1D3E => array(0x70), + 0x1D3F => array(0x72), 0x1D40 => array(0x74), 0x1D41 => array(0x75), + 0x1D42 => array(0x77), 0x1D43 => array(0x61), 0x1D44 => array(0x250), + 0x1D45 => array(0x251), 0x1D46 => array(0x1D02), 0x1D47 => array(0x62), + 0x1D48 => array(0x64), 0x1D49 => array(0x65), 0x1D4A => array(0x259), + 0x1D4B => array(0x25B), 0x1D4C => array(0x25C), 0x1D4D => array(0x67), + 0x1D4F => array(0x6B), 0x1D50 => array(0x6D), 0x1D51 => array(0x14B), + 0x1D52 => array(0x6F), 0x1D53 => array(0x254), 0x1D54 => array(0x1D16), + 0x1D55 => array(0x1D17), 0x1D56 => array(0x70), 0x1D57 => array(0x74), + 0x1D58 => array(0x75), 0x1D59 => array(0x1D1D), 0x1D5A => array(0x26F), + 0x1D5B => array(0x76), 0x1D5C => array(0x1D25), 0x1D5D => array(0x3B2), + 0x1D5E => array(0x3B3), 0x1D5F => array(0x3B4), 0x1D60 => array(0x3C6), + 0x1D61 => array(0x3C7), 0x1D62 => array(0x69), 0x1D63 => array(0x72), + 0x1D64 => array(0x75), 0x1D65 => array(0x76), 0x1D66 => array(0x3B2), + 0x1D67 => array(0x3B3), 0x1D68 => array(0x3C1), 0x1D69 => array(0x3C6), + 0x1D6A => array(0x3C7), 0x1D78 => array(0x43D), 0x1D9B => array(0x252), + 0x1D9C => array(0x63), 0x1D9D => array(0x255), 0x1D9E => array(0xF0), + 0x1D9F => array(0x25C), 0x1DA0 => array(0x66), 0x1DA1 => array(0x25F), + 0x1DA2 => array(0x261), 0x1DA3 => array(0x265), 0x1DA4 => array(0x268), + 0x1DA5 => array(0x269), 0x1DA6 => array(0x26A), 0x1DA7 => array(0x1D7B), + 0x1DA8 => array(0x29D), 0x1DA9 => array(0x26D), 0x1DAA => array(0x1D85), + 0x1DAB => array(0x29F), 0x1DAC => array(0x271), 0x1DAD => array(0x270), + 0x1DAE => array(0x272), 0x1DAF => array(0x273), 0x1DB0 => array(0x274), + 0x1DB1 => array(0x275), 0x1DB2 => array(0x278), 0x1DB3 => array(0x282), + 0x1DB4 => array(0x283), 0x1DB5 => array(0x1AB), 0x1DB6 => array(0x289), + 0x1DB7 => array(0x28A), 0x1DB8 => array(0x1D1C), 0x1DB9 => array(0x28B), + 0x1DBA => array(0x28C), 0x1DBB => array(0x7A), 0x1DBC => array(0x290), + 0x1DBD => array(0x291), 0x1DBE => array(0x292), 0x1DBF => array(0x3B8), + 0x1E00 => array(0x1E01), 0x1E02 => array(0x1E03), 0x1E04 => array(0x1E05), + 0x1E06 => array(0x1E07), 0x1E08 => array(0x1E09), 0x1E0A => array(0x1E0B), + 0x1E0C => array(0x1E0D), 0x1E0E => array(0x1E0F), 0x1E10 => array(0x1E11), + 0x1E12 => array(0x1E13), 0x1E14 => array(0x1E15), 0x1E16 => array(0x1E17), + 0x1E18 => array(0x1E19), 0x1E1A => array(0x1E1B), 0x1E1C => array(0x1E1D), + 0x1E1E => array(0x1E1F), 0x1E20 => array(0x1E21), 0x1E22 => array(0x1E23), + 0x1E24 => array(0x1E25), 0x1E26 => array(0x1E27), 0x1E28 => array(0x1E29), + 0x1E2A => array(0x1E2B), 0x1E2C => array(0x1E2D), 0x1E2E => array(0x1E2F), + 0x1E30 => array(0x1E31), 0x1E32 => array(0x1E33), 0x1E34 => array(0x1E35), + 0x1E36 => array(0x1E37), 0x1E38 => array(0x1E39), 0x1E3A => array(0x1E3B), + 0x1E3C => array(0x1E3D), 0x1E3E => array(0x1E3F), 0x1E40 => array(0x1E41), + 0x1E42 => array(0x1E43), 0x1E44 => array(0x1E45), 0x1E46 => array(0x1E47), + 0x1E48 => array(0x1E49), 0x1E4A => array(0x1E4B), 0x1E4C => array(0x1E4D), + 0x1E4E => array(0x1E4F), 0x1E50 => array(0x1E51), 0x1E52 => array(0x1E53), + 0x1E54 => array(0x1E55), 0x1E56 => array(0x1E57), 0x1E58 => array(0x1E59), + 0x1E5A => array(0x1E5B), 0x1E5C => array(0x1E5D), 0x1E5E => array(0x1E5F), + 0x1E60 => array(0x1E61), 0x1E62 => array(0x1E63), 0x1E64 => array(0x1E65), + 0x1E66 => array(0x1E67), 0x1E68 => array(0x1E69), 0x1E6A => array(0x1E6B), + 0x1E6C => array(0x1E6D), 0x1E6E => array(0x1E6F), 0x1E70 => array(0x1E71), + 0x1E72 => array(0x1E73), 0x1E74 => array(0x1E75), 0x1E76 => array(0x1E77), + 0x1E78 => array(0x1E79), 0x1E7A => array(0x1E7B), 0x1E7C => array(0x1E7D), + 0x1E7E => array(0x1E7F), 0x1E80 => array(0x1E81), 0x1E82 => array(0x1E83), + 0x1E84 => array(0x1E85), 0x1E86 => array(0x1E87), 0x1E88 => array(0x1E89), + 0x1E8A => array(0x1E8B), 0x1E8C => array(0x1E8D), 0x1E8E => array(0x1E8F), + 0x1E90 => array(0x1E91), 0x1E92 => array(0x1E93), 0x1E94 => array(0x1E95), + 0x1E9A => array(0x61, 0x2BE), 0x1E9B => array(0x1E61), 0x1E9E => array(0x73, 0x73), + 0x1EA0 => array(0x1EA1), 0x1EA2 => array(0x1EA3), 0x1EA4 => array(0x1EA5), + 0x1EA6 => array(0x1EA7), 0x1EA8 => array(0x1EA9), 0x1EAA => array(0x1EAB), + 0x1EAC => array(0x1EAD), 0x1EAE => array(0x1EAF), 0x1EB0 => array(0x1EB1), + 0x1EB2 => array(0x1EB3), 0x1EB4 => array(0x1EB5), 0x1EB6 => array(0x1EB7), + 0x1EB8 => array(0x1EB9), 0x1EBA => array(0x1EBB), 0x1EBC => array(0x1EBD), + 0x1EBE => array(0x1EBF), 0x1EC0 => array(0x1EC1), 0x1EC2 => array(0x1EC3), + 0x1EC4 => array(0x1EC5), 0x1EC6 => array(0x1EC7), 0x1EC8 => array(0x1EC9), + 0x1ECA => array(0x1ECB), 0x1ECC => array(0x1ECD), 0x1ECE => array(0x1ECF), + 0x1ED0 => array(0x1ED1), 0x1ED2 => array(0x1ED3), 0x1ED4 => array(0x1ED5), + 0x1ED6 => array(0x1ED7), 0x1ED8 => array(0x1ED9), 0x1EDA => array(0x1EDB), + 0x1EDC => array(0x1EDD), 0x1EDE => array(0x1EDF), 0x1EE0 => array(0x1EE1), + 0x1EE2 => array(0x1EE3), 0x1EE4 => array(0x1EE5), 0x1EE6 => array(0x1EE7), + 0x1EE8 => array(0x1EE9), 0x1EEA => array(0x1EEB), 0x1EEC => array(0x1EED), + 0x1EEE => array(0x1EEF), 0x1EF0 => array(0x1EF1), 0x1EF2 => array(0x1EF3), + 0x1EF4 => array(0x1EF5), 0x1EF6 => array(0x1EF7), 0x1EF8 => array(0x1EF9), + 0x1EFA => array(0x1EFB), 0x1EFC => array(0x1EFD), 0x1EFE => array(0x1EFF), + 0x1F08 => array(0x1F00), 0x1F09 => array(0x1F01), 0x1F0A => array(0x1F02), + 0x1F0B => array(0x1F03), 0x1F0C => array(0x1F04), 0x1F0D => array(0x1F05), + 0x1F0E => array(0x1F06), 0x1F0F => array(0x1F07), 0x1F18 => array(0x1F10), + 0x1F19 => array(0x1F11), 0x1F1A => array(0x1F12), 0x1F1B => array(0x1F13), + 0x1F1C => array(0x1F14), 0x1F1D => array(0x1F15), 0x1F28 => array(0x1F20), + 0x1F29 => array(0x1F21), 0x1F2A => array(0x1F22), 0x1F2B => array(0x1F23), + 0x1F2C => array(0x1F24), 0x1F2D => array(0x1F25), 0x1F2E => array(0x1F26), + 0x1F2F => array(0x1F27), 0x1F38 => array(0x1F30), 0x1F39 => array(0x1F31), + 0x1F3A => array(0x1F32), 0x1F3B => array(0x1F33), 0x1F3C => array(0x1F34), + 0x1F3D => array(0x1F35), 0x1F3E => array(0x1F36), 0x1F3F => array(0x1F37), + 0x1F48 => array(0x1F40), 0x1F49 => array(0x1F41), 0x1F4A => array(0x1F42), + 0x1F4B => array(0x1F43), 0x1F4C => array(0x1F44), 0x1F4D => array(0x1F45), + 0x1F59 => array(0x1F51), 0x1F5B => array(0x1F53), 0x1F5D => array(0x1F55), + 0x1F5F => array(0x1F57), 0x1F68 => array(0x1F60), 0x1F69 => array(0x1F61), + 0x1F6A => array(0x1F62), 0x1F6B => array(0x1F63), 0x1F6C => array(0x1F64), + 0x1F6D => array(0x1F65), 0x1F6E => array(0x1F66), 0x1F6F => array(0x1F67), + 0x1F71 => array(0x3AC), 0x1F73 => array(0x3AD), 0x1F75 => array(0x3AE), + 0x1F77 => array(0x3AF), 0x1F79 => array(0x3CC), 0x1F7B => array(0x3CD), + 0x1F7D => array(0x3CE), 0x1F80 => array(0x1F00, 0x3B9), 0x1F81 => array(0x1F01, 0x3B9), + 0x1F82 => array(0x1F02, 0x3B9), 0x1F83 => array(0x1F03, 0x3B9), 0x1F84 => array(0x1F04, 0x3B9), + 0x1F85 => array(0x1F05, 0x3B9), 0x1F86 => array(0x1F06, 0x3B9), 0x1F87 => array(0x1F07, 0x3B9), + 0x1F88 => array(0x1F00, 0x3B9), 0x1F89 => array(0x1F01, 0x3B9), 0x1F8A => array(0x1F02, 0x3B9), + 0x1F8B => array(0x1F03, 0x3B9), 0x1F8C => array(0x1F04, 0x3B9), 0x1F8D => array(0x1F05, 0x3B9), + 0x1F8E => array(0x1F06, 0x3B9), 0x1F8F => array(0x1F07, 0x3B9), 0x1F90 => array(0x1F20, 0x3B9), + 0x1F91 => array(0x1F21, 0x3B9), 0x1F92 => array(0x1F22, 0x3B9), 0x1F93 => array(0x1F23, 0x3B9), + 0x1F94 => array(0x1F24, 0x3B9), 0x1F95 => array(0x1F25, 0x3B9), 0x1F96 => array(0x1F26, 0x3B9), + 0x1F97 => array(0x1F27, 0x3B9), 0x1F98 => array(0x1F20, 0x3B9), 0x1F99 => array(0x1F21, 0x3B9), + 0x1F9A => array(0x1F22, 0x3B9), 0x1F9B => array(0x1F23, 0x3B9), 0x1F9C => array(0x1F24, 0x3B9), + 0x1F9D => array(0x1F25, 0x3B9), 0x1F9E => array(0x1F26, 0x3B9), 0x1F9F => array(0x1F27, 0x3B9), + 0x1FA0 => array(0x1F60, 0x3B9), 0x1FA1 => array(0x1F61, 0x3B9), 0x1FA2 => array(0x1F62, 0x3B9), + 0x1FA3 => array(0x1F63, 0x3B9), 0x1FA4 => array(0x1F64, 0x3B9), 0x1FA5 => array(0x1F65, 0x3B9), + 0x1FA6 => array(0x1F66, 0x3B9), 0x1FA7 => array(0x1F67, 0x3B9), 0x1FA8 => array(0x1F60, 0x3B9), + 0x1FA9 => array(0x1F61, 0x3B9), 0x1FAA => array(0x1F62, 0x3B9), 0x1FAB => array(0x1F63, 0x3B9), + 0x1FAC => array(0x1F64, 0x3B9), 0x1FAD => array(0x1F65, 0x3B9), 0x1FAE => array(0x1F66, 0x3B9), + 0x1FAF => array(0x1F67, 0x3B9), 0x1FB2 => array(0x1F70, 0x3B9), 0x1FB3 => array(0x3B1, 0x3B9), + 0x1FB4 => array(0x3AC, 0x3B9), 0x1FB7 => array(0x1FB6, 0x3B9), 0x1FB8 => array(0x1FB0), + 0x1FB9 => array(0x1FB1), 0x1FBA => array(0x1F70), 0x1FBB => array(0x3AC), + 0x1FBC => array(0x3B1, 0x3B9), 0x1FBE => array(0x3B9), 0x1FC2 => array(0x1F74, 0x3B9), + 0x1FC3 => array(0x3B7, 0x3B9), 0x1FC4 => array(0x3AE, 0x3B9), 0x1FC7 => array(0x1FC6, 0x3B9), + 0x1FC8 => array(0x1F72), 0x1FC9 => array(0x3AD), 0x1FCA => array(0x1F74), + 0x1FCB => array(0x3AE), 0x1FCC => array(0x3B7, 0x3B9), 0x1FD3 => array(0x390), + 0x1FD8 => array(0x1FD0), 0x1FD9 => array(0x1FD1), 0x1FDA => array(0x1F76), + 0x1FDB => array(0x3AF), 0x1FE3 => array(0x3B0), 0x1FE8 => array(0x1FE0), + 0x1FE9 => array(0x1FE1), 0x1FEA => array(0x1F7A), 0x1FEB => array(0x3CD), + 0x1FEC => array(0x1FE5), 0x1FF2 => array(0x1F7C, 0x3B9), 0x1FF3 => array(0x3C9, 0x3B9), + 0x1FF4 => array(0x3CE, 0x3B9), 0x1FF7 => array(0x1FF6, 0x3B9), 0x1FF8 => array(0x1F78), + 0x1FF9 => array(0x3CC), 0x1FFA => array(0x1F7C), 0x1FFB => array(0x3CE), + 0x1FFC => array(0x3C9, 0x3B9), 0x2011 => array(0x2010), 0x2033 => array(0x2032, 0x2032), + 0x2034 => array(0x2032, 0x2032, 0x2032), 0x2036 => array(0x2035, 0x2035), 0x2037 => array(0x2035, 0x2035, 0x2035), + 0x2057 => array(0x2032, 0x2032, 0x2032, 0x2032), 0x2070 => array(0x30), 0x2071 => array(0x69), + 0x2074 => array(0x34), 0x2075 => array(0x35), 0x2076 => array(0x36), + 0x2077 => array(0x37), 0x2078 => array(0x38), 0x2079 => array(0x39), + 0x207B => array(0x2212), 0x207F => array(0x6E), 0x2080 => array(0x30), + 0x2081 => array(0x31), 0x2082 => array(0x32), 0x2083 => array(0x33), + 0x2084 => array(0x34), 0x2085 => array(0x35), 0x2086 => array(0x36), + 0x2087 => array(0x37), 0x2088 => array(0x38), 0x2089 => array(0x39), + 0x208B => array(0x2212), 0x2090 => array(0x61), 0x2091 => array(0x65), + 0x2092 => array(0x6F), 0x2093 => array(0x78), 0x2094 => array(0x259), + 0x2095 => array(0x68), 0x2096 => array(0x6B), 0x2097 => array(0x6C), + 0x2098 => array(0x6D), 0x2099 => array(0x6E), 0x209A => array(0x70), + 0x209B => array(0x73), 0x209C => array(0x74), 0x20A8 => array(0x72, 0x73), + 0x2102 => array(0x63), 0x2103 => array(0xB0, 0x63), 0x2107 => array(0x25B), + 0x2109 => array(0xB0, 0x66), 0x210A => array(0x67), 0x210B => array(0x68), + 0x210C => array(0x68), 0x210D => array(0x68), 0x210E => array(0x68), + 0x210F => array(0x127), 0x2110 => array(0x69), 0x2111 => array(0x69), + 0x2112 => array(0x6C), 0x2113 => array(0x6C), 0x2115 => array(0x6E), + 0x2116 => array(0x6E, 0x6F), 0x2119 => array(0x70), 0x211A => array(0x71), + 0x211B => array(0x72), 0x211C => array(0x72), 0x211D => array(0x72), + 0x2120 => array(0x73, 0x6D), 0x2121 => array(0x74, 0x65, 0x6C), 0x2122 => array(0x74, 0x6D), + 0x2124 => array(0x7A), 0x2126 => array(0x3C9), 0x2128 => array(0x7A), + 0x212A => array(0x6B), 0x212B => array(0xE5), 0x212C => array(0x62), + 0x212D => array(0x63), 0x212F => array(0x65), 0x2130 => array(0x65), + 0x2131 => array(0x66), 0x2133 => array(0x6D), 0x2134 => array(0x6F), + 0x2135 => array(0x5D0), 0x2136 => array(0x5D1), 0x2137 => array(0x5D2), + 0x2138 => array(0x5D3), 0x2139 => array(0x69), 0x213B => array(0x66, 0x61, 0x78), + 0x213C => array(0x3C0), 0x213D => array(0x3B3), 0x213E => array(0x3B3), + 0x213F => array(0x3C0), 0x2140 => array(0x2211), 0x2145 => array(0x64), + 0x2146 => array(0x64), 0x2147 => array(0x65), 0x2148 => array(0x69), + 0x2149 => array(0x6A), 0x2150 => array(0x31, 0x2044, 0x37), 0x2151 => array(0x31, 0x2044, 0x39), + 0x2152 => array(0x31, 0x2044, 0x31, 0x30), 0x2153 => array(0x31, 0x2044, 0x33), 0x2154 => array(0x32, 0x2044, 0x33), + 0x2155 => array(0x31, 0x2044, 0x35), 0x2156 => array(0x32, 0x2044, 0x35), 0x2157 => array(0x33, 0x2044, 0x35), + 0x2158 => array(0x34, 0x2044, 0x35), 0x2159 => array(0x31, 0x2044, 0x36), 0x215A => array(0x35, 0x2044, 0x36), + 0x215B => array(0x31, 0x2044, 0x38), 0x215C => array(0x33, 0x2044, 0x38), 0x215D => array(0x35, 0x2044, 0x38), + 0x215E => array(0x37, 0x2044, 0x38), 0x215F => array(0x31, 0x2044), 0x2160 => array(0x69), + 0x2161 => array(0x69, 0x69), 0x2162 => array(0x69, 0x69, 0x69), 0x2163 => array(0x69, 0x76), + 0x2164 => array(0x76), 0x2165 => array(0x76, 0x69), 0x2166 => array(0x76, 0x69, 0x69), + 0x2167 => array(0x76, 0x69, 0x69, 0x69), 0x2168 => array(0x69, 0x78), 0x2169 => array(0x78), + 0x216A => array(0x78, 0x69), 0x216B => array(0x78, 0x69, 0x69), 0x216C => array(0x6C), + 0x216D => array(0x63), 0x216E => array(0x64), 0x216F => array(0x6D), + 0x2170 => array(0x69), 0x2171 => array(0x69, 0x69), 0x2172 => array(0x69, 0x69, 0x69), + 0x2173 => array(0x69, 0x76), 0x2174 => array(0x76), 0x2175 => array(0x76, 0x69), + 0x2176 => array(0x76, 0x69, 0x69), 0x2177 => array(0x76, 0x69, 0x69, 0x69), 0x2178 => array(0x69, 0x78), + 0x2179 => array(0x78), 0x217A => array(0x78, 0x69), 0x217B => array(0x78, 0x69, 0x69), + 0x217C => array(0x6C), 0x217D => array(0x63), 0x217E => array(0x64), + 0x217F => array(0x6D), 0x2189 => array(0x30, 0x2044, 0x33), 0x222C => array(0x222B, 0x222B), + 0x222D => array(0x222B, 0x222B, 0x222B), 0x222F => array(0x222E, 0x222E), 0x2230 => array(0x222E, 0x222E, 0x222E), + 0x2329 => array(0x3008), 0x232A => array(0x3009), 0x2460 => array(0x31), + 0x2461 => array(0x32), 0x2462 => array(0x33), 0x2463 => array(0x34), + 0x2464 => array(0x35), 0x2465 => array(0x36), 0x2466 => array(0x37), + 0x2467 => array(0x38), 0x2468 => array(0x39), 0x2469 => array(0x31, 0x30), + 0x246A => array(0x31, 0x31), 0x246B => array(0x31, 0x32), 0x246C => array(0x31, 0x33), + 0x246D => array(0x31, 0x34), 0x246E => array(0x31, 0x35), 0x246F => array(0x31, 0x36), + 0x2470 => array(0x31, 0x37), 0x2471 => array(0x31, 0x38), 0x2472 => array(0x31, 0x39), + 0x2473 => array(0x32, 0x30), 0x24B6 => array(0x61), 0x24B7 => array(0x62), + 0x24B8 => array(0x63), 0x24B9 => array(0x64), 0x24BA => array(0x65), + 0x24BB => array(0x66), 0x24BC => array(0x67), 0x24BD => array(0x68), + 0x24BE => array(0x69), 0x24BF => array(0x6A), 0x24C0 => array(0x6B), + 0x24C1 => array(0x6C), 0x24C2 => array(0x6D), 0x24C3 => array(0x6E), + 0x24C4 => array(0x6F), 0x24C5 => array(0x70), 0x24C6 => array(0x71), + 0x24C7 => array(0x72), 0x24C8 => array(0x73), 0x24C9 => array(0x74), + 0x24CA => array(0x75), 0x24CB => array(0x76), 0x24CC => array(0x77), + 0x24CD => array(0x78), 0x24CE => array(0x79), 0x24CF => array(0x7A), + 0x24D0 => array(0x61), 0x24D1 => array(0x62), 0x24D2 => array(0x63), + 0x24D3 => array(0x64), 0x24D4 => array(0x65), 0x24D5 => array(0x66), + 0x24D6 => array(0x67), 0x24D7 => array(0x68), 0x24D8 => array(0x69), + 0x24D9 => array(0x6A), 0x24DA => array(0x6B), 0x24DB => array(0x6C), + 0x24DC => array(0x6D), 0x24DD => array(0x6E), 0x24DE => array(0x6F), + 0x24DF => array(0x70), 0x24E0 => array(0x71), 0x24E1 => array(0x72), + 0x24E2 => array(0x73), 0x24E3 => array(0x74), 0x24E4 => array(0x75), + 0x24E5 => array(0x76), 0x24E6 => array(0x77), 0x24E7 => array(0x78), + 0x24E8 => array(0x79), 0x24E9 => array(0x7A), 0x24EA => array(0x30), + 0x2A0C => array(0x222B, 0x222B, 0x222B, 0x222B), 0x2ADC => array(0x2ADD, 0x338), 0x2C00 => array(0x2C30), + 0x2C01 => array(0x2C31), 0x2C02 => array(0x2C32), 0x2C03 => array(0x2C33), + 0x2C04 => array(0x2C34), 0x2C05 => array(0x2C35), 0x2C06 => array(0x2C36), + 0x2C07 => array(0x2C37), 0x2C08 => array(0x2C38), 0x2C09 => array(0x2C39), + 0x2C0A => array(0x2C3A), 0x2C0B => array(0x2C3B), 0x2C0C => array(0x2C3C), + 0x2C0D => array(0x2C3D), 0x2C0E => array(0x2C3E), 0x2C0F => array(0x2C3F), + 0x2C10 => array(0x2C40), 0x2C11 => array(0x2C41), 0x2C12 => array(0x2C42), + 0x2C13 => array(0x2C43), 0x2C14 => array(0x2C44), 0x2C15 => array(0x2C45), + 0x2C16 => array(0x2C46), 0x2C17 => array(0x2C47), 0x2C18 => array(0x2C48), + 0x2C19 => array(0x2C49), 0x2C1A => array(0x2C4A), 0x2C1B => array(0x2C4B), + 0x2C1C => array(0x2C4C), 0x2C1D => array(0x2C4D), 0x2C1E => array(0x2C4E), + 0x2C1F => array(0x2C4F), 0x2C20 => array(0x2C50), 0x2C21 => array(0x2C51), + 0x2C22 => array(0x2C52), 0x2C23 => array(0x2C53), 0x2C24 => array(0x2C54), + 0x2C25 => array(0x2C55), 0x2C26 => array(0x2C56), 0x2C27 => array(0x2C57), + 0x2C28 => array(0x2C58), 0x2C29 => array(0x2C59), 0x2C2A => array(0x2C5A), + 0x2C2B => array(0x2C5B), 0x2C2C => array(0x2C5C), 0x2C2D => array(0x2C5D), + 0x2C2E => array(0x2C5E), 0x2C60 => array(0x2C61), 0x2C62 => array(0x26B), + 0x2C63 => array(0x1D7D), 0x2C64 => array(0x27D), 0x2C67 => array(0x2C68), + 0x2C69 => array(0x2C6A), 0x2C6B => array(0x2C6C), 0x2C6D => array(0x251), + 0x2C6E => array(0x271), 0x2C6F => array(0x250), 0x2C70 => array(0x252), + 0x2C72 => array(0x2C73), 0x2C75 => array(0x2C76), 0x2C7C => array(0x6A), + 0x2C7D => array(0x76), 0x2C7E => array(0x23F), 0x2C7F => array(0x240), + 0x2C80 => array(0x2C81), 0x2C82 => array(0x2C83), 0x2C84 => array(0x2C85), + 0x2C86 => array(0x2C87), 0x2C88 => array(0x2C89), 0x2C8A => array(0x2C8B), + 0x2C8C => array(0x2C8D), 0x2C8E => array(0x2C8F), 0x2C90 => array(0x2C91), + 0x2C92 => array(0x2C93), 0x2C94 => array(0x2C95), 0x2C96 => array(0x2C97), + 0x2C98 => array(0x2C99), 0x2C9A => array(0x2C9B), 0x2C9C => array(0x2C9D), + 0x2C9E => array(0x2C9F), 0x2CA0 => array(0x2CA1), 0x2CA2 => array(0x2CA3), + 0x2CA4 => array(0x2CA5), 0x2CA6 => array(0x2CA7), 0x2CA8 => array(0x2CA9), + 0x2CAA => array(0x2CAB), 0x2CAC => array(0x2CAD), 0x2CAE => array(0x2CAF), + 0x2CB0 => array(0x2CB1), 0x2CB2 => array(0x2CB3), 0x2CB4 => array(0x2CB5), + 0x2CB6 => array(0x2CB7), 0x2CB8 => array(0x2CB9), 0x2CBA => array(0x2CBB), + 0x2CBC => array(0x2CBD), 0x2CBE => array(0x2CBF), 0x2CC0 => array(0x2CC1), + 0x2CC2 => array(0x2CC3), 0x2CC4 => array(0x2CC5), 0x2CC6 => array(0x2CC7), + 0x2CC8 => array(0x2CC9), 0x2CCA => array(0x2CCB), 0x2CCC => array(0x2CCD), + 0x2CCE => array(0x2CCF), 0x2CD0 => array(0x2CD1), 0x2CD2 => array(0x2CD3), + 0x2CD4 => array(0x2CD5), 0x2CD6 => array(0x2CD7), 0x2CD8 => array(0x2CD9), + 0x2CDA => array(0x2CDB), 0x2CDC => array(0x2CDD), 0x2CDE => array(0x2CDF), + 0x2CE0 => array(0x2CE1), 0x2CE2 => array(0x2CE3), 0x2CEB => array(0x2CEC), + 0x2CED => array(0x2CEE), 0x2CF2 => array(0x2CF3), 0x2D6F => array(0x2D61), + 0x2E9F => array(0x6BCD), 0x2EF3 => array(0x9F9F), 0x2F00 => array(0x4E00), + 0x2F01 => array(0x4E28), 0x2F02 => array(0x4E36), 0x2F03 => array(0x4E3F), + 0x2F04 => array(0x4E59), 0x2F05 => array(0x4E85), 0x2F06 => array(0x4E8C), + 0x2F07 => array(0x4EA0), 0x2F08 => array(0x4EBA), 0x2F09 => array(0x513F), + 0x2F0A => array(0x5165), 0x2F0B => array(0x516B), 0x2F0C => array(0x5182), + 0x2F0D => array(0x5196), 0x2F0E => array(0x51AB), 0x2F0F => array(0x51E0), + 0x2F10 => array(0x51F5), 0x2F11 => array(0x5200), 0x2F12 => array(0x529B), + 0x2F13 => array(0x52F9), 0x2F14 => array(0x5315), 0x2F15 => array(0x531A), + 0x2F16 => array(0x5338), 0x2F17 => array(0x5341), 0x2F18 => array(0x535C), + 0x2F19 => array(0x5369), 0x2F1A => array(0x5382), 0x2F1B => array(0x53B6), + 0x2F1C => array(0x53C8), 0x2F1D => array(0x53E3), 0x2F1E => array(0x56D7), + 0x2F1F => array(0x571F), 0x2F20 => array(0x58EB), 0x2F21 => array(0x5902), + 0x2F22 => array(0x590A), 0x2F23 => array(0x5915), 0x2F24 => array(0x5927), + 0x2F25 => array(0x5973), 0x2F26 => array(0x5B50), 0x2F27 => array(0x5B80), + 0x2F28 => array(0x5BF8), 0x2F29 => array(0x5C0F), 0x2F2A => array(0x5C22), + 0x2F2B => array(0x5C38), 0x2F2C => array(0x5C6E), 0x2F2D => array(0x5C71), + 0x2F2E => array(0x5DDB), 0x2F2F => array(0x5DE5), 0x2F30 => array(0x5DF1), + 0x2F31 => array(0x5DFE), 0x2F32 => array(0x5E72), 0x2F33 => array(0x5E7A), + 0x2F34 => array(0x5E7F), 0x2F35 => array(0x5EF4), 0x2F36 => array(0x5EFE), + 0x2F37 => array(0x5F0B), 0x2F38 => array(0x5F13), 0x2F39 => array(0x5F50), + 0x2F3A => array(0x5F61), 0x2F3B => array(0x5F73), 0x2F3C => array(0x5FC3), + 0x2F3D => array(0x6208), 0x2F3E => array(0x6236), 0x2F3F => array(0x624B), + 0x2F40 => array(0x652F), 0x2F41 => array(0x6534), 0x2F42 => array(0x6587), + 0x2F43 => array(0x6597), 0x2F44 => array(0x65A4), 0x2F45 => array(0x65B9), + 0x2F46 => array(0x65E0), 0x2F47 => array(0x65E5), 0x2F48 => array(0x66F0), + 0x2F49 => array(0x6708), 0x2F4A => array(0x6728), 0x2F4B => array(0x6B20), + 0x2F4C => array(0x6B62), 0x2F4D => array(0x6B79), 0x2F4E => array(0x6BB3), + 0x2F4F => array(0x6BCB), 0x2F50 => array(0x6BD4), 0x2F51 => array(0x6BDB), + 0x2F52 => array(0x6C0F), 0x2F53 => array(0x6C14), 0x2F54 => array(0x6C34), + 0x2F55 => array(0x706B), 0x2F56 => array(0x722A), 0x2F57 => array(0x7236), + 0x2F58 => array(0x723B), 0x2F59 => array(0x723F), 0x2F5A => array(0x7247), + 0x2F5B => array(0x7259), 0x2F5C => array(0x725B), 0x2F5D => array(0x72AC), + 0x2F5E => array(0x7384), 0x2F5F => array(0x7389), 0x2F60 => array(0x74DC), + 0x2F61 => array(0x74E6), 0x2F62 => array(0x7518), 0x2F63 => array(0x751F), + 0x2F64 => array(0x7528), 0x2F65 => array(0x7530), 0x2F66 => array(0x758B), + 0x2F67 => array(0x7592), 0x2F68 => array(0x7676), 0x2F69 => array(0x767D), + 0x2F6A => array(0x76AE), 0x2F6B => array(0x76BF), 0x2F6C => array(0x76EE), + 0x2F6D => array(0x77DB), 0x2F6E => array(0x77E2), 0x2F6F => array(0x77F3), + 0x2F70 => array(0x793A), 0x2F71 => array(0x79B8), 0x2F72 => array(0x79BE), + 0x2F73 => array(0x7A74), 0x2F74 => array(0x7ACB), 0x2F75 => array(0x7AF9), + 0x2F76 => array(0x7C73), 0x2F77 => array(0x7CF8), 0x2F78 => array(0x7F36), + 0x2F79 => array(0x7F51), 0x2F7A => array(0x7F8A), 0x2F7B => array(0x7FBD), + 0x2F7C => array(0x8001), 0x2F7D => array(0x800C), 0x2F7E => array(0x8012), + 0x2F7F => array(0x8033), 0x2F80 => array(0x807F), 0x2F81 => array(0x8089), + 0x2F82 => array(0x81E3), 0x2F83 => array(0x81EA), 0x2F84 => array(0x81F3), + 0x2F85 => array(0x81FC), 0x2F86 => array(0x820C), 0x2F87 => array(0x821B), + 0x2F88 => array(0x821F), 0x2F89 => array(0x826E), 0x2F8A => array(0x8272), + 0x2F8B => array(0x8278), 0x2F8C => array(0x864D), 0x2F8D => array(0x866B), + 0x2F8E => array(0x8840), 0x2F8F => array(0x884C), 0x2F90 => array(0x8863), + 0x2F91 => array(0x897E), 0x2F92 => array(0x898B), 0x2F93 => array(0x89D2), + 0x2F94 => array(0x8A00), 0x2F95 => array(0x8C37), 0x2F96 => array(0x8C46), + 0x2F97 => array(0x8C55), 0x2F98 => array(0x8C78), 0x2F99 => array(0x8C9D), + 0x2F9A => array(0x8D64), 0x2F9B => array(0x8D70), 0x2F9C => array(0x8DB3), + 0x2F9D => array(0x8EAB), 0x2F9E => array(0x8ECA), 0x2F9F => array(0x8F9B), + 0x2FA0 => array(0x8FB0), 0x2FA1 => array(0x8FB5), 0x2FA2 => array(0x9091), + 0x2FA3 => array(0x9149), 0x2FA4 => array(0x91C6), 0x2FA5 => array(0x91CC), + 0x2FA6 => array(0x91D1), 0x2FA7 => array(0x9577), 0x2FA8 => array(0x9580), + 0x2FA9 => array(0x961C), 0x2FAA => array(0x96B6), 0x2FAB => array(0x96B9), + 0x2FAC => array(0x96E8), 0x2FAD => array(0x9751), 0x2FAE => array(0x975E), + 0x2FAF => array(0x9762), 0x2FB0 => array(0x9769), 0x2FB1 => array(0x97CB), + 0x2FB2 => array(0x97ED), 0x2FB3 => array(0x97F3), 0x2FB4 => array(0x9801), + 0x2FB5 => array(0x98A8), 0x2FB6 => array(0x98DB), 0x2FB7 => array(0x98DF), + 0x2FB8 => array(0x9996), 0x2FB9 => array(0x9999), 0x2FBA => array(0x99AC), + 0x2FBB => array(0x9AA8), 0x2FBC => array(0x9AD8), 0x2FBD => array(0x9ADF), + 0x2FBE => array(0x9B25), 0x2FBF => array(0x9B2F), 0x2FC0 => array(0x9B32), + 0x2FC1 => array(0x9B3C), 0x2FC2 => array(0x9B5A), 0x2FC3 => array(0x9CE5), + 0x2FC4 => array(0x9E75), 0x2FC5 => array(0x9E7F), 0x2FC6 => array(0x9EA5), + 0x2FC7 => array(0x9EBB), 0x2FC8 => array(0x9EC3), 0x2FC9 => array(0x9ECD), + 0x2FCA => array(0x9ED1), 0x2FCB => array(0x9EF9), 0x2FCC => array(0x9EFD), + 0x2FCD => array(0x9F0E), 0x2FCE => array(0x9F13), 0x2FCF => array(0x9F20), + 0x2FD0 => array(0x9F3B), 0x2FD1 => array(0x9F4A), 0x2FD2 => array(0x9F52), + 0x2FD3 => array(0x9F8D), 0x2FD4 => array(0x9F9C), 0x2FD5 => array(0x9FA0), + 0x3002 => array(0x2E), 0x3036 => array(0x3012), 0x3038 => array(0x5341), + 0x3039 => array(0x5344), 0x303A => array(0x5345), 0x309F => array(0x3088, 0x308A), + 0x30FF => array(0x30B3, 0x30C8), 0x3131 => array(0x1100), 0x3132 => array(0x1101), + 0x3133 => array(0x11AA), 0x3134 => array(0x1102), 0x3135 => array(0x11AC), + 0x3136 => array(0x11AD), 0x3137 => array(0x1103), 0x3138 => array(0x1104), + 0x3139 => array(0x1105), 0x313A => array(0x11B0), 0x313B => array(0x11B1), + 0x313C => array(0x11B2), 0x313D => array(0x11B3), 0x313E => array(0x11B4), + 0x313F => array(0x11B5), 0x3140 => array(0x111A), 0x3141 => array(0x1106), + 0x3142 => array(0x1107), 0x3143 => array(0x1108), 0x3144 => array(0x1121), + 0x3145 => array(0x1109), 0x3146 => array(0x110A), 0x3147 => array(0x110B), + 0x3148 => array(0x110C), 0x3149 => array(0x110D), 0x314A => array(0x110E), + 0x314B => array(0x110F), 0x314C => array(0x1110), 0x314D => array(0x1111), + 0x314E => array(0x1112), 0x314F => array(0x1161), 0x3150 => array(0x1162), + 0x3151 => array(0x1163), 0x3152 => array(0x1164), 0x3153 => array(0x1165), + 0x3154 => array(0x1166), 0x3155 => array(0x1167), 0x3156 => array(0x1168), + 0x3157 => array(0x1169), 0x3158 => array(0x116A), 0x3159 => array(0x116B), + 0x315A => array(0x116C), 0x315B => array(0x116D), 0x315C => array(0x116E), + 0x315D => array(0x116F), 0x315E => array(0x1170), 0x315F => array(0x1171), + 0x3160 => array(0x1172), 0x3161 => array(0x1173), 0x3162 => array(0x1174), + 0x3163 => array(0x1175), 0x3165 => array(0x1114), 0x3166 => array(0x1115), + 0x3167 => array(0x11C7), 0x3168 => array(0x11C8), 0x3169 => array(0x11CC), + 0x316A => array(0x11CE), 0x316B => array(0x11D3), 0x316C => array(0x11D7), + 0x316D => array(0x11D9), 0x316E => array(0x111C), 0x316F => array(0x11DD), + 0x3170 => array(0x11DF), 0x3171 => array(0x111D), 0x3172 => array(0x111E), + 0x3173 => array(0x1120), 0x3174 => array(0x1122), 0x3175 => array(0x1123), + 0x3176 => array(0x1127), 0x3177 => array(0x1129), 0x3178 => array(0x112B), + 0x3179 => array(0x112C), 0x317A => array(0x112D), 0x317B => array(0x112E), + 0x317C => array(0x112F), 0x317D => array(0x1132), 0x317E => array(0x1136), + 0x317F => array(0x1140), 0x3180 => array(0x1147), 0x3181 => array(0x114C), + 0x3182 => array(0x11F1), 0x3183 => array(0x11F2), 0x3184 => array(0x1157), + 0x3185 => array(0x1158), 0x3186 => array(0x1159), 0x3187 => array(0x1184), + 0x3188 => array(0x1185), 0x3189 => array(0x1188), 0x318A => array(0x1191), + 0x318B => array(0x1192), 0x318C => array(0x1194), 0x318D => array(0x119E), + 0x318E => array(0x11A1), 0x3192 => array(0x4E00), 0x3193 => array(0x4E8C), + 0x3194 => array(0x4E09), 0x3195 => array(0x56DB), 0x3196 => array(0x4E0A), + 0x3197 => array(0x4E2D), 0x3198 => array(0x4E0B), 0x3199 => array(0x7532), + 0x319A => array(0x4E59), 0x319B => array(0x4E19), 0x319C => array(0x4E01), + 0x319D => array(0x5929), 0x319E => array(0x5730), 0x319F => array(0x4EBA), + 0x3244 => array(0x554F), 0x3245 => array(0x5E7C), 0x3246 => array(0x6587), + 0x3247 => array(0x7B8F), 0x3250 => array(0x70, 0x74, 0x65), 0x3251 => array(0x32, 0x31), + 0x3252 => array(0x32, 0x32), 0x3253 => array(0x32, 0x33), 0x3254 => array(0x32, 0x34), + 0x3255 => array(0x32, 0x35), 0x3256 => array(0x32, 0x36), 0x3257 => array(0x32, 0x37), + 0x3258 => array(0x32, 0x38), 0x3259 => array(0x32, 0x39), 0x325A => array(0x33, 0x30), + 0x325B => array(0x33, 0x31), 0x325C => array(0x33, 0x32), 0x325D => array(0x33, 0x33), + 0x325E => array(0x33, 0x34), 0x325F => array(0x33, 0x35), 0x3260 => array(0x1100), + 0x3261 => array(0x1102), 0x3262 => array(0x1103), 0x3263 => array(0x1105), + 0x3264 => array(0x1106), 0x3265 => array(0x1107), 0x3266 => array(0x1109), + 0x3267 => array(0x110B), 0x3268 => array(0x110C), 0x3269 => array(0x110E), + 0x326A => array(0x110F), 0x326B => array(0x1110), 0x326C => array(0x1111), + 0x326D => array(0x1112), 0x326E => array(0xAC00), 0x326F => array(0xB098), + 0x3270 => array(0xB2E4), 0x3271 => array(0xB77C), 0x3272 => array(0xB9C8), + 0x3273 => array(0xBC14), 0x3274 => array(0xC0AC), 0x3275 => array(0xC544), + 0x3276 => array(0xC790), 0x3277 => array(0xCC28), 0x3278 => array(0xCE74), + 0x3279 => array(0xD0C0), 0x327A => array(0xD30C), 0x327B => array(0xD558), + 0x327C => array(0xCC38, 0xACE0), 0x327D => array(0xC8FC, 0xC758), 0x327E => array(0xC6B0), + 0x3280 => array(0x4E00), 0x3281 => array(0x4E8C), 0x3282 => array(0x4E09), + 0x3283 => array(0x56DB), 0x3284 => array(0x4E94), 0x3285 => array(0x516D), + 0x3286 => array(0x4E03), 0x3287 => array(0x516B), 0x3288 => array(0x4E5D), + 0x3289 => array(0x5341), 0x328A => array(0x6708), 0x328B => array(0x706B), + 0x328C => array(0x6C34), 0x328D => array(0x6728), 0x328E => array(0x91D1), + 0x328F => array(0x571F), 0x3290 => array(0x65E5), 0x3291 => array(0x682A), + 0x3292 => array(0x6709), 0x3293 => array(0x793E), 0x3294 => array(0x540D), + 0x3295 => array(0x7279), 0x3296 => array(0x8CA1), 0x3297 => array(0x795D), + 0x3298 => array(0x52B4), 0x3299 => array(0x79D8), 0x329A => array(0x7537), + 0x329B => array(0x5973), 0x329C => array(0x9069), 0x329D => array(0x512A), + 0x329E => array(0x5370), 0x329F => array(0x6CE8), 0x32A0 => array(0x9805), + 0x32A1 => array(0x4F11), 0x32A2 => array(0x5199), 0x32A3 => array(0x6B63), + 0x32A4 => array(0x4E0A), 0x32A5 => array(0x4E2D), 0x32A6 => array(0x4E0B), + 0x32A7 => array(0x5DE6), 0x32A8 => array(0x53F3), 0x32A9 => array(0x533B), + 0x32AA => array(0x5B97), 0x32AB => array(0x5B66), 0x32AC => array(0x76E3), + 0x32AD => array(0x4F01), 0x32AE => array(0x8CC7), 0x32AF => array(0x5354), + 0x32B0 => array(0x591C), 0x32B1 => array(0x33, 0x36), 0x32B2 => array(0x33, 0x37), + 0x32B3 => array(0x33, 0x38), 0x32B4 => array(0x33, 0x39), 0x32B5 => array(0x34, 0x30), + 0x32B6 => array(0x34, 0x31), 0x32B7 => array(0x34, 0x32), 0x32B8 => array(0x34, 0x33), + 0x32B9 => array(0x34, 0x34), 0x32BA => array(0x34, 0x35), 0x32BB => array(0x34, 0x36), + 0x32BC => array(0x34, 0x37), 0x32BD => array(0x34, 0x38), 0x32BE => array(0x34, 0x39), + 0x32BF => array(0x35, 0x30), 0x32C0 => array(0x31, 0x6708), 0x32C1 => array(0x32, 0x6708), + 0x32C2 => array(0x33, 0x6708), 0x32C3 => array(0x34, 0x6708), 0x32C4 => array(0x35, 0x6708), + 0x32C5 => array(0x36, 0x6708), 0x32C6 => array(0x37, 0x6708), 0x32C7 => array(0x38, 0x6708), + 0x32C8 => array(0x39, 0x6708), 0x32C9 => array(0x31, 0x30, 0x6708), 0x32CA => array(0x31, 0x31, 0x6708), + 0x32CB => array(0x31, 0x32, 0x6708), 0x32CC => array(0x68, 0x67), 0x32CD => array(0x65, 0x72, 0x67), + 0x32CE => array(0x65, 0x76), 0x32CF => array(0x6C, 0x74, 0x64), 0x32D0 => array(0x30A2), + 0x32D1 => array(0x30A4), 0x32D2 => array(0x30A6), 0x32D3 => array(0x30A8), + 0x32D4 => array(0x30AA), 0x32D5 => array(0x30AB), 0x32D6 => array(0x30AD), + 0x32D7 => array(0x30AF), 0x32D8 => array(0x30B1), 0x32D9 => array(0x30B3), + 0x32DA => array(0x30B5), 0x32DB => array(0x30B7), 0x32DC => array(0x30B9), + 0x32DD => array(0x30BB), 0x32DE => array(0x30BD), 0x32DF => array(0x30BF), + 0x32E0 => array(0x30C1), 0x32E1 => array(0x30C4), 0x32E2 => array(0x30C6), + 0x32E3 => array(0x30C8), 0x32E4 => array(0x30CA), 0x32E5 => array(0x30CB), + 0x32E6 => array(0x30CC), 0x32E7 => array(0x30CD), 0x32E8 => array(0x30CE), + 0x32E9 => array(0x30CF), 0x32EA => array(0x30D2), 0x32EB => array(0x30D5), + 0x32EC => array(0x30D8), 0x32ED => array(0x30DB), 0x32EE => array(0x30DE), + 0x32EF => array(0x30DF), 0x32F0 => array(0x30E0), 0x32F1 => array(0x30E1), + 0x32F2 => array(0x30E2), 0x32F3 => array(0x30E4), 0x32F4 => array(0x30E6), + 0x32F5 => array(0x30E8), 0x32F6 => array(0x30E9), 0x32F7 => array(0x30EA), + 0x32F8 => array(0x30EB), 0x32F9 => array(0x30EC), 0x32FA => array(0x30ED), + 0x32FB => array(0x30EF), 0x32FC => array(0x30F0), 0x32FD => array(0x30F1), + 0x32FE => array(0x30F2), 0x3300 => array(0x30A2, 0x30D1, 0x30FC, 0x30C8), 0x3301 => array(0x30A2, 0x30EB, 0x30D5, 0x30A1), + 0x3302 => array(0x30A2, 0x30F3, 0x30DA, 0x30A2), 0x3303 => array(0x30A2, 0x30FC, 0x30EB), 0x3304 => array(0x30A4, 0x30CB, 0x30F3, 0x30B0), + 0x3305 => array(0x30A4, 0x30F3, 0x30C1), 0x3306 => array(0x30A6, 0x30A9, 0x30F3), 0x3307 => array(0x30A8, 0x30B9, 0x30AF, 0x30FC, 0x30C9), + 0x3308 => array(0x30A8, 0x30FC, 0x30AB, 0x30FC), 0x3309 => array(0x30AA, 0x30F3, 0x30B9), 0x330A => array(0x30AA, 0x30FC, 0x30E0), + 0x330B => array(0x30AB, 0x30A4, 0x30EA), 0x330C => array(0x30AB, 0x30E9, 0x30C3, 0x30C8), 0x330D => array(0x30AB, 0x30ED, 0x30EA, 0x30FC), + 0x330E => array(0x30AC, 0x30ED, 0x30F3), 0x330F => array(0x30AC, 0x30F3, 0x30DE), 0x3310 => array(0x30AE, 0x30AC), + 0x3311 => array(0x30AE, 0x30CB, 0x30FC), 0x3312 => array(0x30AD, 0x30E5, 0x30EA, 0x30FC), 0x3313 => array(0x30AE, 0x30EB, 0x30C0, 0x30FC), + 0x3314 => array(0x30AD, 0x30ED), 0x3315 => array(0x30AD, 0x30ED, 0x30B0, 0x30E9, 0x30E0), 0x3316 => array(0x30AD, 0x30ED, 0x30E1, 0x30FC, 0x30C8, 0x30EB), + 0x3317 => array(0x30AD, 0x30ED, 0x30EF, 0x30C3, 0x30C8), 0x3318 => array(0x30B0, 0x30E9, 0x30E0), 0x3319 => array(0x30B0, 0x30E9, 0x30E0, 0x30C8, 0x30F3), + 0x331A => array(0x30AF, 0x30EB, 0x30BC, 0x30A4, 0x30ED), 0x331B => array(0x30AF, 0x30ED, 0x30FC, 0x30CD), 0x331C => array(0x30B1, 0x30FC, 0x30B9), + 0x331D => array(0x30B3, 0x30EB, 0x30CA), 0x331E => array(0x30B3, 0x30FC, 0x30DD), 0x331F => array(0x30B5, 0x30A4, 0x30AF, 0x30EB), + 0x3320 => array(0x30B5, 0x30F3, 0x30C1, 0x30FC, 0x30E0), 0x3321 => array(0x30B7, 0x30EA, 0x30F3, 0x30B0), 0x3322 => array(0x30BB, 0x30F3, 0x30C1), + 0x3323 => array(0x30BB, 0x30F3, 0x30C8), 0x3324 => array(0x30C0, 0x30FC, 0x30B9), 0x3325 => array(0x30C7, 0x30B7), + 0x3326 => array(0x30C9, 0x30EB), 0x3327 => array(0x30C8, 0x30F3), 0x3328 => array(0x30CA, 0x30CE), + 0x3329 => array(0x30CE, 0x30C3, 0x30C8), 0x332A => array(0x30CF, 0x30A4, 0x30C4), 0x332B => array(0x30D1, 0x30FC, 0x30BB, 0x30F3, 0x30C8), + 0x332C => array(0x30D1, 0x30FC, 0x30C4), 0x332D => array(0x30D0, 0x30FC, 0x30EC, 0x30EB), 0x332E => array(0x30D4, 0x30A2, 0x30B9, 0x30C8, 0x30EB), + 0x332F => array(0x30D4, 0x30AF, 0x30EB), 0x3330 => array(0x30D4, 0x30B3), 0x3331 => array(0x30D3, 0x30EB), + 0x3332 => array(0x30D5, 0x30A1, 0x30E9, 0x30C3, 0x30C9), 0x3333 => array(0x30D5, 0x30A3, 0x30FC, 0x30C8), 0x3334 => array(0x30D6, 0x30C3, 0x30B7, 0x30A7, 0x30EB), + 0x3335 => array(0x30D5, 0x30E9, 0x30F3), 0x3336 => array(0x30D8, 0x30AF, 0x30BF, 0x30FC, 0x30EB), 0x3337 => array(0x30DA, 0x30BD), + 0x3338 => array(0x30DA, 0x30CB, 0x30D2), 0x3339 => array(0x30D8, 0x30EB, 0x30C4), 0x333A => array(0x30DA, 0x30F3, 0x30B9), + 0x333B => array(0x30DA, 0x30FC, 0x30B8), 0x333C => array(0x30D9, 0x30FC, 0x30BF), 0x333D => array(0x30DD, 0x30A4, 0x30F3, 0x30C8), + 0x333E => array(0x30DC, 0x30EB, 0x30C8), 0x333F => array(0x30DB, 0x30F3), 0x3340 => array(0x30DD, 0x30F3, 0x30C9), + 0x3341 => array(0x30DB, 0x30FC, 0x30EB), 0x3342 => array(0x30DB, 0x30FC, 0x30F3), 0x3343 => array(0x30DE, 0x30A4, 0x30AF, 0x30ED), + 0x3344 => array(0x30DE, 0x30A4, 0x30EB), 0x3345 => array(0x30DE, 0x30C3, 0x30CF), 0x3346 => array(0x30DE, 0x30EB, 0x30AF), + 0x3347 => array(0x30DE, 0x30F3, 0x30B7, 0x30E7, 0x30F3), 0x3348 => array(0x30DF, 0x30AF, 0x30ED, 0x30F3), 0x3349 => array(0x30DF, 0x30EA), + 0x334A => array(0x30DF, 0x30EA, 0x30D0, 0x30FC, 0x30EB), 0x334B => array(0x30E1, 0x30AC), 0x334C => array(0x30E1, 0x30AC, 0x30C8, 0x30F3), + 0x334D => array(0x30E1, 0x30FC, 0x30C8, 0x30EB), 0x334E => array(0x30E4, 0x30FC, 0x30C9), 0x334F => array(0x30E4, 0x30FC, 0x30EB), + 0x3350 => array(0x30E6, 0x30A2, 0x30F3), 0x3351 => array(0x30EA, 0x30C3, 0x30C8, 0x30EB), 0x3352 => array(0x30EA, 0x30E9), + 0x3353 => array(0x30EB, 0x30D4, 0x30FC), 0x3354 => array(0x30EB, 0x30FC, 0x30D6, 0x30EB), 0x3355 => array(0x30EC, 0x30E0), + 0x3356 => array(0x30EC, 0x30F3, 0x30C8, 0x30B2, 0x30F3), 0x3357 => array(0x30EF, 0x30C3, 0x30C8), 0x3358 => array(0x30, 0x70B9), + 0x3359 => array(0x31, 0x70B9), 0x335A => array(0x32, 0x70B9), 0x335B => array(0x33, 0x70B9), + 0x335C => array(0x34, 0x70B9), 0x335D => array(0x35, 0x70B9), 0x335E => array(0x36, 0x70B9), + 0x335F => array(0x37, 0x70B9), 0x3360 => array(0x38, 0x70B9), 0x3361 => array(0x39, 0x70B9), + 0x3362 => array(0x31, 0x30, 0x70B9), 0x3363 => array(0x31, 0x31, 0x70B9), 0x3364 => array(0x31, 0x32, 0x70B9), + 0x3365 => array(0x31, 0x33, 0x70B9), 0x3366 => array(0x31, 0x34, 0x70B9), 0x3367 => array(0x31, 0x35, 0x70B9), + 0x3368 => array(0x31, 0x36, 0x70B9), 0x3369 => array(0x31, 0x37, 0x70B9), 0x336A => array(0x31, 0x38, 0x70B9), + 0x336B => array(0x31, 0x39, 0x70B9), 0x336C => array(0x32, 0x30, 0x70B9), 0x336D => array(0x32, 0x31, 0x70B9), + 0x336E => array(0x32, 0x32, 0x70B9), 0x336F => array(0x32, 0x33, 0x70B9), 0x3370 => array(0x32, 0x34, 0x70B9), + 0x3371 => array(0x68, 0x70, 0x61), 0x3372 => array(0x64, 0x61), 0x3373 => array(0x61, 0x75), + 0x3374 => array(0x62, 0x61, 0x72), 0x3375 => array(0x6F, 0x76), 0x3376 => array(0x70, 0x63), + 0x3377 => array(0x64, 0x6D), 0x3378 => array(0x64, 0x6D, 0x32), 0x3379 => array(0x64, 0x6D, 0x33), + 0x337A => array(0x69, 0x75), 0x337B => array(0x5E73, 0x6210), 0x337C => array(0x662D, 0x548C), + 0x337D => array(0x5927, 0x6B63), 0x337E => array(0x660E, 0x6CBB), 0x337F => array(0x682A, 0x5F0F, 0x4F1A, 0x793E), + 0x3380 => array(0x70, 0x61), 0x3381 => array(0x6E, 0x61), 0x3382 => array(0x3BC, 0x61), + 0x3383 => array(0x6D, 0x61), 0x3384 => array(0x6B, 0x61), 0x3385 => array(0x6B, 0x62), + 0x3386 => array(0x6D, 0x62), 0x3387 => array(0x67, 0x62), 0x3388 => array(0x63, 0x61, 0x6C), + 0x3389 => array(0x6B, 0x63, 0x61, 0x6C), 0x338A => array(0x70, 0x66), 0x338B => array(0x6E, 0x66), + 0x338C => array(0x3BC, 0x66), 0x338D => array(0x3BC, 0x67), 0x338E => array(0x6D, 0x67), + 0x338F => array(0x6B, 0x67), 0x3390 => array(0x68, 0x7A), 0x3391 => array(0x6B, 0x68, 0x7A), + 0x3392 => array(0x6D, 0x68, 0x7A), 0x3393 => array(0x67, 0x68, 0x7A), 0x3394 => array(0x74, 0x68, 0x7A), + 0x3395 => array(0x3BC, 0x6C), 0x3396 => array(0x6D, 0x6C), 0x3397 => array(0x64, 0x6C), + 0x3398 => array(0x6B, 0x6C), 0x3399 => array(0x66, 0x6D), 0x339A => array(0x6E, 0x6D), + 0x339B => array(0x3BC, 0x6D), 0x339C => array(0x6D, 0x6D), 0x339D => array(0x63, 0x6D), + 0x339E => array(0x6B, 0x6D), 0x339F => array(0x6D, 0x6D, 0x32), 0x33A0 => array(0x63, 0x6D, 0x32), + 0x33A1 => array(0x6D, 0x32), 0x33A2 => array(0x6B, 0x6D, 0x32), 0x33A3 => array(0x6D, 0x6D, 0x33), + 0x33A4 => array(0x63, 0x6D, 0x33), 0x33A5 => array(0x6D, 0x33), 0x33A6 => array(0x6B, 0x6D, 0x33), + 0x33A7 => array(0x6D, 0x2215, 0x73), 0x33A8 => array(0x6D, 0x2215, 0x73, 0x32), 0x33A9 => array(0x70, 0x61), + 0x33AA => array(0x6B, 0x70, 0x61), 0x33AB => array(0x6D, 0x70, 0x61), 0x33AC => array(0x67, 0x70, 0x61), + 0x33AD => array(0x72, 0x61, 0x64), 0x33AE => array(0x72, 0x61, 0x64, 0x2215, 0x73), 0x33AF => array(0x72, 0x61, 0x64, 0x2215, 0x73, 0x32), + 0x33B0 => array(0x70, 0x73), 0x33B1 => array(0x6E, 0x73), 0x33B2 => array(0x3BC, 0x73), + 0x33B3 => array(0x6D, 0x73), 0x33B4 => array(0x70, 0x76), 0x33B5 => array(0x6E, 0x76), + 0x33B6 => array(0x3BC, 0x76), 0x33B7 => array(0x6D, 0x76), 0x33B8 => array(0x6B, 0x76), + 0x33B9 => array(0x6D, 0x76), 0x33BA => array(0x70, 0x77), 0x33BB => array(0x6E, 0x77), + 0x33BC => array(0x3BC, 0x77), 0x33BD => array(0x6D, 0x77), 0x33BE => array(0x6B, 0x77), + 0x33BF => array(0x6D, 0x77), 0x33C0 => array(0x6B, 0x3C9), 0x33C1 => array(0x6D, 0x3C9), + 0x33C3 => array(0x62, 0x71), 0x33C4 => array(0x63, 0x63), 0x33C5 => array(0x63, 0x64), + 0x33C6 => array(0x63, 0x2215, 0x6B, 0x67), 0x33C8 => array(0x64, 0x62), 0x33C9 => array(0x67, 0x79), + 0x33CA => array(0x68, 0x61), 0x33CB => array(0x68, 0x70), 0x33CC => array(0x69, 0x6E), + 0x33CD => array(0x6B, 0x6B), 0x33CE => array(0x6B, 0x6D), 0x33CF => array(0x6B, 0x74), + 0x33D0 => array(0x6C, 0x6D), 0x33D1 => array(0x6C, 0x6E), 0x33D2 => array(0x6C, 0x6F, 0x67), + 0x33D3 => array(0x6C, 0x78), 0x33D4 => array(0x6D, 0x62), 0x33D5 => array(0x6D, 0x69, 0x6C), + 0x33D6 => array(0x6D, 0x6F, 0x6C), 0x33D7 => array(0x70, 0x68), 0x33D9 => array(0x70, 0x70, 0x6D), + 0x33DA => array(0x70, 0x72), 0x33DB => array(0x73, 0x72), 0x33DC => array(0x73, 0x76), + 0x33DD => array(0x77, 0x62), 0x33DE => array(0x76, 0x2215, 0x6D), 0x33DF => array(0x61, 0x2215, 0x6D), + 0x33E0 => array(0x31, 0x65E5), 0x33E1 => array(0x32, 0x65E5), 0x33E2 => array(0x33, 0x65E5), + 0x33E3 => array(0x34, 0x65E5), 0x33E4 => array(0x35, 0x65E5), 0x33E5 => array(0x36, 0x65E5), + 0x33E6 => array(0x37, 0x65E5), 0x33E7 => array(0x38, 0x65E5), 0x33E8 => array(0x39, 0x65E5), + 0x33E9 => array(0x31, 0x30, 0x65E5), 0x33EA => array(0x31, 0x31, 0x65E5), 0x33EB => array(0x31, 0x32, 0x65E5), + 0x33EC => array(0x31, 0x33, 0x65E5), 0x33ED => array(0x31, 0x34, 0x65E5), 0x33EE => array(0x31, 0x35, 0x65E5), + 0x33EF => array(0x31, 0x36, 0x65E5), 0x33F0 => array(0x31, 0x37, 0x65E5), 0x33F1 => array(0x31, 0x38, 0x65E5), + 0x33F2 => array(0x31, 0x39, 0x65E5), 0x33F3 => array(0x32, 0x30, 0x65E5), 0x33F4 => array(0x32, 0x31, 0x65E5), + 0x33F5 => array(0x32, 0x32, 0x65E5), 0x33F6 => array(0x32, 0x33, 0x65E5), 0x33F7 => array(0x32, 0x34, 0x65E5), + 0x33F8 => array(0x32, 0x35, 0x65E5), 0x33F9 => array(0x32, 0x36, 0x65E5), 0x33FA => array(0x32, 0x37, 0x65E5), + 0x33FB => array(0x32, 0x38, 0x65E5), 0x33FC => array(0x32, 0x39, 0x65E5), 0x33FD => array(0x33, 0x30, 0x65E5), + 0x33FE => array(0x33, 0x31, 0x65E5), 0x33FF => array(0x67, 0x61, 0x6C), 0xA640 => array(0xA641), + 0xA642 => array(0xA643), 0xA644 => array(0xA645), 0xA646 => array(0xA647), + 0xA648 => array(0xA649), 0xA64A => array(0xA64B), 0xA64C => array(0xA64D), + 0xA64E => array(0xA64F), 0xA650 => array(0xA651), 0xA652 => array(0xA653), + 0xA654 => array(0xA655), 0xA656 => array(0xA657), 0xA658 => array(0xA659), + 0xA65A => array(0xA65B), 0xA65C => array(0xA65D), 0xA65E => array(0xA65F), + 0xA660 => array(0xA661), 0xA662 => array(0xA663), 0xA664 => array(0xA665), + 0xA666 => array(0xA667), 0xA668 => array(0xA669), 0xA66A => array(0xA66B), + 0xA66C => array(0xA66D), 0xA680 => array(0xA681), 0xA682 => array(0xA683), + 0xA684 => array(0xA685), 0xA686 => array(0xA687), 0xA688 => array(0xA689), + 0xA68A => array(0xA68B), 0xA68C => array(0xA68D), 0xA68E => array(0xA68F), + 0xA690 => array(0xA691), 0xA692 => array(0xA693), 0xA694 => array(0xA695), + 0xA696 => array(0xA697), 0xA698 => array(0xA699), 0xA69A => array(0xA69B), + 0xA69C => array(0x44A), 0xA69D => array(0x44C), 0xA722 => array(0xA723), + 0xA724 => array(0xA725), 0xA726 => array(0xA727), 0xA728 => array(0xA729), + 0xA72A => array(0xA72B), 0xA72C => array(0xA72D), 0xA72E => array(0xA72F), + 0xA732 => array(0xA733), 0xA734 => array(0xA735), 0xA736 => array(0xA737), + 0xA738 => array(0xA739), 0xA73A => array(0xA73B), 0xA73C => array(0xA73D), + 0xA73E => array(0xA73F), 0xA740 => array(0xA741), 0xA742 => array(0xA743), + 0xA744 => array(0xA745), 0xA746 => array(0xA747), 0xA748 => array(0xA749), + 0xA74A => array(0xA74B), 0xA74C => array(0xA74D), 0xA74E => array(0xA74F), + 0xA750 => array(0xA751), 0xA752 => array(0xA753), 0xA754 => array(0xA755), + 0xA756 => array(0xA757), 0xA758 => array(0xA759), 0xA75A => array(0xA75B), + 0xA75C => array(0xA75D), 0xA75E => array(0xA75F), 0xA760 => array(0xA761), + 0xA762 => array(0xA763), 0xA764 => array(0xA765), 0xA766 => array(0xA767), + 0xA768 => array(0xA769), 0xA76A => array(0xA76B), 0xA76C => array(0xA76D), + 0xA76E => array(0xA76F), 0xA770 => array(0xA76F), 0xA779 => array(0xA77A), + 0xA77B => array(0xA77C), 0xA77D => array(0x1D79), 0xA77E => array(0xA77F), + 0xA780 => array(0xA781), 0xA782 => array(0xA783), 0xA784 => array(0xA785), + 0xA786 => array(0xA787), 0xA78B => array(0xA78C), 0xA78D => array(0x265), + 0xA790 => array(0xA791), 0xA792 => array(0xA793), 0xA796 => array(0xA797), + 0xA798 => array(0xA799), 0xA79A => array(0xA79B), 0xA79C => array(0xA79D), + 0xA79E => array(0xA79F), 0xA7A0 => array(0xA7A1), 0xA7A2 => array(0xA7A3), + 0xA7A4 => array(0xA7A5), 0xA7A6 => array(0xA7A7), 0xA7A8 => array(0xA7A9), + 0xA7AA => array(0x266), 0xA7AB => array(0x25C), 0xA7AC => array(0x261), + 0xA7AD => array(0x26C), 0xA7B0 => array(0x29E), 0xA7B1 => array(0x287), + 0xA7F8 => array(0x127), 0xA7F9 => array(0x153), 0xAB5C => array(0xA727), + 0xAB5D => array(0xAB37), 0xAB5E => array(0x26B), 0xAB5F => array(0xAB52), + 0xF900 => array(0x8C48), 0xF901 => array(0x66F4), 0xF902 => array(0x8ECA), + 0xF903 => array(0x8CC8), 0xF904 => array(0x6ED1), 0xF905 => array(0x4E32), + 0xF906 => array(0x53E5), 0xF907 => array(0x9F9C), 0xF908 => array(0x9F9C), + 0xF909 => array(0x5951), 0xF90A => array(0x91D1), 0xF90B => array(0x5587), + 0xF90C => array(0x5948), 0xF90D => array(0x61F6), 0xF90E => array(0x7669), + 0xF90F => array(0x7F85), 0xF910 => array(0x863F), 0xF911 => array(0x87BA), + 0xF912 => array(0x88F8), 0xF913 => array(0x908F), 0xF914 => array(0x6A02), + 0xF915 => array(0x6D1B), 0xF916 => array(0x70D9), 0xF917 => array(0x73DE), + 0xF918 => array(0x843D), 0xF919 => array(0x916A), 0xF91A => array(0x99F1), + 0xF91B => array(0x4E82), 0xF91C => array(0x5375), 0xF91D => array(0x6B04), + 0xF91E => array(0x721B), 0xF91F => array(0x862D), 0xF920 => array(0x9E1E), + 0xF921 => array(0x5D50), 0xF922 => array(0x6FEB), 0xF923 => array(0x85CD), + 0xF924 => array(0x8964), 0xF925 => array(0x62C9), 0xF926 => array(0x81D8), + 0xF927 => array(0x881F), 0xF928 => array(0x5ECA), 0xF929 => array(0x6717), + 0xF92A => array(0x6D6A), 0xF92B => array(0x72FC), 0xF92C => array(0x90CE), + 0xF92D => array(0x4F86), 0xF92E => array(0x51B7), 0xF92F => array(0x52DE), + 0xF930 => array(0x64C4), 0xF931 => array(0x6AD3), 0xF932 => array(0x7210), + 0xF933 => array(0x76E7), 0xF934 => array(0x8001), 0xF935 => array(0x8606), + 0xF936 => array(0x865C), 0xF937 => array(0x8DEF), 0xF938 => array(0x9732), + 0xF939 => array(0x9B6F), 0xF93A => array(0x9DFA), 0xF93B => array(0x788C), + 0xF93C => array(0x797F), 0xF93D => array(0x7DA0), 0xF93E => array(0x83C9), + 0xF93F => array(0x9304), 0xF940 => array(0x9E7F), 0xF941 => array(0x8AD6), + 0xF942 => array(0x58DF), 0xF943 => array(0x5F04), 0xF944 => array(0x7C60), + 0xF945 => array(0x807E), 0xF946 => array(0x7262), 0xF947 => array(0x78CA), + 0xF948 => array(0x8CC2), 0xF949 => array(0x96F7), 0xF94A => array(0x58D8), + 0xF94B => array(0x5C62), 0xF94C => array(0x6A13), 0xF94D => array(0x6DDA), + 0xF94E => array(0x6F0F), 0xF94F => array(0x7D2F), 0xF950 => array(0x7E37), + 0xF951 => array(0x964B), 0xF952 => array(0x52D2), 0xF953 => array(0x808B), + 0xF954 => array(0x51DC), 0xF955 => array(0x51CC), 0xF956 => array(0x7A1C), + 0xF957 => array(0x7DBE), 0xF958 => array(0x83F1), 0xF959 => array(0x9675), + 0xF95A => array(0x8B80), 0xF95B => array(0x62CF), 0xF95C => array(0x6A02), + 0xF95D => array(0x8AFE), 0xF95E => array(0x4E39), 0xF95F => array(0x5BE7), + 0xF960 => array(0x6012), 0xF961 => array(0x7387), 0xF962 => array(0x7570), + 0xF963 => array(0x5317), 0xF964 => array(0x78FB), 0xF965 => array(0x4FBF), + 0xF966 => array(0x5FA9), 0xF967 => array(0x4E0D), 0xF968 => array(0x6CCC), + 0xF969 => array(0x6578), 0xF96A => array(0x7D22), 0xF96B => array(0x53C3), + 0xF96C => array(0x585E), 0xF96D => array(0x7701), 0xF96E => array(0x8449), + 0xF96F => array(0x8AAA), 0xF970 => array(0x6BBA), 0xF971 => array(0x8FB0), + 0xF972 => array(0x6C88), 0xF973 => array(0x62FE), 0xF974 => array(0x82E5), + 0xF975 => array(0x63A0), 0xF976 => array(0x7565), 0xF977 => array(0x4EAE), + 0xF978 => array(0x5169), 0xF979 => array(0x51C9), 0xF97A => array(0x6881), + 0xF97B => array(0x7CE7), 0xF97C => array(0x826F), 0xF97D => array(0x8AD2), + 0xF97E => array(0x91CF), 0xF97F => array(0x52F5), 0xF980 => array(0x5442), + 0xF981 => array(0x5973), 0xF982 => array(0x5EEC), 0xF983 => array(0x65C5), + 0xF984 => array(0x6FFE), 0xF985 => array(0x792A), 0xF986 => array(0x95AD), + 0xF987 => array(0x9A6A), 0xF988 => array(0x9E97), 0xF989 => array(0x9ECE), + 0xF98A => array(0x529B), 0xF98B => array(0x66C6), 0xF98C => array(0x6B77), + 0xF98D => array(0x8F62), 0xF98E => array(0x5E74), 0xF98F => array(0x6190), + 0xF990 => array(0x6200), 0xF991 => array(0x649A), 0xF992 => array(0x6F23), + 0xF993 => array(0x7149), 0xF994 => array(0x7489), 0xF995 => array(0x79CA), + 0xF996 => array(0x7DF4), 0xF997 => array(0x806F), 0xF998 => array(0x8F26), + 0xF999 => array(0x84EE), 0xF99A => array(0x9023), 0xF99B => array(0x934A), + 0xF99C => array(0x5217), 0xF99D => array(0x52A3), 0xF99E => array(0x54BD), + 0xF99F => array(0x70C8), 0xF9A0 => array(0x88C2), 0xF9A1 => array(0x8AAA), + 0xF9A2 => array(0x5EC9), 0xF9A3 => array(0x5FF5), 0xF9A4 => array(0x637B), + 0xF9A5 => array(0x6BAE), 0xF9A6 => array(0x7C3E), 0xF9A7 => array(0x7375), + 0xF9A8 => array(0x4EE4), 0xF9A9 => array(0x56F9), 0xF9AA => array(0x5BE7), + 0xF9AB => array(0x5DBA), 0xF9AC => array(0x601C), 0xF9AD => array(0x73B2), + 0xF9AE => array(0x7469), 0xF9AF => array(0x7F9A), 0xF9B0 => array(0x8046), + 0xF9B1 => array(0x9234), 0xF9B2 => array(0x96F6), 0xF9B3 => array(0x9748), + 0xF9B4 => array(0x9818), 0xF9B5 => array(0x4F8B), 0xF9B6 => array(0x79AE), + 0xF9B7 => array(0x91B4), 0xF9B8 => array(0x96B8), 0xF9B9 => array(0x60E1), + 0xF9BA => array(0x4E86), 0xF9BB => array(0x50DA), 0xF9BC => array(0x5BEE), + 0xF9BD => array(0x5C3F), 0xF9BE => array(0x6599), 0xF9BF => array(0x6A02), + 0xF9C0 => array(0x71CE), 0xF9C1 => array(0x7642), 0xF9C2 => array(0x84FC), + 0xF9C3 => array(0x907C), 0xF9C4 => array(0x9F8D), 0xF9C5 => array(0x6688), + 0xF9C6 => array(0x962E), 0xF9C7 => array(0x5289), 0xF9C8 => array(0x677B), + 0xF9C9 => array(0x67F3), 0xF9CA => array(0x6D41), 0xF9CB => array(0x6E9C), + 0xF9CC => array(0x7409), 0xF9CD => array(0x7559), 0xF9CE => array(0x786B), + 0xF9CF => array(0x7D10), 0xF9D0 => array(0x985E), 0xF9D1 => array(0x516D), + 0xF9D2 => array(0x622E), 0xF9D3 => array(0x9678), 0xF9D4 => array(0x502B), + 0xF9D5 => array(0x5D19), 0xF9D6 => array(0x6DEA), 0xF9D7 => array(0x8F2A), + 0xF9D8 => array(0x5F8B), 0xF9D9 => array(0x6144), 0xF9DA => array(0x6817), + 0xF9DB => array(0x7387), 0xF9DC => array(0x9686), 0xF9DD => array(0x5229), + 0xF9DE => array(0x540F), 0xF9DF => array(0x5C65), 0xF9E0 => array(0x6613), + 0xF9E1 => array(0x674E), 0xF9E2 => array(0x68A8), 0xF9E3 => array(0x6CE5), + 0xF9E4 => array(0x7406), 0xF9E5 => array(0x75E2), 0xF9E6 => array(0x7F79), + 0xF9E7 => array(0x88CF), 0xF9E8 => array(0x88E1), 0xF9E9 => array(0x91CC), + 0xF9EA => array(0x96E2), 0xF9EB => array(0x533F), 0xF9EC => array(0x6EBA), + 0xF9ED => array(0x541D), 0xF9EE => array(0x71D0), 0xF9EF => array(0x7498), + 0xF9F0 => array(0x85FA), 0xF9F1 => array(0x96A3), 0xF9F2 => array(0x9C57), + 0xF9F3 => array(0x9E9F), 0xF9F4 => array(0x6797), 0xF9F5 => array(0x6DCB), + 0xF9F6 => array(0x81E8), 0xF9F7 => array(0x7ACB), 0xF9F8 => array(0x7B20), + 0xF9F9 => array(0x7C92), 0xF9FA => array(0x72C0), 0xF9FB => array(0x7099), + 0xF9FC => array(0x8B58), 0xF9FD => array(0x4EC0), 0xF9FE => array(0x8336), + 0xF9FF => array(0x523A), 0xFA00 => array(0x5207), 0xFA01 => array(0x5EA6), + 0xFA02 => array(0x62D3), 0xFA03 => array(0x7CD6), 0xFA04 => array(0x5B85), + 0xFA05 => array(0x6D1E), 0xFA06 => array(0x66B4), 0xFA07 => array(0x8F3B), + 0xFA08 => array(0x884C), 0xFA09 => array(0x964D), 0xFA0A => array(0x898B), + 0xFA0B => array(0x5ED3), 0xFA0C => array(0x5140), 0xFA0D => array(0x55C0), + 0xFA10 => array(0x585A), 0xFA12 => array(0x6674), 0xFA15 => array(0x51DE), + 0xFA16 => array(0x732A), 0xFA17 => array(0x76CA), 0xFA18 => array(0x793C), + 0xFA19 => array(0x795E), 0xFA1A => array(0x7965), 0xFA1B => array(0x798F), + 0xFA1C => array(0x9756), 0xFA1D => array(0x7CBE), 0xFA1E => array(0x7FBD), + 0xFA20 => array(0x8612), 0xFA22 => array(0x8AF8), 0xFA25 => array(0x9038), + 0xFA26 => array(0x90FD), 0xFA2A => array(0x98EF), 0xFA2B => array(0x98FC), + 0xFA2C => array(0x9928), 0xFA2D => array(0x9DB4), 0xFA2E => array(0x90DE), + 0xFA2F => array(0x96B7), 0xFA30 => array(0x4FAE), 0xFA31 => array(0x50E7), + 0xFA32 => array(0x514D), 0xFA33 => array(0x52C9), 0xFA34 => array(0x52E4), + 0xFA35 => array(0x5351), 0xFA36 => array(0x559D), 0xFA37 => array(0x5606), + 0xFA38 => array(0x5668), 0xFA39 => array(0x5840), 0xFA3A => array(0x58A8), + 0xFA3B => array(0x5C64), 0xFA3C => array(0x5C6E), 0xFA3D => array(0x6094), + 0xFA3E => array(0x6168), 0xFA3F => array(0x618E), 0xFA40 => array(0x61F2), + 0xFA41 => array(0x654F), 0xFA42 => array(0x65E2), 0xFA43 => array(0x6691), + 0xFA44 => array(0x6885), 0xFA45 => array(0x6D77), 0xFA46 => array(0x6E1A), + 0xFA47 => array(0x6F22), 0xFA48 => array(0x716E), 0xFA49 => array(0x722B), + 0xFA4A => array(0x7422), 0xFA4B => array(0x7891), 0xFA4C => array(0x793E), + 0xFA4D => array(0x7949), 0xFA4E => array(0x7948), 0xFA4F => array(0x7950), + 0xFA50 => array(0x7956), 0xFA51 => array(0x795D), 0xFA52 => array(0x798D), + 0xFA53 => array(0x798E), 0xFA54 => array(0x7A40), 0xFA55 => array(0x7A81), + 0xFA56 => array(0x7BC0), 0xFA57 => array(0x7DF4), 0xFA58 => array(0x7E09), + 0xFA59 => array(0x7E41), 0xFA5A => array(0x7F72), 0xFA5B => array(0x8005), + 0xFA5C => array(0x81ED), 0xFA5D => array(0x8279), 0xFA5E => array(0x8279), + 0xFA5F => array(0x8457), 0xFA60 => array(0x8910), 0xFA61 => array(0x8996), + 0xFA62 => array(0x8B01), 0xFA63 => array(0x8B39), 0xFA64 => array(0x8CD3), + 0xFA65 => array(0x8D08), 0xFA66 => array(0x8FB6), 0xFA67 => array(0x9038), + 0xFA68 => array(0x96E3), 0xFA69 => array(0x97FF), 0xFA6A => array(0x983B), + 0xFA6B => array(0x6075), 0xFA6C => array(0x242EE), 0xFA6D => array(0x8218), + 0xFA70 => array(0x4E26), 0xFA71 => array(0x51B5), 0xFA72 => array(0x5168), + 0xFA73 => array(0x4F80), 0xFA74 => array(0x5145), 0xFA75 => array(0x5180), + 0xFA76 => array(0x52C7), 0xFA77 => array(0x52FA), 0xFA78 => array(0x559D), + 0xFA79 => array(0x5555), 0xFA7A => array(0x5599), 0xFA7B => array(0x55E2), + 0xFA7C => array(0x585A), 0xFA7D => array(0x58B3), 0xFA7E => array(0x5944), + 0xFA7F => array(0x5954), 0xFA80 => array(0x5A62), 0xFA81 => array(0x5B28), + 0xFA82 => array(0x5ED2), 0xFA83 => array(0x5ED9), 0xFA84 => array(0x5F69), + 0xFA85 => array(0x5FAD), 0xFA86 => array(0x60D8), 0xFA87 => array(0x614E), + 0xFA88 => array(0x6108), 0xFA89 => array(0x618E), 0xFA8A => array(0x6160), + 0xFA8B => array(0x61F2), 0xFA8C => array(0x6234), 0xFA8D => array(0x63C4), + 0xFA8E => array(0x641C), 0xFA8F => array(0x6452), 0xFA90 => array(0x6556), + 0xFA91 => array(0x6674), 0xFA92 => array(0x6717), 0xFA93 => array(0x671B), + 0xFA94 => array(0x6756), 0xFA95 => array(0x6B79), 0xFA96 => array(0x6BBA), + 0xFA97 => array(0x6D41), 0xFA98 => array(0x6EDB), 0xFA99 => array(0x6ECB), + 0xFA9A => array(0x6F22), 0xFA9B => array(0x701E), 0xFA9C => array(0x716E), + 0xFA9D => array(0x77A7), 0xFA9E => array(0x7235), 0xFA9F => array(0x72AF), + 0xFAA0 => array(0x732A), 0xFAA1 => array(0x7471), 0xFAA2 => array(0x7506), + 0xFAA3 => array(0x753B), 0xFAA4 => array(0x761D), 0xFAA5 => array(0x761F), + 0xFAA6 => array(0x76CA), 0xFAA7 => array(0x76DB), 0xFAA8 => array(0x76F4), + 0xFAA9 => array(0x774A), 0xFAAA => array(0x7740), 0xFAAB => array(0x78CC), + 0xFAAC => array(0x7AB1), 0xFAAD => array(0x7BC0), 0xFAAE => array(0x7C7B), + 0xFAAF => array(0x7D5B), 0xFAB0 => array(0x7DF4), 0xFAB1 => array(0x7F3E), + 0xFAB2 => array(0x8005), 0xFAB3 => array(0x8352), 0xFAB4 => array(0x83EF), + 0xFAB5 => array(0x8779), 0xFAB6 => array(0x8941), 0xFAB7 => array(0x8986), + 0xFAB8 => array(0x8996), 0xFAB9 => array(0x8ABF), 0xFABA => array(0x8AF8), + 0xFABB => array(0x8ACB), 0xFABC => array(0x8B01), 0xFABD => array(0x8AFE), + 0xFABE => array(0x8AED), 0xFABF => array(0x8B39), 0xFAC0 => array(0x8B8A), + 0xFAC1 => array(0x8D08), 0xFAC2 => array(0x8F38), 0xFAC3 => array(0x9072), + 0xFAC4 => array(0x9199), 0xFAC5 => array(0x9276), 0xFAC6 => array(0x967C), + 0xFAC7 => array(0x96E3), 0xFAC8 => array(0x9756), 0xFAC9 => array(0x97DB), + 0xFACA => array(0x97FF), 0xFACB => array(0x980B), 0xFACC => array(0x983B), + 0xFACD => array(0x9B12), 0xFACE => array(0x9F9C), 0xFACF => array(0x2284A), + 0xFAD0 => array(0x22844), 0xFAD1 => array(0x233D5), 0xFAD2 => array(0x3B9D), + 0xFAD3 => array(0x4018), 0xFAD4 => array(0x4039), 0xFAD5 => array(0x25249), + 0xFAD6 => array(0x25CD0), 0xFAD7 => array(0x27ED3), 0xFAD8 => array(0x9F43), + 0xFAD9 => array(0x9F8E), 0xFB00 => array(0x66, 0x66), 0xFB01 => array(0x66, 0x69), + 0xFB02 => array(0x66, 0x6C), 0xFB03 => array(0x66, 0x66, 0x69), 0xFB04 => array(0x66, 0x66, 0x6C), + 0xFB05 => array(0x73, 0x74), 0xFB06 => array(0x73, 0x74), 0xFB13 => array(0x574, 0x576), + 0xFB14 => array(0x574, 0x565), 0xFB15 => array(0x574, 0x56B), 0xFB16 => array(0x57E, 0x576), + 0xFB17 => array(0x574, 0x56D), 0xFB1D => array(0x5D9, 0x5B4), 0xFB1F => array(0x5F2, 0x5B7), + 0xFB20 => array(0x5E2), 0xFB21 => array(0x5D0), 0xFB22 => array(0x5D3), + 0xFB23 => array(0x5D4), 0xFB24 => array(0x5DB), 0xFB25 => array(0x5DC), + 0xFB26 => array(0x5DD), 0xFB27 => array(0x5E8), 0xFB28 => array(0x5EA), + 0xFB2A => array(0x5E9, 0x5C1), 0xFB2B => array(0x5E9, 0x5C2), 0xFB2C => array(0x5E9, 0x5BC, 0x5C1), + 0xFB2D => array(0x5E9, 0x5BC, 0x5C2), 0xFB2E => array(0x5D0, 0x5B7), 0xFB2F => array(0x5D0, 0x5B8), + 0xFB30 => array(0x5D0, 0x5BC), 0xFB31 => array(0x5D1, 0x5BC), 0xFB32 => array(0x5D2, 0x5BC), + 0xFB33 => array(0x5D3, 0x5BC), 0xFB34 => array(0x5D4, 0x5BC), 0xFB35 => array(0x5D5, 0x5BC), + 0xFB36 => array(0x5D6, 0x5BC), 0xFB38 => array(0x5D8, 0x5BC), 0xFB39 => array(0x5D9, 0x5BC), + 0xFB3A => array(0x5DA, 0x5BC), 0xFB3B => array(0x5DB, 0x5BC), 0xFB3C => array(0x5DC, 0x5BC), + 0xFB3E => array(0x5DE, 0x5BC), 0xFB40 => array(0x5E0, 0x5BC), 0xFB41 => array(0x5E1, 0x5BC), + 0xFB43 => array(0x5E3, 0x5BC), 0xFB44 => array(0x5E4, 0x5BC), 0xFB46 => array(0x5E6, 0x5BC), + 0xFB47 => array(0x5E7, 0x5BC), 0xFB48 => array(0x5E8, 0x5BC), 0xFB49 => array(0x5E9, 0x5BC), + 0xFB4A => array(0x5EA, 0x5BC), 0xFB4B => array(0x5D5, 0x5B9), 0xFB4C => array(0x5D1, 0x5BF), + 0xFB4D => array(0x5DB, 0x5BF), 0xFB4E => array(0x5E4, 0x5BF), 0xFB4F => array(0x5D0, 0x5DC), + 0xFB50 => array(0x671), 0xFB51 => array(0x671), 0xFB52 => array(0x67B), + 0xFB53 => array(0x67B), 0xFB54 => array(0x67B), 0xFB55 => array(0x67B), + 0xFB56 => array(0x67E), 0xFB57 => array(0x67E), 0xFB58 => array(0x67E), + 0xFB59 => array(0x67E), 0xFB5A => array(0x680), 0xFB5B => array(0x680), + 0xFB5C => array(0x680), 0xFB5D => array(0x680), 0xFB5E => array(0x67A), + 0xFB5F => array(0x67A), 0xFB60 => array(0x67A), 0xFB61 => array(0x67A), + 0xFB62 => array(0x67F), 0xFB63 => array(0x67F), 0xFB64 => array(0x67F), + 0xFB65 => array(0x67F), 0xFB66 => array(0x679), 0xFB67 => array(0x679), + 0xFB68 => array(0x679), 0xFB69 => array(0x679), 0xFB6A => array(0x6A4), + 0xFB6B => array(0x6A4), 0xFB6C => array(0x6A4), 0xFB6D => array(0x6A4), + 0xFB6E => array(0x6A6), 0xFB6F => array(0x6A6), 0xFB70 => array(0x6A6), + 0xFB71 => array(0x6A6), 0xFB72 => array(0x684), 0xFB73 => array(0x684), + 0xFB74 => array(0x684), 0xFB75 => array(0x684), 0xFB76 => array(0x683), + 0xFB77 => array(0x683), 0xFB78 => array(0x683), 0xFB79 => array(0x683), + 0xFB7A => array(0x686), 0xFB7B => array(0x686), 0xFB7C => array(0x686), + 0xFB7D => array(0x686), 0xFB7E => array(0x687), 0xFB7F => array(0x687), + 0xFB80 => array(0x687), 0xFB81 => array(0x687), 0xFB82 => array(0x68D), + 0xFB83 => array(0x68D), 0xFB84 => array(0x68C), 0xFB85 => array(0x68C), + 0xFB86 => array(0x68E), 0xFB87 => array(0x68E), 0xFB88 => array(0x688), + 0xFB89 => array(0x688), 0xFB8A => array(0x698), 0xFB8B => array(0x698), + 0xFB8C => array(0x691), 0xFB8D => array(0x691), 0xFB8E => array(0x6A9), + 0xFB8F => array(0x6A9), 0xFB90 => array(0x6A9), 0xFB91 => array(0x6A9), + 0xFB92 => array(0x6AF), 0xFB93 => array(0x6AF), 0xFB94 => array(0x6AF), + 0xFB95 => array(0x6AF), 0xFB96 => array(0x6B3), 0xFB97 => array(0x6B3), + 0xFB98 => array(0x6B3), 0xFB99 => array(0x6B3), 0xFB9A => array(0x6B1), + 0xFB9B => array(0x6B1), 0xFB9C => array(0x6B1), 0xFB9D => array(0x6B1), + 0xFB9E => array(0x6BA), 0xFB9F => array(0x6BA), 0xFBA0 => array(0x6BB), + 0xFBA1 => array(0x6BB), 0xFBA2 => array(0x6BB), 0xFBA3 => array(0x6BB), + 0xFBA4 => array(0x6C0), 0xFBA5 => array(0x6C0), 0xFBA6 => array(0x6C1), + 0xFBA7 => array(0x6C1), 0xFBA8 => array(0x6C1), 0xFBA9 => array(0x6C1), + 0xFBAA => array(0x6BE), 0xFBAB => array(0x6BE), 0xFBAC => array(0x6BE), + 0xFBAD => array(0x6BE), 0xFBAE => array(0x6D2), 0xFBAF => array(0x6D2), + 0xFBB0 => array(0x6D3), 0xFBB1 => array(0x6D3), 0xFBD3 => array(0x6AD), + 0xFBD4 => array(0x6AD), 0xFBD5 => array(0x6AD), 0xFBD6 => array(0x6AD), + 0xFBD7 => array(0x6C7), 0xFBD8 => array(0x6C7), 0xFBD9 => array(0x6C6), + 0xFBDA => array(0x6C6), 0xFBDB => array(0x6C8), 0xFBDC => array(0x6C8), + 0xFBDD => array(0x6C7, 0x674), 0xFBDE => array(0x6CB), 0xFBDF => array(0x6CB), + 0xFBE0 => array(0x6C5), 0xFBE1 => array(0x6C5), 0xFBE2 => array(0x6C9), + 0xFBE3 => array(0x6C9), 0xFBE4 => array(0x6D0), 0xFBE5 => array(0x6D0), + 0xFBE6 => array(0x6D0), 0xFBE7 => array(0x6D0), 0xFBE8 => array(0x649), + 0xFBE9 => array(0x649), 0xFBEA => array(0x626, 0x627), 0xFBEB => array(0x626, 0x627), + 0xFBEC => array(0x626, 0x6D5), 0xFBED => array(0x626, 0x6D5), 0xFBEE => array(0x626, 0x648), + 0xFBEF => array(0x626, 0x648), 0xFBF0 => array(0x626, 0x6C7), 0xFBF1 => array(0x626, 0x6C7), + 0xFBF2 => array(0x626, 0x6C6), 0xFBF3 => array(0x626, 0x6C6), 0xFBF4 => array(0x626, 0x6C8), + 0xFBF5 => array(0x626, 0x6C8), 0xFBF6 => array(0x626, 0x6D0), 0xFBF7 => array(0x626, 0x6D0), + 0xFBF8 => array(0x626, 0x6D0), 0xFBF9 => array(0x626, 0x649), 0xFBFA => array(0x626, 0x649), + 0xFBFB => array(0x626, 0x649), 0xFBFC => array(0x6CC), 0xFBFD => array(0x6CC), + 0xFBFE => array(0x6CC), 0xFBFF => array(0x6CC), 0xFC00 => array(0x626, 0x62C), + 0xFC01 => array(0x626, 0x62D), 0xFC02 => array(0x626, 0x645), 0xFC03 => array(0x626, 0x649), + 0xFC04 => array(0x626, 0x64A), 0xFC05 => array(0x628, 0x62C), 0xFC06 => array(0x628, 0x62D), + 0xFC07 => array(0x628, 0x62E), 0xFC08 => array(0x628, 0x645), 0xFC09 => array(0x628, 0x649), + 0xFC0A => array(0x628, 0x64A), 0xFC0B => array(0x62A, 0x62C), 0xFC0C => array(0x62A, 0x62D), + 0xFC0D => array(0x62A, 0x62E), 0xFC0E => array(0x62A, 0x645), 0xFC0F => array(0x62A, 0x649), + 0xFC10 => array(0x62A, 0x64A), 0xFC11 => array(0x62B, 0x62C), 0xFC12 => array(0x62B, 0x645), + 0xFC13 => array(0x62B, 0x649), 0xFC14 => array(0x62B, 0x64A), 0xFC15 => array(0x62C, 0x62D), + 0xFC16 => array(0x62C, 0x645), 0xFC17 => array(0x62D, 0x62C), 0xFC18 => array(0x62D, 0x645), + 0xFC19 => array(0x62E, 0x62C), 0xFC1A => array(0x62E, 0x62D), 0xFC1B => array(0x62E, 0x645), + 0xFC1C => array(0x633, 0x62C), 0xFC1D => array(0x633, 0x62D), 0xFC1E => array(0x633, 0x62E), + 0xFC1F => array(0x633, 0x645), 0xFC20 => array(0x635, 0x62D), 0xFC21 => array(0x635, 0x645), + 0xFC22 => array(0x636, 0x62C), 0xFC23 => array(0x636, 0x62D), 0xFC24 => array(0x636, 0x62E), + 0xFC25 => array(0x636, 0x645), 0xFC26 => array(0x637, 0x62D), 0xFC27 => array(0x637, 0x645), + 0xFC28 => array(0x638, 0x645), 0xFC29 => array(0x639, 0x62C), 0xFC2A => array(0x639, 0x645), + 0xFC2B => array(0x63A, 0x62C), 0xFC2C => array(0x63A, 0x645), 0xFC2D => array(0x641, 0x62C), + 0xFC2E => array(0x641, 0x62D), 0xFC2F => array(0x641, 0x62E), 0xFC30 => array(0x641, 0x645), + 0xFC31 => array(0x641, 0x649), 0xFC32 => array(0x641, 0x64A), 0xFC33 => array(0x642, 0x62D), + 0xFC34 => array(0x642, 0x645), 0xFC35 => array(0x642, 0x649), 0xFC36 => array(0x642, 0x64A), + 0xFC37 => array(0x643, 0x627), 0xFC38 => array(0x643, 0x62C), 0xFC39 => array(0x643, 0x62D), + 0xFC3A => array(0x643, 0x62E), 0xFC3B => array(0x643, 0x644), 0xFC3C => array(0x643, 0x645), + 0xFC3D => array(0x643, 0x649), 0xFC3E => array(0x643, 0x64A), 0xFC3F => array(0x644, 0x62C), + 0xFC40 => array(0x644, 0x62D), 0xFC41 => array(0x644, 0x62E), 0xFC42 => array(0x644, 0x645), + 0xFC43 => array(0x644, 0x649), 0xFC44 => array(0x644, 0x64A), 0xFC45 => array(0x645, 0x62C), + 0xFC46 => array(0x645, 0x62D), 0xFC47 => array(0x645, 0x62E), 0xFC48 => array(0x645, 0x645), + 0xFC49 => array(0x645, 0x649), 0xFC4A => array(0x645, 0x64A), 0xFC4B => array(0x646, 0x62C), + 0xFC4C => array(0x646, 0x62D), 0xFC4D => array(0x646, 0x62E), 0xFC4E => array(0x646, 0x645), + 0xFC4F => array(0x646, 0x649), 0xFC50 => array(0x646, 0x64A), 0xFC51 => array(0x647, 0x62C), + 0xFC52 => array(0x647, 0x645), 0xFC53 => array(0x647, 0x649), 0xFC54 => array(0x647, 0x64A), + 0xFC55 => array(0x64A, 0x62C), 0xFC56 => array(0x64A, 0x62D), 0xFC57 => array(0x64A, 0x62E), + 0xFC58 => array(0x64A, 0x645), 0xFC59 => array(0x64A, 0x649), 0xFC5A => array(0x64A, 0x64A), + 0xFC5B => array(0x630, 0x670), 0xFC5C => array(0x631, 0x670), 0xFC5D => array(0x649, 0x670), + 0xFC64 => array(0x626, 0x631), 0xFC65 => array(0x626, 0x632), 0xFC66 => array(0x626, 0x645), + 0xFC67 => array(0x626, 0x646), 0xFC68 => array(0x626, 0x649), 0xFC69 => array(0x626, 0x64A), + 0xFC6A => array(0x628, 0x631), 0xFC6B => array(0x628, 0x632), 0xFC6C => array(0x628, 0x645), + 0xFC6D => array(0x628, 0x646), 0xFC6E => array(0x628, 0x649), 0xFC6F => array(0x628, 0x64A), + 0xFC70 => array(0x62A, 0x631), 0xFC71 => array(0x62A, 0x632), 0xFC72 => array(0x62A, 0x645), + 0xFC73 => array(0x62A, 0x646), 0xFC74 => array(0x62A, 0x649), 0xFC75 => array(0x62A, 0x64A), + 0xFC76 => array(0x62B, 0x631), 0xFC77 => array(0x62B, 0x632), 0xFC78 => array(0x62B, 0x645), + 0xFC79 => array(0x62B, 0x646), 0xFC7A => array(0x62B, 0x649), 0xFC7B => array(0x62B, 0x64A), + 0xFC7C => array(0x641, 0x649), 0xFC7D => array(0x641, 0x64A), 0xFC7E => array(0x642, 0x649), + 0xFC7F => array(0x642, 0x64A), 0xFC80 => array(0x643, 0x627), 0xFC81 => array(0x643, 0x644), + 0xFC82 => array(0x643, 0x645), 0xFC83 => array(0x643, 0x649), 0xFC84 => array(0x643, 0x64A), + 0xFC85 => array(0x644, 0x645), 0xFC86 => array(0x644, 0x649), 0xFC87 => array(0x644, 0x64A), + 0xFC88 => array(0x645, 0x627), 0xFC89 => array(0x645, 0x645), 0xFC8A => array(0x646, 0x631), + 0xFC8B => array(0x646, 0x632), 0xFC8C => array(0x646, 0x645), 0xFC8D => array(0x646, 0x646), + 0xFC8E => array(0x646, 0x649), 0xFC8F => array(0x646, 0x64A), 0xFC90 => array(0x649, 0x670), + 0xFC91 => array(0x64A, 0x631), 0xFC92 => array(0x64A, 0x632), 0xFC93 => array(0x64A, 0x645), + 0xFC94 => array(0x64A, 0x646), 0xFC95 => array(0x64A, 0x649), 0xFC96 => array(0x64A, 0x64A), + 0xFC97 => array(0x626, 0x62C), 0xFC98 => array(0x626, 0x62D), 0xFC99 => array(0x626, 0x62E), + 0xFC9A => array(0x626, 0x645), 0xFC9B => array(0x626, 0x647), 0xFC9C => array(0x628, 0x62C), + 0xFC9D => array(0x628, 0x62D), 0xFC9E => array(0x628, 0x62E), 0xFC9F => array(0x628, 0x645), + 0xFCA0 => array(0x628, 0x647), 0xFCA1 => array(0x62A, 0x62C), 0xFCA2 => array(0x62A, 0x62D), + 0xFCA3 => array(0x62A, 0x62E), 0xFCA4 => array(0x62A, 0x645), 0xFCA5 => array(0x62A, 0x647), + 0xFCA6 => array(0x62B, 0x645), 0xFCA7 => array(0x62C, 0x62D), 0xFCA8 => array(0x62C, 0x645), + 0xFCA9 => array(0x62D, 0x62C), 0xFCAA => array(0x62D, 0x645), 0xFCAB => array(0x62E, 0x62C), + 0xFCAC => array(0x62E, 0x645), 0xFCAD => array(0x633, 0x62C), 0xFCAE => array(0x633, 0x62D), + 0xFCAF => array(0x633, 0x62E), 0xFCB0 => array(0x633, 0x645), 0xFCB1 => array(0x635, 0x62D), + 0xFCB2 => array(0x635, 0x62E), 0xFCB3 => array(0x635, 0x645), 0xFCB4 => array(0x636, 0x62C), + 0xFCB5 => array(0x636, 0x62D), 0xFCB6 => array(0x636, 0x62E), 0xFCB7 => array(0x636, 0x645), + 0xFCB8 => array(0x637, 0x62D), 0xFCB9 => array(0x638, 0x645), 0xFCBA => array(0x639, 0x62C), + 0xFCBB => array(0x639, 0x645), 0xFCBC => array(0x63A, 0x62C), 0xFCBD => array(0x63A, 0x645), + 0xFCBE => array(0x641, 0x62C), 0xFCBF => array(0x641, 0x62D), 0xFCC0 => array(0x641, 0x62E), + 0xFCC1 => array(0x641, 0x645), 0xFCC2 => array(0x642, 0x62D), 0xFCC3 => array(0x642, 0x645), + 0xFCC4 => array(0x643, 0x62C), 0xFCC5 => array(0x643, 0x62D), 0xFCC6 => array(0x643, 0x62E), + 0xFCC7 => array(0x643, 0x644), 0xFCC8 => array(0x643, 0x645), 0xFCC9 => array(0x644, 0x62C), + 0xFCCA => array(0x644, 0x62D), 0xFCCB => array(0x644, 0x62E), 0xFCCC => array(0x644, 0x645), + 0xFCCD => array(0x644, 0x647), 0xFCCE => array(0x645, 0x62C), 0xFCCF => array(0x645, 0x62D), + 0xFCD0 => array(0x645, 0x62E), 0xFCD1 => array(0x645, 0x645), 0xFCD2 => array(0x646, 0x62C), + 0xFCD3 => array(0x646, 0x62D), 0xFCD4 => array(0x646, 0x62E), 0xFCD5 => array(0x646, 0x645), + 0xFCD6 => array(0x646, 0x647), 0xFCD7 => array(0x647, 0x62C), 0xFCD8 => array(0x647, 0x645), + 0xFCD9 => array(0x647, 0x670), 0xFCDA => array(0x64A, 0x62C), 0xFCDB => array(0x64A, 0x62D), + 0xFCDC => array(0x64A, 0x62E), 0xFCDD => array(0x64A, 0x645), 0xFCDE => array(0x64A, 0x647), + 0xFCDF => array(0x626, 0x645), 0xFCE0 => array(0x626, 0x647), 0xFCE1 => array(0x628, 0x645), + 0xFCE2 => array(0x628, 0x647), 0xFCE3 => array(0x62A, 0x645), 0xFCE4 => array(0x62A, 0x647), + 0xFCE5 => array(0x62B, 0x645), 0xFCE6 => array(0x62B, 0x647), 0xFCE7 => array(0x633, 0x645), + 0xFCE8 => array(0x633, 0x647), 0xFCE9 => array(0x634, 0x645), 0xFCEA => array(0x634, 0x647), + 0xFCEB => array(0x643, 0x644), 0xFCEC => array(0x643, 0x645), 0xFCED => array(0x644, 0x645), + 0xFCEE => array(0x646, 0x645), 0xFCEF => array(0x646, 0x647), 0xFCF0 => array(0x64A, 0x645), + 0xFCF1 => array(0x64A, 0x647), 0xFCF2 => array(0x640, 0x64E, 0x651), 0xFCF3 => array(0x640, 0x64F, 0x651), + 0xFCF4 => array(0x640, 0x650, 0x651), 0xFCF5 => array(0x637, 0x649), 0xFCF6 => array(0x637, 0x64A), + 0xFCF7 => array(0x639, 0x649), 0xFCF8 => array(0x639, 0x64A), 0xFCF9 => array(0x63A, 0x649), + 0xFCFA => array(0x63A, 0x64A), 0xFCFB => array(0x633, 0x649), 0xFCFC => array(0x633, 0x64A), + 0xFCFD => array(0x634, 0x649), 0xFCFE => array(0x634, 0x64A), 0xFCFF => array(0x62D, 0x649), + 0xFD00 => array(0x62D, 0x64A), 0xFD01 => array(0x62C, 0x649), 0xFD02 => array(0x62C, 0x64A), + 0xFD03 => array(0x62E, 0x649), 0xFD04 => array(0x62E, 0x64A), 0xFD05 => array(0x635, 0x649), + 0xFD06 => array(0x635, 0x64A), 0xFD07 => array(0x636, 0x649), 0xFD08 => array(0x636, 0x64A), + 0xFD09 => array(0x634, 0x62C), 0xFD0A => array(0x634, 0x62D), 0xFD0B => array(0x634, 0x62E), + 0xFD0C => array(0x634, 0x645), 0xFD0D => array(0x634, 0x631), 0xFD0E => array(0x633, 0x631), + 0xFD0F => array(0x635, 0x631), 0xFD10 => array(0x636, 0x631), 0xFD11 => array(0x637, 0x649), + 0xFD12 => array(0x637, 0x64A), 0xFD13 => array(0x639, 0x649), 0xFD14 => array(0x639, 0x64A), + 0xFD15 => array(0x63A, 0x649), 0xFD16 => array(0x63A, 0x64A), 0xFD17 => array(0x633, 0x649), + 0xFD18 => array(0x633, 0x64A), 0xFD19 => array(0x634, 0x649), 0xFD1A => array(0x634, 0x64A), + 0xFD1B => array(0x62D, 0x649), 0xFD1C => array(0x62D, 0x64A), 0xFD1D => array(0x62C, 0x649), + 0xFD1E => array(0x62C, 0x64A), 0xFD1F => array(0x62E, 0x649), 0xFD20 => array(0x62E, 0x64A), + 0xFD21 => array(0x635, 0x649), 0xFD22 => array(0x635, 0x64A), 0xFD23 => array(0x636, 0x649), + 0xFD24 => array(0x636, 0x64A), 0xFD25 => array(0x634, 0x62C), 0xFD26 => array(0x634, 0x62D), + 0xFD27 => array(0x634, 0x62E), 0xFD28 => array(0x634, 0x645), 0xFD29 => array(0x634, 0x631), + 0xFD2A => array(0x633, 0x631), 0xFD2B => array(0x635, 0x631), 0xFD2C => array(0x636, 0x631), + 0xFD2D => array(0x634, 0x62C), 0xFD2E => array(0x634, 0x62D), 0xFD2F => array(0x634, 0x62E), + 0xFD30 => array(0x634, 0x645), 0xFD31 => array(0x633, 0x647), 0xFD32 => array(0x634, 0x647), + 0xFD33 => array(0x637, 0x645), 0xFD34 => array(0x633, 0x62C), 0xFD35 => array(0x633, 0x62D), + 0xFD36 => array(0x633, 0x62E), 0xFD37 => array(0x634, 0x62C), 0xFD38 => array(0x634, 0x62D), + 0xFD39 => array(0x634, 0x62E), 0xFD3A => array(0x637, 0x645), 0xFD3B => array(0x638, 0x645), + 0xFD3C => array(0x627, 0x64B), 0xFD3D => array(0x627, 0x64B), 0xFD50 => array(0x62A, 0x62C, 0x645), + 0xFD51 => array(0x62A, 0x62D, 0x62C), 0xFD52 => array(0x62A, 0x62D, 0x62C), 0xFD53 => array(0x62A, 0x62D, 0x645), + 0xFD54 => array(0x62A, 0x62E, 0x645), 0xFD55 => array(0x62A, 0x645, 0x62C), 0xFD56 => array(0x62A, 0x645, 0x62D), + 0xFD57 => array(0x62A, 0x645, 0x62E), 0xFD58 => array(0x62C, 0x645, 0x62D), 0xFD59 => array(0x62C, 0x645, 0x62D), + 0xFD5A => array(0x62D, 0x645, 0x64A), 0xFD5B => array(0x62D, 0x645, 0x649), 0xFD5C => array(0x633, 0x62D, 0x62C), + 0xFD5D => array(0x633, 0x62C, 0x62D), 0xFD5E => array(0x633, 0x62C, 0x649), 0xFD5F => array(0x633, 0x645, 0x62D), + 0xFD60 => array(0x633, 0x645, 0x62D), 0xFD61 => array(0x633, 0x645, 0x62C), 0xFD62 => array(0x633, 0x645, 0x645), + 0xFD63 => array(0x633, 0x645, 0x645), 0xFD64 => array(0x635, 0x62D, 0x62D), 0xFD65 => array(0x635, 0x62D, 0x62D), + 0xFD66 => array(0x635, 0x645, 0x645), 0xFD67 => array(0x634, 0x62D, 0x645), 0xFD68 => array(0x634, 0x62D, 0x645), + 0xFD69 => array(0x634, 0x62C, 0x64A), 0xFD6A => array(0x634, 0x645, 0x62E), 0xFD6B => array(0x634, 0x645, 0x62E), + 0xFD6C => array(0x634, 0x645, 0x645), 0xFD6D => array(0x634, 0x645, 0x645), 0xFD6E => array(0x636, 0x62D, 0x649), + 0xFD6F => array(0x636, 0x62E, 0x645), 0xFD70 => array(0x636, 0x62E, 0x645), 0xFD71 => array(0x637, 0x645, 0x62D), + 0xFD72 => array(0x637, 0x645, 0x62D), 0xFD73 => array(0x637, 0x645, 0x645), 0xFD74 => array(0x637, 0x645, 0x64A), + 0xFD75 => array(0x639, 0x62C, 0x645), 0xFD76 => array(0x639, 0x645, 0x645), 0xFD77 => array(0x639, 0x645, 0x645), + 0xFD78 => array(0x639, 0x645, 0x649), 0xFD79 => array(0x63A, 0x645, 0x645), 0xFD7A => array(0x63A, 0x645, 0x64A), + 0xFD7B => array(0x63A, 0x645, 0x649), 0xFD7C => array(0x641, 0x62E, 0x645), 0xFD7D => array(0x641, 0x62E, 0x645), + 0xFD7E => array(0x642, 0x645, 0x62D), 0xFD7F => array(0x642, 0x645, 0x645), 0xFD80 => array(0x644, 0x62D, 0x645), + 0xFD81 => array(0x644, 0x62D, 0x64A), 0xFD82 => array(0x644, 0x62D, 0x649), 0xFD83 => array(0x644, 0x62C, 0x62C), + 0xFD84 => array(0x644, 0x62C, 0x62C), 0xFD85 => array(0x644, 0x62E, 0x645), 0xFD86 => array(0x644, 0x62E, 0x645), + 0xFD87 => array(0x644, 0x645, 0x62D), 0xFD88 => array(0x644, 0x645, 0x62D), 0xFD89 => array(0x645, 0x62D, 0x62C), + 0xFD8A => array(0x645, 0x62D, 0x645), 0xFD8B => array(0x645, 0x62D, 0x64A), 0xFD8C => array(0x645, 0x62C, 0x62D), + 0xFD8D => array(0x645, 0x62C, 0x645), 0xFD8E => array(0x645, 0x62E, 0x62C), 0xFD8F => array(0x645, 0x62E, 0x645), + 0xFD92 => array(0x645, 0x62C, 0x62E), 0xFD93 => array(0x647, 0x645, 0x62C), 0xFD94 => array(0x647, 0x645, 0x645), + 0xFD95 => array(0x646, 0x62D, 0x645), 0xFD96 => array(0x646, 0x62D, 0x649), 0xFD97 => array(0x646, 0x62C, 0x645), + 0xFD98 => array(0x646, 0x62C, 0x645), 0xFD99 => array(0x646, 0x62C, 0x649), 0xFD9A => array(0x646, 0x645, 0x64A), + 0xFD9B => array(0x646, 0x645, 0x649), 0xFD9C => array(0x64A, 0x645, 0x645), 0xFD9D => array(0x64A, 0x645, 0x645), + 0xFD9E => array(0x628, 0x62E, 0x64A), 0xFD9F => array(0x62A, 0x62C, 0x64A), 0xFDA0 => array(0x62A, 0x62C, 0x649), + 0xFDA1 => array(0x62A, 0x62E, 0x64A), 0xFDA2 => array(0x62A, 0x62E, 0x649), 0xFDA3 => array(0x62A, 0x645, 0x64A), + 0xFDA4 => array(0x62A, 0x645, 0x649), 0xFDA5 => array(0x62C, 0x645, 0x64A), 0xFDA6 => array(0x62C, 0x62D, 0x649), + 0xFDA7 => array(0x62C, 0x645, 0x649), 0xFDA8 => array(0x633, 0x62E, 0x649), 0xFDA9 => array(0x635, 0x62D, 0x64A), + 0xFDAA => array(0x634, 0x62D, 0x64A), 0xFDAB => array(0x636, 0x62D, 0x64A), 0xFDAC => array(0x644, 0x62C, 0x64A), + 0xFDAD => array(0x644, 0x645, 0x64A), 0xFDAE => array(0x64A, 0x62D, 0x64A), 0xFDAF => array(0x64A, 0x62C, 0x64A), + 0xFDB0 => array(0x64A, 0x645, 0x64A), 0xFDB1 => array(0x645, 0x645, 0x64A), 0xFDB2 => array(0x642, 0x645, 0x64A), + 0xFDB3 => array(0x646, 0x62D, 0x64A), 0xFDB4 => array(0x642, 0x645, 0x62D), 0xFDB5 => array(0x644, 0x62D, 0x645), + 0xFDB6 => array(0x639, 0x645, 0x64A), 0xFDB7 => array(0x643, 0x645, 0x64A), 0xFDB8 => array(0x646, 0x62C, 0x62D), + 0xFDB9 => array(0x645, 0x62E, 0x64A), 0xFDBA => array(0x644, 0x62C, 0x645), 0xFDBB => array(0x643, 0x645, 0x645), + 0xFDBC => array(0x644, 0x62C, 0x645), 0xFDBD => array(0x646, 0x62C, 0x62D), 0xFDBE => array(0x62C, 0x62D, 0x64A), + 0xFDBF => array(0x62D, 0x62C, 0x64A), 0xFDC0 => array(0x645, 0x62C, 0x64A), 0xFDC1 => array(0x641, 0x645, 0x64A), + 0xFDC2 => array(0x628, 0x62D, 0x64A), 0xFDC3 => array(0x643, 0x645, 0x645), 0xFDC4 => array(0x639, 0x62C, 0x645), + 0xFDC5 => array(0x635, 0x645, 0x645), 0xFDC6 => array(0x633, 0x62E, 0x64A), 0xFDC7 => array(0x646, 0x62C, 0x64A), + 0xFDF0 => array(0x635, 0x644, 0x6D2), 0xFDF1 => array(0x642, 0x644, 0x6D2), 0xFDF2 => array(0x627, 0x644, 0x644, 0x647), + 0xFDF3 => array(0x627, 0x643, 0x628, 0x631), 0xFDF4 => array(0x645, 0x62D, 0x645, 0x62F), 0xFDF5 => array(0x635, 0x644, 0x639, 0x645), + 0xFDF6 => array(0x631, 0x633, 0x648, 0x644), 0xFDF7 => array(0x639, 0x644, 0x64A, 0x647), 0xFDF8 => array(0x648, 0x633, 0x644, 0x645), + 0xFDF9 => array(0x635, 0x644, 0x649), 0xFDFC => array(0x631, 0x6CC, 0x627, 0x644), 0xFE11 => array(0x3001), + 0xFE17 => array(0x3016), 0xFE18 => array(0x3017), 0xFE31 => array(0x2014), + 0xFE32 => array(0x2013), 0xFE39 => array(0x3014), 0xFE3A => array(0x3015), + 0xFE3B => array(0x3010), 0xFE3C => array(0x3011), 0xFE3D => array(0x300A), + 0xFE3E => array(0x300B), 0xFE3F => array(0x3008), 0xFE40 => array(0x3009), + 0xFE41 => array(0x300C), 0xFE42 => array(0x300D), 0xFE43 => array(0x300E), + 0xFE44 => array(0x300F), 0xFE51 => array(0x3001), 0xFE58 => array(0x2014), + 0xFE5D => array(0x3014), 0xFE5E => array(0x3015), 0xFE63 => array(0x2D), + 0xFE71 => array(0x640, 0x64B), 0xFE77 => array(0x640, 0x64E), 0xFE79 => array(0x640, 0x64F), + 0xFE7B => array(0x640, 0x650), 0xFE7D => array(0x640, 0x651), 0xFE7F => array(0x640, 0x652), + 0xFE80 => array(0x621), 0xFE81 => array(0x622), 0xFE82 => array(0x622), + 0xFE83 => array(0x623), 0xFE84 => array(0x623), 0xFE85 => array(0x624), + 0xFE86 => array(0x624), 0xFE87 => array(0x625), 0xFE88 => array(0x625), + 0xFE89 => array(0x626), 0xFE8A => array(0x626), 0xFE8B => array(0x626), + 0xFE8C => array(0x626), 0xFE8D => array(0x627), 0xFE8E => array(0x627), + 0xFE8F => array(0x628), 0xFE90 => array(0x628), 0xFE91 => array(0x628), + 0xFE92 => array(0x628), 0xFE93 => array(0x629), 0xFE94 => array(0x629), + 0xFE95 => array(0x62A), 0xFE96 => array(0x62A), 0xFE97 => array(0x62A), + 0xFE98 => array(0x62A), 0xFE99 => array(0x62B), 0xFE9A => array(0x62B), + 0xFE9B => array(0x62B), 0xFE9C => array(0x62B), 0xFE9D => array(0x62C), + 0xFE9E => array(0x62C), 0xFE9F => array(0x62C), 0xFEA0 => array(0x62C), + 0xFEA1 => array(0x62D), 0xFEA2 => array(0x62D), 0xFEA3 => array(0x62D), + 0xFEA4 => array(0x62D), 0xFEA5 => array(0x62E), 0xFEA6 => array(0x62E), + 0xFEA7 => array(0x62E), 0xFEA8 => array(0x62E), 0xFEA9 => array(0x62F), + 0xFEAA => array(0x62F), 0xFEAB => array(0x630), 0xFEAC => array(0x630), + 0xFEAD => array(0x631), 0xFEAE => array(0x631), 0xFEAF => array(0x632), + 0xFEB0 => array(0x632), 0xFEB1 => array(0x633), 0xFEB2 => array(0x633), + 0xFEB3 => array(0x633), 0xFEB4 => array(0x633), 0xFEB5 => array(0x634), + 0xFEB6 => array(0x634), 0xFEB7 => array(0x634), 0xFEB8 => array(0x634), + 0xFEB9 => array(0x635), 0xFEBA => array(0x635), 0xFEBB => array(0x635), + 0xFEBC => array(0x635), 0xFEBD => array(0x636), 0xFEBE => array(0x636), + 0xFEBF => array(0x636), 0xFEC0 => array(0x636), 0xFEC1 => array(0x637), + 0xFEC2 => array(0x637), 0xFEC3 => array(0x637), 0xFEC4 => array(0x637), + 0xFEC5 => array(0x638), 0xFEC6 => array(0x638), 0xFEC7 => array(0x638), + 0xFEC8 => array(0x638), 0xFEC9 => array(0x639), 0xFECA => array(0x639), + 0xFECB => array(0x639), 0xFECC => array(0x639), 0xFECD => array(0x63A), + 0xFECE => array(0x63A), 0xFECF => array(0x63A), 0xFED0 => array(0x63A), + 0xFED1 => array(0x641), 0xFED2 => array(0x641), 0xFED3 => array(0x641), + 0xFED4 => array(0x641), 0xFED5 => array(0x642), 0xFED6 => array(0x642), + 0xFED7 => array(0x642), 0xFED8 => array(0x642), 0xFED9 => array(0x643), + 0xFEDA => array(0x643), 0xFEDB => array(0x643), 0xFEDC => array(0x643), + 0xFEDD => array(0x644), 0xFEDE => array(0x644), 0xFEDF => array(0x644), + 0xFEE0 => array(0x644), 0xFEE1 => array(0x645), 0xFEE2 => array(0x645), + 0xFEE3 => array(0x645), 0xFEE4 => array(0x645), 0xFEE5 => array(0x646), + 0xFEE6 => array(0x646), 0xFEE7 => array(0x646), 0xFEE8 => array(0x646), + 0xFEE9 => array(0x647), 0xFEEA => array(0x647), 0xFEEB => array(0x647), + 0xFEEC => array(0x647), 0xFEED => array(0x648), 0xFEEE => array(0x648), + 0xFEEF => array(0x649), 0xFEF0 => array(0x649), 0xFEF1 => array(0x64A), + 0xFEF2 => array(0x64A), 0xFEF3 => array(0x64A), 0xFEF4 => array(0x64A), + 0xFEF5 => array(0x644, 0x622), 0xFEF6 => array(0x644, 0x622), 0xFEF7 => array(0x644, 0x623), + 0xFEF8 => array(0x644, 0x623), 0xFEF9 => array(0x644, 0x625), 0xFEFA => array(0x644, 0x625), + 0xFEFB => array(0x644, 0x627), 0xFEFC => array(0x644, 0x627), 0xFF0D => array(0x2D), + 0xFF0E => array(0x2E), 0xFF10 => array(0x30), 0xFF11 => array(0x31), + 0xFF12 => array(0x32), 0xFF13 => array(0x33), 0xFF14 => array(0x34), + 0xFF15 => array(0x35), 0xFF16 => array(0x36), 0xFF17 => array(0x37), + 0xFF18 => array(0x38), 0xFF19 => array(0x39), 0xFF21 => array(0x61), + 0xFF22 => array(0x62), 0xFF23 => array(0x63), 0xFF24 => array(0x64), + 0xFF25 => array(0x65), 0xFF26 => array(0x66), 0xFF27 => array(0x67), + 0xFF28 => array(0x68), 0xFF29 => array(0x69), 0xFF2A => array(0x6A), + 0xFF2B => array(0x6B), 0xFF2C => array(0x6C), 0xFF2D => array(0x6D), + 0xFF2E => array(0x6E), 0xFF2F => array(0x6F), 0xFF30 => array(0x70), + 0xFF31 => array(0x71), 0xFF32 => array(0x72), 0xFF33 => array(0x73), + 0xFF34 => array(0x74), 0xFF35 => array(0x75), 0xFF36 => array(0x76), + 0xFF37 => array(0x77), 0xFF38 => array(0x78), 0xFF39 => array(0x79), + 0xFF3A => array(0x7A), 0xFF41 => array(0x61), 0xFF42 => array(0x62), + 0xFF43 => array(0x63), 0xFF44 => array(0x64), 0xFF45 => array(0x65), + 0xFF46 => array(0x66), 0xFF47 => array(0x67), 0xFF48 => array(0x68), + 0xFF49 => array(0x69), 0xFF4A => array(0x6A), 0xFF4B => array(0x6B), + 0xFF4C => array(0x6C), 0xFF4D => array(0x6D), 0xFF4E => array(0x6E), + 0xFF4F => array(0x6F), 0xFF50 => array(0x70), 0xFF51 => array(0x71), + 0xFF52 => array(0x72), 0xFF53 => array(0x73), 0xFF54 => array(0x74), + 0xFF55 => array(0x75), 0xFF56 => array(0x76), 0xFF57 => array(0x77), + 0xFF58 => array(0x78), 0xFF59 => array(0x79), 0xFF5A => array(0x7A), + 0xFF5F => array(0x2985), 0xFF60 => array(0x2986), 0xFF61 => array(0x2E), + 0xFF62 => array(0x300C), 0xFF63 => array(0x300D), 0xFF64 => array(0x3001), + 0xFF65 => array(0x30FB), 0xFF66 => array(0x30F2), 0xFF67 => array(0x30A1), + 0xFF68 => array(0x30A3), 0xFF69 => array(0x30A5), 0xFF6A => array(0x30A7), + 0xFF6B => array(0x30A9), 0xFF6C => array(0x30E3), 0xFF6D => array(0x30E5), + 0xFF6E => array(0x30E7), 0xFF6F => array(0x30C3), 0xFF70 => array(0x30FC), + 0xFF71 => array(0x30A2), 0xFF72 => array(0x30A4), 0xFF73 => array(0x30A6), + 0xFF74 => array(0x30A8), 0xFF75 => array(0x30AA), 0xFF76 => array(0x30AB), + 0xFF77 => array(0x30AD), 0xFF78 => array(0x30AF), 0xFF79 => array(0x30B1), + 0xFF7A => array(0x30B3), 0xFF7B => array(0x30B5), 0xFF7C => array(0x30B7), + 0xFF7D => array(0x30B9), 0xFF7E => array(0x30BB), 0xFF7F => array(0x30BD), + 0xFF80 => array(0x30BF), 0xFF81 => array(0x30C1), 0xFF82 => array(0x30C4), + 0xFF83 => array(0x30C6), 0xFF84 => array(0x30C8), 0xFF85 => array(0x30CA), + 0xFF86 => array(0x30CB), 0xFF87 => array(0x30CC), 0xFF88 => array(0x30CD), + 0xFF89 => array(0x30CE), 0xFF8A => array(0x30CF), 0xFF8B => array(0x30D2), + 0xFF8C => array(0x30D5), 0xFF8D => array(0x30D8), 0xFF8E => array(0x30DB), + 0xFF8F => array(0x30DE), 0xFF90 => array(0x30DF), 0xFF91 => array(0x30E0), + 0xFF92 => array(0x30E1), 0xFF93 => array(0x30E2), 0xFF94 => array(0x30E4), + 0xFF95 => array(0x30E6), 0xFF96 => array(0x30E8), 0xFF97 => array(0x30E9), + 0xFF98 => array(0x30EA), 0xFF99 => array(0x30EB), 0xFF9A => array(0x30EC), + 0xFF9B => array(0x30ED), 0xFF9C => array(0x30EF), 0xFF9D => array(0x30F3), + 0xFF9E => array(0x3099), 0xFF9F => array(0x309A), 0xFFA1 => array(0x1100), + 0xFFA2 => array(0x1101), 0xFFA3 => array(0x11AA), 0xFFA4 => array(0x1102), + 0xFFA5 => array(0x11AC), 0xFFA6 => array(0x11AD), 0xFFA7 => array(0x1103), + 0xFFA8 => array(0x1104), 0xFFA9 => array(0x1105), 0xFFAA => array(0x11B0), + 0xFFAB => array(0x11B1), 0xFFAC => array(0x11B2), 0xFFAD => array(0x11B3), + 0xFFAE => array(0x11B4), 0xFFAF => array(0x11B5), 0xFFB0 => array(0x111A), + 0xFFB1 => array(0x1106), 0xFFB2 => array(0x1107), 0xFFB3 => array(0x1108), + 0xFFB4 => array(0x1121), 0xFFB5 => array(0x1109), 0xFFB6 => array(0x110A), + 0xFFB7 => array(0x110B), 0xFFB8 => array(0x110C), 0xFFB9 => array(0x110D), + 0xFFBA => array(0x110E), 0xFFBB => array(0x110F), 0xFFBC => array(0x1110), + 0xFFBD => array(0x1111), 0xFFBE => array(0x1112), 0xFFC2 => array(0x1161), + 0xFFC3 => array(0x1162), 0xFFC4 => array(0x1163), 0xFFC5 => array(0x1164), + 0xFFC6 => array(0x1165), 0xFFC7 => array(0x1166), 0xFFCA => array(0x1167), + 0xFFCB => array(0x1168), 0xFFCC => array(0x1169), 0xFFCD => array(0x116A), + 0xFFCE => array(0x116B), 0xFFCF => array(0x116C), 0xFFD2 => array(0x116D), + 0xFFD3 => array(0x116E), 0xFFD4 => array(0x116F), 0xFFD5 => array(0x1170), + 0xFFD6 => array(0x1171), 0xFFD7 => array(0x1172), 0xFFDA => array(0x1173), + 0xFFDB => array(0x1174), 0xFFDC => array(0x1175), 0xFFE0 => array(0xA2), + 0xFFE1 => array(0xA3), 0xFFE2 => array(0xAC), 0xFFE4 => array(0xA6), + 0xFFE5 => array(0xA5), 0xFFE6 => array(0x20A9), 0xFFE8 => array(0x2502), + 0xFFE9 => array(0x2190), 0xFFEA => array(0x2191), 0xFFEB => array(0x2192), + 0xFFEC => array(0x2193), 0xFFED => array(0x25A0), 0xFFEE => array(0x25CB), + 0x10400 => array(0x10428), 0x10401 => array(0x10429), 0x10402 => array(0x1042A), + 0x10403 => array(0x1042B), 0x10404 => array(0x1042C), 0x10405 => array(0x1042D), + 0x10406 => array(0x1042E), 0x10407 => array(0x1042F), 0x10408 => array(0x10430), + 0x10409 => array(0x10431), 0x1040A => array(0x10432), 0x1040B => array(0x10433), + 0x1040C => array(0x10434), 0x1040D => array(0x10435), 0x1040E => array(0x10436), + 0x1040F => array(0x10437), 0x10410 => array(0x10438), 0x10411 => array(0x10439), + 0x10412 => array(0x1043A), 0x10413 => array(0x1043B), 0x10414 => array(0x1043C), + 0x10415 => array(0x1043D), 0x10416 => array(0x1043E), 0x10417 => array(0x1043F), + 0x10418 => array(0x10440), 0x10419 => array(0x10441), 0x1041A => array(0x10442), + 0x1041B => array(0x10443), 0x1041C => array(0x10444), 0x1041D => array(0x10445), + 0x1041E => array(0x10446), 0x1041F => array(0x10447), 0x10420 => array(0x10448), + 0x10421 => array(0x10449), 0x10422 => array(0x1044A), 0x10423 => array(0x1044B), + 0x10424 => array(0x1044C), 0x10425 => array(0x1044D), 0x10426 => array(0x1044E), + 0x10427 => array(0x1044F), 0x118A0 => array(0x118C0), 0x118A1 => array(0x118C1), + 0x118A2 => array(0x118C2), 0x118A3 => array(0x118C3), 0x118A4 => array(0x118C4), + 0x118A5 => array(0x118C5), 0x118A6 => array(0x118C6), 0x118A7 => array(0x118C7), + 0x118A8 => array(0x118C8), 0x118A9 => array(0x118C9), 0x118AA => array(0x118CA), + 0x118AB => array(0x118CB), 0x118AC => array(0x118CC), 0x118AD => array(0x118CD), + 0x118AE => array(0x118CE), 0x118AF => array(0x118CF), 0x118B0 => array(0x118D0), + 0x118B1 => array(0x118D1), 0x118B2 => array(0x118D2), 0x118B3 => array(0x118D3), + 0x118B4 => array(0x118D4), 0x118B5 => array(0x118D5), 0x118B6 => array(0x118D6), + 0x118B7 => array(0x118D7), 0x118B8 => array(0x118D8), 0x118B9 => array(0x118D9), + 0x118BA => array(0x118DA), 0x118BB => array(0x118DB), 0x118BC => array(0x118DC), + 0x118BD => array(0x118DD), 0x118BE => array(0x118DE), 0x118BF => array(0x118DF), + 0x1D15E => array(0x1D157, 0x1D165), 0x1D15F => array(0x1D158, 0x1D165), 0x1D160 => array(0x1D158, 0x1D165, 0x1D16E), + 0x1D161 => array(0x1D158, 0x1D165, 0x1D16F), 0x1D162 => array(0x1D158, 0x1D165, 0x1D170), 0x1D163 => array(0x1D158, 0x1D165, 0x1D171), + 0x1D164 => array(0x1D158, 0x1D165, 0x1D172), 0x1D1BB => array(0x1D1B9, 0x1D165), 0x1D1BC => array(0x1D1BA, 0x1D165), + 0x1D1BD => array(0x1D1B9, 0x1D165, 0x1D16E), 0x1D1BE => array(0x1D1BA, 0x1D165, 0x1D16E), 0x1D1BF => array(0x1D1B9, 0x1D165, 0x1D16F), + 0x1D1C0 => array(0x1D1BA, 0x1D165, 0x1D16F), 0x1D400 => array(0x61), 0x1D401 => array(0x62), + 0x1D402 => array(0x63), 0x1D403 => array(0x64), 0x1D404 => array(0x65), + 0x1D405 => array(0x66), 0x1D406 => array(0x67), 0x1D407 => array(0x68), + 0x1D408 => array(0x69), 0x1D409 => array(0x6A), 0x1D40A => array(0x6B), + 0x1D40B => array(0x6C), 0x1D40C => array(0x6D), 0x1D40D => array(0x6E), + 0x1D40E => array(0x6F), 0x1D40F => array(0x70), 0x1D410 => array(0x71), + 0x1D411 => array(0x72), 0x1D412 => array(0x73), 0x1D413 => array(0x74), + 0x1D414 => array(0x75), 0x1D415 => array(0x76), 0x1D416 => array(0x77), + 0x1D417 => array(0x78), 0x1D418 => array(0x79), 0x1D419 => array(0x7A), + 0x1D41A => array(0x61), 0x1D41B => array(0x62), 0x1D41C => array(0x63), + 0x1D41D => array(0x64), 0x1D41E => array(0x65), 0x1D41F => array(0x66), + 0x1D420 => array(0x67), 0x1D421 => array(0x68), 0x1D422 => array(0x69), + 0x1D423 => array(0x6A), 0x1D424 => array(0x6B), 0x1D425 => array(0x6C), + 0x1D426 => array(0x6D), 0x1D427 => array(0x6E), 0x1D428 => array(0x6F), + 0x1D429 => array(0x70), 0x1D42A => array(0x71), 0x1D42B => array(0x72), + 0x1D42C => array(0x73), 0x1D42D => array(0x74), 0x1D42E => array(0x75), + 0x1D42F => array(0x76), 0x1D430 => array(0x77), 0x1D431 => array(0x78), + 0x1D432 => array(0x79), 0x1D433 => array(0x7A), 0x1D434 => array(0x61), + 0x1D435 => array(0x62), 0x1D436 => array(0x63), 0x1D437 => array(0x64), + 0x1D438 => array(0x65), 0x1D439 => array(0x66), 0x1D43A => array(0x67), + 0x1D43B => array(0x68), 0x1D43C => array(0x69), 0x1D43D => array(0x6A), + 0x1D43E => array(0x6B), 0x1D43F => array(0x6C), 0x1D440 => array(0x6D), + 0x1D441 => array(0x6E), 0x1D442 => array(0x6F), 0x1D443 => array(0x70), + 0x1D444 => array(0x71), 0x1D445 => array(0x72), 0x1D446 => array(0x73), + 0x1D447 => array(0x74), 0x1D448 => array(0x75), 0x1D449 => array(0x76), + 0x1D44A => array(0x77), 0x1D44B => array(0x78), 0x1D44C => array(0x79), + 0x1D44D => array(0x7A), 0x1D44E => array(0x61), 0x1D44F => array(0x62), + 0x1D450 => array(0x63), 0x1D451 => array(0x64), 0x1D452 => array(0x65), + 0x1D453 => array(0x66), 0x1D454 => array(0x67), 0x1D456 => array(0x69), + 0x1D457 => array(0x6A), 0x1D458 => array(0x6B), 0x1D459 => array(0x6C), + 0x1D45A => array(0x6D), 0x1D45B => array(0x6E), 0x1D45C => array(0x6F), + 0x1D45D => array(0x70), 0x1D45E => array(0x71), 0x1D45F => array(0x72), + 0x1D460 => array(0x73), 0x1D461 => array(0x74), 0x1D462 => array(0x75), + 0x1D463 => array(0x76), 0x1D464 => array(0x77), 0x1D465 => array(0x78), + 0x1D466 => array(0x79), 0x1D467 => array(0x7A), 0x1D468 => array(0x61), + 0x1D469 => array(0x62), 0x1D46A => array(0x63), 0x1D46B => array(0x64), + 0x1D46C => array(0x65), 0x1D46D => array(0x66), 0x1D46E => array(0x67), + 0x1D46F => array(0x68), 0x1D470 => array(0x69), 0x1D471 => array(0x6A), + 0x1D472 => array(0x6B), 0x1D473 => array(0x6C), 0x1D474 => array(0x6D), + 0x1D475 => array(0x6E), 0x1D476 => array(0x6F), 0x1D477 => array(0x70), + 0x1D478 => array(0x71), 0x1D479 => array(0x72), 0x1D47A => array(0x73), + 0x1D47B => array(0x74), 0x1D47C => array(0x75), 0x1D47D => array(0x76), + 0x1D47E => array(0x77), 0x1D47F => array(0x78), 0x1D480 => array(0x79), + 0x1D481 => array(0x7A), 0x1D482 => array(0x61), 0x1D483 => array(0x62), + 0x1D484 => array(0x63), 0x1D485 => array(0x64), 0x1D486 => array(0x65), + 0x1D487 => array(0x66), 0x1D488 => array(0x67), 0x1D489 => array(0x68), + 0x1D48A => array(0x69), 0x1D48B => array(0x6A), 0x1D48C => array(0x6B), + 0x1D48D => array(0x6C), 0x1D48E => array(0x6D), 0x1D48F => array(0x6E), + 0x1D490 => array(0x6F), 0x1D491 => array(0x70), 0x1D492 => array(0x71), + 0x1D493 => array(0x72), 0x1D494 => array(0x73), 0x1D495 => array(0x74), + 0x1D496 => array(0x75), 0x1D497 => array(0x76), 0x1D498 => array(0x77), + 0x1D499 => array(0x78), 0x1D49A => array(0x79), 0x1D49B => array(0x7A), + 0x1D49C => array(0x61), 0x1D49E => array(0x63), 0x1D49F => array(0x64), + 0x1D4A2 => array(0x67), 0x1D4A5 => array(0x6A), 0x1D4A6 => array(0x6B), + 0x1D4A9 => array(0x6E), 0x1D4AA => array(0x6F), 0x1D4AB => array(0x70), + 0x1D4AC => array(0x71), 0x1D4AE => array(0x73), 0x1D4AF => array(0x74), + 0x1D4B0 => array(0x75), 0x1D4B1 => array(0x76), 0x1D4B2 => array(0x77), + 0x1D4B3 => array(0x78), 0x1D4B4 => array(0x79), 0x1D4B5 => array(0x7A), + 0x1D4B6 => array(0x61), 0x1D4B7 => array(0x62), 0x1D4B8 => array(0x63), + 0x1D4B9 => array(0x64), 0x1D4BB => array(0x66), 0x1D4BD => array(0x68), + 0x1D4BE => array(0x69), 0x1D4BF => array(0x6A), 0x1D4C0 => array(0x6B), + 0x1D4C1 => array(0x6C), 0x1D4C2 => array(0x6D), 0x1D4C3 => array(0x6E), + 0x1D4C5 => array(0x70), 0x1D4C6 => array(0x71), 0x1D4C7 => array(0x72), + 0x1D4C8 => array(0x73), 0x1D4C9 => array(0x74), 0x1D4CA => array(0x75), + 0x1D4CB => array(0x76), 0x1D4CC => array(0x77), 0x1D4CD => array(0x78), + 0x1D4CE => array(0x79), 0x1D4CF => array(0x7A), 0x1D4D0 => array(0x61), + 0x1D4D1 => array(0x62), 0x1D4D2 => array(0x63), 0x1D4D3 => array(0x64), + 0x1D4D4 => array(0x65), 0x1D4D5 => array(0x66), 0x1D4D6 => array(0x67), + 0x1D4D7 => array(0x68), 0x1D4D8 => array(0x69), 0x1D4D9 => array(0x6A), + 0x1D4DA => array(0x6B), 0x1D4DB => array(0x6C), 0x1D4DC => array(0x6D), + 0x1D4DD => array(0x6E), 0x1D4DE => array(0x6F), 0x1D4DF => array(0x70), + 0x1D4E0 => array(0x71), 0x1D4E1 => array(0x72), 0x1D4E2 => array(0x73), + 0x1D4E3 => array(0x74), 0x1D4E4 => array(0x75), 0x1D4E5 => array(0x76), + 0x1D4E6 => array(0x77), 0x1D4E7 => array(0x78), 0x1D4E8 => array(0x79), + 0x1D4E9 => array(0x7A), 0x1D4EA => array(0x61), 0x1D4EB => array(0x62), + 0x1D4EC => array(0x63), 0x1D4ED => array(0x64), 0x1D4EE => array(0x65), + 0x1D4EF => array(0x66), 0x1D4F0 => array(0x67), 0x1D4F1 => array(0x68), + 0x1D4F2 => array(0x69), 0x1D4F3 => array(0x6A), 0x1D4F4 => array(0x6B), + 0x1D4F5 => array(0x6C), 0x1D4F6 => array(0x6D), 0x1D4F7 => array(0x6E), + 0x1D4F8 => array(0x6F), 0x1D4F9 => array(0x70), 0x1D4FA => array(0x71), + 0x1D4FB => array(0x72), 0x1D4FC => array(0x73), 0x1D4FD => array(0x74), + 0x1D4FE => array(0x75), 0x1D4FF => array(0x76), 0x1D500 => array(0x77), + 0x1D501 => array(0x78), 0x1D502 => array(0x79), 0x1D503 => array(0x7A), + 0x1D504 => array(0x61), 0x1D505 => array(0x62), 0x1D507 => array(0x64), + 0x1D508 => array(0x65), 0x1D509 => array(0x66), 0x1D50A => array(0x67), + 0x1D50D => array(0x6A), 0x1D50E => array(0x6B), 0x1D50F => array(0x6C), + 0x1D510 => array(0x6D), 0x1D511 => array(0x6E), 0x1D512 => array(0x6F), + 0x1D513 => array(0x70), 0x1D514 => array(0x71), 0x1D516 => array(0x73), + 0x1D517 => array(0x74), 0x1D518 => array(0x75), 0x1D519 => array(0x76), + 0x1D51A => array(0x77), 0x1D51B => array(0x78), 0x1D51C => array(0x79), + 0x1D51E => array(0x61), 0x1D51F => array(0x62), 0x1D520 => array(0x63), + 0x1D521 => array(0x64), 0x1D522 => array(0x65), 0x1D523 => array(0x66), + 0x1D524 => array(0x67), 0x1D525 => array(0x68), 0x1D526 => array(0x69), + 0x1D527 => array(0x6A), 0x1D528 => array(0x6B), 0x1D529 => array(0x6C), + 0x1D52A => array(0x6D), 0x1D52B => array(0x6E), 0x1D52C => array(0x6F), + 0x1D52D => array(0x70), 0x1D52E => array(0x71), 0x1D52F => array(0x72), + 0x1D530 => array(0x73), 0x1D531 => array(0x74), 0x1D532 => array(0x75), + 0x1D533 => array(0x76), 0x1D534 => array(0x77), 0x1D535 => array(0x78), + 0x1D536 => array(0x79), 0x1D537 => array(0x7A), 0x1D538 => array(0x61), + 0x1D539 => array(0x62), 0x1D53B => array(0x64), 0x1D53C => array(0x65), + 0x1D53D => array(0x66), 0x1D53E => array(0x67), 0x1D540 => array(0x69), + 0x1D541 => array(0x6A), 0x1D542 => array(0x6B), 0x1D543 => array(0x6C), + 0x1D544 => array(0x6D), 0x1D546 => array(0x6F), 0x1D54A => array(0x73), + 0x1D54B => array(0x74), 0x1D54C => array(0x75), 0x1D54D => array(0x76), + 0x1D54E => array(0x77), 0x1D54F => array(0x78), 0x1D550 => array(0x79), + 0x1D552 => array(0x61), 0x1D553 => array(0x62), 0x1D554 => array(0x63), + 0x1D555 => array(0x64), 0x1D556 => array(0x65), 0x1D557 => array(0x66), + 0x1D558 => array(0x67), 0x1D559 => array(0x68), 0x1D55A => array(0x69), + 0x1D55B => array(0x6A), 0x1D55C => array(0x6B), 0x1D55D => array(0x6C), + 0x1D55E => array(0x6D), 0x1D55F => array(0x6E), 0x1D560 => array(0x6F), + 0x1D561 => array(0x70), 0x1D562 => array(0x71), 0x1D563 => array(0x72), + 0x1D564 => array(0x73), 0x1D565 => array(0x74), 0x1D566 => array(0x75), + 0x1D567 => array(0x76), 0x1D568 => array(0x77), 0x1D569 => array(0x78), + 0x1D56A => array(0x79), 0x1D56B => array(0x7A), 0x1D56C => array(0x61), + 0x1D56D => array(0x62), 0x1D56E => array(0x63), 0x1D56F => array(0x64), + 0x1D570 => array(0x65), 0x1D571 => array(0x66), 0x1D572 => array(0x67), + 0x1D573 => array(0x68), 0x1D574 => array(0x69), 0x1D575 => array(0x6A), + 0x1D576 => array(0x6B), 0x1D577 => array(0x6C), 0x1D578 => array(0x6D), + 0x1D579 => array(0x6E), 0x1D57A => array(0x6F), 0x1D57B => array(0x70), + 0x1D57C => array(0x71), 0x1D57D => array(0x72), 0x1D57E => array(0x73), + 0x1D57F => array(0x74), 0x1D580 => array(0x75), 0x1D581 => array(0x76), + 0x1D582 => array(0x77), 0x1D583 => array(0x78), 0x1D584 => array(0x79), + 0x1D585 => array(0x7A), 0x1D586 => array(0x61), 0x1D587 => array(0x62), + 0x1D588 => array(0x63), 0x1D589 => array(0x64), 0x1D58A => array(0x65), + 0x1D58B => array(0x66), 0x1D58C => array(0x67), 0x1D58D => array(0x68), + 0x1D58E => array(0x69), 0x1D58F => array(0x6A), 0x1D590 => array(0x6B), + 0x1D591 => array(0x6C), 0x1D592 => array(0x6D), 0x1D593 => array(0x6E), + 0x1D594 => array(0x6F), 0x1D595 => array(0x70), 0x1D596 => array(0x71), + 0x1D597 => array(0x72), 0x1D598 => array(0x73), 0x1D599 => array(0x74), + 0x1D59A => array(0x75), 0x1D59B => array(0x76), 0x1D59C => array(0x77), + 0x1D59D => array(0x78), 0x1D59E => array(0x79), 0x1D59F => array(0x7A), + 0x1D5A0 => array(0x61), 0x1D5A1 => array(0x62), 0x1D5A2 => array(0x63), + 0x1D5A3 => array(0x64), 0x1D5A4 => array(0x65), 0x1D5A5 => array(0x66), + 0x1D5A6 => array(0x67), 0x1D5A7 => array(0x68), 0x1D5A8 => array(0x69), + 0x1D5A9 => array(0x6A), 0x1D5AA => array(0x6B), 0x1D5AB => array(0x6C), + 0x1D5AC => array(0x6D), 0x1D5AD => array(0x6E), 0x1D5AE => array(0x6F), + 0x1D5AF => array(0x70), 0x1D5B0 => array(0x71), 0x1D5B1 => array(0x72), + 0x1D5B2 => array(0x73), 0x1D5B3 => array(0x74), 0x1D5B4 => array(0x75), + 0x1D5B5 => array(0x76), 0x1D5B6 => array(0x77), 0x1D5B7 => array(0x78), + 0x1D5B8 => array(0x79), 0x1D5B9 => array(0x7A), 0x1D5BA => array(0x61), + 0x1D5BB => array(0x62), 0x1D5BC => array(0x63), 0x1D5BD => array(0x64), + 0x1D5BE => array(0x65), 0x1D5BF => array(0x66), 0x1D5C0 => array(0x67), + 0x1D5C1 => array(0x68), 0x1D5C2 => array(0x69), 0x1D5C3 => array(0x6A), + 0x1D5C4 => array(0x6B), 0x1D5C5 => array(0x6C), 0x1D5C6 => array(0x6D), + 0x1D5C7 => array(0x6E), 0x1D5C8 => array(0x6F), 0x1D5C9 => array(0x70), + 0x1D5CA => array(0x71), 0x1D5CB => array(0x72), 0x1D5CC => array(0x73), + 0x1D5CD => array(0x74), 0x1D5CE => array(0x75), 0x1D5CF => array(0x76), + 0x1D5D0 => array(0x77), 0x1D5D1 => array(0x78), 0x1D5D2 => array(0x79), + 0x1D5D3 => array(0x7A), 0x1D5D4 => array(0x61), 0x1D5D5 => array(0x62), + 0x1D5D6 => array(0x63), 0x1D5D7 => array(0x64), 0x1D5D8 => array(0x65), + 0x1D5D9 => array(0x66), 0x1D5DA => array(0x67), 0x1D5DB => array(0x68), + 0x1D5DC => array(0x69), 0x1D5DD => array(0x6A), 0x1D5DE => array(0x6B), + 0x1D5DF => array(0x6C), 0x1D5E0 => array(0x6D), 0x1D5E1 => array(0x6E), + 0x1D5E2 => array(0x6F), 0x1D5E3 => array(0x70), 0x1D5E4 => array(0x71), + 0x1D5E5 => array(0x72), 0x1D5E6 => array(0x73), 0x1D5E7 => array(0x74), + 0x1D5E8 => array(0x75), 0x1D5E9 => array(0x76), 0x1D5EA => array(0x77), + 0x1D5EB => array(0x78), 0x1D5EC => array(0x79), 0x1D5ED => array(0x7A), + 0x1D5EE => array(0x61), 0x1D5EF => array(0x62), 0x1D5F0 => array(0x63), + 0x1D5F1 => array(0x64), 0x1D5F2 => array(0x65), 0x1D5F3 => array(0x66), + 0x1D5F4 => array(0x67), 0x1D5F5 => array(0x68), 0x1D5F6 => array(0x69), + 0x1D5F7 => array(0x6A), 0x1D5F8 => array(0x6B), 0x1D5F9 => array(0x6C), + 0x1D5FA => array(0x6D), 0x1D5FB => array(0x6E), 0x1D5FC => array(0x6F), + 0x1D5FD => array(0x70), 0x1D5FE => array(0x71), 0x1D5FF => array(0x72), + 0x1D600 => array(0x73), 0x1D601 => array(0x74), 0x1D602 => array(0x75), + 0x1D603 => array(0x76), 0x1D604 => array(0x77), 0x1D605 => array(0x78), + 0x1D606 => array(0x79), 0x1D607 => array(0x7A), 0x1D608 => array(0x61), + 0x1D609 => array(0x62), 0x1D60A => array(0x63), 0x1D60B => array(0x64), + 0x1D60C => array(0x65), 0x1D60D => array(0x66), 0x1D60E => array(0x67), + 0x1D60F => array(0x68), 0x1D610 => array(0x69), 0x1D611 => array(0x6A), + 0x1D612 => array(0x6B), 0x1D613 => array(0x6C), 0x1D614 => array(0x6D), + 0x1D615 => array(0x6E), 0x1D616 => array(0x6F), 0x1D617 => array(0x70), + 0x1D618 => array(0x71), 0x1D619 => array(0x72), 0x1D61A => array(0x73), + 0x1D61B => array(0x74), 0x1D61C => array(0x75), 0x1D61D => array(0x76), + 0x1D61E => array(0x77), 0x1D61F => array(0x78), 0x1D620 => array(0x79), + 0x1D621 => array(0x7A), 0x1D622 => array(0x61), 0x1D623 => array(0x62), + 0x1D624 => array(0x63), 0x1D625 => array(0x64), 0x1D626 => array(0x65), + 0x1D627 => array(0x66), 0x1D628 => array(0x67), 0x1D629 => array(0x68), + 0x1D62A => array(0x69), 0x1D62B => array(0x6A), 0x1D62C => array(0x6B), + 0x1D62D => array(0x6C), 0x1D62E => array(0x6D), 0x1D62F => array(0x6E), + 0x1D630 => array(0x6F), 0x1D631 => array(0x70), 0x1D632 => array(0x71), + 0x1D633 => array(0x72), 0x1D634 => array(0x73), 0x1D635 => array(0x74), + 0x1D636 => array(0x75), 0x1D637 => array(0x76), 0x1D638 => array(0x77), + 0x1D639 => array(0x78), 0x1D63A => array(0x79), 0x1D63B => array(0x7A), + 0x1D63C => array(0x61), 0x1D63D => array(0x62), 0x1D63E => array(0x63), + 0x1D63F => array(0x64), 0x1D640 => array(0x65), 0x1D641 => array(0x66), + 0x1D642 => array(0x67), 0x1D643 => array(0x68), 0x1D644 => array(0x69), + 0x1D645 => array(0x6A), 0x1D646 => array(0x6B), 0x1D647 => array(0x6C), + 0x1D648 => array(0x6D), 0x1D649 => array(0x6E), 0x1D64A => array(0x6F), + 0x1D64B => array(0x70), 0x1D64C => array(0x71), 0x1D64D => array(0x72), + 0x1D64E => array(0x73), 0x1D64F => array(0x74), 0x1D650 => array(0x75), + 0x1D651 => array(0x76), 0x1D652 => array(0x77), 0x1D653 => array(0x78), + 0x1D654 => array(0x79), 0x1D655 => array(0x7A), 0x1D656 => array(0x61), + 0x1D657 => array(0x62), 0x1D658 => array(0x63), 0x1D659 => array(0x64), + 0x1D65A => array(0x65), 0x1D65B => array(0x66), 0x1D65C => array(0x67), + 0x1D65D => array(0x68), 0x1D65E => array(0x69), 0x1D65F => array(0x6A), + 0x1D660 => array(0x6B), 0x1D661 => array(0x6C), 0x1D662 => array(0x6D), + 0x1D663 => array(0x6E), 0x1D664 => array(0x6F), 0x1D665 => array(0x70), + 0x1D666 => array(0x71), 0x1D667 => array(0x72), 0x1D668 => array(0x73), + 0x1D669 => array(0x74), 0x1D66A => array(0x75), 0x1D66B => array(0x76), + 0x1D66C => array(0x77), 0x1D66D => array(0x78), 0x1D66E => array(0x79), + 0x1D66F => array(0x7A), 0x1D670 => array(0x61), 0x1D671 => array(0x62), + 0x1D672 => array(0x63), 0x1D673 => array(0x64), 0x1D674 => array(0x65), + 0x1D675 => array(0x66), 0x1D676 => array(0x67), 0x1D677 => array(0x68), + 0x1D678 => array(0x69), 0x1D679 => array(0x6A), 0x1D67A => array(0x6B), + 0x1D67B => array(0x6C), 0x1D67C => array(0x6D), 0x1D67D => array(0x6E), + 0x1D67E => array(0x6F), 0x1D67F => array(0x70), 0x1D680 => array(0x71), + 0x1D681 => array(0x72), 0x1D682 => array(0x73), 0x1D683 => array(0x74), + 0x1D684 => array(0x75), 0x1D685 => array(0x76), 0x1D686 => array(0x77), + 0x1D687 => array(0x78), 0x1D688 => array(0x79), 0x1D689 => array(0x7A), + 0x1D68A => array(0x61), 0x1D68B => array(0x62), 0x1D68C => array(0x63), + 0x1D68D => array(0x64), 0x1D68E => array(0x65), 0x1D68F => array(0x66), + 0x1D690 => array(0x67), 0x1D691 => array(0x68), 0x1D692 => array(0x69), + 0x1D693 => array(0x6A), 0x1D694 => array(0x6B), 0x1D695 => array(0x6C), + 0x1D696 => array(0x6D), 0x1D697 => array(0x6E), 0x1D698 => array(0x6F), + 0x1D699 => array(0x70), 0x1D69A => array(0x71), 0x1D69B => array(0x72), + 0x1D69C => array(0x73), 0x1D69D => array(0x74), 0x1D69E => array(0x75), + 0x1D69F => array(0x76), 0x1D6A0 => array(0x77), 0x1D6A1 => array(0x78), + 0x1D6A2 => array(0x79), 0x1D6A3 => array(0x7A), 0x1D6A4 => array(0x131), + 0x1D6A5 => array(0x237), 0x1D6A8 => array(0x3B1), 0x1D6A9 => array(0x3B2), + 0x1D6AA => array(0x3B3), 0x1D6AB => array(0x3B4), 0x1D6AC => array(0x3B5), + 0x1D6AD => array(0x3B6), 0x1D6AE => array(0x3B7), 0x1D6AF => array(0x3B8), + 0x1D6B0 => array(0x3B9), 0x1D6B1 => array(0x3BA), 0x1D6B2 => array(0x3BB), + 0x1D6B3 => array(0x3BC), 0x1D6B4 => array(0x3BD), 0x1D6B5 => array(0x3BE), + 0x1D6B6 => array(0x3BF), 0x1D6B7 => array(0x3C0), 0x1D6B8 => array(0x3C1), + 0x1D6B9 => array(0x3B8), 0x1D6BA => array(0x3C3), 0x1D6BB => array(0x3C4), + 0x1D6BC => array(0x3C5), 0x1D6BD => array(0x3C6), 0x1D6BE => array(0x3C7), + 0x1D6BF => array(0x3C8), 0x1D6C0 => array(0x3C9), 0x1D6C1 => array(0x2207), + 0x1D6C2 => array(0x3B1), 0x1D6C3 => array(0x3B2), 0x1D6C4 => array(0x3B3), + 0x1D6C5 => array(0x3B4), 0x1D6C6 => array(0x3B5), 0x1D6C7 => array(0x3B6), + 0x1D6C8 => array(0x3B7), 0x1D6C9 => array(0x3B8), 0x1D6CA => array(0x3B9), + 0x1D6CB => array(0x3BA), 0x1D6CC => array(0x3BB), 0x1D6CD => array(0x3BC), + 0x1D6CE => array(0x3BD), 0x1D6CF => array(0x3BE), 0x1D6D0 => array(0x3BF), + 0x1D6D1 => array(0x3C0), 0x1D6D2 => array(0x3C1), 0x1D6D3 => array(0x3C3), + 0x1D6D4 => array(0x3C3), 0x1D6D5 => array(0x3C4), 0x1D6D6 => array(0x3C5), + 0x1D6D7 => array(0x3C6), 0x1D6D8 => array(0x3C7), 0x1D6D9 => array(0x3C8), + 0x1D6DA => array(0x3C9), 0x1D6DB => array(0x2202), 0x1D6DC => array(0x3B5), + 0x1D6DD => array(0x3B8), 0x1D6DE => array(0x3BA), 0x1D6DF => array(0x3C6), + 0x1D6E0 => array(0x3C1), 0x1D6E1 => array(0x3C0), 0x1D6E2 => array(0x3B1), + 0x1D6E3 => array(0x3B2), 0x1D6E4 => array(0x3B3), 0x1D6E5 => array(0x3B4), + 0x1D6E6 => array(0x3B5), 0x1D6E7 => array(0x3B6), 0x1D6E8 => array(0x3B7), + 0x1D6E9 => array(0x3B8), 0x1D6EA => array(0x3B9), 0x1D6EB => array(0x3BA), + 0x1D6EC => array(0x3BB), 0x1D6ED => array(0x3BC), 0x1D6EE => array(0x3BD), + 0x1D6EF => array(0x3BE), 0x1D6F0 => array(0x3BF), 0x1D6F1 => array(0x3C0), + 0x1D6F2 => array(0x3C1), 0x1D6F3 => array(0x3B8), 0x1D6F4 => array(0x3C3), + 0x1D6F5 => array(0x3C4), 0x1D6F6 => array(0x3C5), 0x1D6F7 => array(0x3C6), + 0x1D6F8 => array(0x3C7), 0x1D6F9 => array(0x3C8), 0x1D6FA => array(0x3C9), + 0x1D6FB => array(0x2207), 0x1D6FC => array(0x3B1), 0x1D6FD => array(0x3B2), + 0x1D6FE => array(0x3B3), 0x1D6FF => array(0x3B4), 0x1D700 => array(0x3B5), + 0x1D701 => array(0x3B6), 0x1D702 => array(0x3B7), 0x1D703 => array(0x3B8), + 0x1D704 => array(0x3B9), 0x1D705 => array(0x3BA), 0x1D706 => array(0x3BB), + 0x1D707 => array(0x3BC), 0x1D708 => array(0x3BD), 0x1D709 => array(0x3BE), + 0x1D70A => array(0x3BF), 0x1D70B => array(0x3C0), 0x1D70C => array(0x3C1), + 0x1D70D => array(0x3C3), 0x1D70E => array(0x3C3), 0x1D70F => array(0x3C4), + 0x1D710 => array(0x3C5), 0x1D711 => array(0x3C6), 0x1D712 => array(0x3C7), + 0x1D713 => array(0x3C8), 0x1D714 => array(0x3C9), 0x1D715 => array(0x2202), + 0x1D716 => array(0x3B5), 0x1D717 => array(0x3B8), 0x1D718 => array(0x3BA), + 0x1D719 => array(0x3C6), 0x1D71A => array(0x3C1), 0x1D71B => array(0x3C0), + 0x1D71C => array(0x3B1), 0x1D71D => array(0x3B2), 0x1D71E => array(0x3B3), + 0x1D71F => array(0x3B4), 0x1D720 => array(0x3B5), 0x1D721 => array(0x3B6), + 0x1D722 => array(0x3B7), 0x1D723 => array(0x3B8), 0x1D724 => array(0x3B9), + 0x1D725 => array(0x3BA), 0x1D726 => array(0x3BB), 0x1D727 => array(0x3BC), + 0x1D728 => array(0x3BD), 0x1D729 => array(0x3BE), 0x1D72A => array(0x3BF), + 0x1D72B => array(0x3C0), 0x1D72C => array(0x3C1), 0x1D72D => array(0x3B8), + 0x1D72E => array(0x3C3), 0x1D72F => array(0x3C4), 0x1D730 => array(0x3C5), + 0x1D731 => array(0x3C6), 0x1D732 => array(0x3C7), 0x1D733 => array(0x3C8), + 0x1D734 => array(0x3C9), 0x1D735 => array(0x2207), 0x1D736 => array(0x3B1), + 0x1D737 => array(0x3B2), 0x1D738 => array(0x3B3), 0x1D739 => array(0x3B4), + 0x1D73A => array(0x3B5), 0x1D73B => array(0x3B6), 0x1D73C => array(0x3B7), + 0x1D73D => array(0x3B8), 0x1D73E => array(0x3B9), 0x1D73F => array(0x3BA), + 0x1D740 => array(0x3BB), 0x1D741 => array(0x3BC), 0x1D742 => array(0x3BD), + 0x1D743 => array(0x3BE), 0x1D744 => array(0x3BF), 0x1D745 => array(0x3C0), + 0x1D746 => array(0x3C1), 0x1D747 => array(0x3C3), 0x1D748 => array(0x3C3), + 0x1D749 => array(0x3C4), 0x1D74A => array(0x3C5), 0x1D74B => array(0x3C6), + 0x1D74C => array(0x3C7), 0x1D74D => array(0x3C8), 0x1D74E => array(0x3C9), + 0x1D74F => array(0x2202), 0x1D750 => array(0x3B5), 0x1D751 => array(0x3B8), + 0x1D752 => array(0x3BA), 0x1D753 => array(0x3C6), 0x1D754 => array(0x3C1), + 0x1D755 => array(0x3C0), 0x1D756 => array(0x3B1), 0x1D757 => array(0x3B2), + 0x1D758 => array(0x3B3), 0x1D759 => array(0x3B4), 0x1D75A => array(0x3B5), + 0x1D75B => array(0x3B6), 0x1D75C => array(0x3B7), 0x1D75D => array(0x3B8), + 0x1D75E => array(0x3B9), 0x1D75F => array(0x3BA), 0x1D760 => array(0x3BB), + 0x1D761 => array(0x3BC), 0x1D762 => array(0x3BD), 0x1D763 => array(0x3BE), + 0x1D764 => array(0x3BF), 0x1D765 => array(0x3C0), 0x1D766 => array(0x3C1), + 0x1D767 => array(0x3B8), 0x1D768 => array(0x3C3), 0x1D769 => array(0x3C4), + 0x1D76A => array(0x3C5), 0x1D76B => array(0x3C6), 0x1D76C => array(0x3C7), + 0x1D76D => array(0x3C8), 0x1D76E => array(0x3C9), 0x1D76F => array(0x2207), + 0x1D770 => array(0x3B1), 0x1D771 => array(0x3B2), 0x1D772 => array(0x3B3), + 0x1D773 => array(0x3B4), 0x1D774 => array(0x3B5), 0x1D775 => array(0x3B6), + 0x1D776 => array(0x3B7), 0x1D777 => array(0x3B8), 0x1D778 => array(0x3B9), + 0x1D779 => array(0x3BA), 0x1D77A => array(0x3BB), 0x1D77B => array(0x3BC), + 0x1D77C => array(0x3BD), 0x1D77D => array(0x3BE), 0x1D77E => array(0x3BF), + 0x1D77F => array(0x3C0), 0x1D780 => array(0x3C1), 0x1D781 => array(0x3C3), + 0x1D782 => array(0x3C3), 0x1D783 => array(0x3C4), 0x1D784 => array(0x3C5), + 0x1D785 => array(0x3C6), 0x1D786 => array(0x3C7), 0x1D787 => array(0x3C8), + 0x1D788 => array(0x3C9), 0x1D789 => array(0x2202), 0x1D78A => array(0x3B5), + 0x1D78B => array(0x3B8), 0x1D78C => array(0x3BA), 0x1D78D => array(0x3C6), + 0x1D78E => array(0x3C1), 0x1D78F => array(0x3C0), 0x1D790 => array(0x3B1), + 0x1D791 => array(0x3B2), 0x1D792 => array(0x3B3), 0x1D793 => array(0x3B4), + 0x1D794 => array(0x3B5), 0x1D795 => array(0x3B6), 0x1D796 => array(0x3B7), + 0x1D797 => array(0x3B8), 0x1D798 => array(0x3B9), 0x1D799 => array(0x3BA), + 0x1D79A => array(0x3BB), 0x1D79B => array(0x3BC), 0x1D79C => array(0x3BD), + 0x1D79D => array(0x3BE), 0x1D79E => array(0x3BF), 0x1D79F => array(0x3C0), + 0x1D7A0 => array(0x3C1), 0x1D7A1 => array(0x3B8), 0x1D7A2 => array(0x3C3), + 0x1D7A3 => array(0x3C4), 0x1D7A4 => array(0x3C5), 0x1D7A5 => array(0x3C6), + 0x1D7A6 => array(0x3C7), 0x1D7A7 => array(0x3C8), 0x1D7A8 => array(0x3C9), + 0x1D7A9 => array(0x2207), 0x1D7AA => array(0x3B1), 0x1D7AB => array(0x3B2), + 0x1D7AC => array(0x3B3), 0x1D7AD => array(0x3B4), 0x1D7AE => array(0x3B5), + 0x1D7AF => array(0x3B6), 0x1D7B0 => array(0x3B7), 0x1D7B1 => array(0x3B8), + 0x1D7B2 => array(0x3B9), 0x1D7B3 => array(0x3BA), 0x1D7B4 => array(0x3BB), + 0x1D7B5 => array(0x3BC), 0x1D7B6 => array(0x3BD), 0x1D7B7 => array(0x3BE), + 0x1D7B8 => array(0x3BF), 0x1D7B9 => array(0x3C0), 0x1D7BA => array(0x3C1), + 0x1D7BB => array(0x3C3), 0x1D7BC => array(0x3C3), 0x1D7BD => array(0x3C4), + 0x1D7BE => array(0x3C5), 0x1D7BF => array(0x3C6), 0x1D7C0 => array(0x3C7), + 0x1D7C1 => array(0x3C8), 0x1D7C2 => array(0x3C9), 0x1D7C3 => array(0x2202), + 0x1D7C4 => array(0x3B5), 0x1D7C5 => array(0x3B8), 0x1D7C6 => array(0x3BA), + 0x1D7C7 => array(0x3C6), 0x1D7C8 => array(0x3C1), 0x1D7C9 => array(0x3C0), + 0x1D7CA => array(0x3DD), 0x1D7CB => array(0x3DD), 0x1D7CE => array(0x30), + 0x1D7CF => array(0x31), 0x1D7D0 => array(0x32), 0x1D7D1 => array(0x33), + 0x1D7D2 => array(0x34), 0x1D7D3 => array(0x35), 0x1D7D4 => array(0x36), + 0x1D7D5 => array(0x37), 0x1D7D6 => array(0x38), 0x1D7D7 => array(0x39), + 0x1D7D8 => array(0x30), 0x1D7D9 => array(0x31), 0x1D7DA => array(0x32), + 0x1D7DB => array(0x33), 0x1D7DC => array(0x34), 0x1D7DD => array(0x35), + 0x1D7DE => array(0x36), 0x1D7DF => array(0x37), 0x1D7E0 => array(0x38), + 0x1D7E1 => array(0x39), 0x1D7E2 => array(0x30), 0x1D7E3 => array(0x31), + 0x1D7E4 => array(0x32), 0x1D7E5 => array(0x33), 0x1D7E6 => array(0x34), + 0x1D7E7 => array(0x35), 0x1D7E8 => array(0x36), 0x1D7E9 => array(0x37), + 0x1D7EA => array(0x38), 0x1D7EB => array(0x39), 0x1D7EC => array(0x30), + 0x1D7ED => array(0x31), 0x1D7EE => array(0x32), 0x1D7EF => array(0x33), + 0x1D7F0 => array(0x34), 0x1D7F1 => array(0x35), 0x1D7F2 => array(0x36), + 0x1D7F3 => array(0x37), 0x1D7F4 => array(0x38), 0x1D7F5 => array(0x39), + 0x1D7F6 => array(0x30), 0x1D7F7 => array(0x31), 0x1D7F8 => array(0x32), + 0x1D7F9 => array(0x33), 0x1D7FA => array(0x34), 0x1D7FB => array(0x35), + 0x1D7FC => array(0x36), 0x1D7FD => array(0x37), 0x1D7FE => array(0x38), + 0x1D7FF => array(0x39), 0x1EE00 => array(0x627), 0x1EE01 => array(0x628), + 0x1EE02 => array(0x62C), 0x1EE03 => array(0x62F), 0x1EE05 => array(0x648), + 0x1EE06 => array(0x632), 0x1EE07 => array(0x62D), 0x1EE08 => array(0x637), + 0x1EE09 => array(0x64A), 0x1EE0A => array(0x643), 0x1EE0B => array(0x644), + 0x1EE0C => array(0x645), 0x1EE0D => array(0x646), 0x1EE0E => array(0x633), + 0x1EE0F => array(0x639), 0x1EE10 => array(0x641), 0x1EE11 => array(0x635), + 0x1EE12 => array(0x642), 0x1EE13 => array(0x631), 0x1EE14 => array(0x634), + 0x1EE15 => array(0x62A), 0x1EE16 => array(0x62B), 0x1EE17 => array(0x62E), + 0x1EE18 => array(0x630), 0x1EE19 => array(0x636), 0x1EE1A => array(0x638), + 0x1EE1B => array(0x63A), 0x1EE1C => array(0x66E), 0x1EE1D => array(0x6BA), + 0x1EE1E => array(0x6A1), 0x1EE1F => array(0x66F), 0x1EE21 => array(0x628), + 0x1EE22 => array(0x62C), 0x1EE24 => array(0x647), 0x1EE27 => array(0x62D), + 0x1EE29 => array(0x64A), 0x1EE2A => array(0x643), 0x1EE2B => array(0x644), + 0x1EE2C => array(0x645), 0x1EE2D => array(0x646), 0x1EE2E => array(0x633), + 0x1EE2F => array(0x639), 0x1EE30 => array(0x641), 0x1EE31 => array(0x635), + 0x1EE32 => array(0x642), 0x1EE34 => array(0x634), 0x1EE35 => array(0x62A), + 0x1EE36 => array(0x62B), 0x1EE37 => array(0x62E), 0x1EE39 => array(0x636), + 0x1EE3B => array(0x63A), 0x1EE42 => array(0x62C), 0x1EE47 => array(0x62D), + 0x1EE49 => array(0x64A), 0x1EE4B => array(0x644), 0x1EE4D => array(0x646), + 0x1EE4E => array(0x633), 0x1EE4F => array(0x639), 0x1EE51 => array(0x635), + 0x1EE52 => array(0x642), 0x1EE54 => array(0x634), 0x1EE57 => array(0x62E), + 0x1EE59 => array(0x636), 0x1EE5B => array(0x63A), 0x1EE5D => array(0x6BA), + 0x1EE5F => array(0x66F), 0x1EE61 => array(0x628), 0x1EE62 => array(0x62C), + 0x1EE64 => array(0x647), 0x1EE67 => array(0x62D), 0x1EE68 => array(0x637), + 0x1EE69 => array(0x64A), 0x1EE6A => array(0x643), 0x1EE6C => array(0x645), + 0x1EE6D => array(0x646), 0x1EE6E => array(0x633), 0x1EE6F => array(0x639), + 0x1EE70 => array(0x641), 0x1EE71 => array(0x635), 0x1EE72 => array(0x642), + 0x1EE74 => array(0x634), 0x1EE75 => array(0x62A), 0x1EE76 => array(0x62B), + 0x1EE77 => array(0x62E), 0x1EE79 => array(0x636), 0x1EE7A => array(0x638), + 0x1EE7B => array(0x63A), 0x1EE7C => array(0x66E), 0x1EE7E => array(0x6A1), + 0x1EE80 => array(0x627), 0x1EE81 => array(0x628), 0x1EE82 => array(0x62C), + 0x1EE83 => array(0x62F), 0x1EE84 => array(0x647), 0x1EE85 => array(0x648), + 0x1EE86 => array(0x632), 0x1EE87 => array(0x62D), 0x1EE88 => array(0x637), + 0x1EE89 => array(0x64A), 0x1EE8B => array(0x644), 0x1EE8C => array(0x645), + 0x1EE8D => array(0x646), 0x1EE8E => array(0x633), 0x1EE8F => array(0x639), + 0x1EE90 => array(0x641), 0x1EE91 => array(0x635), 0x1EE92 => array(0x642), + 0x1EE93 => array(0x631), 0x1EE94 => array(0x634), 0x1EE95 => array(0x62A), + 0x1EE96 => array(0x62B), 0x1EE97 => array(0x62E), 0x1EE98 => array(0x630), + 0x1EE99 => array(0x636), 0x1EE9A => array(0x638), 0x1EE9B => array(0x63A), + 0x1EEA1 => array(0x628), 0x1EEA2 => array(0x62C), 0x1EEA3 => array(0x62F), + 0x1EEA5 => array(0x648), 0x1EEA6 => array(0x632), 0x1EEA7 => array(0x62D), + 0x1EEA8 => array(0x637), 0x1EEA9 => array(0x64A), 0x1EEAB => array(0x644), + 0x1EEAC => array(0x645), 0x1EEAD => array(0x646), 0x1EEAE => array(0x633), + 0x1EEAF => array(0x639), 0x1EEB0 => array(0x641), 0x1EEB1 => array(0x635), + 0x1EEB2 => array(0x642), 0x1EEB3 => array(0x631), 0x1EEB4 => array(0x634), + 0x1EEB5 => array(0x62A), 0x1EEB6 => array(0x62B), 0x1EEB7 => array(0x62E), + 0x1EEB8 => array(0x630), 0x1EEB9 => array(0x636), 0x1EEBA => array(0x638), + 0x1EEBB => array(0x63A), 0x1F12A => array(0x3014, 0x73, 0x3015), 0x1F12B => array(0x63), + 0x1F12C => array(0x72), 0x1F12D => array(0x63, 0x64), 0x1F12E => array(0x77, 0x7A), + 0x1F130 => array(0x61), 0x1F131 => array(0x62), 0x1F132 => array(0x63), + 0x1F133 => array(0x64), 0x1F134 => array(0x65), 0x1F135 => array(0x66), + 0x1F136 => array(0x67), 0x1F137 => array(0x68), 0x1F138 => array(0x69), + 0x1F139 => array(0x6A), 0x1F13A => array(0x6B), 0x1F13B => array(0x6C), + 0x1F13C => array(0x6D), 0x1F13D => array(0x6E), 0x1F13E => array(0x6F), + 0x1F13F => array(0x70), 0x1F140 => array(0x71), 0x1F141 => array(0x72), + 0x1F142 => array(0x73), 0x1F143 => array(0x74), 0x1F144 => array(0x75), + 0x1F145 => array(0x76), 0x1F146 => array(0x77), 0x1F147 => array(0x78), + 0x1F148 => array(0x79), 0x1F149 => array(0x7A), 0x1F14A => array(0x68, 0x76), + 0x1F14B => array(0x6D, 0x76), 0x1F14C => array(0x73, 0x64), 0x1F14D => array(0x73, 0x73), + 0x1F14E => array(0x70, 0x70, 0x76), 0x1F14F => array(0x77, 0x63), 0x1F16A => array(0x6D, 0x63), + 0x1F16B => array(0x6D, 0x64), 0x1F190 => array(0x64, 0x6A), 0x1F200 => array(0x307B, 0x304B), + 0x1F201 => array(0x30B3, 0x30B3), 0x1F202 => array(0x30B5), 0x1F210 => array(0x624B), + 0x1F211 => array(0x5B57), 0x1F212 => array(0x53CC), 0x1F213 => array(0x30C7), + 0x1F214 => array(0x4E8C), 0x1F215 => array(0x591A), 0x1F216 => array(0x89E3), + 0x1F217 => array(0x5929), 0x1F218 => array(0x4EA4), 0x1F219 => array(0x6620), + 0x1F21A => array(0x7121), 0x1F21B => array(0x6599), 0x1F21C => array(0x524D), + 0x1F21D => array(0x5F8C), 0x1F21E => array(0x518D), 0x1F21F => array(0x65B0), + 0x1F220 => array(0x521D), 0x1F221 => array(0x7D42), 0x1F222 => array(0x751F), + 0x1F223 => array(0x8CA9), 0x1F224 => array(0x58F0), 0x1F225 => array(0x5439), + 0x1F226 => array(0x6F14), 0x1F227 => array(0x6295), 0x1F228 => array(0x6355), + 0x1F229 => array(0x4E00), 0x1F22A => array(0x4E09), 0x1F22B => array(0x904A), + 0x1F22C => array(0x5DE6), 0x1F22D => array(0x4E2D), 0x1F22E => array(0x53F3), + 0x1F22F => array(0x6307), 0x1F230 => array(0x8D70), 0x1F231 => array(0x6253), + 0x1F232 => array(0x7981), 0x1F233 => array(0x7A7A), 0x1F234 => array(0x5408), + 0x1F235 => array(0x6E80), 0x1F236 => array(0x6709), 0x1F237 => array(0x6708), + 0x1F238 => array(0x7533), 0x1F239 => array(0x5272), 0x1F23A => array(0x55B6), + 0x1F240 => array(0x3014, 0x672C, 0x3015), 0x1F241 => array(0x3014, 0x4E09, 0x3015), 0x1F242 => array(0x3014, 0x4E8C, 0x3015), + 0x1F243 => array(0x3014, 0x5B89, 0x3015), 0x1F244 => array(0x3014, 0x70B9, 0x3015), 0x1F245 => array(0x3014, 0x6253, 0x3015), + 0x1F246 => array(0x3014, 0x76D7, 0x3015), 0x1F247 => array(0x3014, 0x52DD, 0x3015), 0x1F248 => array(0x3014, 0x6557, 0x3015), + 0x1F250 => array(0x5F97), 0x1F251 => array(0x53EF), 0x2F800 => array(0x4E3D), + 0x2F801 => array(0x4E38), 0x2F802 => array(0x4E41), 0x2F803 => array(0x20122), + 0x2F804 => array(0x4F60), 0x2F805 => array(0x4FAE), 0x2F806 => array(0x4FBB), + 0x2F807 => array(0x5002), 0x2F808 => array(0x507A), 0x2F809 => array(0x5099), + 0x2F80A => array(0x50E7), 0x2F80B => array(0x50CF), 0x2F80C => array(0x349E), + 0x2F80D => array(0x2063A), 0x2F80E => array(0x514D), 0x2F80F => array(0x5154), + 0x2F810 => array(0x5164), 0x2F811 => array(0x5177), 0x2F812 => array(0x2051C), + 0x2F813 => array(0x34B9), 0x2F814 => array(0x5167), 0x2F815 => array(0x518D), + 0x2F816 => array(0x2054B), 0x2F817 => array(0x5197), 0x2F818 => array(0x51A4), + 0x2F819 => array(0x4ECC), 0x2F81A => array(0x51AC), 0x2F81B => array(0x51B5), + 0x2F81C => array(0x291DF), 0x2F81D => array(0x51F5), 0x2F81E => array(0x5203), + 0x2F81F => array(0x34DF), 0x2F820 => array(0x523B), 0x2F821 => array(0x5246), + 0x2F822 => array(0x5272), 0x2F823 => array(0x5277), 0x2F824 => array(0x3515), + 0x2F825 => array(0x52C7), 0x2F826 => array(0x52C9), 0x2F827 => array(0x52E4), + 0x2F828 => array(0x52FA), 0x2F829 => array(0x5305), 0x2F82A => array(0x5306), + 0x2F82B => array(0x5317), 0x2F82C => array(0x5349), 0x2F82D => array(0x5351), + 0x2F82E => array(0x535A), 0x2F82F => array(0x5373), 0x2F830 => array(0x537D), + 0x2F831 => array(0x537F), 0x2F832 => array(0x537F), 0x2F833 => array(0x537F), + 0x2F834 => array(0x20A2C), 0x2F835 => array(0x7070), 0x2F836 => array(0x53CA), + 0x2F837 => array(0x53DF), 0x2F838 => array(0x20B63), 0x2F839 => array(0x53EB), + 0x2F83A => array(0x53F1), 0x2F83B => array(0x5406), 0x2F83C => array(0x549E), + 0x2F83D => array(0x5438), 0x2F83E => array(0x5448), 0x2F83F => array(0x5468), + 0x2F840 => array(0x54A2), 0x2F841 => array(0x54F6), 0x2F842 => array(0x5510), + 0x2F843 => array(0x5553), 0x2F844 => array(0x5563), 0x2F845 => array(0x5584), + 0x2F846 => array(0x5584), 0x2F847 => array(0x5599), 0x2F848 => array(0x55AB), + 0x2F849 => array(0x55B3), 0x2F84A => array(0x55C2), 0x2F84B => array(0x5716), + 0x2F84C => array(0x5606), 0x2F84D => array(0x5717), 0x2F84E => array(0x5651), + 0x2F84F => array(0x5674), 0x2F850 => array(0x5207), 0x2F851 => array(0x58EE), + 0x2F852 => array(0x57CE), 0x2F853 => array(0x57F4), 0x2F854 => array(0x580D), + 0x2F855 => array(0x578B), 0x2F856 => array(0x5832), 0x2F857 => array(0x5831), + 0x2F858 => array(0x58AC), 0x2F859 => array(0x214E4), 0x2F85A => array(0x58F2), + 0x2F85B => array(0x58F7), 0x2F85C => array(0x5906), 0x2F85D => array(0x591A), + 0x2F85E => array(0x5922), 0x2F85F => array(0x5962), 0x2F860 => array(0x216A8), + 0x2F861 => array(0x216EA), 0x2F862 => array(0x59EC), 0x2F863 => array(0x5A1B), + 0x2F864 => array(0x5A27), 0x2F865 => array(0x59D8), 0x2F866 => array(0x5A66), + 0x2F867 => array(0x36EE), 0x2F869 => array(0x5B08), 0x2F86A => array(0x5B3E), + 0x2F86B => array(0x5B3E), 0x2F86C => array(0x219C8), 0x2F86D => array(0x5BC3), + 0x2F86E => array(0x5BD8), 0x2F86F => array(0x5BE7), 0x2F870 => array(0x5BF3), + 0x2F871 => array(0x21B18), 0x2F872 => array(0x5BFF), 0x2F873 => array(0x5C06), + 0x2F875 => array(0x5C22), 0x2F876 => array(0x3781), 0x2F877 => array(0x5C60), + 0x2F878 => array(0x5C6E), 0x2F879 => array(0x5CC0), 0x2F87A => array(0x5C8D), + 0x2F87B => array(0x21DE4), 0x2F87C => array(0x5D43), 0x2F87D => array(0x21DE6), + 0x2F87E => array(0x5D6E), 0x2F87F => array(0x5D6B), 0x2F880 => array(0x5D7C), + 0x2F881 => array(0x5DE1), 0x2F882 => array(0x5DE2), 0x2F883 => array(0x382F), + 0x2F884 => array(0x5DFD), 0x2F885 => array(0x5E28), 0x2F886 => array(0x5E3D), + 0x2F887 => array(0x5E69), 0x2F888 => array(0x3862), 0x2F889 => array(0x22183), + 0x2F88A => array(0x387C), 0x2F88B => array(0x5EB0), 0x2F88C => array(0x5EB3), + 0x2F88D => array(0x5EB6), 0x2F88E => array(0x5ECA), 0x2F88F => array(0x2A392), + 0x2F890 => array(0x5EFE), 0x2F891 => array(0x22331), 0x2F892 => array(0x22331), + 0x2F893 => array(0x8201), 0x2F894 => array(0x5F22), 0x2F895 => array(0x5F22), + 0x2F896 => array(0x38C7), 0x2F897 => array(0x232B8), 0x2F898 => array(0x261DA), + 0x2F899 => array(0x5F62), 0x2F89A => array(0x5F6B), 0x2F89B => array(0x38E3), + 0x2F89C => array(0x5F9A), 0x2F89D => array(0x5FCD), 0x2F89E => array(0x5FD7), + 0x2F89F => array(0x5FF9), 0x2F8A0 => array(0x6081), 0x2F8A1 => array(0x393A), + 0x2F8A2 => array(0x391C), 0x2F8A3 => array(0x6094), 0x2F8A4 => array(0x226D4), + 0x2F8A5 => array(0x60C7), 0x2F8A6 => array(0x6148), 0x2F8A7 => array(0x614C), + 0x2F8A8 => array(0x614E), 0x2F8A9 => array(0x614C), 0x2F8AA => array(0x617A), + 0x2F8AB => array(0x618E), 0x2F8AC => array(0x61B2), 0x2F8AD => array(0x61A4), + 0x2F8AE => array(0x61AF), 0x2F8AF => array(0x61DE), 0x2F8B0 => array(0x61F2), + 0x2F8B1 => array(0x61F6), 0x2F8B2 => array(0x6210), 0x2F8B3 => array(0x621B), + 0x2F8B4 => array(0x625D), 0x2F8B5 => array(0x62B1), 0x2F8B6 => array(0x62D4), + 0x2F8B7 => array(0x6350), 0x2F8B8 => array(0x22B0C), 0x2F8B9 => array(0x633D), + 0x2F8BA => array(0x62FC), 0x2F8BB => array(0x6368), 0x2F8BC => array(0x6383), + 0x2F8BD => array(0x63E4), 0x2F8BE => array(0x22BF1), 0x2F8BF => array(0x6422), + 0x2F8C0 => array(0x63C5), 0x2F8C1 => array(0x63A9), 0x2F8C2 => array(0x3A2E), + 0x2F8C3 => array(0x6469), 0x2F8C4 => array(0x647E), 0x2F8C5 => array(0x649D), + 0x2F8C6 => array(0x6477), 0x2F8C7 => array(0x3A6C), 0x2F8C8 => array(0x654F), + 0x2F8C9 => array(0x656C), 0x2F8CA => array(0x2300A), 0x2F8CB => array(0x65E3), + 0x2F8CC => array(0x66F8), 0x2F8CD => array(0x6649), 0x2F8CE => array(0x3B19), + 0x2F8CF => array(0x6691), 0x2F8D0 => array(0x3B08), 0x2F8D1 => array(0x3AE4), + 0x2F8D2 => array(0x5192), 0x2F8D3 => array(0x5195), 0x2F8D4 => array(0x6700), + 0x2F8D5 => array(0x669C), 0x2F8D6 => array(0x80AD), 0x2F8D7 => array(0x43D9), + 0x2F8D8 => array(0x6717), 0x2F8D9 => array(0x671B), 0x2F8DA => array(0x6721), + 0x2F8DB => array(0x675E), 0x2F8DC => array(0x6753), 0x2F8DD => array(0x233C3), + 0x2F8DE => array(0x3B49), 0x2F8DF => array(0x67FA), 0x2F8E0 => array(0x6785), + 0x2F8E1 => array(0x6852), 0x2F8E2 => array(0x6885), 0x2F8E3 => array(0x2346D), + 0x2F8E4 => array(0x688E), 0x2F8E5 => array(0x681F), 0x2F8E6 => array(0x6914), + 0x2F8E7 => array(0x3B9D), 0x2F8E8 => array(0x6942), 0x2F8E9 => array(0x69A3), + 0x2F8EA => array(0x69EA), 0x2F8EB => array(0x6AA8), 0x2F8EC => array(0x236A3), + 0x2F8ED => array(0x6ADB), 0x2F8EE => array(0x3C18), 0x2F8EF => array(0x6B21), + 0x2F8F0 => array(0x238A7), 0x2F8F1 => array(0x6B54), 0x2F8F2 => array(0x3C4E), + 0x2F8F3 => array(0x6B72), 0x2F8F4 => array(0x6B9F), 0x2F8F5 => array(0x6BBA), + 0x2F8F6 => array(0x6BBB), 0x2F8F7 => array(0x23A8D), 0x2F8F8 => array(0x21D0B), + 0x2F8F9 => array(0x23AFA), 0x2F8FA => array(0x6C4E), 0x2F8FB => array(0x23CBC), + 0x2F8FC => array(0x6CBF), 0x2F8FD => array(0x6CCD), 0x2F8FE => array(0x6C67), + 0x2F8FF => array(0x6D16), 0x2F900 => array(0x6D3E), 0x2F901 => array(0x6D77), + 0x2F902 => array(0x6D41), 0x2F903 => array(0x6D69), 0x2F904 => array(0x6D78), + 0x2F905 => array(0x6D85), 0x2F906 => array(0x23D1E), 0x2F907 => array(0x6D34), + 0x2F908 => array(0x6E2F), 0x2F909 => array(0x6E6E), 0x2F90A => array(0x3D33), + 0x2F90B => array(0x6ECB), 0x2F90C => array(0x6EC7), 0x2F90D => array(0x23ED1), + 0x2F90E => array(0x6DF9), 0x2F90F => array(0x6F6E), 0x2F910 => array(0x23F5E), + 0x2F911 => array(0x23F8E), 0x2F912 => array(0x6FC6), 0x2F913 => array(0x7039), + 0x2F914 => array(0x701E), 0x2F915 => array(0x701B), 0x2F916 => array(0x3D96), + 0x2F917 => array(0x704A), 0x2F918 => array(0x707D), 0x2F919 => array(0x7077), + 0x2F91A => array(0x70AD), 0x2F91B => array(0x20525), 0x2F91C => array(0x7145), + 0x2F91D => array(0x24263), 0x2F91E => array(0x719C), 0x2F920 => array(0x7228), + 0x2F921 => array(0x7235), 0x2F922 => array(0x7250), 0x2F923 => array(0x24608), + 0x2F924 => array(0x7280), 0x2F925 => array(0x7295), 0x2F926 => array(0x24735), + 0x2F927 => array(0x24814), 0x2F928 => array(0x737A), 0x2F929 => array(0x738B), + 0x2F92A => array(0x3EAC), 0x2F92B => array(0x73A5), 0x2F92C => array(0x3EB8), + 0x2F92D => array(0x3EB8), 0x2F92E => array(0x7447), 0x2F92F => array(0x745C), + 0x2F930 => array(0x7471), 0x2F931 => array(0x7485), 0x2F932 => array(0x74CA), + 0x2F933 => array(0x3F1B), 0x2F934 => array(0x7524), 0x2F935 => array(0x24C36), + 0x2F936 => array(0x753E), 0x2F937 => array(0x24C92), 0x2F938 => array(0x7570), + 0x2F939 => array(0x2219F), 0x2F93A => array(0x7610), 0x2F93B => array(0x24FA1), + 0x2F93C => array(0x24FB8), 0x2F93D => array(0x25044), 0x2F93E => array(0x3FFC), + 0x2F93F => array(0x4008), 0x2F940 => array(0x76F4), 0x2F941 => array(0x250F3), + 0x2F942 => array(0x250F2), 0x2F943 => array(0x25119), 0x2F944 => array(0x25133), + 0x2F945 => array(0x771E), 0x2F946 => array(0x771F), 0x2F947 => array(0x771F), + 0x2F948 => array(0x774A), 0x2F949 => array(0x4039), 0x2F94A => array(0x778B), + 0x2F94B => array(0x4046), 0x2F94C => array(0x4096), 0x2F94D => array(0x2541D), + 0x2F94E => array(0x784E), 0x2F94F => array(0x788C), 0x2F950 => array(0x78CC), + 0x2F951 => array(0x40E3), 0x2F952 => array(0x25626), 0x2F953 => array(0x7956), + 0x2F954 => array(0x2569A), 0x2F955 => array(0x256C5), 0x2F956 => array(0x798F), + 0x2F957 => array(0x79EB), 0x2F958 => array(0x412F), 0x2F959 => array(0x7A40), + 0x2F95A => array(0x7A4A), 0x2F95B => array(0x7A4F), 0x2F95C => array(0x2597C), + 0x2F95D => array(0x25AA7), 0x2F95E => array(0x25AA7), 0x2F960 => array(0x4202), + 0x2F961 => array(0x25BAB), 0x2F962 => array(0x7BC6), 0x2F963 => array(0x7BC9), + 0x2F964 => array(0x4227), 0x2F965 => array(0x25C80), 0x2F966 => array(0x7CD2), + 0x2F967 => array(0x42A0), 0x2F968 => array(0x7CE8), 0x2F969 => array(0x7CE3), + 0x2F96A => array(0x7D00), 0x2F96B => array(0x25F86), 0x2F96C => array(0x7D63), + 0x2F96D => array(0x4301), 0x2F96E => array(0x7DC7), 0x2F96F => array(0x7E02), + 0x2F970 => array(0x7E45), 0x2F971 => array(0x4334), 0x2F972 => array(0x26228), + 0x2F973 => array(0x26247), 0x2F974 => array(0x4359), 0x2F975 => array(0x262D9), + 0x2F976 => array(0x7F7A), 0x2F977 => array(0x2633E), 0x2F978 => array(0x7F95), + 0x2F979 => array(0x7FFA), 0x2F97A => array(0x8005), 0x2F97B => array(0x264DA), + 0x2F97C => array(0x26523), 0x2F97D => array(0x8060), 0x2F97E => array(0x265A8), + 0x2F97F => array(0x8070), 0x2F980 => array(0x2335F), 0x2F981 => array(0x43D5), + 0x2F982 => array(0x80B2), 0x2F983 => array(0x8103), 0x2F984 => array(0x440B), + 0x2F985 => array(0x813E), 0x2F986 => array(0x5AB5), 0x2F987 => array(0x267A7), + 0x2F988 => array(0x267B5), 0x2F989 => array(0x23393), 0x2F98A => array(0x2339C), + 0x2F98B => array(0x8201), 0x2F98C => array(0x8204), 0x2F98D => array(0x8F9E), + 0x2F98E => array(0x446B), 0x2F98F => array(0x8291), 0x2F990 => array(0x828B), + 0x2F991 => array(0x829D), 0x2F992 => array(0x52B3), 0x2F993 => array(0x82B1), + 0x2F994 => array(0x82B3), 0x2F995 => array(0x82BD), 0x2F996 => array(0x82E6), + 0x2F997 => array(0x26B3C), 0x2F998 => array(0x82E5), 0x2F999 => array(0x831D), + 0x2F99A => array(0x8363), 0x2F99B => array(0x83AD), 0x2F99C => array(0x8323), + 0x2F99D => array(0x83BD), 0x2F99E => array(0x83E7), 0x2F99F => array(0x8457), + 0x2F9A0 => array(0x8353), 0x2F9A1 => array(0x83CA), 0x2F9A2 => array(0x83CC), + 0x2F9A3 => array(0x83DC), 0x2F9A4 => array(0x26C36), 0x2F9A5 => array(0x26D6B), + 0x2F9A6 => array(0x26CD5), 0x2F9A7 => array(0x452B), 0x2F9A8 => array(0x84F1), + 0x2F9A9 => array(0x84F3), 0x2F9AA => array(0x8516), 0x2F9AB => array(0x273CA), + 0x2F9AC => array(0x8564), 0x2F9AD => array(0x26F2C), 0x2F9AE => array(0x455D), + 0x2F9AF => array(0x4561), 0x2F9B0 => array(0x26FB1), 0x2F9B1 => array(0x270D2), + 0x2F9B2 => array(0x456B), 0x2F9B3 => array(0x8650), 0x2F9B4 => array(0x865C), + 0x2F9B5 => array(0x8667), 0x2F9B6 => array(0x8669), 0x2F9B7 => array(0x86A9), + 0x2F9B8 => array(0x8688), 0x2F9B9 => array(0x870E), 0x2F9BA => array(0x86E2), + 0x2F9BB => array(0x8779), 0x2F9BC => array(0x8728), 0x2F9BD => array(0x876B), + 0x2F9BE => array(0x8786), 0x2F9C0 => array(0x87E1), 0x2F9C1 => array(0x8801), + 0x2F9C2 => array(0x45F9), 0x2F9C3 => array(0x8860), 0x2F9C4 => array(0x8863), + 0x2F9C5 => array(0x27667), 0x2F9C6 => array(0x88D7), 0x2F9C7 => array(0x88DE), + 0x2F9C8 => array(0x4635), 0x2F9C9 => array(0x88FA), 0x2F9CA => array(0x34BB), + 0x2F9CB => array(0x278AE), 0x2F9CC => array(0x27966), 0x2F9CD => array(0x46BE), + 0x2F9CE => array(0x46C7), 0x2F9CF => array(0x8AA0), 0x2F9D0 => array(0x8AED), + 0x2F9D1 => array(0x8B8A), 0x2F9D2 => array(0x8C55), 0x2F9D3 => array(0x27CA8), + 0x2F9D4 => array(0x8CAB), 0x2F9D5 => array(0x8CC1), 0x2F9D6 => array(0x8D1B), + 0x2F9D7 => array(0x8D77), 0x2F9D8 => array(0x27F2F), 0x2F9D9 => array(0x20804), + 0x2F9DA => array(0x8DCB), 0x2F9DB => array(0x8DBC), 0x2F9DC => array(0x8DF0), + 0x2F9DD => array(0x208DE), 0x2F9DE => array(0x8ED4), 0x2F9DF => array(0x8F38), + 0x2F9E0 => array(0x285D2), 0x2F9E1 => array(0x285ED), 0x2F9E2 => array(0x9094), + 0x2F9E3 => array(0x90F1), 0x2F9E4 => array(0x9111), 0x2F9E5 => array(0x2872E), + 0x2F9E6 => array(0x911B), 0x2F9E7 => array(0x9238), 0x2F9E8 => array(0x92D7), + 0x2F9E9 => array(0x92D8), 0x2F9EA => array(0x927C), 0x2F9EB => array(0x93F9), + 0x2F9EC => array(0x9415), 0x2F9ED => array(0x28BFA), 0x2F9EE => array(0x958B), + 0x2F9EF => array(0x4995), 0x2F9F0 => array(0x95B7), 0x2F9F1 => array(0x28D77), + 0x2F9F2 => array(0x49E6), 0x2F9F3 => array(0x96C3), 0x2F9F4 => array(0x5DB2), + 0x2F9F5 => array(0x9723), 0x2F9F6 => array(0x29145), 0x2F9F7 => array(0x2921A), + 0x2F9F8 => array(0x4A6E), 0x2F9F9 => array(0x4A76), 0x2F9FA => array(0x97E0), + 0x2F9FB => array(0x2940A), 0x2F9FC => array(0x4AB2), 0x2F9FD => array(0x29496), + 0x2F9FE => array(0x980B), 0x2F9FF => array(0x980B), 0x2FA00 => array(0x9829), + 0x2FA01 => array(0x295B6), 0x2FA02 => array(0x98E2), 0x2FA03 => array(0x4B33), + 0x2FA04 => array(0x9929), 0x2FA05 => array(0x99A7), 0x2FA06 => array(0x99C2), + 0x2FA07 => array(0x99FE), 0x2FA08 => array(0x4BCE), 0x2FA09 => array(0x29B30), + 0x2FA0A => array(0x9B12), 0x2FA0B => array(0x9C40), 0x2FA0C => array(0x9CFD), + 0x2FA0D => array(0x4CCE), 0x2FA0E => array(0x4CED), 0x2FA0F => array(0x9D67), + 0x2FA10 => array(0x2A0CE), 0x2FA11 => array(0x4CF8), 0x2FA12 => array(0x2A105), + 0x2FA13 => array(0x2A20E), 0x2FA14 => array(0x2A291), 0x2FA15 => array(0x9EBB), + 0x2FA16 => array(0x4D56), 0x2FA17 => array(0x9EF9), 0x2FA18 => array(0x9EFE), + 0x2FA19 => array(0x9F05), 0x2FA1A => array(0x9F0F), 0x2FA1B => array(0x9F16), + 0x2FA1C => array(0x9F3B), 0x2FA1D => array(0x2A600) + ), + 'norm_combcls' => array(0x334 => 1, 0x335 => 1, 0x336 => 1, 0x337 => 1, + 0x338 => 1, 0x93C => 7, 0x9BC => 7, 0xA3C => 7, 0xABC => 7, + 0xB3C => 7, 0xCBC => 7, 0x1037 => 7, 0x3099 => 8, 0x309A => 8, + 0x94D => 9, 0x9CD => 9, 0xA4D => 9, 0xACD => 9, 0xB4D => 9, + 0xBCD => 9, 0xC4D => 9, 0xCCD => 9, 0xD4D => 9, 0xDCA => 9, + 0xE3A => 9, 0xF84 => 9, 0x1039 => 9, 0x1714 => 9, 0x1734 => 9, + 0x17D2 => 9, 0x5B0 => 10, 0x5B1 => 11, 0x5B2 => 12, 0x5B3 => 13, + 0x5B4 => 14, 0x5B5 => 15, 0x5B6 => 16, 0x5B7 => 17, 0x5B8 => 18, + 0x5B9 => 19, 0x5BB => 20, 0x5Bc => 21, 0x5BD => 22, 0x5BF => 23, + 0x5C1 => 24, 0x5C2 => 25, 0xFB1E => 26, 0x64B => 27, 0x64C => 28, + 0x64D => 29, 0x64E => 30, 0x64F => 31, 0x650 => 32, 0x651 => 33, + 0x652 => 34, 0x670 => 35, 0x711 => 36, 0xC55 => 84, 0xC56 => 91, + 0xE38 => 103, 0xE39 => 103, 0xE48 => 107, 0xE49 => 107, 0xE4A => 107, + 0xE4B => 107, 0xEB8 => 118, 0xEB9 => 118, 0xEC8 => 122, 0xEC9 => 122, + 0xECA => 122, 0xECB => 122, 0xF71 => 129, 0xF72 => 130, 0xF7A => 130, + 0xF7B => 130, 0xF7C => 130, 0xF7D => 130, 0xF80 => 130, 0xF74 => 132, + 0x321 => 202, 0x322 => 202, 0x327 => 202, 0x328 => 202, 0x31B => 216, + 0xF39 => 216, 0x1D165 => 216, 0x1D166 => 216, 0x1D16E => 216, 0x1D16F => 216, + 0x1D170 => 216, 0x1D171 => 216, 0x1D172 => 216, 0x302A => 218, 0x316 => 220, + 0x317 => 220, 0x318 => 220, 0x319 => 220, 0x31C => 220, 0x31D => 220, + 0x31E => 220, 0x31F => 220, 0x320 => 220, 0x323 => 220, 0x324 => 220, + 0x325 => 220, 0x326 => 220, 0x329 => 220, 0x32A => 220, 0x32B => 220, + 0x32C => 220, 0x32D => 220, 0x32E => 220, 0x32F => 220, 0x330 => 220, + 0x331 => 220, 0x332 => 220, 0x333 => 220, 0x339 => 220, 0x33A => 220, + 0x33B => 220, 0x33C => 220, 0x347 => 220, 0x348 => 220, 0x349 => 220, + 0x34D => 220, 0x34E => 220, 0x353 => 220, 0x354 => 220, 0x355 => 220, + 0x356 => 220, 0x591 => 220, 0x596 => 220, 0x59B => 220, 0x5A3 => 220, + 0x5A4 => 220, 0x5A5 => 220, 0x5A6 => 220, 0x5A7 => 220, 0x5AA => 220, + 0x655 => 220, 0x656 => 220, 0x6E3 => 220, 0x6EA => 220, 0x6ED => 220, + 0x731 => 220, 0x734 => 220, 0x737 => 220, 0x738 => 220, 0x739 => 220, + 0x73B => 220, 0x73C => 220, 0x73E => 220, 0x742 => 220, 0x744 => 220, + 0x746 => 220, 0x748 => 220, 0x952 => 220, 0xF18 => 220, 0xF19 => 220, + 0xF35 => 220, 0xF37 => 220, 0xFC6 => 220, 0x193B => 220, 0x20E8 => 220, + 0x1D17B => 220, 0x1D17C => 220, 0x1D17D => 220, 0x1D17E => 220, 0x1D17F => 220, + 0x1D180 => 220, 0x1D181 => 220, 0x1D182 => 220, 0x1D18A => 220, 0x1D18B => 220, + 0x59A => 222, 0x5AD => 222, 0x1929 => 222, 0x302D => 222, 0x302E => 224, + 0x302F => 224, 0x1D16D => 226, 0x5AE => 228, 0x18A9 => 228, 0x302B => 228, + 0x300 => 230, 0x301 => 230, 0x302 => 230, 0x303 => 230, 0x304 => 230, + 0x305 => 230, 0x306 => 230, 0x307 => 230, 0x308 => 230, 0x309 => 230, + 0x30A => 230, 0x30B => 230, 0x30C => 230, 0x30D => 230, 0x30E => 230, + 0x30F => 230, 0x310 => 230, 0x311 => 230, 0x312 => 230, 0x313 => 230, + 0x314 => 230, 0x33D => 230, 0x33E => 230, 0x33F => 230, 0x340 => 230, + 0x341 => 230, 0x342 => 230, 0x343 => 230, 0x344 => 230, 0x346 => 230, + 0x34A => 230, 0x34B => 230, 0x34C => 230, 0x350 => 230, 0x351 => 230, + 0x352 => 230, 0x357 => 230, 0x363 => 230, 0x364 => 230, 0x365 => 230, + 0x366 => 230, 0x367 => 230, 0x368 => 230, 0x369 => 230, 0x36A => 230, + 0x36B => 230, 0x36C => 230, 0x36D => 230, 0x36E => 230, 0x36F => 230, + 0x483 => 230, 0x484 => 230, 0x485 => 230, 0x486 => 230, 0x592 => 230, + 0x593 => 230, 0x594 => 230, 0x595 => 230, 0x597 => 230, 0x598 => 230, + 0x599 => 230, 0x59C => 230, 0x59D => 230, 0x59E => 230, 0x59F => 230, + 0x5A0 => 230, 0x5A1 => 230, 0x5A8 => 230, 0x5A9 => 230, 0x5AB => 230, + 0x5AC => 230, 0x5AF => 230, 0x5C4 => 230, 0x610 => 230, 0x611 => 230, + 0x612 => 230, 0x613 => 230, 0x614 => 230, 0x615 => 230, 0x653 => 230, + 0x654 => 230, 0x657 => 230, 0x658 => 230, 0x6D6 => 230, 0x6D7 => 230, + 0x6D8 => 230, 0x6D9 => 230, 0x6DA => 230, 0x6DB => 230, 0x6DC => 230, + 0x6DF => 230, 0x6E0 => 230, 0x6E1 => 230, 0x6E2 => 230, 0x6E4 => 230, + 0x6E7 => 230, 0x6E8 => 230, 0x6EB => 230, 0x6EC => 230, 0x730 => 230, + 0x732 => 230, 0x733 => 230, 0x735 => 230, 0x736 => 230, 0x73A => 230, + 0x73D => 230, 0x73F => 230, 0x740 => 230, 0x741 => 230, 0x743 => 230, + 0x745 => 230, 0x747 => 230, 0x749 => 230, 0x74A => 230, 0x951 => 230, + 0x953 => 230, 0x954 => 230, 0xF82 => 230, 0xF83 => 230, 0xF86 => 230, + 0xF87 => 230, 0x170D => 230, 0x193A => 230, 0x20D0 => 230, 0x20D1 => 230, + 0x20D4 => 230, 0x20D5 => 230, 0x20D6 => 230, 0x20D7 => 230, 0x20DB => 230, + 0x20DC => 230, 0x20E1 => 230, 0x20E7 => 230, 0x20E9 => 230, 0xFE20 => 230, + 0xFE21 => 230, 0xFE22 => 230, 0xFE23 => 230, 0x1D185 => 230, 0x1D186 => 230, + 0x1D187 => 230, 0x1D189 => 230, 0x1D188 => 230, 0x1D1AA => 230, 0x1D1AB => 230, + 0x1D1AC => 230, 0x1D1AD => 230, 0x315 => 232, 0x31A => 232, 0x302C => 232, + 0x35F => 233, 0x362 => 233, 0x35D => 234, 0x35E => 234, 0x360 => 234, + 0x361 => 234, 0x345 => 240 + ) + ); +} \ No newline at end of file diff --git a/libs/idna_convert/transcode_wrapper.php b/libs/idna_convert/transcode_wrapper.php new file mode 100644 index 000000000..6862e40cc --- /dev/null +++ b/libs/idna_convert/transcode_wrapper.php @@ -0,0 +1,137 @@ + + * @version 0.1.0 + */ + +/** + * Convert a string from any of various encodings to UTF-8 + * + * @param string String to encode + *[@param string Encoding; Default: ISO-8859-1] + *[@param bool Safe Mode: if set to TRUE, the original string is retunred on errors] + * @return string The encoded string or false on failure + * @since 0.0.1 + */ +function encode_utf8($string = '', $encoding = 'iso-8859-1', $safe_mode = false) +{ + $safe = ($safe_mode) ? $string : false; + if (strtoupper($encoding) == 'UTF-8' || strtoupper($encoding) == 'UTF8') { + return $string; + } elseif (strtoupper($encoding) == 'ISO-8859-1') { + return utf8_encode($string); + } elseif (strtoupper($encoding) == 'WINDOWS-1252') { + return utf8_encode(map_w1252_iso8859_1($string)); + } elseif (strtoupper($encoding) == 'UNICODE-1-1-UTF-7') { + $encoding = 'utf-7'; + } + if (function_exists('mb_convert_encoding')) { + $conv = @mb_convert_encoding($string, 'UTF-8', strtoupper($encoding)); + if ($conv) return $conv; + } + if (function_exists('iconv')) { + $conv = @iconv(strtoupper($encoding), 'UTF-8', $string); + if ($conv) return $conv; + } + if (function_exists('libiconv')) { + $conv = @libiconv(strtoupper($encoding), 'UTF-8', $string); + if ($conv) return $conv; + } + return $safe; +} + +/** + * Convert a string from UTF-8 to any of various encodings + * + * @param string String to decode + *[@param string Encoding; Default: ISO-8859-1] + *[@param bool Safe Mode: if set to TRUE, the original string is retunred on errors] + * @return string The decoded string or false on failure + * @since 0.0.1 + */ +function decode_utf8($string = '', $encoding = 'iso-8859-1', $safe_mode = false) +{ + $safe = ($safe_mode) ? $string : false; + if (!$encoding) $encoding = 'ISO-8859-1'; + if (strtoupper($encoding) == 'UTF-8' || strtoupper($encoding) == 'UTF8') { + return $string; + } elseif (strtoupper($encoding) == 'ISO-8859-1') { + return utf8_decode($string); + } elseif (strtoupper($encoding) == 'WINDOWS-1252') { + return map_iso8859_1_w1252(utf8_decode($string)); + } elseif (strtoupper($encoding) == 'UNICODE-1-1-UTF-7') { + $encoding = 'utf-7'; + } + if (function_exists('mb_convert_encoding')) { + $conv = @mb_convert_encoding($string, strtoupper($encoding), 'UTF-8'); + if ($conv) return $conv; + } + if (function_exists('iconv')) { + $conv = @iconv('UTF-8', strtoupper($encoding), $string); + if ($conv) return $conv; + } + if (function_exists('libiconv')) { + $conv = @libiconv('UTF-8', strtoupper($encoding), $string); + if ($conv) return $conv; + } + return $safe; +} + +/** + * Special treatment for our guys in Redmond + * Windows-1252 is basically ISO-8859-1 -- with some exceptions, which get accounted for here + * @param string Your input in Win1252 + * @param string The resulting ISO-8859-1 string + * @since 3.0.8 + */ +function map_w1252_iso8859_1($string = '') +{ + if ($string == '') return ''; + $return = ''; + for ($i = 0; $i < strlen($string); ++$i) { + $c = ord($string{$i}); + switch ($c) { + case 129: $return .= chr(252); break; + case 132: $return .= chr(228); break; + case 142: $return .= chr(196); break; + case 148: $return .= chr(246); break; + case 153: $return .= chr(214); break; + case 154: $return .= chr(220); break; + case 225: $return .= chr(223); break; + default: $return .= chr($c); break; + } + } + return $return; +} + +/** + * Special treatment for our guys in Redmond + * Windows-1252 is basically ISO-8859-1 -- with some exceptions, which get accounted for here + * @param string Your input in ISO-8859-1 + * @param string The resulting Win1252 string + * @since 3.0.8 + */ +function map_iso8859_1_w1252($string = '') +{ + if ($string == '') return ''; + $return = ''; + for ($i = 0; $i < strlen($string); ++$i) { + $c = ord($string{$i}); + switch ($c) { + case 196: $return .= chr(142); break; + case 214: $return .= chr(153); break; + case 220: $return .= chr(154); break; + case 223: $return .= chr(225); break; + case 228: $return .= chr(132); break; + case 246: $return .= chr(148); break; + case 252: $return .= chr(129); break; + default: $return .= chr($c); break; + } + } + return $return; +} + +?> \ No newline at end of file diff --git a/libs/idna_convert/uctc.php b/libs/idna_convert/uctc.php new file mode 100644 index 000000000..ea5e4769c --- /dev/null +++ b/libs/idna_convert/uctc.php @@ -0,0 +1,300 @@ + + * @copyright 2003-2009 phlyLabs Berlin, http://phlylabs.de + * @version 0.0.6 2009-05-10 + */ +class uctc { + private static $mechs = array('ucs4', /*'ucs4le', 'ucs4be', */'ucs4array', /*'utf16', 'utf16le', 'utf16be', */'utf8', 'utf7', 'utf7imap'); + private static $allow_overlong = false; + private static $safe_mode; + private static $safe_char; + + /** + * The actual conversion routine + * + * @param mixed $data The data to convert, usually a string, array when converting from UCS-4 array + * @param string $from Original encoding of the data + * @param string $to Target encoding of the data + * @param bool $safe_mode SafeMode tries to correct invalid codepoints + * @return mixed False on failure, String or array on success, depending on target encoding + * @access public + * @since 0.0.1 + */ + public static function convert($data, $from, $to, $safe_mode = false, $safe_char = 0xFFFC) + { + self::$safe_mode = ($safe_mode) ? true : false; + self::$safe_char = ($safe_char) ? $safe_char : 0xFFFC; + if (self::$safe_mode) self::$allow_overlong = true; + if (!in_array($from, self::$mechs)) throw new Exception('Invalid input format specified'); + if (!in_array($to, self::$mechs)) throw new Exception('Invalid output format specified'); + if ($from != 'ucs4array') eval('$data = self::'.$from.'_ucs4array($data);'); + if ($to != 'ucs4array') eval('$data = self::ucs4array_'.$to.'($data);'); + return $data; + } + + /** + * This converts an UTF-8 encoded string to its UCS-4 representation + * + * @param string $input The UTF-8 string to convert + * @return array Array of 32bit values representing each codepoint + * @access private + */ + private static function utf8_ucs4array($input) + { + $output = array(); + $out_len = 0; + $inp_len = strlen($input); + $mode = 'next'; + $test = 'none'; + for ($k = 0; $k < $inp_len; ++$k) { + $v = ord($input{$k}); // Extract byte from input string + + if ($v < 128) { // We found an ASCII char - put into stirng as is + $output[$out_len] = $v; + ++$out_len; + if ('add' == $mode) { + if (self::$safe_mode) { + $output[$out_len-2] = self::$safe_char; + $mode = 'next'; + } else { + throw new Exception('Conversion from UTF-8 to UCS-4 failed: malformed input at byte '.$k); + } + } + continue; + } + if ('next' == $mode) { // Try to find the next start byte; determine the width of the Unicode char + $start_byte = $v; + $mode = 'add'; + $test = 'range'; + if ($v >> 5 == 6) { // &110xxxxx 10xxxxx + $next_byte = 0; // Tells, how many times subsequent bitmasks must rotate 6bits to the left + $v = ($v - 192) << 6; + } elseif ($v >> 4 == 14) { // &1110xxxx 10xxxxxx 10xxxxxx + $next_byte = 1; + $v = ($v - 224) << 12; + } elseif ($v >> 3 == 30) { // &11110xxx 10xxxxxx 10xxxxxx 10xxxxxx + $next_byte = 2; + $v = ($v - 240) << 18; + } elseif (self::$safe_mode) { + $mode = 'next'; + $output[$out_len] = self::$safe_char; + ++$out_len; + continue; + } else { + throw new Exception('This might be UTF-8, but I don\'t understand it at byte '.$k); + } + if ($inp_len-$k-$next_byte < 2) { + $output[$out_len] = self::$safe_char; + $mode = 'no'; + continue; + } + + if ('add' == $mode) { + $output[$out_len] = (int) $v; + ++$out_len; + continue; + } + } + if ('add' == $mode) { + if (!self::$allow_overlong && $test == 'range') { + $test = 'none'; + if (($v < 0xA0 && $start_byte == 0xE0) || ($v < 0x90 && $start_byte == 0xF0) || ($v > 0x8F && $start_byte == 0xF4)) { + throw new Exception('Bogus UTF-8 character detected (out of legal range) at byte '.$k); + } + } + if ($v >> 6 == 2) { // Bit mask must be 10xxxxxx + $v = ($v-128) << ($next_byte*6); + $output[($out_len-1)] += $v; + --$next_byte; + } else { + if (self::$safe_mode) { + $output[$out_len-1] = ord(self::$safe_char); + $k--; + $mode = 'next'; + continue; + } else { + throw new Exception('Conversion from UTF-8 to UCS-4 failed: malformed input at byte '.$k); + } + } + if ($next_byte < 0) { + $mode = 'next'; + } + } + } // for + return $output; + } + + /** + * Convert UCS-4 string into UTF-8 string + * See utf8_ucs4array() for details + * @access private + */ + private static function ucs4array_utf8($input) + { + $output = ''; + foreach ($input as $v) { + if ($v < 128) { // 7bit are transferred literally + $output .= chr($v); + } elseif ($v < (1 << 11)) { // 2 bytes + $output .= chr(192+($v >> 6)).chr(128+($v & 63)); + } elseif ($v < (1 << 16)) { // 3 bytes + $output .= chr(224+($v >> 12)).chr(128+(($v >> 6) & 63)).chr(128+($v & 63)); + } elseif ($v < (1 << 21)) { // 4 bytes + $output .= chr(240+($v >> 18)).chr(128+(($v >> 12) & 63)).chr(128+(($v >> 6) & 63)).chr(128+($v & 63)); + } elseif (self::$safe_mode) { + $output .= self::$safe_char; + } else { + throw new Exception('Conversion from UCS-4 to UTF-8 failed: malformed input at byte '.$k); + } + } + return $output; + } + + private static function utf7imap_ucs4array($input) + { + return self::utf7_ucs4array(str_replace(',', '/', $input), '&'); + } + + private static function utf7_ucs4array($input, $sc = '+') + { + $output = array(); + $out_len = 0; + $inp_len = strlen($input); + $mode = 'd'; + $b64 = ''; + + for ($k = 0; $k < $inp_len; ++$k) { + $c = $input{$k}; + if (0 == ord($c)) continue; // Ignore zero bytes + if ('b' == $mode) { + // Sequence got terminated + if (!preg_match('![A-Za-z0-9/'.preg_quote($sc, '!').']!', $c)) { + if ('-' == $c) { + if ($b64 == '') { + $output[$out_len] = ord($sc); + $out_len++; + $mode = 'd'; + continue; + } + } + $tmp = base64_decode($b64); + $tmp = substr($tmp, -1 * (strlen($tmp) % 2)); + for ($i = 0; $i < strlen($tmp); $i++) { + if ($i % 2) { + $output[$out_len] += ord($tmp{$i}); + $out_len++; + } else { + $output[$out_len] = ord($tmp{$i}) << 8; + } + } + $mode = 'd'; + $b64 = ''; + continue; + } else { + $b64 .= $c; + } + } + if ('d' == $mode) { + if ($sc == $c) { + $mode = 'b'; + continue; + } + $output[$out_len] = ord($c); + $out_len++; + } + } + return $output; + } + + private static function ucs4array_utf7imap($input) + { + return str_replace('/', ',', self::ucs4array_utf7($input, '&')); + } + + private static function ucs4array_utf7($input, $sc = '+') + { + $output = ''; + $mode = 'd'; + $b64 = ''; + while (true) { + $v = (!empty($input)) ? array_shift($input) : false; + $is_direct = (false !== $v) ? (0x20 <= $v && $v <= 0x7e && $v != ord($sc)) : true; + if ($mode == 'b') { + if ($is_direct) { + if ($b64 == chr(0).$sc) { + $output .= $sc.'-'; + $b64 = ''; + } elseif ($b64) { + $output .= $sc.str_replace('=', '', base64_encode($b64)).'-'; + $b64 = ''; + } + $mode = 'd'; + } elseif (false !== $v) { + $b64 .= chr(($v >> 8) & 255). chr($v & 255); + } + } + if ($mode == 'd' && false !== $v) { + if ($is_direct) { + $output .= chr($v); + } else { + $b64 = chr(($v >> 8) & 255). chr($v & 255); + $mode = 'b'; + } + } + if (false === $v && $b64 == '') break; + } + return $output; + } + + /** + * Convert UCS-4 array into UCS-4 string (Little Endian at the moment) + * @access private + */ + private static function ucs4array_ucs4($input) + { + $output = ''; + foreach ($input as $v) { + $output .= chr(($v >> 24) & 255).chr(($v >> 16) & 255).chr(($v >> 8) & 255).chr($v & 255); + } + return $output; + } + + /** + * Convert UCS-4 string (LE in the moment) into UCS-4 garray + * @access private + */ + private static function ucs4_ucs4array($input) + { + $output = array(); + + $inp_len = strlen($input); + // Input length must be dividable by 4 + if ($inp_len % 4) { + throw new Exception('Input UCS4 string is broken'); + } + // Empty input - return empty output + if (!$inp_len) return $output; + + for ($i = 0, $out_len = -1; $i < $inp_len; ++$i) { + if (!($i % 4)) { // Increment output position every 4 input bytes + $out_len++; + $output[$out_len] = 0; + } + $output[$out_len] += ord($input{$i}) << (8 * (3 - ($i % 4) ) ); + } + return $output; + } +} +?> \ No newline at end of file diff --git a/modules/install/install.admin.controller.php b/modules/install/install.admin.controller.php index 797779964..520afcfaf 100644 --- a/modules/install/install.admin.controller.php +++ b/modules/install/install.admin.controller.php @@ -71,6 +71,12 @@ class installAdminController extends install $default_url = Context::get('default_url'); if($default_url && strncasecmp('http://', $default_url, 7) !== 0 && strncasecmp('https://', $default_url, 8) !== 0) $default_url = 'http://'.$default_url; + if($default_url && substr($default_url, -1) !== '/') $default_url = $default_url.'/'; + + /* convert NON Alphabet URL to punycode URL - Alphabet URL will not be changed */ + require_once(_XE_PATH_ . 'libs/idna_convert/idna_convert.class.php'); + $IDN = new idna_convert(array('idn_version' => 2008)); + $default_url = $IDN->encode($default_url); $use_ssl = Context::get('use_ssl'); if(!$use_ssl) $use_ssl = 'none'; From 701318311bcb96e4e0e2494f391a3f72afdcb8e0 Mon Sep 17 00:00:00 2001 From: sejin7940 Date: Tue, 6 Jan 2015 07:50:54 +0900 Subject: [PATCH 022/236] =?UTF-8?q?=EC=B6=94=EC=B2=9C,=EB=B9=84=EC=B6=94?= =?UTF-8?q?=EC=B2=9C=EC=8B=9C=20=EC=A6=9D=EA=B0=80=EB=90=9C=20=EC=B6=94?= =?UTF-8?q?=EC=B2=9C=EC=88=98,=EB=B9=84=EC=B6=94=EC=B2=9C=EC=88=98=20?= =?UTF-8?q?=EC=A0=84=EB=8B=AC=ED=95=A0=20=EC=88=98=20=EC=9E=88=EA=B2=8C=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 사실 버그는 아닌데, procDocumentVoteUp 함수나 procDocumentVoteDown 함수를 보다 더 잘 활용하기 위해 추천,비추천시 증가된 추천수,비추천수 전달할 수 있게 수정 --- modules/document/document.controller.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/modules/document/document.controller.php b/modules/document/document.controller.php index 8dd284ee5..a135532a8 100644 --- a/modules/document/document.controller.php +++ b/modules/document/document.controller.php @@ -39,7 +39,9 @@ class documentController extends document if($document_config->use_vote_up=='N') return new Object(-1, 'msg_invalid_request'); $point = 1; - return $this->updateVotedCount($document_srl, $point); + $output = $this->updateVotedCount($document_srl, $point); + $this->add('voted_count', $output->get('voted_count')); + return $output; } /** @@ -82,7 +84,9 @@ class documentController extends document if($document_config->use_vote_down=='N') return new Object(-1, 'msg_invalid_request'); $point = -1; - return $this->updateVotedCount($document_srl, $point); + $output = $this->updateVotedCount($document_srl, $point); + $this->add('blamed_count', $output->get('blamed_count')); + return $output; } /** From 47730c548b18ac9191da153ddf04a3bc31af0b1b Mon Sep 17 00:00:00 2001 From: sejin7940 Date: Tue, 6 Jan 2015 10:57:15 +0900 Subject: [PATCH 023/236] =?UTF-8?q?=EC=A0=95=EB=A0=AC=EC=9D=84=20=EC=82=AC?= =?UTF-8?q?=EC=9A=A9=EC=9E=90=EC=A0=95=EC=9D=98=EA=B0=92=EC=9C=BC=EB=A1=9C?= =?UTF-8?q?=20=ED=95=9C=20=EA=B2=BD=EC=9A=B0=20=EC=A0=80=EC=9E=A5=20?= =?UTF-8?q?=EC=95=88=20=EB=90=98=EB=8A=94=20=ED=98=84=EC=83=81=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit eid 값이 key 에 저장되어있기에, in_array 가 아니라 array_key_exists 로 해야됨 --- modules/board/board.admin.controller.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/board/board.admin.controller.php b/modules/board/board.admin.controller.php index 12b06a098..3855cb3b2 100644 --- a/modules/board/board.admin.controller.php +++ b/modules/board/board.admin.controller.php @@ -47,7 +47,7 @@ class boardAdminController extends board { if($args->use_anonymous != 'Y') $args->use_anonymous = 'N'; if($args->consultation != 'Y') $args->consultation = 'N'; if($args->protect_content!= 'Y') $args->protect_content = 'N'; - if(!in_array($args->order_target,$this->order_target) && !in_array($args->order_target, $extra_order_target)) $args->order_target = 'list_order'; + if(!in_array($args->order_target,$this->order_target) && !array_key_exists($args->order_target, $extra_order_target)) $args->order_target = 'list_order'; if(!in_array($args->order_type, array('asc', 'desc'))) $args->order_type = 'asc'; // if there is an existed module From ac83016d5dcb0806aca6e7287dbdd384d42755fe Mon Sep 17 00:00:00 2001 From: sejin7940 Date: Tue, 6 Jan 2015 14:07:08 +0900 Subject: [PATCH 024/236] =?UTF-8?q?=EC=82=AC=EC=9A=A9=EC=9E=90=20=EC=A0=95?= =?UTF-8?q?=EC=9D=98=20=EC=A0=95=EB=A0=AC=EC=8B=9C,=20=EC=82=AC=EC=9A=A9?= =?UTF-8?q?=EC=9E=90=20=EC=A0=95=EC=9D=98=20=EA=B2=80=EC=83=89=EC=8B=9C=20?= =?UTF-8?q?=EB=B3=84=EB=8F=84=EC=9D=98=20query=20=EA=B0=80=20=EC=8B=A4?= =?UTF-8?q?=ED=96=89=EB=90=98=EB=8F=84=EB=A1=9D=20=EC=9E=AC=EC=A0=95?= =?UTF-8?q?=EC=9D=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 현재 사용자정의 기준으로 정렬을 하면 getDocumentListExtraSort.xml 파일이 구현되고. 이 query 는 sort_index 대신 sort가 고정되어있고 사용자정의 기준으로 검색을 하면 getDocumentListWithinExtraVars.xml 파일이 실행되는데 이건 검색만 해당 eid 로 될뿐, 실제 정렬은 사용자정의를 제외한 일반 검색만 가능하게 되어있다. 이는 사용자정의 기준으로 정렬 설정을 해두고 사용자정의 검색할때뿐만 아니라. 기본 정렬 (등록일이나 문서번호) 로 정렬 후, 목록에서 사용자정의 기준으로 재정렬 한 후, 사용자정의 검색할때도 마찬가지로 결과가 안 나오는 문제가 발생한다. 결국 각각 다른 사용자정의 기준으로도 정렬 과 검색이 각각 될 수 있도록 테이블 3개를 join 한 새로운 query 를 추가하여 구현되도록 보완했다 --- modules/document/document.model.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/modules/document/document.model.php b/modules/document/document.model.php index 8723577cd..78b8ed37c 100644 --- a/modules/document/document.model.php +++ b/modules/document/document.model.php @@ -224,7 +224,13 @@ class documentModel extends document $this->_setSearchOption($obj, $args, $query_id, $use_division); - if ($sort_check->isExtraVars) + if ($sort_check->isExtraVars && substr_count($obj->search_target,'extra_vars')) + { + $query_id = 'document.getDocumentListWithinExtraVarsExtraSort'; + $args->sort_index = str_replace('documents.','',$args->sort_index); + $output = executeQueryArray($query_id, $args); + } + elseif ($sort_check->isExtraVars) { $output = executeQueryArray($query_id, $args); } From fe942d6b7b3112d9f7398779b37d98913830862c Mon Sep 17 00:00:00 2001 From: sejin7940 Date: Tue, 6 Jan 2015 14:11:03 +0900 Subject: [PATCH 025/236] Create getDocumentListWithinExtraVarsExtraSort.xml MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 사용자정의 기준의 검색과 정렬을 각각 할 수 있게 하기 위해 3개의 테이블을 join 하는 query 신규 추가 --- ...etDocumentListWithinExtraVarsExtraSort.xml | 61 +++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 modules/document/queries/getDocumentListWithinExtraVarsExtraSort.xml diff --git a/modules/document/queries/getDocumentListWithinExtraVarsExtraSort.xml b/modules/document/queries/getDocumentListWithinExtraVarsExtraSort.xml new file mode 100644 index 000000000..6ab95e780 --- /dev/null +++ b/modules/document/queries/getDocumentListWithinExtraVarsExtraSort.xml @@ -0,0 +1,61 @@ + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From b91e059a478b5d151fd7669b07beb71b3dd3f2fd Mon Sep 17 00:00:00 2001 From: whantae ji Date: Thu, 8 Jan 2015 23:22:37 +0900 Subject: [PATCH 026/236] =?UTF-8?q?=ED=9A=8C=EC=9B=90=EC=A0=95=EB=B3=B4?= =?UTF-8?q?=EC=97=90=EC=84=9C=20=EB=B9=84=EA=B3=B5=EA=B0=9C=EC=9D=B8=20?= =?UTF-8?q?=ED=95=AD=EB=AA=A9=EC=9D=80=20=EA=B2=80=EC=83=89=20=EC=98=B5?= =?UTF-8?q?=EC=85=98=EC=97=90=EC=84=9C=20=EC=A0=9C=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/board/board.view.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/modules/board/board.view.php b/modules/board/board.view.php index c6420fed8..1eb3132da 100644 --- a/modules/board/board.view.php +++ b/modules/board/board.view.php @@ -169,6 +169,16 @@ class boardView extends board if($val->search == 'Y') $search_option['extra_vars'.$val->idx] = $val->name; } } + // remove a search option that is not public in member config + $memberConfig = getModel('module')->getModuleConfig('member'); + foreach($memberConfig->signupForm as $signupFormElement) + { + if(in_array($signupFormElement->title, $search_option)) + { + if($signupFormElement->isPublic == 'N') + unset($search_option[$signupFormElement->name]); + } + } Context::set('search_option', $search_option); $oDocumentModel = getModel('document'); From 1f9844ed084f46034ab302d18a313578f8a39dff Mon Sep 17 00:00:00 2001 From: BJRambo Date: Sat, 10 Jan 2015 14:28:59 +0900 Subject: [PATCH 027/236] =?UTF-8?q?=EB=AA=A8=EB=B0=94=EC=9D=BC=20=EB=B7=B0?= =?UTF-8?q?=EC=96=B4=20=EC=82=AC=EC=9A=A9=EC=A4=91=EC=97=90=EB=A7=8C=20?= =?UTF-8?q?=EB=AA=A8=EB=B0=94=EC=9D=BC=EC=97=90=20=EC=B5=9C=EC=A0=81?= =?UTF-8?q?=ED=99=94=20=ED=99=94=EB=A9=B4=20=EB=B2=84=ED=8A=BC=EC=9D=84=20?= =?UTF-8?q?=EC=8B=A4=ED=96=89=ED=95=98=EB=8F=84=EB=A1=9D=20=EA=B0=9C?= =?UTF-8?q?=EC=84=A0.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 모바일 뷰어 사용중에만 모바일에 최적화된 화면 버튼을 실행 하도록 개선. --- classes/module/ModuleHandler.class.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/classes/module/ModuleHandler.class.php b/classes/module/ModuleHandler.class.php index 8a2c105e8..0505a6a35 100644 --- a/classes/module/ModuleHandler.class.php +++ b/classes/module/ModuleHandler.class.php @@ -667,7 +667,8 @@ class ModuleHandler extends Handler 'dispEditorConfigPreview' => 1, 'dispLayoutPreviewWithModule' => 1 ); - if($type == "view" && $this->module_info->use_mobile == "Y" && Mobile::isMobileCheckByAgent() && !isset($skipAct[Context::get('act')])) + $db_info = Context::getDBInfo(); + if($type == "view" && $this->module_info->use_mobile == "Y" && Mobile::isMobileCheckByAgent() && !isset($skipAct[Context::get('act')]) && $db_info->use_mobile_view == "Y") { global $lang; $header = ''; From 4b1025e8c587054a31847951b844e531d39a0443 Mon Sep 17 00:00:00 2001 From: BJRambo Date: Tue, 13 Jan 2015 17:28:44 +0900 Subject: [PATCH 028/236] =?UTF-8?q?=EB=AA=A8=EB=B0=94=EC=9D=BC=20=EB=B7=B0?= =?UTF-8?q?=EC=96=B4=20=EC=82=AC=EC=9A=A9=EC=A4=91=EC=9D=BC=20=EA=B2=BD?= =?UTF-8?q?=EC=9A=B0=20=EB=AA=A8=EB=B0=94=EC=9D=BC=20=EC=B5=9C=EC=A0=81?= =?UTF-8?q?=ED=99=94=20=ED=99=94=EB=A9=B4=20=EB=AC=B8=EA=B5=AC=20=EB=9C=A8?= =?UTF-8?q?=EB=8F=84=EB=A1=9D=20=EA=B0=9C=EC=84=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- classes/mobile/Mobile.class.php | 9 ++++++--- classes/module/ModuleHandler.class.php | 4 ++-- modules/menu/menu.admin.controller.php | 3 +-- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/classes/mobile/Mobile.class.php b/classes/mobile/Mobile.class.php index 79607c26e..c38ffcf21 100644 --- a/classes/mobile/Mobile.class.php +++ b/classes/mobile/Mobile.class.php @@ -52,9 +52,7 @@ class Mobile { return $this->ismobile; } - - $db_info = Context::getDBInfo(); - if($db_info->use_mobile_view != "Y" || Context::get('full_browse') || $_COOKIE["FullBrowse"]) + if(Mobile::isMobileEnabled() === false || Context::get('full_browse') || $_COOKIE["FullBrowse"]) { return ($this->ismobile = false); } @@ -234,5 +232,10 @@ class Mobile $oMobile->ismobile = $ismobile; } + function isMobileEnabled() + { + $db_info = Context::getDBInfo(); + return ($db_info->use_mobile_view === 'Y'); + } } ?> diff --git a/classes/module/ModuleHandler.class.php b/classes/module/ModuleHandler.class.php index 0505a6a35..67aa3c151 100644 --- a/classes/module/ModuleHandler.class.php +++ b/classes/module/ModuleHandler.class.php @@ -667,8 +667,8 @@ class ModuleHandler extends Handler 'dispEditorConfigPreview' => 1, 'dispLayoutPreviewWithModule' => 1 ); - $db_info = Context::getDBInfo(); - if($type == "view" && $this->module_info->use_mobile == "Y" && Mobile::isMobileCheckByAgent() && !isset($skipAct[Context::get('act')]) && $db_info->use_mobile_view == "Y") + $db_use_mobile = Mobile::isMobileEnabled(); + if($type == "view" && $this->module_info->use_mobile == "Y" && Mobile::isMobileCheckByAgent() && !isset($skipAct[Context::get('act')]) && $db_use_mobile === true) { global $lang; $header = ''; diff --git a/modules/menu/menu.admin.controller.php b/modules/menu/menu.admin.controller.php index 960f0f584..c468d8cb7 100644 --- a/modules/menu/menu.admin.controller.php +++ b/modules/menu/menu.admin.controller.php @@ -606,8 +606,7 @@ class menuAdminController extends menu $cmArgs->is_skin_fix = 'N'; $cmArgs->is_mskin_fix = 'N'; - $db_info = Context::getDBInfo(); - if($db_info->use_mobile_view == 'Y') + if(Mobile::isMobileEnabled() === true) { $cmArgs->use_mobile = 'Y'; } From 26249571833302dae68852f60f994ca266bb5b88 Mon Sep 17 00:00:00 2001 From: MinSoo Kim Date: Mon, 19 Jan 2015 19:01:31 +0900 Subject: [PATCH 029/236] =?UTF-8?q?if=20=EB=AC=B8=20=EC=A0=84=EC=97=90=20r?= =?UTF-8?q?eferer=20=EC=B4=88=EA=B8=B0=ED=99=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/func.inc.php | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/config/func.inc.php b/config/func.inc.php index 54bfff981..bf0bdde68 100644 --- a/config/func.inc.php +++ b/config/func.inc.php @@ -1517,6 +1517,7 @@ function checkCSRF() } $defaultUrl = Context::getDefaultUrl(); + $referer = parse_url($_SERVER["HTTP_REFERER"]); if(strpos(Context::getRequestUri(), 'xn--') !== FALSE) { @@ -1524,10 +1525,6 @@ function checkCSRF() $IDN = new idna_convert(array('idn_version' => 2008)); $referer = parse_url($IDN->encode($_SERVER["HTTP_REFERER"])); } - else - { - $referer = parse_url($_SERVER["HTTP_REFERER"]); - } $oModuleModel = getModel('module'); $siteModuleInfo = $oModuleModel->getDefaultMid(); From 715ec4688cba16c68819d925355ae9222a517aec Mon Sep 17 00:00:00 2001 From: sejin7940 Date: Wed, 21 Jan 2015 23:08:55 +0900 Subject: [PATCH 030/236] Update point.controller.php --- modules/point/point.controller.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/modules/point/point.controller.php b/modules/point/point.controller.php index 3e7cdc3c1..3337b5514 100644 --- a/modules/point/point.controller.php +++ b/modules/point/point.controller.php @@ -420,10 +420,12 @@ class pointController extends point // Get the defaul configurations of the Point Module $config = $oModuleModel->getModuleConfig('point'); // When the requested points are negative, compared it with the current point + $_SESSION['banned_document'][$obj->document_srl] = false; if($config->disable_read_document == 'Y' && $point < 0 && abs($point)>$cur_point) { $message = sprintf(Context::getLang('msg_disallow_by_point'), abs($point), $cur_point); $obj->add('content', $message); + $_SESSION['banned_document'][$obj->document_srl] = true; return new Object(-1, $message); } // If not logged in, pass From 238e54e27e1a0664d20eabe047795fc62e75eaba Mon Sep 17 00:00:00 2001 From: sejin7940 Date: Wed, 21 Jan 2015 23:09:48 +0900 Subject: [PATCH 031/236] Update document.controller.php --- modules/document/document.controller.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/modules/document/document.controller.php b/modules/document/document.controller.php index accc182e3..65bc3484f 100644 --- a/modules/document/document.controller.php +++ b/modules/document/document.controller.php @@ -876,7 +876,10 @@ class documentController extends document } // Register session - $_SESSION['readed_document'][$document_srl] = true; + if(!$_SESSION['banned_document'][$document_srl]) + { + + $_SESSION['readed_document'][$document_srl] = true; + + } return TRUE; } From ad0d5a6a98531e58423794804f577215cf8e29c9 Mon Sep 17 00:00:00 2001 From: sejin7940 Date: Thu, 22 Jan 2015 00:01:24 +0900 Subject: [PATCH 032/236] Update document.controller.php --- modules/document/document.controller.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/document/document.controller.php b/modules/document/document.controller.php index 65bc3484f..f69cccedf 100644 --- a/modules/document/document.controller.php +++ b/modules/document/document.controller.php @@ -878,8 +878,8 @@ class documentController extends document // Register session if(!$_SESSION['banned_document'][$document_srl]) { - + $_SESSION['readed_document'][$document_srl] = true; - + } + $_SESSION['readed_document'][$document_srl] = true; + } return TRUE; } From 57a4eece3a9aa7b17d349fe14c1485a33901f5f6 Mon Sep 17 00:00:00 2001 From: Eunsoo Lee Date: Tue, 27 Jan 2015 01:07:36 +0900 Subject: [PATCH 033/236] =?UTF-8?q?=ED=9C=B4=EC=A7=80=ED=86=B5=EC=97=90=20?= =?UTF-8?q?=EB=93=A4=EC=96=B4=20=EC=9E=88=EB=8A=94=20=EB=8C=93=EA=B8=80?= =?UTF-8?q?=EC=9D=84=20=EC=82=AD=EC=A0=9C=ED=95=A0=20=EC=88=98=20=EC=97=86?= =?UTF-8?q?=EB=8A=94=20=EB=AC=B8=EC=A0=9C=20=ED=95=B4=EA=B2=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/comment/comment.admin.controller.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/comment/comment.admin.controller.php b/modules/comment/comment.admin.controller.php index efb01180e..2436fd611 100644 --- a/modules/comment/comment.admin.controller.php +++ b/modules/comment/comment.admin.controller.php @@ -495,7 +495,9 @@ class commentAdminController extends comment //already comment deleted, therefore only comment log delete $oCommentController = getController('comment'); - $output = $oCommentController->deleteCommentLog($oComment->get('comment_srl')); + $args = new stdClass(); + $args->comment_srl = $oComment->get('comment_srl'); + $output = $oCommentController->deleteCommentLog($args); return $output; } From 44acf38e8454cd08505193198995518ba689085a Mon Sep 17 00:00:00 2001 From: sejin7940 Date: Sat, 31 Jan 2015 09:41:36 +0900 Subject: [PATCH 034/236] Update document.item.php --- modules/document/document.item.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/modules/document/document.item.php b/modules/document/document.item.php index 4f5dc0624..ae9c1c155 100644 --- a/modules/document/document.item.php +++ b/modules/document/document.item.php @@ -524,6 +524,8 @@ class documentItem extends Object function getSummary($str_size = 50, $tail = '...') { $content = $this->getContent(FALSE, FALSE); + + $content = nl2br($content); // For a newlink, inert a whitespace $content = preg_replace('!([\s]*)+!is', ' ', $content); From b146250c996e43c172f29a686b5e00c23d67f751 Mon Sep 17 00:00:00 2001 From: sejin7940 Date: Sat, 31 Jan 2015 19:02:15 +0900 Subject: [PATCH 035/236] Update document.controller.php --- modules/document/document.controller.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/modules/document/document.controller.php b/modules/document/document.controller.php index accc182e3..9461e3a91 100644 --- a/modules/document/document.controller.php +++ b/modules/document/document.controller.php @@ -1257,6 +1257,8 @@ class documentController extends document return $output; } + $this->add('declared_count', $declared_count+1); + // Call a trigger (after) $trigger_obj->declared_count = $declared_count + 1; $trigger_output = ModuleHandler::triggerCall('document.declaredDocument', 'after', $trigger_obj); From ceae3b9310318201ccec16b3ab307f96fe84f1ec Mon Sep 17 00:00:00 2001 From: Jaedong Kim Date: Sun, 1 Feb 2015 15:36:48 +0900 Subject: [PATCH 036/236] =?UTF-8?q?=EB=B9=84=EB=B0=80=EB=B2=88=ED=98=B8=20?= =?UTF-8?q?=EC=88=98=EC=A0=95=EC=8B=9C=20=EB=B9=84=EB=B0=80=EB=B2=88?= =?UTF-8?q?=ED=98=B8=20=EB=B3=B4=EC=95=88=EC=88=98=EC=A4=80=EC=9D=84=20?= =?UTF-8?q?=ED=86=B5=EA=B3=BC=ED=95=98=EC=A7=80=20=EB=AA=BB=ED=96=88?= =?UTF-8?q?=EB=8A=94=EB=8D=B0=EB=8F=84=20change=5Fpassword=5Fdate=EA=B0=80?= =?UTF-8?q?=20=EB=B3=80=EA=B2=BD=EB=90=98=EB=8A=94=20=EB=AC=B8=EC=A0=9C=20?= =?UTF-8?q?=ED=95=B4=EA=B2=B0=20xpressengine/xe-core#1224?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/member/member.controller.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index aba6df5df..d44936952 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -2242,8 +2242,6 @@ class memberController extends member */ function updateMemberPassword($args) { - $output = executeQuery('member.updateChangePasswordDate', $args); - if($args->password) { @@ -2272,7 +2270,10 @@ class memberController extends member } $output = executeQuery('member.updateMemberPassword', $args);; - + if($output->toBool()) + { + $output = executeQuery('member.updateChangePasswordDate', $args); + } $this->_clearMemberCache($args->member_srl); return $output; From a520a83ff0e80e8d83c323e309a754f57d4c89d4 Mon Sep 17 00:00:00 2001 From: sejin7940 Date: Tue, 3 Feb 2015 23:13:19 +0900 Subject: [PATCH 037/236] Update member_communication.addon.php --- addons/member_communication/member_communication.addon.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/member_communication/member_communication.addon.php b/addons/member_communication/member_communication.addon.php index fb048ab99..4744451d7 100644 --- a/addons/member_communication/member_communication.addon.php +++ b/addons/member_communication/member_communication.addon.php @@ -74,10 +74,10 @@ elseif($this->act == 'getMemberMenu' && $called_position == 'before_module_proc' $oMemberController = getController('member'); // Add a menu for sending message if($logged_info->is_admin == 'Y' || $target_member_info->allow_message == 'Y' || ($target_member_info->allow_message == 'F' && $oCommunicationModel->isFriend($member_srl))) - $oMemberController->addMemberPopupMenu(getUrl('', 'module', 'communication', 'act', 'dispCommunicationSendMessage', 'receiver_srl', $member_srl), 'cmd_send_message', '', 'popup'); + $oMemberController->addMemberPopupMenu(getUrl('', 'act', 'dispCommunicationSendMessage', 'receiver_srl', $member_srl), 'cmd_send_message', '', 'popup'); // Add a menu for listing friends (if a friend is new) if(!$oCommunicationModel->isAddedFriend($member_srl)) - $oMemberController->addMemberPopupMenu(getUrl('', 'module', 'communication', 'act', 'dispCommunicationAddFriend', 'target_srl', $member_srl), 'cmd_add_friend', '', 'popup'); + $oMemberController->addMemberPopupMenu(getUrl('', 'act', 'dispCommunicationAddFriend', 'target_srl', $member_srl), 'cmd_add_friend', '', 'popup'); } } /* End of file member_communication.addon.php */ From b1224c7237f72b5499ff72185377865f6352568e Mon Sep 17 00:00:00 2001 From: sejin7940 Date: Tue, 3 Feb 2015 23:30:58 +0900 Subject: [PATCH 038/236] Update member_communication.addon.php --- addons/member_communication/member_communication.addon.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/member_communication/member_communication.addon.php b/addons/member_communication/member_communication.addon.php index 4744451d7..8986d8b59 100644 --- a/addons/member_communication/member_communication.addon.php +++ b/addons/member_communication/member_communication.addon.php @@ -74,10 +74,10 @@ elseif($this->act == 'getMemberMenu' && $called_position == 'before_module_proc' $oMemberController = getController('member'); // Add a menu for sending message if($logged_info->is_admin == 'Y' || $target_member_info->allow_message == 'Y' || ($target_member_info->allow_message == 'F' && $oCommunicationModel->isFriend($member_srl))) - $oMemberController->addMemberPopupMenu(getUrl('', 'act', 'dispCommunicationSendMessage', 'receiver_srl', $member_srl), 'cmd_send_message', '', 'popup'); + $oMemberController->addMemberPopupMenu(getUrl('', 'mid', Context::get('cur_mid'), 'act', 'dispCommunicationSendMessage', 'receiver_srl', $member_srl), 'cmd_send_message', '', 'popup'); // Add a menu for listing friends (if a friend is new) if(!$oCommunicationModel->isAddedFriend($member_srl)) - $oMemberController->addMemberPopupMenu(getUrl('', 'act', 'dispCommunicationAddFriend', 'target_srl', $member_srl), 'cmd_add_friend', '', 'popup'); + $oMemberController->addMemberPopupMenu(getUrl('', 'mid', Context::get('cur_mid'), 'act', 'dispCommunicationAddFriend', 'target_srl', $member_srl), 'cmd_add_friend', '', 'popup'); } } /* End of file member_communication.addon.php */ From 64c50c08314ca95f3f71ab7a1d3375e4f804e6de Mon Sep 17 00:00:00 2001 From: bnu Date: Sun, 8 Feb 2015 00:51:42 +0900 Subject: [PATCH 039/236] =?UTF-8?q?travis-ci=20PHP=205.2=20=EC=A7=80?= =?UTF-8?q?=EC=9B=90=20=EC=A2=85=EB=A3=8C=EC=97=90=20=EB=94=B0=EB=A5=B8=20?= =?UTF-8?q?=EC=A0=9C=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .travis.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index cb2c700cf..c2eef4e9c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,5 @@ language: php php: - - 5.2 - 5.3 - 5.4 - 5.5 From f788f487020dc3ebe39993c6bc9b6b3eda982e5e Mon Sep 17 00:00:00 2001 From: YJSoft Date: Sun, 8 Feb 2015 11:01:59 +0900 Subject: [PATCH 040/236] =?UTF-8?q?=EC=96=B4=EB=94=94=EC=97=90=EC=84=9C?= =?UTF-8?q?=EB=8F=84=20=EC=84=A0=EC=96=B8=EB=90=98=EC=A7=80=20=EC=95=8A?= =?UTF-8?q?=EC=9D=80=20$member=5Fsrl=20=EB=B3=80=EC=88=98=EB=A5=BC=20?= =?UTF-8?q?=EA=B0=80=EC=A0=B8=EC=98=A4=EB=8A=94=20=EB=AC=B8=EC=A0=9C=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit $this->memberInfo->password 값이 비어 있을경우 $member_srl를 이용하여 회원 정보를 구한 뒤 비밀번호를 구해오도록 하였지만 어디에도 $member_srl 값을 구해오는 부분이 없어 값이 비어있기에 무조건 잘못된 비밀번호라고 출력되는 문제를 수정합니다. --- modules/member/member.controller.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index aba6df5df..cf8283822 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -441,6 +441,10 @@ class memberController extends member if(!$this->memberInfo->password) { + // Get information of logged-in user + $logged_info = Context::get('logged_info'); + $member_srl = $logged_info->member_srl; + $columnList = array('member_srl', 'password'); $memberInfo = $oMemberModel->getMemberInfoByMemberSrl($member_srl, 0, $columnList); $this->memberInfo->password = $memberInfo->password; From 67c33ab55429b6502f31000a0d064a7319808f58 Mon Sep 17 00:00:00 2001 From: mog422 Date: Sun, 8 Feb 2015 22:25:30 +0900 Subject: [PATCH 041/236] =?UTF-8?q?fix=20#1247=20=ED=8F=AC=EC=9D=B8?= =?UTF-8?q?=ED=8A=B8=20=EC=84=A4=EC=A0=95=20=EC=A0=80=EC=9E=A5=EC=8B=9C=20?= =?UTF-8?q?=ED=8F=AC=EC=9D=B8=ED=8A=B8=20=EA=B7=B8=EB=A3=B9=20=EC=97=B0?= =?UTF-8?q?=EB=8F=99=EC=9D=B4=20=EB=90=98=EC=9E=88=EC=A7=80=20=EC=95=8A?= =?UTF-8?q?=EC=9D=80=20=EA=B7=B8=EB=A3=B9=EC=9D=B4=20=EC=97=B0=EB=8F=99?= =?UTF-8?q?=EC=9D=B4=20=EB=90=98=EB=8A=94=20=EB=B2=84=EA=B7=B8=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/point/point.admin.controller.php | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/modules/point/point.admin.controller.php b/modules/point/point.admin.controller.php index a61fa2780..63d8d3dc2 100644 --- a/modules/point/point.admin.controller.php +++ b/modules/point/point.admin.controller.php @@ -61,20 +61,20 @@ class pointAdminController extends point $group_srl = $group->group_srl; - //if group level is higher than max level, change to max level - if($args->{'point_group_'.$group_srl} > $args->max_level) + if(isset($args->{'point_group_'.$group_srl})) { - $args->{'point_group_'.$group_srl} = $args->max_level; - } + //if group level is higher than max level, change to max level + if($args->{'point_group_'.$group_srl} > $args->max_level) + { + $args->{'point_group_'.$group_srl} = $args->max_level; + } - //if group level is lower than 1, change to 1 - if($args->{'point_group_'.$group_srl} < 1) - { - $args->{'point_group_'.$group_srl} = 1; - } + //if group level is lower than 1, change to 1 + if($args->{'point_group_'.$group_srl} < 1) + { + $args->{'point_group_'.$group_srl} = 1; + } - if($args->{'point_group_'.$group_srl}) - { $config->point_group[$group_srl] = $args->{'point_group_'.$group_srl}; } else From fb285799e170bdb6d140b2309ff6f29cc44f52e6 Mon Sep 17 00:00:00 2001 From: Beom Jinhyeok Date: Tue, 10 Feb 2015 02:38:15 +0900 Subject: [PATCH 042/236] =?UTF-8?q?=EC=9D=B4=EB=A9=94=EC=9D=BC=20=EC=A3=BC?= =?UTF-8?q?=EC=86=8C=EB=A1=9C=20=EA=B3=84=EC=A0=95=20=EC=B0=BE=EA=B8=B0=20?= =?UTF-8?q?=EC=9D=B8=EC=A6=9D=20=ED=9B=84=20=EC=9D=BC=EB=B3=B8=EC=96=B4=20?= =?UTF-8?q?=EB=A9=94=EC=8B=9C=EC=A7=80=20=EB=AC=B8=EA=B5=AC=20=EA=B3=A0?= =?UTF-8?q?=EC=B9=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/member/lang/lang.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/member/lang/lang.xml b/modules/member/lang/lang.xml index 96f6f379a..3a294a544 100644 --- a/modules/member/lang/lang.xml +++ b/modules/member/lang/lang.xml @@ -1363,7 +1363,7 @@ - + From 9f618fc33130f796ef901c23051b139829fd5e41 Mon Sep 17 00:00:00 2001 From: akasima Date: Wed, 11 Feb 2015 13:11:37 +0900 Subject: [PATCH 043/236] #603 site map folders set folded state --- modules/menu/tpl/css/sitemap.css | 3 ++ modules/menu/tpl/sitemap.html | 77 +++++++++++++++++++++++++++++++- 2 files changed, 78 insertions(+), 2 deletions(-) diff --git a/modules/menu/tpl/css/sitemap.css b/modules/menu/tpl/css/sitemap.css index d44e61b5b..d10971b5b 100644 --- a/modules/menu/tpl/css/sitemap.css +++ b/modules/menu/tpl/css/sitemap.css @@ -46,6 +46,9 @@ body>.x{max-width:none !important} .col>*>h1>a[target="_blank"]:after{vertical-align:middle;opacity:.75;filter:alpha(opacity=75)} .col>*>h1>a:hover, .col>*>h1>a:focus{color:#06C} +.col #menu_find{height:32px} +.col #menu_find input[type="text"]{margin-bottom: 0} +.col #menu_find button[type="button"]{visibility: hidden} .col>.x_close{position:absolute;top:0;right:0;width:30px;height:30px;color:#666;font-size:17px;opacity:.75;filter:alpha(opacity=75)} .col input[type="checkbox"], .col input[type="radio"]{margin:0} diff --git a/modules/menu/tpl/sitemap.html b/modules/menu/tpl/sitemap.html index 9c3794fc2..5ab616fad 100644 --- a/modules/menu/tpl/sitemap.html +++ b/modules/menu/tpl/sitemap.html @@ -22,6 +22,11 @@

{$lang->menu_gnb_sub['siteMap']} {$lang->help}

+ + + + +
\ No newline at end of file From 7cbb4d59ac4cef71e3b6f2b0c5e054aa12a32bf4 Mon Sep 17 00:00:00 2001 From: MinSoo Kim Date: Mon, 16 Feb 2015 15:58:47 +0900 Subject: [PATCH 047/236] =?UTF-8?q?#1198=20=EC=9E=84=EC=8B=9C=20=EC=A0=80?= =?UTF-8?q?=EC=9E=A5=EA=B8=80=EC=9D=B4=20=ED=91=9C=EC=8B=9C=EB=90=98?= =?UTF-8?q?=EC=A7=80=20=EC=95=8A=EA=B2=8C=20=ED=95=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 권한이 있는 사람들만 임시 저장글을 VIEW 에서 볼 수 있게 수정 --- modules/board/board.view.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/modules/board/board.view.php b/modules/board/board.view.php index 97465b585..96a103f9d 100644 --- a/modules/board/board.view.php +++ b/modules/board/board.view.php @@ -267,6 +267,16 @@ class boardView extends board } } + // if the document is TEMP saved, check Grant + if($oDocument->getStatus() == 'TEMP') + { + $logged_info = Context::get('logged_info'); + if(!$oDocument->isGranted()) + { + $oDocument = $oDocumentModel->getDocument(0); + } + } + } else { From c9c98d6cae9821b8f8b6edefa72ec3c79c9ce000 Mon Sep 17 00:00:00 2001 From: MinSoo Kim Date: Mon, 16 Feb 2015 16:04:50 +0900 Subject: [PATCH 048/236] =?UTF-8?q?#1198=20=EC=9D=98=EB=AF=B8=20=EC=97=86?= =?UTF-8?q?=EB=8A=94=20=EC=BD=94=EB=93=9C=20=ED=95=9C=20=EC=A4=84=20?= =?UTF-8?q?=EC=82=AD=EC=A0=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/board/board.view.php | 1 - 1 file changed, 1 deletion(-) diff --git a/modules/board/board.view.php b/modules/board/board.view.php index 96a103f9d..18aeed71a 100644 --- a/modules/board/board.view.php +++ b/modules/board/board.view.php @@ -270,7 +270,6 @@ class boardView extends board // if the document is TEMP saved, check Grant if($oDocument->getStatus() == 'TEMP') { - $logged_info = Context::get('logged_info'); if(!$oDocument->isGranted()) { $oDocument = $oDocumentModel->getDocument(0); From 9277b9a3f184b3222dca378855fe3d86687e9732 Mon Sep 17 00:00:00 2001 From: MinSoo Kim Date: Tue, 17 Feb 2015 12:42:22 +0900 Subject: [PATCH 049/236] =?UTF-8?q?#944=20=EC=B6=94=EA=B0=80,=20=ED=8F=AC?= =?UTF-8?q?=EC=9D=B8=ED=8A=B8=20=EB=AA=A8=EB=93=88=20=EC=84=A4=EC=B9=98?= =?UTF-8?q?=EC=8B=9C=20=ED=8A=B8=EB=A6=AC=EA=B1=B0=20=EC=84=A4=EC=B9=98=20?= =?UTF-8?q?=EC=95=88=ED=95=98=EB=8F=84=EB=A1=9D=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 포인트 모듈 설치시는 트리거를 설치할 필요가 없다. --- modules/point/point.class.php | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/modules/point/point.class.php b/modules/point/point.class.php index f4c018ad5..7894854f8 100644 --- a/modules/point/point.class.php +++ b/modules/point/point.class.php @@ -70,24 +70,6 @@ class point extends ModuleObject // Cash act list for faster execution $oPointController = getAdminController('point'); $oPointController->cacheActList(); - // Add a trigger for registration/insert document/insert comment/upload a file/download - $oModuleController->insertTrigger('member.insertMember', 'point', 'controller', 'triggerInsertMember', 'after'); - $oModuleController->insertTrigger('document.insertDocument', 'point', 'controller', 'triggerInsertDocument', 'after'); - $oModuleController->insertTrigger('document.deleteDocument', 'point', 'controller', 'triggerBeforeDeleteDocument', 'before'); - $oModuleController->insertTrigger('document.deleteDocument', 'point', 'controller', 'triggerDeleteDocument', 'after'); - $oModuleController->insertTrigger('comment.insertComment', 'point', 'controller', 'triggerInsertComment', 'after'); - $oModuleController->insertTrigger('comment.deleteComment', 'point', 'controller', 'triggerDeleteComment', 'after'); - $oModuleController->insertTrigger('file.insertFile', 'point', 'controller', 'triggerInsertFile', 'after'); - $oModuleController->insertTrigger('file.deleteFile', 'point', 'controller', 'triggerDeleteFile', 'after'); - $oModuleController->insertTrigger('file.downloadFile', 'point', 'controller', 'triggerBeforeDownloadFile', 'before'); - $oModuleController->insertTrigger('file.downloadFile', 'point', 'controller', 'triggerDownloadFile', 'after'); - $oModuleController->insertTrigger('member.doLogin', 'point', 'controller', 'triggerAfterLogin', 'after'); - $oModuleController->insertTrigger('module.dispAdditionSetup', 'point', 'view', 'triggerDispPointAdditionSetup', 'after'); - $oModuleController->insertTrigger('document.updateReadedCount', 'point', 'controller', 'triggerUpdateReadedCount', 'after'); - // Add a trigger for voting up and down 2008.05.13 haneul - $oModuleController->insertTrigger('document.updateVotedCount', 'point', 'controller', 'triggerUpdateVotedCount', 'after'); - // Add a trigger for using points for permanent saving of a temporarily saved document 2009.05.19 zero - $oModuleController->insertTrigger('document.updateDocument', 'point', 'controller', 'triggerUpdateDocument', 'before'); return new Object(); } From 0f2e900816eef6251e3c70f6771c6fd18284ae16 Mon Sep 17 00:00:00 2001 From: MinSoo Kim Date: Tue, 17 Feb 2015 14:20:34 +0900 Subject: [PATCH 050/236] =?UTF-8?q?#1273=20PC=20=ED=9A=8C=EC=9B=90?= =?UTF-8?q?=EA=B0=80=EC=9E=85=20=ED=8E=98=EC=9D=B4=EC=A7=80=EC=97=90?= =?UTF-8?q?=EC=84=9C=20=EC=83=9D=EC=9D=BC=20=EC=82=AD=EC=A0=9C=20=EB=B2=84?= =?UTF-8?q?=ED=8A=BC=20=EC=9E=91=EB=8F=99=20=EB=90=98=EB=8F=84=EB=A1=9D=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://github.com/xpressengine/xe-core/issues/1273 PC 회원 가입 페이지에서 생일 삭제 버튼 작동 되도록 수정. --- modules/member/skins/default/signup_form.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/member/skins/default/signup_form.html b/modules/member/skins/default/signup_form.html index fce3e9cda..572b13644 100644 --- a/modules/member/skins/default/signup_form.html +++ b/modules/member/skins/default/signup_form.html @@ -82,7 +82,7 @@ jQuery(function($){ $.extend(option,$.datepicker.regional['{$lang_type}']); $(".inputDate").datepicker(option); $(".dateRemover").click(function() { - $(this).parent().prevAll('input').val(''); + $(this).prev('input').val(''); return false;}); }); })(jQuery); From 607cc292da9fb5bbb8669becebbd565924bb6aa4 Mon Sep 17 00:00:00 2001 From: MinSoo Kim Date: Tue, 17 Feb 2015 15:13:30 +0900 Subject: [PATCH 051/236] =?UTF-8?q?#1273=20=EB=B3=B4=EC=99=84=20=EC=BB=A4?= =?UTF-8?q?=EB=B0=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 0f2e900816eef6251e3c70f6771c6fd18284ae16 수정 hidden 된 생일 속성 input이 있어서 prevAll로 바꿈 * 종합: .parent 를 삭제 --- modules/member/skins/default/signup_form.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/member/skins/default/signup_form.html b/modules/member/skins/default/signup_form.html index 572b13644..274a32c5d 100644 --- a/modules/member/skins/default/signup_form.html +++ b/modules/member/skins/default/signup_form.html @@ -82,7 +82,7 @@ jQuery(function($){ $.extend(option,$.datepicker.regional['{$lang_type}']); $(".inputDate").datepicker(option); $(".dateRemover").click(function() { - $(this).prev('input').val(''); + $(this).prevAll('input').val(''); return false;}); }); })(jQuery); From 033f771cd4d713bb834002e5706c0ac4d2fcfdb6 Mon Sep 17 00:00:00 2001 From: MinSoo Kim Date: Wed, 18 Feb 2015 01:42:28 +0900 Subject: [PATCH 052/236] =?UTF-8?q?=ED=81=AC=EB=A1=A4=EB=9F=AC=EB=A5=BC=20?= =?UTF-8?q?=EC=A1=B0=EA=B8=88=20=EB=8D=94=20=ED=99=95=EC=9D=B8=ED=95=B4?= =?UTF-8?q?=EC=A4=8D=EB=8B=88=EB=8B=A4.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit isCrawler 함수에 크롤러의 UA에만 사용되는 문구를 조금 더 추가한 PR 입니다. 함수를 잘 살펴보시면, ip 대역으로도 구분할 수 있습니다. 참고 하시기 바랍니다. ip로 필터링 할 때, 걱정되는 것은, 크롤러가 돌아가는 ip에서 크롤링 외의 목적으로 접근할 수도 있지 않을까 하는 것입니다. --- config/func.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/func.inc.php b/config/func.inc.php index 62c8abaa5..f35bcb70d 100644 --- a/config/func.inc.php +++ b/config/func.inc.php @@ -1487,7 +1487,7 @@ function isCrawler($agent = NULL) $agent = $_SERVER['HTTP_USER_AGENT']; } - $check_agent = array('bot', 'spider', 'google', 'yahoo', 'daum', 'teoma', 'fish', 'hanrss', 'facebook'); + $check_agent = array('bot', 'spider', 'spyder', 'crawl', 'http://', 'google', 'yahoo', 'slurp', 'yeti', 'daum', 'teoma', 'fish', 'hanrss', 'facebook', 'yandex', 'infoseek', 'stackrambler'); $check_ip = array( '211.245.21.110-211.245.21.119' /* mixsh */ ); From d1d8896d203db1aa99cc81222b204626d958bd29 Mon Sep 17 00:00:00 2001 From: MinSoo Kim Date: Wed, 18 Feb 2015 02:14:00 +0900 Subject: [PATCH 053/236] =?UTF-8?q?=EB=AF=B9=EC=8B=9C=EA=B0=80=20=EC=82=AC?= =?UTF-8?q?=EB=9D=BC=EC=A0=B8=EC=84=9C=20=ED=95=B4=EB=8B=B9=20=EC=BD=94?= =?UTF-8?q?=EB=93=9C=20=EB=B6=80=EB=B6=84=20=EC=A3=BC=EC=84=9D=EC=B2=98?= =?UTF-8?q?=EB=A6=AC.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 033f771cd4d713bb834002e5706c0ac4d2fcfdb6 에 보완 커밋. 믹시는 없어졌지만, IP로 로봇을 구분해야 할 일이 있을 것 같아서 해당 코드 부분을 완전히 삭제하지 않고 주석 형태로 남겨둠. Ask 사이트의 로봇 하나 추가. --- config/func.inc.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/config/func.inc.php b/config/func.inc.php index f35bcb70d..f892b3de2 100644 --- a/config/func.inc.php +++ b/config/func.inc.php @@ -1487,9 +1487,9 @@ function isCrawler($agent = NULL) $agent = $_SERVER['HTTP_USER_AGENT']; } - $check_agent = array('bot', 'spider', 'spyder', 'crawl', 'http://', 'google', 'yahoo', 'slurp', 'yeti', 'daum', 'teoma', 'fish', 'hanrss', 'facebook', 'yandex', 'infoseek', 'stackrambler'); + $check_agent = array('bot', 'spider', 'spyder', 'crawl', 'http://', 'google', 'yahoo', 'slurp', 'yeti', 'daum', 'teoma', 'fish', 'hanrss', 'facebook', 'yandex', 'infoseek', 'askjeeves', 'stackrambler'); $check_ip = array( - '211.245.21.110-211.245.21.119' /* mixsh */ + /*'211.245.21.110-211.245.21.119' mixsh is closed */ ); foreach($check_agent as $str) From 39f8c9ce4270886abd064ccf32dc44490ccd112d Mon Sep 17 00:00:00 2001 From: YJSoft Date: Wed, 18 Feb 2015 19:49:16 +0900 Subject: [PATCH 054/236] =?UTF-8?q?#1281=20=EC=9E=98=EB=AA=BB=20=EC=82=AC?= =?UTF-8?q?=EC=9A=A9=ED=95=9C=20ini=5Fget=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ini_get은 인자로 string을 넘겨줘야 함에도 따옴표로 감싸지 않아 string으로 전달이 되지 않아 해당 ini값을 잘못 가져오는 문제가 있습니다. 따라서 session.auto_start값이 정상 체크되지 않아 XE 사용에 문제가 있을 수 있습니다. --- modules/install/install.controller.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/install/install.controller.php b/modules/install/install.controller.php index 2add76494..015b06968 100644 --- a/modules/install/install.controller.php +++ b/modules/install/install.controller.php @@ -355,7 +355,7 @@ class installController extends install if(function_exists('xml_parser_create')) $checklist['xml'] = true; else $checklist['xml'] = false; // 3. Check if ini_get (session.auto_start) == 1 - if(ini_get(session.auto_start)!=1) $checklist['session'] = true; + if(ini_get('session.auto_start')!=1) $checklist['session'] = true; else $checklist['session'] = false; // 4. Check if iconv exists if(function_exists('iconv')) $checklist['iconv'] = true; From 1545c67961f45c419956664ae323aed8e52d2da2 Mon Sep 17 00:00:00 2001 From: bnu Date: Tue, 24 Feb 2015 18:40:44 +0900 Subject: [PATCH 055/236] =?UTF-8?q?#1087=20add=20CKEditor=20-=20js=20plugi?= =?UTF-8?q?n=EC=9C=BC=EB=A1=9C=20CKEditor=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ckeditor/ckeditor/adapters/jquery.js | 10 + .../plugins/ckeditor/ckeditor/build-config.js | 119 ++ .../js/plugins/ckeditor/ckeditor/ckeditor.js | 971 +++++++++++++ common/js/plugins/ckeditor/ckeditor/config.js | 10 + .../js/plugins/ckeditor/ckeditor/contents.css | 134 ++ .../js/plugins/ckeditor/ckeditor/lang/de.js | 5 + .../js/plugins/ckeditor/ckeditor/lang/en.js | 5 + .../js/plugins/ckeditor/ckeditor/lang/es.js | 5 + .../js/plugins/ckeditor/ckeditor/lang/fr.js | 5 + .../js/plugins/ckeditor/ckeditor/lang/ja.js | 5 + .../js/plugins/ckeditor/ckeditor/lang/ko.js | 5 + .../js/plugins/ckeditor/ckeditor/lang/mn.js | 5 + .../js/plugins/ckeditor/ckeditor/lang/ru.js | 5 + .../js/plugins/ckeditor/ckeditor/lang/tr.js | 5 + .../js/plugins/ckeditor/ckeditor/lang/vi.js | 5 + .../plugins/ckeditor/ckeditor/lang/zh-cn.js | 5 + .../js/plugins/ckeditor/ckeditor/lang/zh.js | 5 + .../plugins/a11yhelp/dialogs/a11yhelp.js | 10 + .../dialogs/lang/_translationstatus.txt | 25 + .../plugins/a11yhelp/dialogs/lang/af.js | 11 + .../plugins/a11yhelp/dialogs/lang/ar.js | 11 + .../plugins/a11yhelp/dialogs/lang/bg.js | 11 + .../plugins/a11yhelp/dialogs/lang/ca.js | 13 + .../plugins/a11yhelp/dialogs/lang/cs.js | 13 + .../plugins/a11yhelp/dialogs/lang/cy.js | 11 + .../plugins/a11yhelp/dialogs/lang/da.js | 11 + .../plugins/a11yhelp/dialogs/lang/de.js | 13 + .../plugins/a11yhelp/dialogs/lang/el.js | 13 + .../plugins/a11yhelp/dialogs/lang/en-gb.js | 11 + .../plugins/a11yhelp/dialogs/lang/en.js | 11 + .../plugins/a11yhelp/dialogs/lang/eo.js | 13 + .../plugins/a11yhelp/dialogs/lang/es.js | 12 + .../plugins/a11yhelp/dialogs/lang/et.js | 11 + .../plugins/a11yhelp/dialogs/lang/fa.js | 11 + .../plugins/a11yhelp/dialogs/lang/fi.js | 12 + .../plugins/a11yhelp/dialogs/lang/fr-ca.js | 12 + .../plugins/a11yhelp/dialogs/lang/fr.js | 13 + .../plugins/a11yhelp/dialogs/lang/gl.js | 12 + .../plugins/a11yhelp/dialogs/lang/gu.js | 11 + .../plugins/a11yhelp/dialogs/lang/he.js | 11 + .../plugins/a11yhelp/dialogs/lang/hi.js | 11 + .../plugins/a11yhelp/dialogs/lang/hr.js | 11 + .../plugins/a11yhelp/dialogs/lang/hu.js | 13 + .../plugins/a11yhelp/dialogs/lang/id.js | 11 + .../plugins/a11yhelp/dialogs/lang/it.js | 13 + .../plugins/a11yhelp/dialogs/lang/ja.js | 9 + .../plugins/a11yhelp/dialogs/lang/km.js | 11 + .../plugins/a11yhelp/dialogs/lang/ko.js | 11 + .../plugins/a11yhelp/dialogs/lang/ku.js | 12 + .../plugins/a11yhelp/dialogs/lang/lt.js | 11 + .../plugins/a11yhelp/dialogs/lang/lv.js | 13 + .../plugins/a11yhelp/dialogs/lang/mk.js | 11 + .../plugins/a11yhelp/dialogs/lang/mn.js | 11 + .../plugins/a11yhelp/dialogs/lang/nb.js | 12 + .../plugins/a11yhelp/dialogs/lang/nl.js | 12 + .../plugins/a11yhelp/dialogs/lang/no.js | 11 + .../plugins/a11yhelp/dialogs/lang/pl.js | 13 + .../plugins/a11yhelp/dialogs/lang/pt-br.js | 12 + .../plugins/a11yhelp/dialogs/lang/pt.js | 12 + .../plugins/a11yhelp/dialogs/lang/ro.js | 12 + .../plugins/a11yhelp/dialogs/lang/ru.js | 11 + .../plugins/a11yhelp/dialogs/lang/si.js | 10 + .../plugins/a11yhelp/dialogs/lang/sk.js | 12 + .../plugins/a11yhelp/dialogs/lang/sl.js | 12 + .../plugins/a11yhelp/dialogs/lang/sq.js | 11 + .../plugins/a11yhelp/dialogs/lang/sr-latn.js | 11 + .../plugins/a11yhelp/dialogs/lang/sr.js | 11 + .../plugins/a11yhelp/dialogs/lang/sv.js | 12 + .../plugins/a11yhelp/dialogs/lang/th.js | 11 + .../plugins/a11yhelp/dialogs/lang/tr.js | 12 + .../plugins/a11yhelp/dialogs/lang/tt.js | 11 + .../plugins/a11yhelp/dialogs/lang/ug.js | 11 + .../plugins/a11yhelp/dialogs/lang/uk.js | 12 + .../plugins/a11yhelp/dialogs/lang/vi.js | 11 + .../plugins/a11yhelp/dialogs/lang/zh-cn.js | 9 + .../plugins/a11yhelp/dialogs/lang/zh.js | 9 + .../plugins/clipboard/dialogs/paste.js | 11 + .../colordialog/dialogs/colordialog.js | 13 + .../plugins/dialog/dialogDefinition.js | 4 + .../ckeditor/plugins/div/dialogs/div.js | 9 + .../ckeditor/plugins/find/dialogs/find.js | 24 + .../ckeditor/plugins/flash/dialogs/flash.js | 24 + .../plugins/flash/images/placeholder.png | Bin 0 -> 256 bytes .../ckeditor/ckeditor/plugins/icons.png | Bin 0 -> 15314 bytes .../ckeditor/ckeditor/plugins/icons_hidpi.png | Bin 0 -> 48333 bytes .../ckeditor/plugins/image/dialogs/image.js | 43 + .../ckeditor/plugins/image/images/noimage.png | Bin 0 -> 2115 bytes .../ckeditor/plugins/imageresize/LICENSE.md | 1243 +++++++++++++++++ .../ckeditor/plugins/imageresize/README.md | 46 + .../ckeditor/plugins/link/dialogs/anchor.js | 7 + .../ckeditor/plugins/link/dialogs/link.js | 26 + .../ckeditor/plugins/link/images/anchor.png | Bin 0 -> 589 bytes .../plugins/link/images/hidpi/anchor.png | Bin 0 -> 1379 bytes .../plugins/liststyle/dialogs/liststyle.js | 10 + .../magicline/images/hidpi/icon-rtl.png | Bin 0 -> 176 bytes .../plugins/magicline/images/hidpi/icon.png | Bin 0 -> 199 bytes .../plugins/magicline/images/icon-rtl.png | Bin 0 -> 138 bytes .../plugins/magicline/images/icon.png | Bin 0 -> 133 bytes .../plugins/onchange/docs/install.html | 77 + .../ckeditor/plugins/onchange/docs/styles.css | 59 + .../plugins/pagebreak/images/pagebreak.gif | Bin 0 -> 54 bytes .../plugins/pastefromword/filter/default.js | 31 + .../ckeditor/plugins/preview/preview.html | 13 + .../showblocks/images/block_address.png | Bin 0 -> 152 bytes .../showblocks/images/block_blockquote.png | Bin 0 -> 154 bytes .../plugins/showblocks/images/block_div.png | Bin 0 -> 127 bytes .../plugins/showblocks/images/block_h1.png | Bin 0 -> 120 bytes .../plugins/showblocks/images/block_h2.png | Bin 0 -> 127 bytes .../plugins/showblocks/images/block_h3.png | Bin 0 -> 123 bytes .../plugins/showblocks/images/block_h4.png | Bin 0 -> 123 bytes .../plugins/showblocks/images/block_h5.png | Bin 0 -> 126 bytes .../plugins/showblocks/images/block_h6.png | Bin 0 -> 123 bytes .../plugins/showblocks/images/block_p.png | Bin 0 -> 115 bytes .../plugins/showblocks/images/block_pre.png | Bin 0 -> 128 bytes .../ckeditor/plugins/table/dialogs/table.js | 21 + .../plugins/tabletools/dialogs/tableCell.js | 17 + .../plugins/templates/dialogs/templates.css | 84 ++ .../plugins/templates/dialogs/templates.js | 10 + .../plugins/templates/templates/default.js | 6 + .../templates/templates/images/template1.gif | Bin 0 -> 375 bytes .../templates/templates/images/template2.gif | Bin 0 -> 333 bytes .../templates/templates/images/template3.gif | Bin 0 -> 422 bytes .../xe_component/icons/xe_component.png | Bin 0 -> 3634 bytes .../ckeditor/plugins/xe_component/plugin.js | 50 + .../ckeditor/ckeditor/skins/moono/dialog.css | 5 + .../ckeditor/skins/moono/dialog_ie.css | 5 + .../ckeditor/skins/moono/dialog_ie7.css | 5 + .../ckeditor/skins/moono/dialog_ie8.css | 5 + .../ckeditor/skins/moono/dialog_iequirks.css | 5 + .../ckeditor/ckeditor/skins/moono/editor.css | 5 + .../ckeditor/skins/moono/editor_gecko.css | 5 + .../ckeditor/skins/moono/editor_ie.css | 5 + .../ckeditor/skins/moono/editor_ie7.css | 5 + .../ckeditor/skins/moono/editor_ie8.css | 5 + .../ckeditor/skins/moono/editor_iequirks.css | 5 + .../ckeditor/ckeditor/skins/moono/icons.png | Bin 0 -> 15314 bytes .../ckeditor/skins/moono/icons_hidpi.png | Bin 0 -> 48333 bytes .../ckeditor/skins/moono/images/arrow.png | Bin 0 -> 191 bytes .../ckeditor/skins/moono/images/close.png | Bin 0 -> 468 bytes .../skins/moono/images/hidpi/close.png | Bin 0 -> 1271 bytes .../skins/moono/images/hidpi/lock-open.png | Bin 0 -> 1329 bytes .../skins/moono/images/hidpi/lock.png | Bin 0 -> 1299 bytes .../skins/moono/images/hidpi/refresh.png | Bin 0 -> 1842 bytes .../ckeditor/skins/moono/images/lock-open.png | Bin 0 -> 349 bytes .../ckeditor/skins/moono/images/lock.png | Bin 0 -> 475 bytes .../ckeditor/skins/moono/images/refresh.png | Bin 0 -> 422 bytes .../ckeditor/ckeditor/skins/moono/readme.md | 51 + common/js/plugins/ckeditor/ckeditor/styles.js | 111 ++ common/js/plugins/ckeditor/plugin.load | 2 + common/js/plugins/ckeditor/xeEditor.plugin.js | 71 + 150 files changed, 4112 insertions(+) create mode 100644 common/js/plugins/ckeditor/ckeditor/adapters/jquery.js create mode 100644 common/js/plugins/ckeditor/ckeditor/build-config.js create mode 100644 common/js/plugins/ckeditor/ckeditor/ckeditor.js create mode 100644 common/js/plugins/ckeditor/ckeditor/config.js create mode 100644 common/js/plugins/ckeditor/ckeditor/contents.css create mode 100644 common/js/plugins/ckeditor/ckeditor/lang/de.js create mode 100644 common/js/plugins/ckeditor/ckeditor/lang/en.js create mode 100644 common/js/plugins/ckeditor/ckeditor/lang/es.js create mode 100644 common/js/plugins/ckeditor/ckeditor/lang/fr.js create mode 100644 common/js/plugins/ckeditor/ckeditor/lang/ja.js create mode 100644 common/js/plugins/ckeditor/ckeditor/lang/ko.js create mode 100644 common/js/plugins/ckeditor/ckeditor/lang/mn.js create mode 100644 common/js/plugins/ckeditor/ckeditor/lang/ru.js create mode 100644 common/js/plugins/ckeditor/ckeditor/lang/tr.js create mode 100644 common/js/plugins/ckeditor/ckeditor/lang/vi.js create mode 100644 common/js/plugins/ckeditor/ckeditor/lang/zh-cn.js create mode 100644 common/js/plugins/ckeditor/ckeditor/lang/zh.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/af.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/da.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/de.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/el.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/en.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/es.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/et.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fr-ca.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/gl.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/he.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/id.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/it.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/km.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/no.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/si.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sq.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sr-latn.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sr.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/th.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/tt.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/zh.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/clipboard/dialogs/paste.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/colordialog/dialogs/colordialog.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/dialog/dialogDefinition.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/div/dialogs/div.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/find/dialogs/find.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/flash/dialogs/flash.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/flash/images/placeholder.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/icons.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/icons_hidpi.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/image/dialogs/image.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/image/images/noimage.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/imageresize/LICENSE.md create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/imageresize/README.md create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/link/dialogs/anchor.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/link/dialogs/link.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/link/images/anchor.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/link/images/hidpi/anchor.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/liststyle/dialogs/liststyle.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/magicline/images/hidpi/icon-rtl.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/magicline/images/hidpi/icon.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/magicline/images/icon-rtl.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/magicline/images/icon.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/onchange/docs/install.html create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/onchange/docs/styles.css create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/pagebreak/images/pagebreak.gif create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/pastefromword/filter/default.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/preview/preview.html create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_address.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_blockquote.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_div.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_h1.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_h2.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_h3.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_h4.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_h5.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_h6.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_p.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_pre.png create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/table/dialogs/table.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/tabletools/dialogs/tableCell.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/templates/dialogs/templates.css create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/templates/dialogs/templates.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/templates/templates/default.js create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/templates/templates/images/template1.gif create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/templates/templates/images/template2.gif create mode 100644 common/js/plugins/ckeditor/ckeditor/plugins/templates/templates/images/template3.gif create mode 100755 common/js/plugins/ckeditor/ckeditor/plugins/xe_component/icons/xe_component.png create mode 100755 common/js/plugins/ckeditor/ckeditor/plugins/xe_component/plugin.js create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/dialog.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/dialog_ie.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/dialog_ie7.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/dialog_ie8.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/dialog_iequirks.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/editor.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/editor_gecko.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/editor_ie.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/editor_ie7.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/editor_ie8.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/editor_iequirks.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/icons.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/icons_hidpi.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/images/arrow.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/images/close.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/images/hidpi/close.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/images/hidpi/lock-open.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/images/hidpi/lock.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/images/hidpi/refresh.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/images/lock-open.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/images/lock.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/images/refresh.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono/readme.md create mode 100644 common/js/plugins/ckeditor/ckeditor/styles.js create mode 100644 common/js/plugins/ckeditor/plugin.load create mode 100644 common/js/plugins/ckeditor/xeEditor.plugin.js diff --git a/common/js/plugins/ckeditor/ckeditor/adapters/jquery.js b/common/js/plugins/ckeditor/ckeditor/adapters/jquery.js new file mode 100644 index 000000000..704635fb4 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/adapters/jquery.js @@ -0,0 +1,10 @@ +/* + Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. + For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +(function(a){CKEDITOR.config.jqueryOverrideVal="undefined"==typeof CKEDITOR.config.jqueryOverrideVal?!0:CKEDITOR.config.jqueryOverrideVal;"undefined"!=typeof a&&(a.extend(a.fn,{ckeditorGet:function(){var a=this.eq(0).data("ckeditorInstance");if(!a)throw"CKEditor is not initialized yet, use ckeditor() with a callback.";return a},ckeditor:function(g,d){if(!CKEDITOR.env.isCompatible)throw Error("The environment is incompatible.");if(!a.isFunction(g))var k=d,d=g,g=k;var i=[],d=d||{};this.each(function(){var b= +a(this),c=b.data("ckeditorInstance"),f=b.data("_ckeditorInstanceLock"),h=this,j=new a.Deferred;i.push(j.promise());if(c&&!f)g&&g.apply(c,[this]),j.resolve();else if(f)c.once("instanceReady",function(){setTimeout(function(){c.element?(c.element.$==h&&g&&g.apply(c,[h]),j.resolve()):setTimeout(arguments.callee,100)},0)},null,null,9999);else{if(d.autoUpdateElement||"undefined"==typeof d.autoUpdateElement&&CKEDITOR.config.autoUpdateElement)d.autoUpdateElementJquery=!0;d.autoUpdateElement=!1;b.data("_ckeditorInstanceLock", +!0);c=a(this).is("textarea")?CKEDITOR.replace(h,d):CKEDITOR.inline(h,d);b.data("ckeditorInstance",c);c.on("instanceReady",function(d){var e=d.editor;setTimeout(function(){if(e.element){d.removeListener();e.on("dataReady",function(){b.trigger("dataReady.ckeditor",[e])});e.on("setData",function(a){b.trigger("setData.ckeditor",[e,a.data])});e.on("getData",function(a){b.trigger("getData.ckeditor",[e,a.data])},999);e.on("destroy",function(){b.trigger("destroy.ckeditor",[e])});e.on("save",function(){a(h.form).submit(); +return!1},null,null,20);if(e.config.autoUpdateElementJquery&&b.is("textarea")&&a(h.form).length){var c=function(){b.ckeditor(function(){e.updateElement()})};a(h.form).submit(c);a(h.form).bind("form-pre-serialize",c);b.bind("destroy.ckeditor",function(){a(h.form).unbind("submit",c);a(h.form).unbind("form-pre-serialize",c)})}e.on("destroy",function(){b.removeData("ckeditorInstance")});b.removeData("_ckeditorInstanceLock");b.trigger("instanceReady.ckeditor",[e]);g&&g.apply(e,[h]);j.resolve()}else setTimeout(arguments.callee, +100)},0)},null,null,9999)}});var f=new a.Deferred;this.promise=f.promise();a.when.apply(this,i).then(function(){f.resolve()});this.editor=this.eq(0).data("ckeditorInstance");return this}}),CKEDITOR.config.jqueryOverrideVal&&(a.fn.val=CKEDITOR.tools.override(a.fn.val,function(g){return function(d){if(arguments.length){var k=this,i=[],f=this.each(function(){var b=a(this),c=b.data("ckeditorInstance");if(b.is("textarea")&&c){var f=new a.Deferred;c.setData(d,function(){f.resolve()});i.push(f.promise()); +return!0}return g.call(b,d)});if(i.length){var b=new a.Deferred;a.when.apply(this,i).done(function(){b.resolveWith(k)});return b.promise()}return f}var f=a(this).eq(0),c=f.data("ckeditorInstance");return f.is("textarea")&&c?c.getData():g.call(f)}})))})(window.jQuery); \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/build-config.js b/common/js/plugins/ckeditor/ckeditor/build-config.js new file mode 100644 index 000000000..dd1c656b1 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/build-config.js @@ -0,0 +1,119 @@ +/** + * @license Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. + * For licensing, see LICENSE.md or http://ckeditor.com/license + */ + +/** + * This file was added automatically by CKEditor builder. + * You may re-use it at any time to build CKEditor again. + * + * If you would like to build CKEditor online again + * (for example to upgrade), visit one the following links: + * + * (1) http://ckeditor.com/builder + * Visit online builder to build CKEditor from scratch. + * + * (2) http://ckeditor.com/builder/e91da8d60f3183091fc1cbcd29c77bae + * Visit online builder to build CKEditor, starting with the same setup as before. + * + * (3) http://ckeditor.com/builder/download/e91da8d60f3183091fc1cbcd29c77bae + * Straight download link to the latest version of CKEditor (Optimized) with the same setup as before. + * + * NOTE: + * This file is not used by CKEditor, you may remove it. + * Changing this file will not change your CKEditor configuration. + */ + +var CKBUILDER_CONFIG = { + skin: 'moono', + preset: 'full', + ignore: [ + '.bender', + 'bender.js', + 'bender-err.log', + 'bender-out.log', + 'dev', + '.DS_Store', + '.editorconfig', + '.gitattributes', + '.gitignore', + 'gruntfile.js', + '.idea', + '.jscsrc', + '.jshintignore', + '.jshintrc', + '.mailmap', + 'node_modules', + 'package.json', + 'README.md', + 'tests' + ], + plugins : { + 'a11yhelp' : 1, + 'basicstyles' : 1, + 'bidi' : 1, + 'blockquote' : 1, + 'clipboard' : 1, + 'colorbutton' : 1, + 'colordialog' : 1, + 'contextmenu' : 1, + 'dialogadvtab' : 1, + 'div' : 1, + 'elementspath' : 1, + 'enterkey' : 1, + 'entities' : 1, + 'find' : 1, + 'flash' : 1, + 'floatingspace' : 1, + 'font' : 1, + 'format' : 1, + 'horizontalrule' : 1, + 'htmlwriter' : 1, + 'image' : 1, + 'imageresize' : 1, + 'indentblock' : 1, + 'indentlist' : 1, + 'justify' : 1, + 'language' : 1, + 'link' : 1, + 'list' : 1, + 'liststyle' : 1, + 'magicline' : 1, + 'maximize' : 1, + 'onchange' : 1, + 'pagebreak' : 1, + 'pastefromword' : 1, + 'pastetext' : 1, + 'preview' : 1, + 'print' : 1, + 'removeformat' : 1, + 'resize' : 1, + 'save' : 1, + 'selectall' : 1, + 'showblocks' : 1, + 'showborders' : 1, + 'sourcearea' : 1, + 'stylescombo' : 1, + 'tab' : 1, + 'table' : 1, + 'tabletools' : 1, + 'templates' : 1, + 'toolbar' : 1, + 'undo' : 1, + 'wysiwygarea' : 1 + }, + languages : { + 'de' : 1, + 'en' : 1, + 'es' : 1, + 'fr' : 1, + 'ja' : 1, + 'ko' : 1, + 'mn' : 1, + 'ru' : 1, + 'tr' : 1, + 'vi' : 1, + 'zh' : 1, + 'zh-cn' : 1 + } +}; \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/ckeditor.js b/common/js/plugins/ckeditor/ckeditor/ckeditor.js new file mode 100644 index 000000000..7dea40cad --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/ckeditor.js @@ -0,0 +1,971 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +(function(){if(window.CKEDITOR&&window.CKEDITOR.dom)return;window.CKEDITOR||(window.CKEDITOR=function(){var a=/(^|.*[\\\/])ckeditor\.js(?:\?.*|;.*)?$/i,f={timestamp:"F0RD",version:"4.4.7",revision:"3a35b3d",rnd:Math.floor(900*Math.random())+100,_:{pending:[],basePathSrcPattern:a},status:"unloaded",basePath:function(){var e=window.CKEDITOR_BASEPATH||"";if(!e)for(var d=document.getElementsByTagName("script"),c=0;c=0;s--)if(m[s].priority<=k){m.splice(s+1,0,j);return{removeListener:g}}m.unshift(j)}return{removeListener:g}}, +once:function(){var a=Array.prototype.slice.call(arguments),e=a[1];a[1]=function(a){a.removeListener();return e.apply(this,arguments)};return this.on.apply(this,a)},capture:function(){CKEDITOR.event.useCapture=1;var a=this.on.apply(this,arguments);CKEDITOR.event.useCapture=0;return a},fire:function(){var a=0,e=function(){a=1},d=0,b=function(){d=1};return function(k,j,g){var m=f(this)[k],k=a,y=d;a=d=0;if(m){var s=m.listeners;if(s.length)for(var s=s.slice(0),w,q=0;q=0&&d.listeners.splice(b,1)}},removeAllListeners:function(){var a=f(this),e;for(e in a)delete a[e]},hasListeners:function(a){return(a=f(this)[a])&&a.listeners.length> +0}}}());CKEDITOR.editor||(CKEDITOR.editor=function(){CKEDITOR._.pending.push([this,arguments]);CKEDITOR.event.call(this)},CKEDITOR.editor.prototype.fire=function(a,f){a in{instanceReady:1,loaded:1}&&(this[a]=true);return CKEDITOR.event.prototype.fire.call(this,a,f,this)},CKEDITOR.editor.prototype.fireOnce=function(a,f){a in{instanceReady:1,loaded:1}&&(this[a]=true);return CKEDITOR.event.prototype.fireOnce.call(this,a,f,this)},CKEDITOR.event.implementOn(CKEDITOR.editor.prototype)); +CKEDITOR.env||(CKEDITOR.env=function(){var a=navigator.userAgent.toLowerCase(),f={ie:a.indexOf("trident/")>-1,webkit:a.indexOf(" applewebkit/")>-1,air:a.indexOf(" adobeair/")>-1,mac:a.indexOf("macintosh")>-1,quirks:document.compatMode=="BackCompat"&&(!document.documentMode||document.documentMode<10),mobile:a.indexOf("mobile")>-1,iOS:/(ipad|iphone|ipod)/.test(a),isCustomDomain:function(){if(!this.ie)return false;var a=document.domain,d=window.location.hostname;return a!=d&&a!="["+d+"]"},secure:location.protocol== +"https:"};f.gecko=navigator.product=="Gecko"&&!f.webkit&&!f.ie;if(f.webkit)a.indexOf("chrome")>-1?f.chrome=true:f.safari=true;var b=0;if(f.ie){b=f.quirks||!document.documentMode?parseFloat(a.match(/msie (\d+)/)[1]):document.documentMode;f.ie9Compat=b==9;f.ie8Compat=b==8;f.ie7Compat=b==7;f.ie6Compat=b<7||f.quirks}if(f.gecko){var c=a.match(/rv:([\d\.]+)/);if(c){c=c[1].split(".");b=c[0]*1E4+(c[1]||0)*100+(c[2]||0)*1}}f.air&&(b=parseFloat(a.match(/ adobeair\/(\d+)/)[1]));f.webkit&&(b=parseFloat(a.match(/ applewebkit\/(\d+)/)[1])); +f.version=b;f.isCompatible=f.iOS&&b>=534||!f.mobile&&(f.ie&&b>6||f.gecko&&b>=2E4||f.air&&b>=1||f.webkit&&b>=522||false);f.hidpi=window.devicePixelRatio>=2;f.needsBrFiller=f.gecko||f.webkit||f.ie&&b>10;f.needsNbspFiller=f.ie&&b<11;f.cssClass="cke_browser_"+(f.ie?"ie":f.gecko?"gecko":f.webkit?"webkit":"unknown");if(f.quirks)f.cssClass=f.cssClass+" cke_browser_quirks";if(f.ie)f.cssClass=f.cssClass+(" cke_browser_ie"+(f.quirks?"6 cke_browser_iequirks":f.version));if(f.air)f.cssClass=f.cssClass+" cke_browser_air"; +if(f.iOS)f.cssClass=f.cssClass+" cke_browser_ios";if(f.hidpi)f.cssClass=f.cssClass+" cke_hidpi";return f}()); +"unloaded"==CKEDITOR.status&&function(){CKEDITOR.event.implementOn(CKEDITOR);CKEDITOR.loadFullCore=function(){if(CKEDITOR.status!="basic_ready")CKEDITOR.loadFullCore._load=1;else{delete CKEDITOR.loadFullCore;var a=document.createElement("script");a.type="text/javascript";a.src=CKEDITOR.basePath+"ckeditor.js";document.getElementsByTagName("head")[0].appendChild(a)}};CKEDITOR.loadFullCoreTimeout=0;CKEDITOR.add=function(a){(this._.pending||(this._.pending=[])).push(a)};(function(){CKEDITOR.domReady(function(){var a= +CKEDITOR.loadFullCore,f=CKEDITOR.loadFullCoreTimeout;if(a){CKEDITOR.status="basic_ready";a&&a._load?a():f&&setTimeout(function(){CKEDITOR.loadFullCore&&CKEDITOR.loadFullCore()},f*1E3)}})})();CKEDITOR.status="basic_loaded"}();CKEDITOR.dom={}; +(function(){var a=[],f=CKEDITOR.env.gecko?"-moz-":CKEDITOR.env.webkit?"-webkit-":CKEDITOR.env.ie?"-ms-":"",b=/&/g,c=/>/g,e=/"+e+""):d.push('');return d.join("")}, +htmlEncode:function(a){return(""+a).replace(b,"&").replace(c,">").replace(e,"<")},htmlDecode:function(a){return a.replace(h,"&").replace(k,">").replace(j,"<")},htmlEncodeAttr:function(a){return a.replace(d,""").replace(e,"<").replace(c,">")},htmlDecodeAttr:function(a){return a.replace(g,'"').replace(j,"<").replace(k,">")},getNextNumber:function(){var a=0;return function(){return++a}}(),getNextId:function(){return"cke_"+this.getNextNumber()},override:function(a,e){var d=e(a);d.prototype= +a.prototype;return d},setTimeout:function(a,e,d,b,c){c||(c=window);d||(d=c);return c.setTimeout(function(){b?a.apply(d,[].concat(b)):a.apply(d)},e||0)},trim:function(){var a=/(?:^[ \t\n\r]+)|(?:[ \t\n\r]+$)/g;return function(e){return e.replace(a,"")}}(),ltrim:function(){var a=/^[ \t\n\r]+/g;return function(e){return e.replace(a,"")}}(),rtrim:function(){var a=/[ \t\n\r]+$/g;return function(e){return e.replace(a,"")}}(),indexOf:function(a,e){if(typeof e=="function")for(var d=0,b=a.length;d=0?a[d]:null},bind:function(a,e){return function(){return a.apply(e,arguments)}},createClass:function(a){var e=a.$,d=a.base,b=a.privates||a._,c=a.proto,a=a.statics;!e&&(e=function(){d&&this.base.apply(this,arguments)});if(b)var f=e,e=function(){var a=this._||(this._={}),e;for(e in b){var d=b[e];a[e]=typeof d=="function"?CKEDITOR.tools.bind(d,this):d}f.apply(this,arguments)};if(d){e.prototype= +this.prototypedCopy(d.prototype);e.prototype.constructor=e;e.base=d;e.baseProto=d.prototype;e.prototype.base=function(){this.base=d.prototype.base;d.apply(this,arguments);this.base=arguments.callee}}c&&this.extend(e.prototype,c,true);a&&this.extend(e,a,true);return e},addFunction:function(e,d){return a.push(function(){return e.apply(d||this,arguments)})-1},removeFunction:function(e){a[e]=null},callFunction:function(e){var d=a[e];return d&&d.apply(window,Array.prototype.slice.call(arguments,1))},cssLength:function(){var a= +/^-?\d+\.?\d*px$/,e;return function(d){e=CKEDITOR.tools.trim(d+"")+"px";return a.test(e)?e:d||""}}(),convertToPx:function(){var a;return function(e){if(!a){a=CKEDITOR.dom.element.createFromHtml('
',CKEDITOR.document);CKEDITOR.document.getBody().append(a)}if(!/%$/.test(e)){a.setStyle("width",e);return a.$.clientWidth}return e}}(),repeat:function(a,e){return Array(e+1).join(a)},tryThese:function(){for(var a, +e=0,d=arguments.length;e]*?>)|^/i,'$&\n diff --git a/common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_address.png b/common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_address.png new file mode 100644 index 0000000000000000000000000000000000000000..5abdae127953d052a36ca481023730baf8e10461 GIT binary patch literal 152 zcmeAS@N?(olHy`uVBq!ia0vp^IzY_N$P6Tx7VWq4ZMIndrud~5RU7~KlqvCB?4CNuN7<8ZM?GWcHwn9gFm;vTD`OGs4A4v z_>p{l_3!U?1~ulpOZhdv&pm(ZrckW485hHzLf=y^Oa(`QMlpE0`njxgN@xNAlu9>b literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_blockquote.png b/common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_blockquote.png new file mode 100644 index 0000000000000000000000000000000000000000..a8f497353cc5abb02cb78b7eba55772e1f5db540 GIT binary patch literal 154 zcmeAS@N?(olHy`uVBq!ia0vp^RzS?p$P6U=5BZe>DYgKg5Z8u=hX4QnKfl(y1}MT* z666>BpW*3t11})Y(bL5-gyVYh4}L~=2?I&_?;_8ie6x^G__3`z_sgwKzZH&EWg9$J zo>3^H!!)^R)z2HjbAs=bOXQrh-_iK(#@Yr$22;7jhW_~%%z%b5c)I$ztaD0e0sySo BH~atq literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_div.png b/common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_div.png new file mode 100644 index 0000000000000000000000000000000000000000..87b3c17146e79e8dcced15939f24a0f16ad50c61 GIT binary patch literal 127 zcmeAS@N?(olHy`uVBq!ia0vp^qCm{g$P6S6r-*3)DYgKg5Z8u=hX4QnKfl(y1}MT* z666>BpW*3t11}&?&C|s(gyVYhkN^MKnR)8>#2x&=+p)i$x$p|V!M`$YjXLp#Y@Eyt Y)8}f)Oi$*s1L|P#boFyt=akR{0Dd1P761SM literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_h1.png b/common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_h1.png new file mode 100644 index 0000000000000000000000000000000000000000..3933325c08f3f4eacec46c97600f7cba01ead54f GIT binary patch literal 120 zcmeAS@N?(olHy`uVBq!ia0vp^fbHRe*aCb)TpJo1{{R2~{95lCpa@e* zkYDhBhNs&NynsA;PZ!4!j_b)k{_k&OY}>z={n2NEUx%wTFVdQ&MBb@0O>s@^8f$< literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_h2.png b/common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_h2.png new file mode 100644 index 0000000000000000000000000000000000000000..c99894c2650ae1745e0e4156d775fe84d00efff0 GIT binary patch literal 127 zcmeAS@N?(olHy`uVBq!ia0vp^fbHRe*aCb)TpJo1{{R2~{95lCpa@e* zkYDhBhNs&NynsA4PZ!4!j_b)k{_k&OY}-GV{n1;8KYJS=G7HpK^B?)%xI=a!8z(b^ XbHRe*aCb)TpJo1{{R2~{95lCpa@e* zkYDhBhNs&Nyns9BpW*3t11}&?$FVdQ&MBb@02`Vnr2qf` literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_h5.png b/common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_h5.png new file mode 100644 index 0000000000000000000000000000000000000000..ce5bec16cfa84d461672f8b0721911d90a06e445 GIT binary patch literal 126 zcmeAS@N?(olHy`uVBq!ia0vp^fbHRe*aCb)TpJo1{{R2~{95lCpa@e* zkYDhBhNs&NynsAaPZ!4!j_b)k{_k&OY}>z;`D2~JyZnS78)QA|*^>lnbHRe*aCb)TpJo1{{R2~{95lCpa@e* zkYDhBhNs&Nyns9#|GfK-CPMu6{1-oD!M|04nb literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_pre.png b/common/js/plugins/ckeditor/ckeditor/plugins/showblocks/images/block_pre.png new file mode 100644 index 0000000000000000000000000000000000000000..955a8689a13a394a9e715673d23750a6847eb617 GIT binary patch literal 128 zcmeAS@N?(olHy`uVBq!ia0vp^VnEE#$P6TJEnce)q}T#{LR=df8vg(P|NL6-8lVVM zNswRge}<>q4ZMInbx#+^5RU7~KmPycXXdGYvoZ00=t{@C}8pCx}|qC*(_ aQHD7O)qh-UDHQ^0VeoYIb6Mw<&;$Unq%6+> literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/plugins/table/dialogs/table.js b/common/js/plugins/ckeditor/ckeditor/plugins/table/dialogs/table.js new file mode 100644 index 000000000..2a3352838 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/plugins/table/dialogs/table.js @@ -0,0 +1,21 @@ +/* + Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. + For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +(function(){function r(a){for(var e=0,l=0,k=0,m,g=a.$.rows.length;kl&&(l=e)}return l}function o(a){return function(){var e=this.getValue(),e=!!(CKEDITOR.dialog.validate.integer()(e)&&0n.getSize("width")?"100%":500:0,getValue:q,validate:CKEDITOR.dialog.validate.cssLength(a.lang.common.invalidCssLength.replace("%1",a.lang.common.width)),onChange:function(){var a=this.getDialog().getContentElement("advanced","advStyles");a&& +a.updateStyle("width",this.getValue())},setup:function(a){this.setValue(a.getStyle("width"))},commit:k}]},{type:"hbox",widths:["5em"],children:[{type:"text",id:"txtHeight",requiredContent:"table{height}",controlStyle:"width:5em",label:a.lang.common.height,title:a.lang.common.cssLengthTooltip,"default":"",getValue:q,validate:CKEDITOR.dialog.validate.cssLength(a.lang.common.invalidCssLength.replace("%1",a.lang.common.height)),onChange:function(){var a=this.getDialog().getContentElement("advanced","advStyles"); +a&&a.updateStyle("height",this.getValue())},setup:function(a){(a=a.getStyle("height"))&&this.setValue(a)},commit:k}]},{type:"html",html:" "},{type:"text",id:"txtCellSpace",requiredContent:"table[cellspacing]",controlStyle:"width:3em",label:a.lang.table.cellSpace,"default":a.filter.check("table[cellspacing]")?1:0,validate:CKEDITOR.dialog.validate.number(a.lang.table.invalidCellSpacing),setup:function(a){this.setValue(a.getAttribute("cellSpacing")||"")},commit:function(a,d){this.getValue()?d.setAttribute("cellSpacing", +this.getValue()):d.removeAttribute("cellSpacing")}},{type:"text",id:"txtCellPad",requiredContent:"table[cellpadding]",controlStyle:"width:3em",label:a.lang.table.cellPad,"default":a.filter.check("table[cellpadding]")?1:0,validate:CKEDITOR.dialog.validate.number(a.lang.table.invalidCellPadding),setup:function(a){this.setValue(a.getAttribute("cellPadding")||"")},commit:function(a,d){this.getValue()?d.setAttribute("cellPadding",this.getValue()):d.removeAttribute("cellPadding")}}]}]},{type:"html",align:"right", +html:""},{type:"vbox",padding:0,children:[{type:"text",id:"txtCaption",requiredContent:"caption",label:a.lang.table.caption,setup:function(a){this.enable();a=a.getElementsByTag("caption");if(0"+h.widthPx}]},f,{type:"select",id:"wordWrap",label:c.wordWrap,"default":"yes",items:[[c.yes,"yes"],[c.no,"no"]],setup:d(function(a){var b=a.getAttribute("noWrap");if("nowrap"==a.getStyle("white-space")|| +b)return"no"}),commit:function(a){"no"==this.getValue()?a.setStyle("white-space","nowrap"):a.removeStyle("white-space");a.removeAttribute("noWrap")}},f,{type:"select",id:"hAlign",label:c.hAlign,"default":"",items:[[e.notSet,""],[e.alignLeft,"left"],[e.alignCenter,"center"],[e.alignRight,"right"],[e.alignJustify,"justify"]],setup:d(function(a){var b=a.getAttribute("align");return a.getStyle("text-align")||b||""}),commit:function(a){var b=this.getValue();b?a.setStyle("text-align",b):a.removeStyle("text-align"); +a.removeAttribute("align")}},{type:"select",id:"vAlign",label:c.vAlign,"default":"",items:[[e.notSet,""],[e.alignTop,"top"],[e.alignMiddle,"middle"],[e.alignBottom,"bottom"],[c.alignBaseline,"baseline"]],setup:d(function(a){var b=a.getAttribute("vAlign"),a=a.getStyle("vertical-align");switch(a){case "top":case "middle":case "bottom":case "baseline":break;default:a=""}return a||b||""}),commit:function(a){var b=this.getValue();b?a.setStyle("vertical-align",b):a.removeStyle("vertical-align");a.removeAttribute("vAlign")}}]}, +f,{type:"vbox",padding:0,children:[{type:"select",id:"cellType",label:c.cellType,"default":"td",items:[[c.data,"td"],[c.header,"th"]],setup:d(function(a){return a.getName()}),commit:function(a){a.renameNode(this.getValue())}},f,{type:"text",id:"rowSpan",label:c.rowSpan,"default":"",validate:i.integer(c.invalidRowSpan),setup:d(function(a){if((a=parseInt(a.getAttribute("rowSpan"),10))&&1!=a)return a}),commit:function(a){var b=parseInt(this.getValue(),10);b&&1!=b?a.setAttribute("rowSpan",this.getValue()): +a.removeAttribute("rowSpan")}},{type:"text",id:"colSpan",label:c.colSpan,"default":"",validate:i.integer(c.invalidColSpan),setup:d(function(a){if((a=parseInt(a.getAttribute("colSpan"),10))&&1!=a)return a}),commit:function(a){var b=parseInt(this.getValue(),10);b&&1!=b?a.setAttribute("colSpan",this.getValue()):a.removeAttribute("colSpan")}},f,{type:"hbox",padding:0,widths:["60%","40%"],children:[{type:"text",id:"bgColor",label:c.bgColor,"default":"",setup:d(function(a){var b=a.getAttribute("bgColor"); +return a.getStyle("background-color")||b}),commit:function(a){this.getValue()?a.setStyle("background-color",this.getValue()):a.removeStyle("background-color");a.removeAttribute("bgColor")}},k?{type:"button",id:"bgColorChoose","class":"colorChooser",label:c.chooseColor,onLoad:function(){this.getElement().getParent().setStyle("vertical-align","bottom")},onClick:function(){g.getColorFromDialog(function(a){a&&this.getDialog().getContentElement("info","bgColor").setValue(a);this.focus()},this)}}:f]},f, +{type:"hbox",padding:0,widths:["60%","40%"],children:[{type:"text",id:"borderColor",label:c.borderColor,"default":"",setup:d(function(a){var b=a.getAttribute("borderColor");return a.getStyle("border-color")||b}),commit:function(a){this.getValue()?a.setStyle("border-color",this.getValue()):a.removeStyle("border-color");a.removeAttribute("borderColor")}},k?{type:"button",id:"borderColorChoose","class":"colorChooser",label:c.chooseColor,style:(m?"margin-right":"margin-left")+": 10px",onLoad:function(){this.getElement().getParent().setStyle("vertical-align", +"bottom")},onClick:function(){g.getColorFromDialog(function(a){a&&this.getDialog().getContentElement("info","borderColor").setValue(a);this.focus()},this)}}:f]}]}]}]}],onShow:function(){this.cells=CKEDITOR.plugins.tabletools.getSelectedCells(this._.editor.getSelection());this.setupContent(this.cells)},onOk:function(){for(var a=this._.editor.getSelection(),b=a.createBookmarks(),c=this.cells,d=0;d
'),d='
';a.image&&b&&(d+='');d+='");k.on("click",function(){p(a.html)});return k}function p(a){var b=CKEDITOR.dialog.getCurrent();b.getValueOf("selectTpl","chkInsertOpt")?(c.fire("saveSnapshot"),c.setData(a,function(){b.hide();var a=c.createRange();a.moveToElementEditStart(c.editable());a.select();setTimeout(function(){c.fire("saveSnapshot")},0)})):(c.insertHtml(a),b.hide())}function i(a){var b=a.data.getTarget(), +c=g.equals(b);if(c||g.contains(b)){var d=a.data.getKeystroke(),f=g.getElementsByTag("a"),e;if(f){if(c)e=f.getItem(0);else switch(d){case 40:e=b.getNext();break;case 38:e=b.getPrevious();break;case 13:case 32:b.fire("click")}e&&(e.focus(),a.data.preventDefault())}}}var h=CKEDITOR.plugins.get("templates");CKEDITOR.document.appendStyleSheet(CKEDITOR.getUrl(h.path+"dialogs/templates.css"));var g,h="cke_tpl_list_label_"+CKEDITOR.tools.getNextNumber(),f=c.lang.templates,l=c.config;return{title:c.lang.templates.title, +minWidth:CKEDITOR.env.ie?440:400,minHeight:340,contents:[{id:"selectTpl",label:f.title,elements:[{type:"vbox",padding:5,children:[{id:"selectTplText",type:"html",html:""+f.selectPromptMsg+""},{id:"templatesList",type:"html",focus:!0,html:'
'+f.options+""},{id:"chkInsertOpt",type:"checkbox",label:f.insertOption, +"default":l.templates_replaceContent}]}]}],buttons:[CKEDITOR.dialog.cancelButton],onShow:function(){var a=this.getContentElement("selectTpl","templatesList");g=a.getElement();CKEDITOR.loadTemplates(l.templates_files,function(){var b=(l.templates||"default").split(",");if(b.length){var c=g;c.setHtml("");for(var d=0,h=b.length;d'+f.emptyListMsg+"")});this._.element.on("keydown",i)},onHide:function(){this._.element.removeListener("keydown",i)}}})})(); \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/plugins/templates/templates/default.js b/common/js/plugins/ckeditor/ckeditor/plugins/templates/templates/default.js new file mode 100644 index 000000000..087829051 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/plugins/templates/templates/default.js @@ -0,0 +1,6 @@ +/* + Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. + For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.addTemplates("default",{imagesPath:CKEDITOR.getUrl(CKEDITOR.plugins.getPath("templates")+"templates/images/"),templates:[{title:"Image and Title",image:"template1.gif",description:"One main image with a title and text that surround the image.",html:'

Type the title here

Type the text here

'},{title:"Strange Template",image:"template2.gif",description:"A template that defines two colums, each one with a title, and some text.", +html:'

Title 1

Title 2

Text 1Text 2

More text goes here.

'},{title:"Text and Table",image:"template3.gif",description:"A title with some text and a table.",html:'

Title goes here

Table title
   
   
   

Type the text here

'}]}); \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/plugins/templates/templates/images/template1.gif b/common/js/plugins/ckeditor/ckeditor/plugins/templates/templates/images/template1.gif new file mode 100644 index 0000000000000000000000000000000000000000..efdabbebd4503ceb55c948fa73b9b83cbd373e57 GIT binary patch literal 375 zcmV--0f_!bNk%w1VPpVC0FeLyva+%O00960{{R30A^8LV00000EC2ui0Av7000092 zgpaAq?GK}zwAu@W-n{z{hT=$;9b%^H%BpA!$8!13_AS@=&Xal%3~GMDB95pDD3{Ep z^T{;k4xj+g%7JRP+$IPq!1Bb&uKB$DQa@x|8x8NO4b`hO25#TOnRw~9=3yE0xyeE4CQ8$(2)Mz>8udZCXX=BRr7DZbW_#-a zYZEHlJM(KAEc4dditDMnJ4(CC+&uK06fIp0D*Z|wX5EYpGb{?;a*WKVoEoWp!Y!`y zeo4*}FFC(bZf@duda#%D-q zaHzPUxA@lRm;@PFNk%w1VPpVC0FeLyva+%O00960{{R30A^8LV00000EC2ui0Av7000092 zgpaAq?GK}zwAu@W-n{z{hT=$;9b%^H%BpA!$8!13_AS@=&Xal%3~GMDB93TG#*l%g z^9hYgr_`$T`us4l+^+W<)gC_JviY3#AeC&_xD98m<8-m1jvsB&<_@0q~XXRsCap^IRqK$(K#c!N9pBf82AawVH$?WN){q&IjedXiz+EX zOS+od%WDgp+d909toAG5`lTy-9D18rOxWx+T}>D*o&1Qa9n5V^96nACtqfi*?*05t zZSMX~zfpQ^<%jRPUfiDEO8=eEuB)DKv}S_cJW8uTxqL`=(AMXYB~Aenu4SM=e_ zrj6M`kqsZ_xrlC}y^5evW>krApudqWP2zFM5Fo{b%sA$2wGU)SI5vkKVQCad(WEn$ zGF`IFr&KONpB8ayRSwduHn4I{;q@zxs8h=VDkqjl*t8(;n#c+zd*_U=jy QeEa(S3plV~2n7HDJNoX*`2YX_ literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/plugins/xe_component/icons/xe_component.png b/common/js/plugins/ckeditor/ckeditor/plugins/xe_component/icons/xe_component.png new file mode 100755 index 0000000000000000000000000000000000000000..46a7abf9f82ffe51f56d15411fef40ea683eb80b GIT binary patch literal 3634 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 EU%wYh!vFvP literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/plugins/xe_component/plugin.js b/common/js/plugins/ckeditor/ckeditor/plugins/xe_component/plugin.js new file mode 100755 index 000000000..1a6274003 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/plugins/xe_component/plugin.js @@ -0,0 +1,50 @@ +CKEDITOR.plugins.add('xe_component', { + requires: 'richcombo', + icons: 'xe_component', + + init: function(editor) { + var config=editor.config; + + editor.on( 'doubleclick', function( evt ) { + var element = evt.data.element; + var editor_component = element.getAttribute('editor_component'); + window.editorPrevNode = element.$; + + if(!editor_component && element.is('img')) { + editor_component = 'image_link'; + } + + if(editor_component) + { + evt.cancel(); + window.openComponent(editor_component, config.xe_editor_sequence); + } + }); + + editor.ui.addRichCombo('Xe_component', { + label: '확장기능', + title: 'Extension Components', + panel: { + css: [CKEDITOR.skin.getPath('editor')].concat(config.contentsCss), + multiSelect: false + }, + init: function(){ + this.startGroup('Extension Components'); + for(var key in config.xe_component_arrays){ + var component_name=key; + var component_title=config.xe_component_arrays[key]; + this.add(component_name, component_title, component_title); + } + }, + onClick: function(value){ + if(typeof openComponent=='function'){ + if(config.xe_editor_sequence) + { + window.editorPrevSrl = config.xe_editor_sequence; + openComponent(value, config.xe_editor_sequence); + } + } + } + }); + } +}); diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/dialog.css b/common/js/plugins/ckeditor/ckeditor/skins/moono/dialog.css new file mode 100644 index 000000000..8fdd5abfd --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono/dialog.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #999;padding:6px 10px;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5;opacity:.8;filter:alpha(opacity = 80)}.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 10px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:18px;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:3px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:25px;line-height:25px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:3px 3px 3px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/dialog_ie.css b/common/js/plugins/ckeditor/ckeditor/skins/moono/dialog_ie.css new file mode 100644 index 000000000..48c1b4ba5 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono/dialog_ie.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #999;padding:6px 10px;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5;opacity:.8;filter:alpha(opacity = 80)}.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 10px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:18px;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:3px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:25px;line-height:25px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:3px 3px 3px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/dialog_ie7.css b/common/js/plugins/ckeditor/ckeditor/skins/moono/dialog_ie7.css new file mode 100644 index 000000000..bdc5a380c --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono/dialog_ie7.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #999;padding:6px 10px;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5;opacity:.8;filter:alpha(opacity = 80)}.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 10px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:18px;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:3px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:25px;line-height:25px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:3px 3px 3px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0}.cke_dialog_title{zoom:1}.cke_dialog_footer{border-top:1px solid #bfbfbf}.cke_dialog_footer_buttons{position:static}.cke_dialog_footer_buttons a.cke_dialog_ui_button{vertical-align:top}.cke_dialog .cke_resizer_ltr{padding-left:4px}.cke_dialog .cke_resizer_rtl{padding-right:4px}.cke_dialog_ui_input_text,.cke_dialog_ui_input_password,.cke_dialog_ui_input_textarea,.cke_dialog_ui_input_select{padding:0!important}.cke_dialog_ui_checkbox_input,.cke_dialog_ui_ratio_input,.cke_btn_reset,.cke_btn_locked,.cke_btn_unlocked{border:1px solid transparent!important} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/dialog_ie8.css b/common/js/plugins/ckeditor/ckeditor/skins/moono/dialog_ie8.css new file mode 100644 index 000000000..89b1664b9 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono/dialog_ie8.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #999;padding:6px 10px;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5;opacity:.8;filter:alpha(opacity = 80)}.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 10px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:18px;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:3px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:25px;line-height:25px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:3px 3px 3px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{display:block} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/dialog_iequirks.css b/common/js/plugins/ckeditor/ckeditor/skins/moono/dialog_iequirks.css new file mode 100644 index 000000000..a168d84ea --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono/dialog_iequirks.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #999;padding:6px 10px;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5;opacity:.8;filter:alpha(opacity = 80)}.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 10px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:18px;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:3px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:25px;line-height:25px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:3px 3px 3px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0}.cke_dialog_footer{filter:""} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/editor.css b/common/js/plugins/ckeditor/ckeditor/skins/moono/editor.css new file mode 100644 index 000000000..80ec3b7d3 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono/editor.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__bidiltr_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_button__bidirtl_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_button__creatediv_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_rtl .cke_button__find_icon, .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_ltr .cke_button__find_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_button__replace_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_button__flash_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_button__language_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__pagebreak_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_rtl .cke_button__preview_icon, .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1152px !important;}.cke_ltr .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1176px !important;}.cke_button__print_icon {background: url(icons.png) no-repeat 0 -1200px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -1224px !important;}.cke_button__save_icon {background: url(icons.png) no-repeat 0 -1248px !important;}.cke_button__selectall_icon {background: url(icons.png) no-repeat 0 -1272px !important;}.cke_rtl .cke_button__showblocks_icon, .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1296px !important;}.cke_ltr .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1320px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1344px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1368px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -1392px !important;}.cke_rtl .cke_button__templates_icon, .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -1416px !important;}.cke_ltr .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -1440px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1464px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1488px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1512px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1536px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidiltr_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidirtl_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_button__creatediv_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__find_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_button__replace_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_button__flash_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_button__language_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__preview_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_hidpi .cke_button__print_icon {background: url(icons_hidpi.png) no-repeat 0 -1200px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -1224px !important;background-size: 16px !important;}.cke_hidpi .cke_button__save_icon {background: url(icons_hidpi.png) no-repeat 0 -1248px !important;background-size: 16px !important;}.cke_hidpi .cke_button__selectall_icon {background: url(icons_hidpi.png) no-repeat 0 -1272px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__showblocks_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1296px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1320px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1344px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1368px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -1392px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__templates_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -1416px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -1440px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1464px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1488px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1512px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1536px !important;background-size: 16px !important;} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/editor_gecko.css b/common/js/plugins/ckeditor/ckeditor/skins/moono/editor_gecko.css new file mode 100644 index 000000000..f929759a1 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono/editor_gecko.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}.cke_bottom{padding-bottom:3px}.cke_combo_text{margin-bottom:-1px;margin-top:1px}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__bidiltr_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_button__bidirtl_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_button__creatediv_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_rtl .cke_button__find_icon, .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_ltr .cke_button__find_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_button__replace_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_button__flash_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_button__language_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__pagebreak_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_rtl .cke_button__preview_icon, .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1152px !important;}.cke_ltr .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1176px !important;}.cke_button__print_icon {background: url(icons.png) no-repeat 0 -1200px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -1224px !important;}.cke_button__save_icon {background: url(icons.png) no-repeat 0 -1248px !important;}.cke_button__selectall_icon {background: url(icons.png) no-repeat 0 -1272px !important;}.cke_rtl .cke_button__showblocks_icon, .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1296px !important;}.cke_ltr .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1320px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1344px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1368px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -1392px !important;}.cke_rtl .cke_button__templates_icon, .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -1416px !important;}.cke_ltr .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -1440px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1464px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1488px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1512px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1536px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidiltr_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidirtl_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_button__creatediv_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__find_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_button__replace_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_button__flash_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_button__language_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__preview_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_hidpi .cke_button__print_icon {background: url(icons_hidpi.png) no-repeat 0 -1200px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -1224px !important;background-size: 16px !important;}.cke_hidpi .cke_button__save_icon {background: url(icons_hidpi.png) no-repeat 0 -1248px !important;background-size: 16px !important;}.cke_hidpi .cke_button__selectall_icon {background: url(icons_hidpi.png) no-repeat 0 -1272px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__showblocks_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1296px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1320px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1344px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1368px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -1392px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__templates_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -1416px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -1440px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1464px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1488px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1512px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1536px !important;background-size: 16px !important;} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/editor_ie.css b/common/js/plugins/ckeditor/ckeditor/skins/moono/editor_ie.css new file mode 100644 index 000000000..f45f5296d --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono/editor_ie.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__bidiltr_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_button__bidirtl_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_button__creatediv_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_rtl .cke_button__find_icon, .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_ltr .cke_button__find_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_button__replace_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_button__flash_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_button__language_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__pagebreak_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_rtl .cke_button__preview_icon, .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1152px !important;}.cke_ltr .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1176px !important;}.cke_button__print_icon {background: url(icons.png) no-repeat 0 -1200px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -1224px !important;}.cke_button__save_icon {background: url(icons.png) no-repeat 0 -1248px !important;}.cke_button__selectall_icon {background: url(icons.png) no-repeat 0 -1272px !important;}.cke_rtl .cke_button__showblocks_icon, .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1296px !important;}.cke_ltr .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1320px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1344px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1368px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -1392px !important;}.cke_rtl .cke_button__templates_icon, .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -1416px !important;}.cke_ltr .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -1440px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1464px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1488px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1512px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1536px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidiltr_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidirtl_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_button__creatediv_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__find_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_button__replace_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_button__flash_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_button__language_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__preview_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_hidpi .cke_button__print_icon {background: url(icons_hidpi.png) no-repeat 0 -1200px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -1224px !important;background-size: 16px !important;}.cke_hidpi .cke_button__save_icon {background: url(icons_hidpi.png) no-repeat 0 -1248px !important;background-size: 16px !important;}.cke_hidpi .cke_button__selectall_icon {background: url(icons_hidpi.png) no-repeat 0 -1272px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__showblocks_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1296px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1320px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1344px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1368px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -1392px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__templates_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -1416px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -1440px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1464px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1488px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1512px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1536px !important;background-size: 16px !important;} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/editor_ie7.css b/common/js/plugins/ckeditor/ckeditor/skins/moono/editor_ie7.css new file mode 100644 index 000000000..53271eb13 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono/editor_ie7.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_button,.cke_rtl .cke_button *,.cke_rtl .cke_combo,.cke_rtl .cke_combo *,.cke_rtl .cke_path_item,.cke_rtl .cke_path_item *,.cke_rtl .cke_path_empty{float:none}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_combo_button,.cke_rtl .cke_combo_button *,.cke_rtl .cke_button,.cke_rtl .cke_button_icon{display:inline-block;vertical-align:top}.cke_toolbox{display:inline-block;padding-bottom:5px;height:100%}.cke_rtl .cke_toolbox{padding-bottom:0}.cke_toolbar{margin-bottom:5px}.cke_rtl .cke_toolbar{margin-bottom:0}.cke_toolgroup{height:26px}.cke_toolgroup,.cke_combo{position:relative}a.cke_button{float:none;vertical-align:top}.cke_toolbar_separator{display:inline-block;float:none;vertical-align:top;background-color:#c0c0c0}.cke_toolbox_collapser .cke_arrow{margin-top:0}.cke_toolbox_collapser .cke_arrow{border-width:4px}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{border-width:3px}.cke_rtl .cke_button_arrow{padding-top:8px;margin-right:2px}.cke_rtl .cke_combo_inlinelabel{display:table-cell;vertical-align:middle}.cke_menubutton{display:block;height:24px}.cke_menubutton_inner{display:block;position:relative}.cke_menubutton_icon{height:16px;width:16px}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:inline-block}.cke_menubutton_label{width:auto;vertical-align:top;line-height:24px;height:24px;margin:0 10px 0 0}.cke_menuarrow{width:5px;height:6px;padding:0;position:absolute;right:8px;top:10px;background-position:0 0}.cke_rtl .cke_menubutton_icon{position:absolute;right:0;top:0}.cke_rtl .cke_menubutton_label{float:right;clear:both;margin:0 24px 0 10px}.cke_hc .cke_rtl .cke_menubutton_label{margin-right:0}.cke_rtl .cke_menuarrow{left:8px;right:auto;background-position:0 -24px}.cke_hc .cke_menuarrow{top:5px;padding:0 5px}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{position:relative}.cke_wysiwyg_div{padding-top:0!important;padding-bottom:0!important}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__bidiltr_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_button__bidirtl_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_button__creatediv_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_rtl .cke_button__find_icon, .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_ltr .cke_button__find_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_button__replace_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_button__flash_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_button__language_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__pagebreak_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_rtl .cke_button__preview_icon, .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1152px !important;}.cke_ltr .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1176px !important;}.cke_button__print_icon {background: url(icons.png) no-repeat 0 -1200px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -1224px !important;}.cke_button__save_icon {background: url(icons.png) no-repeat 0 -1248px !important;}.cke_button__selectall_icon {background: url(icons.png) no-repeat 0 -1272px !important;}.cke_rtl .cke_button__showblocks_icon, .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1296px !important;}.cke_ltr .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1320px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1344px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1368px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -1392px !important;}.cke_rtl .cke_button__templates_icon, .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -1416px !important;}.cke_ltr .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -1440px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1464px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1488px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1512px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1536px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidiltr_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidirtl_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_button__creatediv_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__find_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_button__replace_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_button__flash_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_button__language_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__preview_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_hidpi .cke_button__print_icon {background: url(icons_hidpi.png) no-repeat 0 -1200px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -1224px !important;background-size: 16px !important;}.cke_hidpi .cke_button__save_icon {background: url(icons_hidpi.png) no-repeat 0 -1248px !important;background-size: 16px !important;}.cke_hidpi .cke_button__selectall_icon {background: url(icons_hidpi.png) no-repeat 0 -1272px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__showblocks_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1296px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1320px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1344px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1368px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -1392px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__templates_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -1416px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -1440px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1464px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1488px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1512px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1536px !important;background-size: 16px !important;} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/editor_ie8.css b/common/js/plugins/ckeditor/ckeditor/skins/moono/editor_ie8.css new file mode 100644 index 000000000..9133b0116 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono/editor_ie8.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_toolbox_collapser .cke_arrow{border-width:4px}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{border-width:3px}.cke_toolbox_collapser .cke_arrow{margin-top:0}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__bidiltr_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_button__bidirtl_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_button__creatediv_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_rtl .cke_button__find_icon, .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_ltr .cke_button__find_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_button__replace_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_button__flash_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_button__language_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__pagebreak_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_rtl .cke_button__preview_icon, .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1152px !important;}.cke_ltr .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1176px !important;}.cke_button__print_icon {background: url(icons.png) no-repeat 0 -1200px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -1224px !important;}.cke_button__save_icon {background: url(icons.png) no-repeat 0 -1248px !important;}.cke_button__selectall_icon {background: url(icons.png) no-repeat 0 -1272px !important;}.cke_rtl .cke_button__showblocks_icon, .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1296px !important;}.cke_ltr .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1320px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1344px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1368px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -1392px !important;}.cke_rtl .cke_button__templates_icon, .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -1416px !important;}.cke_ltr .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -1440px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1464px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1488px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1512px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1536px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidiltr_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidirtl_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_button__creatediv_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__find_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_button__replace_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_button__flash_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_button__language_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__preview_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_hidpi .cke_button__print_icon {background: url(icons_hidpi.png) no-repeat 0 -1200px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -1224px !important;background-size: 16px !important;}.cke_hidpi .cke_button__save_icon {background: url(icons_hidpi.png) no-repeat 0 -1248px !important;background-size: 16px !important;}.cke_hidpi .cke_button__selectall_icon {background: url(icons_hidpi.png) no-repeat 0 -1272px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__showblocks_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1296px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1320px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1344px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1368px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -1392px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__templates_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -1416px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -1440px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1464px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1488px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1512px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1536px !important;background-size: 16px !important;} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/editor_iequirks.css b/common/js/plugins/ckeditor/ckeditor/skins/moono/editor_iequirks.css new file mode 100644 index 000000000..2dfd3256b --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono/editor_iequirks.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_top,.cke_contents,.cke_bottom{width:100%}.cke_button_arrow{font-size:0}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_button,.cke_rtl .cke_button *,.cke_rtl .cke_combo,.cke_rtl .cke_combo *,.cke_rtl .cke_path_item,.cke_rtl .cke_path_item *,.cke_rtl .cke_path_empty{float:none}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_combo_button,.cke_rtl .cke_combo_button *,.cke_rtl .cke_button,.cke_rtl .cke_button_icon{display:inline-block;vertical-align:top}.cke_rtl .cke_button_icon{float:none}.cke_resizer{width:10px}.cke_source{white-space:normal}.cke_bottom{position:static}.cke_colorbox{font-size:0}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__bidiltr_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_button__bidirtl_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_button__creatediv_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_rtl .cke_button__find_icon, .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_ltr .cke_button__find_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_button__replace_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_button__flash_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_button__language_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__pagebreak_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_rtl .cke_button__preview_icon, .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1152px !important;}.cke_ltr .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1176px !important;}.cke_button__print_icon {background: url(icons.png) no-repeat 0 -1200px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -1224px !important;}.cke_button__save_icon {background: url(icons.png) no-repeat 0 -1248px !important;}.cke_button__selectall_icon {background: url(icons.png) no-repeat 0 -1272px !important;}.cke_rtl .cke_button__showblocks_icon, .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1296px !important;}.cke_ltr .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1320px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1344px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1368px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -1392px !important;}.cke_rtl .cke_button__templates_icon, .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -1416px !important;}.cke_ltr .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -1440px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1464px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1488px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1512px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1536px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidiltr_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidirtl_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_button__creatediv_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__find_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_button__replace_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_button__flash_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_button__language_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__preview_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_hidpi .cke_button__print_icon {background: url(icons_hidpi.png) no-repeat 0 -1200px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -1224px !important;background-size: 16px !important;}.cke_hidpi .cke_button__save_icon {background: url(icons_hidpi.png) no-repeat 0 -1248px !important;background-size: 16px !important;}.cke_hidpi .cke_button__selectall_icon {background: url(icons_hidpi.png) no-repeat 0 -1272px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__showblocks_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1296px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1320px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1344px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1368px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -1392px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__templates_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -1416px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -1440px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1464px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1488px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1512px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1536px !important;background-size: 16px !important;} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/icons.png b/common/js/plugins/ckeditor/ckeditor/skins/moono/icons.png new file mode 100644 index 0000000000000000000000000000000000000000..b70fa276ed607b5ee087a1b9bdebddffc86c87cf GIT binary patch literal 15314 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 QySk9lQ&mK%oSFas0k)_bP5=M^ literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/icons_hidpi.png b/common/js/plugins/ckeditor/ckeditor/skins/moono/icons_hidpi.png new file mode 100644 index 0000000000000000000000000000000000000000..14f24fa008b5a1c22c400b64e419d8d3a72e8be7 GIT binary patch literal 48333 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 H3i|&5pDeY| literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/images/arrow.png b/common/js/plugins/ckeditor/ckeditor/skins/moono/images/arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..d72b5f3b8808bd89996ef62f845164d459957a1b GIT binary patch literal 191 zcmeAS@N?(olHy`uVBq!ia0vp^Y(Ol>!VDz;rWf@BDXjpX5LX~=X=(ZY|9>EfAH1#& z-3wIBTN30K45T@Ev~-ix<}bSOt=nC)A1Gk%>Eal|aXtBhiAd6gyIe=gyBczF}qKQ%F0(mNbo(!7G$6ystm-3eX4!Pgg&ebxsLQ E09R-@$^ZZW literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/images/close.png b/common/js/plugins/ckeditor/ckeditor/skins/moono/images/close.png new file mode 100644 index 0000000000000000000000000000000000000000..6a04ab5275b321ce911c4e1416df7e0184d05f51 GIT binary patch literal 468 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 literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/images/hidpi/lock.png b/common/js/plugins/ckeditor/ckeditor/skins/moono/images/hidpi/lock.png new file mode 100644 index 0000000000000000000000000000000000000000..1b87bbb7a14ceac0e259d75bdbc03365f01e9acf GIT binary patch literal 1299 zcmcK2YfO_@7zgl|J7XgE`xuonh01Nvjr*nTTY7<(-l(*+SfqVRg|f}S7??s;78ztp zX0k1txJ4X+B9|7(76PTE8=#;ILmd?4R;B^j!~z2x+8z9CvQPWvf6jSwzMPXM&u0ue z$=S)@34$PJ3K?dB6Lqj0ZNLuSs2_nKYbQn)hj_2G^*%^j+k>{Y-&LyV_V$_fcH_;P zvmhNEa~&NIJ3AM;yO-4JC5>iTtzPNveFW0ix8C2sF)(1(YB#mot---<5UuuakfEU+ z5S?yEuiw?_cJ=x_oo)~8!^6)(42FLUhW+7T%gBgjY|L`|wq<0OglbH=L7z`GR!Dcf!945ee zh0SJhIBXy%hXcap<^bFSCwRPEK0j9|AC{QP{8=%iRI0uZF2u&_`pE|f?L5kw3~ zBx0#lf*=y96hROvP*fz9$%ApWdo)va&{wTvRRW0uB zs>XO!=Uk-==9!?5@ZAN6#Syn!*AzSWhcB_^{#}C$haF~V#>Iw??d;fVlersm!!7;Uj>SJmi_hG5 zZ#pk-HW(_ix=qMW}A|^1`E2(SBSAdU|Li>Y8G$tCm(@1~=H6 z6ag5$lC;o&ImGX(B0jJPRk>h;_7e6O1LgJZU)YLj?I~aT3umymFustv(yj67&=Dm^ z?g_V&m3kVp*&AiWs4odWC9^_H_CGgi5Nm8H&$p$wuM4(gUDumDCrs~Z2E6SyLW!%& zP!I0Lm2aTnAU?{vkv)U$mKU^^qb1M{1k-Ofb_PyW@s~9{B7WB6vn4NitEC!2g!?Sd p*{oO(6}kOo)YtW8d<-4USq^e@@n6;8y}(pJ5QRvGJMp6P{{r75P22zg literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/images/hidpi/refresh.png b/common/js/plugins/ckeditor/ckeditor/skins/moono/images/hidpi/refresh.png new file mode 100644 index 0000000000000000000000000000000000000000..c6c2b86e6d1cd21bd352a54321ae13100b78e581 GIT binary patch literal 1842 zcmV-22hI42P)Uv6m4vp)}&37zI6HlHEH|eLsJKw zXPbapXPgxfwV)P793GstvOQgEa}Gh|da2&z%em*Az4y1i^^HedShGgFt+Ybg*R2zm zHf#`AHf|J`acy6}UbL=VJK{6My8xi_>sz;qNBj1Pmq(9^=LZjpo?W}drN+h)gLo(F zY57Aa$8Q?sYlx$E_N=(Qd-sSzytQ&3{`aO$;^mPe1Q0PRF;P00On>6Pzjo$~xU+Y! zdVkT5Oa8Y~9(Wo4?!@6YcI*(^i4zLI7b{oF^0{-Rqsep=_eolNyXXVBTXtMxUoke) z*9@?(&6~yTJ$uCSLx+Uc(jv6er-jzlr2u@oVuf73e7US&v`CJdIPnFZeG75Y&Ye?x zY=L;AVp>ZYX~ok62l|zEbWouKWHKZNVs&zLO>1aqkP8wGArqDmY*7YZsMbE%Zd`JDI20zZ;&$jQr70cBWLQeG}U zoH1h$-UTxE`%rc@1}O4fI6FtsS_QJALKc^m$w}eiKVz+l%6V>wy)=HThMz7$GJOG{NA!{^U%XfQ1zl^690Hb4^;0R&H*wi;J=7Aq=e z9U;ipL1GiYfd7$t?@yW1Ra{acXCwLxi;Lw)QBfyYa#Y3`b*|-mKbmU#l6RnJqvR zLskuu@vH>|X^R2hOr&2yVWBL9uCBTQAq64%{GvMl6L# zMz*lRQcwHPN@!#OeeFGA!XH^VIWiAS5CA3}_I4`+)YhnFC|5lMM&Os4n3}5g=R;W3 zJj~`*%(9`e^h!#-U`n~Te3l6SxnzML3JTb#z!Y4+|A0)mN@`I3o^2@q_dk_Bi@bSKqBE| zQhf~(O-i3}Sm`g}?>W1>@6OiuaX;C_dEErYEMUCZ>;){FsmhM%Z$uSNg!lm z7G?oAFRyEOm#L=TOPBgbGAQ;74Ryw|BDc|_dtxyOaeWp*bALigio~8A7AThRc3aJ; zRWB^PY{#H7AS7fp-$~Hb^loojzlRj7vxuP|WvS$Mq?Y z$mnQJtUjD4ZPk%szjg*(A%xi+6x0|UA1{+ZWg5Vw>3}j|ogut8-X$aYW3b*F9L(O} zqo_xv97?_InUJnPgwtP7!GxNQoSaIh&z#vCpOhpMAc+tHN`*3B6ZPj9Ok_k|0>J@waRKV zCf0-zx8paJR-z{xOd;km%Pc=O@NDSkmoT{Z?N_#wR$75Obe_YAED= g=g^ir!ms2106T%iXz%*nVE_OC07*qoM6N<$f=_o+lmGw# literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono/images/lock-open.png b/common/js/plugins/ckeditor/ckeditor/skins/moono/images/lock-open.png new file mode 100644 index 0000000000000000000000000000000000000000..04769877aa6d074e476f9560638d06cb158aaf1b GIT binary patch literal 349 zcmV-j0iyniP)Hc z&n^Q25XbTF&7uB8h{F<*UK$c{6bF(DX-V5yq<8{P)2DIiBX|hAR<{~TY$9o%h5mZ)AKROqT}ICn1K2gcrVZ2a4<}@gIzkdJz{m-92fBpLP=g*)2|NjHELI68EJ2y8s zkS!=EC?q7r%gd{)s|%6hQrC zQ&USzOJ85#+}zyO*4EC>&e74)$;rvp)z#hI-P6<4$H&Ll*VoU_FCZWwFfcGEC@3T( zBrGf}JUl!iA|f&}GAb%c^3n-Mpfw65L4F`_p#mOBpv4~P>Ak%>PCWYb^I+EhUqA)R zJzX3_BqUi68WtTk;Bh_3F0dqH=?3-5S9bp27<4=JnDRuWx-#Aadn}%KH8O@(F~l4f zV%6B5u|000zF>k}?(D_64^}eFG4tcw`tZRF@ly(tt&g5n<9kM zsLu=gzW%*|vFG*AU-=fqr?FkSs@QPm>HfukQ`A@#Ix8h7DKMl)rKBuVXo%cucmMZ^ rIRclgQu1>9uIx;p5dj z%lP`u&v$=J<2z5)lzAD*kbFD5EhFb!&D-m^J6co(0xLU+qr3iEV3kgyVg?12G;; z{1S&}Zs+utOA*o9X7*lg?dXjK7KQHXDU Qp#T5?07*qoM6N<$g14l=!T Date: Tue, 24 Feb 2015 18:41:41 +0900 Subject: [PATCH 056/236] =?UTF-8?q?editor=EC=97=90=EC=84=9C=20=EC=82=AC?= =?UTF-8?q?=EC=9A=A9=ED=95=A0=20=EC=88=98=20=EC=9E=88=EB=8A=94=20content?= =?UTF-8?q?=5Fstyle=5Fpath=20=EB=B3=80=EC=88=98=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/editor/editor.model.php | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/editor/editor.model.php b/modules/editor/editor.model.php index 372c32db2..383df47ae 100644 --- a/modules/editor/editor.model.php +++ b/modules/editor/editor.model.php @@ -179,6 +179,7 @@ class editorModel extends editor // content_style setting if(!$option->content_style) $option->content_style = 'default'; Context::set('content_style', $option->content_style); + Context::set('content_style_path', $this->module_path . 'styles/' . $option->content_style); // Default font setting Context::set('content_font', addslashes($option->content_font)); Context::set('content_font_size', $option->content_font_size); From 78a0a069b52436180c828e9c92cacfe4fc5c6ec3 Mon Sep 17 00:00:00 2001 From: bnu Date: Tue, 24 Feb 2015 18:43:22 +0900 Subject: [PATCH 057/236] =?UTF-8?q?#1087=20CKEditor=20'Moono=20Dark'=20?= =?UTF-8?q?=EC=8A=A4=ED=82=A8=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ckeditor/skins/moono-dark/dialog.css | 5 ++ .../ckeditor/skins/moono-dark/dialog_ie.css | 5 ++ .../ckeditor/skins/moono-dark/dialog_ie7.css | 5 ++ .../ckeditor/skins/moono-dark/dialog_ie8.css | 5 ++ .../skins/moono-dark/dialog_iequirks.css | 5 ++ .../ckeditor/skins/moono-dark/editor.css | 5 ++ .../skins/moono-dark/editor_gecko.css | 5 ++ .../ckeditor/skins/moono-dark/editor_ie.css | 5 ++ .../ckeditor/skins/moono-dark/editor_ie7.css | 5 ++ .../ckeditor/skins/moono-dark/editor_ie8.css | 5 ++ .../skins/moono-dark/editor_iequirks.css | 5 ++ .../ckeditor/skins/moono-dark/icons.png | Bin 0 -> 22920 bytes .../ckeditor/skins/moono-dark/icons_hidpi.png | Bin 0 -> 56674 bytes .../skins/moono-dark/images/arrow.png | Bin 0 -> 261 bytes .../skins/moono-dark/images/close.png | Bin 0 -> 720 bytes .../skins/moono-dark/images/hidpi/close.png | Bin 0 -> 1288 bytes .../moono-dark/images/hidpi/lock-open.png | Bin 0 -> 1107 bytes .../skins/moono-dark/images/hidpi/lock.png | Bin 0 -> 1154 bytes .../skins/moono-dark/images/hidpi/refresh.png | Bin 0 -> 1694 bytes .../skins/moono-dark/images/lock-open.png | Bin 0 -> 693 bytes .../ckeditor/skins/moono-dark/images/lock.png | Bin 0 -> 723 bytes .../skins/moono-dark/images/refresh.png | Bin 0 -> 886 bytes .../ckeditor/skins/moono-dark/readme.md | 51 ++++++++++++++++++ .../ckeditor/skins/moono-dark/skin.js | 5 ++ 24 files changed, 111 insertions(+) create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog_ie.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog_ie7.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog_ie8.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog_iequirks.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_gecko.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_ie.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_ie7.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_ie8.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_iequirks.css create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/icons.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/icons_hidpi.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/arrow.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/close.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/hidpi/close.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/hidpi/lock-open.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/hidpi/lock.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/hidpi/refresh.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/lock-open.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/lock.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/refresh.png create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/readme.md create mode 100644 common/js/plugins/ckeditor/ckeditor/skins/moono-dark/skin.js diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog.css b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog.css new file mode 100644 index 000000000..b932fe1b1 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#f2f2f2;text-shadow:0 1px 0 #000;border:1px solid #0d0d0d;padding:6px 10px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 1px 0 #fff;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 1px 0 #fff;box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 1px 0 #fff;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;background:#262626;background-image:-webkit-gradient(linear,left top,left bottom,from(#4c4c4c),to(#262626));background-image:-moz-linear-gradient(top,#4c4c4c,#262626);background-image:-webkit-linear-gradient(top,#4c4c4c,#262626);background-image:-o-linear-gradient(top,#4c4c4c,#262626);background-image:-ms-linear-gradient(top,#4c4c4c,#262626);background-image:linear-gradient(top,#4c4c4c,#262626);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#4c4c4c',endColorstr='#262626')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:0 0;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:3px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 12px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:20px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:2px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:24px;line-height:24px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:2px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog_ie.css b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog_ie.css new file mode 100644 index 000000000..cdc794842 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog_ie.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#f2f2f2;text-shadow:0 1px 0 #000;border:1px solid #0d0d0d;padding:6px 10px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 1px 0 #fff;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 1px 0 #fff;box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 1px 0 #fff;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;background:#262626;background-image:-webkit-gradient(linear,left top,left bottom,from(#4c4c4c),to(#262626));background-image:-moz-linear-gradient(top,#4c4c4c,#262626);background-image:-webkit-linear-gradient(top,#4c4c4c,#262626);background-image:-o-linear-gradient(top,#4c4c4c,#262626);background-image:-ms-linear-gradient(top,#4c4c4c,#262626);background-image:linear-gradient(top,#4c4c4c,#262626);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#4c4c4c',endColorstr='#262626')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:0 0;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:3px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 12px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:20px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:2px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:24px;line-height:24px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:2px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog_ie7.css b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog_ie7.css new file mode 100644 index 000000000..97d08a247 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog_ie7.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#f2f2f2;text-shadow:0 1px 0 #000;border:1px solid #0d0d0d;padding:6px 10px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 1px 0 #fff;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 1px 0 #fff;box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 1px 0 #fff;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;background:#262626;background-image:-webkit-gradient(linear,left top,left bottom,from(#4c4c4c),to(#262626));background-image:-moz-linear-gradient(top,#4c4c4c,#262626);background-image:-webkit-linear-gradient(top,#4c4c4c,#262626);background-image:-o-linear-gradient(top,#4c4c4c,#262626);background-image:-ms-linear-gradient(top,#4c4c4c,#262626);background-image:linear-gradient(top,#4c4c4c,#262626);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#4c4c4c',endColorstr='#262626')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:0 0;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:3px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 12px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:20px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:2px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:24px;line-height:24px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:2px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0}.cke_dialog_title{zoom:1}.cke_dialog_footer{border-top:1px solid #bfbfbf}.cke_dialog_footer_buttons{position:static}.cke_dialog_footer_buttons a.cke_dialog_ui_button{vertical-align:top}.cke_dialog .cke_resizer_ltr{padding-left:4px}.cke_dialog .cke_resizer_rtl{padding-right:4px}.cke_dialog_ui_input_text,.cke_dialog_ui_input_password,.cke_dialog_ui_input_textarea,.cke_dialog_ui_input_select{padding:0!important}.cke_dialog_ui_checkbox_input,.cke_dialog_ui_ratio_input,.cke_btn_reset,.cke_btn_locked,.cke_btn_unlocked{border:1px solid transparent!important} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog_ie8.css b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog_ie8.css new file mode 100644 index 000000000..ba6a1df20 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog_ie8.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#f2f2f2;text-shadow:0 1px 0 #000;border:1px solid #0d0d0d;padding:6px 10px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 1px 0 #fff;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 1px 0 #fff;box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 1px 0 #fff;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;background:#262626;background-image:-webkit-gradient(linear,left top,left bottom,from(#4c4c4c),to(#262626));background-image:-moz-linear-gradient(top,#4c4c4c,#262626);background-image:-webkit-linear-gradient(top,#4c4c4c,#262626);background-image:-o-linear-gradient(top,#4c4c4c,#262626);background-image:-ms-linear-gradient(top,#4c4c4c,#262626);background-image:linear-gradient(top,#4c4c4c,#262626);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#4c4c4c',endColorstr='#262626')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:0 0;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:3px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 12px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:20px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:2px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:24px;line-height:24px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:2px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{display:block} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog_iequirks.css b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog_iequirks.css new file mode 100644 index 000000000..958b71d4b --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/dialog_iequirks.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#f2f2f2;text-shadow:0 1px 0 #000;border:1px solid #0d0d0d;padding:6px 10px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 1px 0 #fff;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 1px 0 #fff;box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 1px 0 #fff;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;background:#262626;background-image:-webkit-gradient(linear,left top,left bottom,from(#4c4c4c),to(#262626));background-image:-moz-linear-gradient(top,#4c4c4c,#262626);background-image:-webkit-linear-gradient(top,#4c4c4c,#262626);background-image:-o-linear-gradient(top,#4c4c4c,#262626);background-image:-ms-linear-gradient(top,#4c4c4c,#262626);background-image:linear-gradient(top,#4c4c4c,#262626);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#4c4c4c',endColorstr='#262626')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:0 0;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:3px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 12px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:20px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:2px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:24px;line-height:24px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:2px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0}.cke_dialog_footer{filter:""} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor.css b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor.css new file mode 100644 index 000000000..7d11dc89b --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border:1px solid #0d0d0d;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.15) inset;background:#1f1f1f;background-image:-webkit-gradient(linear,left top,left bottom,from(#333),to(#1f1f1f));background-image:-moz-linear-gradient(top,#333,#1f1f1f);background-image:-webkit-linear-gradient(top,#333,#1f1f1f);background-image:-o-linear-gradient(top,#333,#1f1f1f);background-image:-ms-linear-gradient(top,#333,#1f1f1f);background-image:linear-gradient(top,#333,#1f1f1f);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#333333',endColorstr='#1f1f1f')}.cke_float .cke_top{border-color:#000}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#f2f2f2;text-shadow:0 1px 0 #000;border:1px solid #0d0d0d;border-bottom-color:#060606;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 0 8px rgba(0,0,0,.75) inset;-webkit-box-shadow:0 0 8px rgba(0,0,0,.75) inset;box-shadow:0 0 8px rgba(0,0,0,.75) inset;background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#262626),to(#1a1a1a));background-image:-moz-linear-gradient(top,#262626,#1a1a1a);background-image:-webkit-linear-gradient(top,#262626,#1a1a1a);background-image:-o-linear-gradient(top,#262626,#1a1a1a);background-image:-ms-linear-gradient(top,#262626,#1a1a1a);background-image:linear-gradient(top,#262626,#1a1a1a);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#262626',endColorstr='#1a1a1a')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#666),to(#4c4c4c));background-image:-moz-linear-gradient(top,#666,#4c4c4c);background-image:-webkit-linear-gradient(top,#666,#4c4c4c);background-image:-o-linear-gradient(top,#666,#4c4c4c);background-image:-ms-linear-gradient(top,#666,#4c4c4c);background-image:linear-gradient(top,#666,#4c4c4c);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#666666',endColorstr='#4c4c4c')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#e5e5e5;text-shadow:0 1px 0 #000}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #e6e6e6}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#272727;background-color:rgba(0,0,0,.5);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 0 rgba(255,255,255,.1);-moz-box-shadow:1px 0 0 rgba(255,255,255,.1);box-shadow:1px 0 0 rgba(255,255,255,.1)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 0 rgba(255,255,255,.1);-moz-box-shadow:-1px 0 0 rgba(255,255,255,.1);box-shadow:-1px 0 0 rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #e5e5e5;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#e5e5e5}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#262626;padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#444}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#666),to(#4c4c4c));background-image:-moz-linear-gradient(top,#666,#4c4c4c);background-image:-webkit-linear-gradient(top,#666,#4c4c4c);background-image:-o-linear-gradient(top,#666,#4c4c4c);background-image:-ms-linear-gradient(top,#666,#4c4c4c);background-image:linear-gradient(top,#666,#4c4c4c);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#666666',endColorstr='#4c4c4c');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{-moz-box-shadow:0 0 8px rgba(0,0,0,.75) inset;-webkit-box-shadow:0 0 8px rgba(0,0,0,.75) inset;box-shadow:0 0 8px rgba(0,0,0,.75) inset;background:#1a1a1a;background-image:-webkit-gradient(linear,left top,left bottom,from(#262626),to(#1a1a1a));background-image:-moz-linear-gradient(top,#262626,#1a1a1a);background-image:-webkit-linear-gradient(top,#262626,#1a1a1a);background-image:-o-linear-gradient(top,#262626,#1a1a1a);background-image:-ms-linear-gradient(top,#262626,#1a1a1a);background-image:linear-gradient(top,#262626,#1a1a1a);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#262626',endColorstr='#1a1a1a')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#e5e5e5;text-shadow:0 1px 0 #000;width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #e6e6e6}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}.cke_button__about_icon{background:url(icons.png) no-repeat 0 -0px!important}.cke_rtl .cke_button__anchor_icon,.cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon{background:url(icons.png) no-repeat 0 -24px!important}.cke_ltr .cke_button__anchor_icon{background:url(icons.png) no-repeat 0 -48px!important}.cke_button__bgcolor_icon{background:url(icons.png) no-repeat 0 -72px!important}.cke_button__bidiltr_icon{background:url(icons.png) no-repeat 0 -96px!important}.cke_button__bidirtl_icon{background:url(icons.png) no-repeat 0 -120px!important}.cke_button__blockquote_icon{background:url(icons.png) no-repeat 0 -144px!important}.cke_button__bold_icon{background:url(icons.png) no-repeat 0 -168px!important}.cke_rtl .cke_button__bulletedlist_icon,.cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon{background:url(icons.png) no-repeat 0 -192px!important}.cke_ltr .cke_button__bulletedlist_icon{background:url(icons.png) no-repeat 0 -216px!important}.cke_button__button_icon{background:url(icons.png) no-repeat 0 -240px!important}.cke_button__checkbox_icon{background:url(icons.png) no-repeat 0 -264px!important}.cke_button__codesnippet_icon{background:url(icons.png) no-repeat 0 -288px!important}.cke_rtl .cke_button__copy_icon,.cke_mixed_dir_content .cke_rtl .cke_button__copy_icon{background:url(icons.png) no-repeat 0 -312px!important}.cke_ltr .cke_button__copy_icon{background:url(icons.png) no-repeat 0 -336px!important}.cke_button__creatediv_icon{background:url(icons.png) no-repeat 0 -360px!important}.cke_rtl .cke_button__cut_icon,.cke_mixed_dir_content .cke_rtl .cke_button__cut_icon{background:url(icons.png) no-repeat 0 -384px!important}.cke_ltr .cke_button__cut_icon{background:url(icons.png) no-repeat 0 -408px!important}.cke_rtl .cke_button__docprops_icon,.cke_mixed_dir_content .cke_rtl .cke_button__docprops_icon{background:url(icons.png) no-repeat 0 -432px!important}.cke_ltr .cke_button__docprops_icon{background:url(icons.png) no-repeat 0 -456px!important}.cke_rtl .cke_button__find_icon,.cke_mixed_dir_content .cke_rtl .cke_button__find_icon{background:url(icons.png) no-repeat 0 -480px!important}.cke_ltr .cke_button__find_icon{background:url(icons.png) no-repeat 0 -504px!important}.cke_button__flash_icon{background:url(icons.png) no-repeat 0 -528px!important}.cke_button__form_icon{background:url(icons.png) no-repeat 0 -552px!important}.cke_button__hiddenfield_icon{background:url(icons.png) no-repeat 0 -576px!important}.cke_button__horizontalrule_icon{background:url(icons.png) no-repeat 0 -600px!important}.cke_button__iframe_icon{background:url(icons.png) no-repeat 0 -624px!important}.cke_button__image_icon{background:url(icons.png) no-repeat 0 -648px!important}.cke_button__imagebutton_icon{background:url(icons.png) no-repeat 0 -672px!important}.cke_rtl .cke_button__indent_icon,.cke_mixed_dir_content .cke_rtl .cke_button__indent_icon{background:url(icons.png) no-repeat 0 -696px!important}.cke_ltr .cke_button__indent_icon{background:url(icons.png) no-repeat 0 -720px!important}.cke_button__italic_icon{background:url(icons.png) no-repeat 0 -744px!important}.cke_button__justifyblock_icon{background:url(icons.png) no-repeat 0 -768px!important}.cke_button__justifycenter_icon{background:url(icons.png) no-repeat 0 -792px!important}.cke_button__justifyleft_icon{background:url(icons.png) no-repeat 0 -816px!important}.cke_button__justifyright_icon{background:url(icons.png) no-repeat 0 -840px!important}.cke_button__language_icon{background:url(icons.png) no-repeat 0 -864px!important}.cke_button__link_icon{background:url(icons.png) no-repeat 0 -888px!important}.cke_button__mathjax_icon{background:url(icons.png) no-repeat 0 -912px!important}.cke_button__maximize_icon{background:url(icons.png) no-repeat 0 -936px!important}.cke_rtl .cke_button__newpage_icon,.cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon{background:url(icons.png) no-repeat 0 -960px!important}.cke_ltr .cke_button__newpage_icon{background:url(icons.png) no-repeat 0 -984px!important}.cke_rtl .cke_button__numberedlist_icon,.cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon{background:url(icons.png) no-repeat 0 -1008px!important}.cke_ltr .cke_button__numberedlist_icon{background:url(icons.png) no-repeat 0 -1032px!important}.cke_rtl .cke_button__outdent_icon,.cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon{background:url(icons.png) no-repeat 0 -1056px!important}.cke_ltr .cke_button__outdent_icon{background:url(icons.png) no-repeat 0 -1080px!important}.cke_rtl .cke_button__pagebreak_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon{background:url(icons.png) no-repeat 0 -1104px!important}.cke_ltr .cke_button__pagebreak_icon{background:url(icons.png) no-repeat 0 -1128px!important}.cke_rtl .cke_button__paste_icon,.cke_mixed_dir_content .cke_rtl .cke_button__paste_icon{background:url(icons.png) no-repeat 0 -1152px!important}.cke_ltr .cke_button__paste_icon{background:url(icons.png) no-repeat 0 -1176px!important}.cke_rtl .cke_button__pastefromword_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon{background:url(icons.png) no-repeat 0 -1200px!important}.cke_ltr .cke_button__pastefromword_icon{background:url(icons.png) no-repeat 0 -1224px!important}.cke_rtl .cke_button__pastetext_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon{background:url(icons.png) no-repeat 0 -1248px!important}.cke_ltr .cke_button__pastetext_icon{background:url(icons.png) no-repeat 0 -1272px!important}.cke_button__placeholder_icon{background:url(icons.png) no-repeat 0 -1296px!important}.cke_rtl .cke_button__preview_icon,.cke_mixed_dir_content .cke_rtl .cke_button__preview_icon{background:url(icons.png) no-repeat 0 -1320px!important}.cke_ltr .cke_button__preview_icon{background:url(icons.png) no-repeat 0 -1344px!important}.cke_button__print_icon{background:url(icons.png) no-repeat 0 -1368px!important}.cke_button__radio_icon{background:url(icons.png) no-repeat 0 -1392px!important}.cke_rtl .cke_button__redo_icon,.cke_mixed_dir_content .cke_rtl .cke_button__redo_icon{background:url(icons.png) no-repeat 0 -1416px!important}.cke_ltr .cke_button__redo_icon{background:url(icons.png) no-repeat 0 -1440px!important}.cke_button__removeformat_icon{background:url(icons.png) no-repeat 0 -1464px!important}.cke_button__replace_icon{background:url(icons.png) no-repeat 0 -1488px!important}.cke_button__save_icon{background:url(icons.png) no-repeat 0 -1512px!important}.cke_button__scayt_icon{background:url(icons.png) no-repeat 0 -1536px!important}.cke_rtl .cke_button__select_icon,.cke_mixed_dir_content .cke_rtl .cke_button__select_icon{background:url(icons.png) no-repeat 0 -1560px!important}.cke_ltr .cke_button__select_icon{background:url(icons.png) no-repeat 0 -1584px!important}.cke_button__selectall_icon{background:url(icons.png) no-repeat 0 -1608px!important}.cke_rtl .cke_button__showblocks_icon,.cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon{background:url(icons.png) no-repeat 0 -1632px!important}.cke_ltr .cke_button__showblocks_icon{background:url(icons.png) no-repeat 0 -1656px!important}.cke_button__smiley_icon{background:url(icons.png) no-repeat 0 -1680px!important}.cke_rtl .cke_button__source_icon,.cke_mixed_dir_content .cke_rtl .cke_button__source_icon{background:url(icons.png) no-repeat 0 -1704px!important}.cke_ltr .cke_button__source_icon{background:url(icons.png) no-repeat 0 -1728px!important}.cke_rtl .cke_button__sourcedialog_icon,.cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon{background:url(icons.png) no-repeat 0 -1752px!important}.cke_ltr .cke_button__sourcedialog_icon{background:url(icons.png) no-repeat 0 -1776px!important}.cke_button__specialchar_icon{background:url(icons.png) no-repeat 0 -1800px!important}.cke_button__spellchecker_icon{background:url(icons.png) no-repeat 0 -1824px!important}.cke_button__strike_icon{background:url(icons.png) no-repeat 0 -1848px!important}.cke_button__subscript_icon{background:url(icons.png) no-repeat 0 -1872px!important}.cke_button__superscript_icon{background:url(icons.png) no-repeat 0 -1896px!important}.cke_button__table_icon{background:url(icons.png) no-repeat 0 -1920px!important}.cke_rtl .cke_button__templates_icon,.cke_mixed_dir_content .cke_rtl .cke_button__templates_icon{background:url(icons.png) no-repeat 0 -1944px!important}.cke_ltr .cke_button__templates_icon{background:url(icons.png) no-repeat 0 -1968px!important}.cke_rtl .cke_button__textarea_icon,.cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon{background:url(icons.png) no-repeat 0 -1992px!important}.cke_ltr .cke_button__textarea_icon{background:url(icons.png) no-repeat 0 -2016px!important}.cke_button__textcolor_icon{background:url(icons.png) no-repeat 0 -2040px!important}.cke_rtl .cke_button__textfield_icon,.cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon{background:url(icons.png) no-repeat 0 -2064px!important}.cke_ltr .cke_button__textfield_icon{background:url(icons.png) no-repeat 0 -2088px!important}.cke_button__uicolor_icon{background:url(icons.png) no-repeat 0 -2112px!important}.cke_button__underline_icon{background:url(icons.png) no-repeat 0 -2136px!important}.cke_rtl .cke_button__undo_icon,.cke_mixed_dir_content .cke_rtl .cke_button__undo_icon{background:url(icons.png) no-repeat 0 -2160px!important}.cke_ltr .cke_button__undo_icon{background:url(icons.png) no-repeat 0 -2184px!important}.cke_button__unlink_icon{background:url(icons.png) no-repeat 0 -2208px!important}.cke_hidpi .cke_button__about_icon{background:url(icons_hidpi.png) no-repeat 0 -0px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__anchor_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon{background:url(icons_hidpi.png) no-repeat 0 -24px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon{background:url(icons_hidpi.png) no-repeat 0 -48px!important;background-size:16px!important}.cke_hidpi .cke_button__bgcolor_icon{background:url(icons_hidpi.png) no-repeat 0 -72px!important;background-size:16px!important}.cke_hidpi .cke_button__bidiltr_icon{background:url(icons_hidpi.png) no-repeat 0 -96px!important;background-size:16px!important}.cke_hidpi .cke_button__bidirtl_icon{background:url(icons_hidpi.png) no-repeat 0 -120px!important;background-size:16px!important}.cke_hidpi .cke_button__blockquote_icon{background:url(icons_hidpi.png) no-repeat 0 -144px!important;background-size:16px!important}.cke_hidpi .cke_button__bold_icon{background:url(icons_hidpi.png) no-repeat 0 -168px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -192px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -216px!important;background-size:16px!important}.cke_hidpi .cke_button__button_icon{background:url(icons_hidpi.png) no-repeat 0 -240px!important;background-size:16px!important}.cke_hidpi .cke_button__checkbox_icon{background:url(icons_hidpi.png) no-repeat 0 -264px!important;background-size:16px!important}.cke_hidpi .cke_button__codesnippet_icon{background:url(icons_hidpi.png) no-repeat 0 -288px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__copy_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon{background:url(icons_hidpi.png) no-repeat 0 -312px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon{background:url(icons_hidpi.png) no-repeat 0 -336px!important;background-size:16px!important}.cke_hidpi .cke_button__creatediv_icon{background:url(icons_hidpi.png) no-repeat 0 -360px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__cut_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon{background:url(icons_hidpi.png) no-repeat 0 -384px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon{background:url(icons_hidpi.png) no-repeat 0 -408px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__docprops_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__docprops_icon{background:url(icons_hidpi.png) no-repeat 0 -432px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__docprops_icon,.cke_ltr.cke_hidpi .cke_button__docprops_icon{background:url(icons_hidpi.png) no-repeat 0 -456px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__find_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon{background:url(icons_hidpi.png) no-repeat 0 -480px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon{background:url(icons_hidpi.png) no-repeat 0 -504px!important;background-size:16px!important}.cke_hidpi .cke_button__flash_icon{background:url(icons_hidpi.png) no-repeat 0 -528px!important;background-size:16px!important}.cke_hidpi .cke_button__form_icon{background:url(icons_hidpi.png) no-repeat 0 -552px!important;background-size:16px!important}.cke_hidpi .cke_button__hiddenfield_icon{background:url(icons_hidpi.png) no-repeat 0 -576px!important;background-size:16px!important}.cke_hidpi .cke_button__horizontalrule_icon{background:url(icons_hidpi.png) no-repeat 0 -600px!important;background-size:16px!important}.cke_hidpi .cke_button__iframe_icon{background:url(icons_hidpi.png) no-repeat 0 -624px!important;background-size:16px!important}.cke_hidpi .cke_button__image_icon{background:url(icons_hidpi.png) no-repeat 0 -648px!important;background-size:16px!important}.cke_hidpi .cke_button__imagebutton_icon{background:url(icons_hidpi.png) no-repeat 0 -672px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__indent_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon{background:url(icons_hidpi.png) no-repeat 0 -696px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon{background:url(icons_hidpi.png) no-repeat 0 -720px!important;background-size:16px!important}.cke_hidpi .cke_button__italic_icon{background:url(icons_hidpi.png) no-repeat 0 -744px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyblock_icon{background:url(icons_hidpi.png) no-repeat 0 -768px!important;background-size:16px!important}.cke_hidpi .cke_button__justifycenter_icon{background:url(icons_hidpi.png) no-repeat 0 -792px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyleft_icon{background:url(icons_hidpi.png) no-repeat 0 -816px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyright_icon{background:url(icons_hidpi.png) no-repeat 0 -840px!important;background-size:16px!important}.cke_hidpi .cke_button__language_icon{background:url(icons_hidpi.png) no-repeat 0 -864px!important;background-size:16px!important}.cke_hidpi .cke_button__link_icon{background:url(icons_hidpi.png) no-repeat 0 -888px!important;background-size:16px!important}.cke_hidpi .cke_button__mathjax_icon{background:url(icons_hidpi.png) no-repeat 0 -912px!important;background-size:16px!important}.cke_hidpi .cke_button__maximize_icon{background:url(icons_hidpi.png) no-repeat 0 -936px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__newpage_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon{background:url(icons_hidpi.png) no-repeat 0 -960px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__newpage_icon,.cke_ltr.cke_hidpi .cke_button__newpage_icon{background:url(icons_hidpi.png) no-repeat 0 -984px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -1008px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -1032px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__outdent_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon{background:url(icons_hidpi.png) no-repeat 0 -1056px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon{background:url(icons_hidpi.png) no-repeat 0 -1080px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon{background:url(icons_hidpi.png) no-repeat 0 -1104px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon{background:url(icons_hidpi.png) no-repeat 0 -1128px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__paste_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon{background:url(icons_hidpi.png) no-repeat 0 -1152px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon{background:url(icons_hidpi.png) no-repeat 0 -1176px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon{background:url(icons_hidpi.png) no-repeat 0 -1200px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon{background:url(icons_hidpi.png) no-repeat 0 -1224px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pastetext_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon{background:url(icons_hidpi.png) no-repeat 0 -1248px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon{background:url(icons_hidpi.png) no-repeat 0 -1272px!important;background-size:16px!important}.cke_hidpi .cke_button__placeholder_icon{background:url(icons_hidpi.png) no-repeat 0 -1296px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__preview_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon{background:url(icons_hidpi.png) no-repeat 0 -1320px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon{background:url(icons_hidpi.png) no-repeat 0 -1344px!important;background-size:16px!important}.cke_hidpi .cke_button__print_icon{background:url(icons_hidpi.png) no-repeat 0 -1368px!important;background-size:16px!important}.cke_hidpi .cke_button__radio_icon{background:url(icons_hidpi.png) no-repeat 0 -1392px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__redo_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon{background:url(icons_hidpi.png) no-repeat 0 -1416px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon{background:url(icons_hidpi.png) no-repeat 0 -1440px!important;background-size:16px!important}.cke_hidpi .cke_button__removeformat_icon{background:url(icons_hidpi.png) no-repeat 0 -1464px!important;background-size:16px!important}.cke_hidpi .cke_button__replace_icon{background:url(icons_hidpi.png) no-repeat 0 -1488px!important;background-size:16px!important}.cke_hidpi .cke_button__save_icon{background:url(icons_hidpi.png) no-repeat 0 -1512px!important;background-size:16px!important}.cke_hidpi .cke_button__scayt_icon{background:url(icons_hidpi.png) no-repeat 0 -1536px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__select_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__select_icon{background:url(icons_hidpi.png) no-repeat 0 -1560px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__select_icon,.cke_ltr.cke_hidpi .cke_button__select_icon{background:url(icons_hidpi.png) no-repeat 0 -1584px!important;background-size:16px!important}.cke_hidpi .cke_button__selectall_icon{background:url(icons_hidpi.png) no-repeat 0 -1608px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__showblocks_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon{background:url(icons_hidpi.png) no-repeat 0 -1632px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon{background:url(icons_hidpi.png) no-repeat 0 -1656px!important;background-size:16px!important}.cke_hidpi .cke_button__smiley_icon{background:url(icons_hidpi.png) no-repeat 0 -1680px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__source_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon{background:url(icons_hidpi.png) no-repeat 0 -1704px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon{background:url(icons_hidpi.png) no-repeat 0 -1728px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__sourcedialog_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon{background:url(icons_hidpi.png) no-repeat 0 -1752px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__sourcedialog_icon,.cke_ltr.cke_hidpi .cke_button__sourcedialog_icon{background:url(icons_hidpi.png) no-repeat 0 -1776px!important;background-size:16px!important}.cke_hidpi .cke_button__specialchar_icon{background:url(icons_hidpi.png) no-repeat 0 -1800px!important;background-size:16px!important}.cke_hidpi .cke_button__spellchecker_icon{background:url(icons_hidpi.png) no-repeat 0 -1824px!important;background-size:16px!important}.cke_hidpi .cke_button__strike_icon{background:url(icons_hidpi.png) no-repeat 0 -1848px!important;background-size:16px!important}.cke_hidpi .cke_button__subscript_icon{background:url(icons_hidpi.png) no-repeat 0 -1872px!important;background-size:16px!important}.cke_hidpi .cke_button__superscript_icon{background:url(icons_hidpi.png) no-repeat 0 -1896px!important;background-size:16px!important}.cke_hidpi .cke_button__table_icon{background:url(icons_hidpi.png) no-repeat 0 -1920px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__templates_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon{background:url(icons_hidpi.png) no-repeat 0 -1944px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon{background:url(icons_hidpi.png) no-repeat 0 -1968px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__textarea_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon{background:url(icons_hidpi.png) no-repeat 0 -1992px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__textarea_icon,.cke_ltr.cke_hidpi .cke_button__textarea_icon{background:url(icons_hidpi.png) no-repeat 0 -2016px!important;background-size:16px!important}.cke_hidpi .cke_button__textcolor_icon{background:url(icons_hidpi.png) no-repeat 0 -2040px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__textfield_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon{background:url(icons_hidpi.png) no-repeat 0 -2064px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__textfield_icon,.cke_ltr.cke_hidpi .cke_button__textfield_icon{background:url(icons_hidpi.png) no-repeat 0 -2088px!important;background-size:16px!important}.cke_hidpi .cke_button__uicolor_icon{background:url(icons_hidpi.png) no-repeat 0 -2112px!important;background-size:16px!important}.cke_hidpi .cke_button__underline_icon{background:url(icons_hidpi.png) no-repeat 0 -2136px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__undo_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon{background:url(icons_hidpi.png) no-repeat 0 -2160px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon{background:url(icons_hidpi.png) no-repeat 0 -2184px!important;background-size:16px!important}.cke_hidpi .cke_button__unlink_icon{background:url(icons_hidpi.png) no-repeat 0 -2208px!important;background-size:16px!important} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_gecko.css b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_gecko.css new file mode 100644 index 000000000..a2007be52 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_gecko.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border:1px solid #0d0d0d;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.15) inset;background:#1f1f1f;background-image:-webkit-gradient(linear,left top,left bottom,from(#333),to(#1f1f1f));background-image:-moz-linear-gradient(top,#333,#1f1f1f);background-image:-webkit-linear-gradient(top,#333,#1f1f1f);background-image:-o-linear-gradient(top,#333,#1f1f1f);background-image:-ms-linear-gradient(top,#333,#1f1f1f);background-image:linear-gradient(top,#333,#1f1f1f);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#333333',endColorstr='#1f1f1f')}.cke_float .cke_top{border-color:#000}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#f2f2f2;text-shadow:0 1px 0 #000;border:1px solid #0d0d0d;border-bottom-color:#060606;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 0 8px rgba(0,0,0,.75) inset;-webkit-box-shadow:0 0 8px rgba(0,0,0,.75) inset;box-shadow:0 0 8px rgba(0,0,0,.75) inset;background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#262626),to(#1a1a1a));background-image:-moz-linear-gradient(top,#262626,#1a1a1a);background-image:-webkit-linear-gradient(top,#262626,#1a1a1a);background-image:-o-linear-gradient(top,#262626,#1a1a1a);background-image:-ms-linear-gradient(top,#262626,#1a1a1a);background-image:linear-gradient(top,#262626,#1a1a1a);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#262626',endColorstr='#1a1a1a')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#666),to(#4c4c4c));background-image:-moz-linear-gradient(top,#666,#4c4c4c);background-image:-webkit-linear-gradient(top,#666,#4c4c4c);background-image:-o-linear-gradient(top,#666,#4c4c4c);background-image:-ms-linear-gradient(top,#666,#4c4c4c);background-image:linear-gradient(top,#666,#4c4c4c);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#666666',endColorstr='#4c4c4c')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#e5e5e5;text-shadow:0 1px 0 #000}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #e6e6e6}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#272727;background-color:rgba(0,0,0,.5);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 0 rgba(255,255,255,.1);-moz-box-shadow:1px 0 0 rgba(255,255,255,.1);box-shadow:1px 0 0 rgba(255,255,255,.1)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 0 rgba(255,255,255,.1);-moz-box-shadow:-1px 0 0 rgba(255,255,255,.1);box-shadow:-1px 0 0 rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #e5e5e5;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#e5e5e5}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#262626;padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#444}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#666),to(#4c4c4c));background-image:-moz-linear-gradient(top,#666,#4c4c4c);background-image:-webkit-linear-gradient(top,#666,#4c4c4c);background-image:-o-linear-gradient(top,#666,#4c4c4c);background-image:-ms-linear-gradient(top,#666,#4c4c4c);background-image:linear-gradient(top,#666,#4c4c4c);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#666666',endColorstr='#4c4c4c');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{-moz-box-shadow:0 0 8px rgba(0,0,0,.75) inset;-webkit-box-shadow:0 0 8px rgba(0,0,0,.75) inset;box-shadow:0 0 8px rgba(0,0,0,.75) inset;background:#1a1a1a;background-image:-webkit-gradient(linear,left top,left bottom,from(#262626),to(#1a1a1a));background-image:-moz-linear-gradient(top,#262626,#1a1a1a);background-image:-webkit-linear-gradient(top,#262626,#1a1a1a);background-image:-o-linear-gradient(top,#262626,#1a1a1a);background-image:-ms-linear-gradient(top,#262626,#1a1a1a);background-image:linear-gradient(top,#262626,#1a1a1a);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#262626',endColorstr='#1a1a1a')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#e5e5e5;text-shadow:0 1px 0 #000;width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #e6e6e6}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}.cke_button__about_icon{background:url(icons.png) no-repeat 0 -0px!important}.cke_rtl .cke_button__anchor_icon,.cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon{background:url(icons.png) no-repeat 0 -24px!important}.cke_ltr .cke_button__anchor_icon{background:url(icons.png) no-repeat 0 -48px!important}.cke_button__bgcolor_icon{background:url(icons.png) no-repeat 0 -72px!important}.cke_button__bidiltr_icon{background:url(icons.png) no-repeat 0 -96px!important}.cke_button__bidirtl_icon{background:url(icons.png) no-repeat 0 -120px!important}.cke_button__blockquote_icon{background:url(icons.png) no-repeat 0 -144px!important}.cke_button__bold_icon{background:url(icons.png) no-repeat 0 -168px!important}.cke_rtl .cke_button__bulletedlist_icon,.cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon{background:url(icons.png) no-repeat 0 -192px!important}.cke_ltr .cke_button__bulletedlist_icon{background:url(icons.png) no-repeat 0 -216px!important}.cke_button__button_icon{background:url(icons.png) no-repeat 0 -240px!important}.cke_button__checkbox_icon{background:url(icons.png) no-repeat 0 -264px!important}.cke_button__codesnippet_icon{background:url(icons.png) no-repeat 0 -288px!important}.cke_rtl .cke_button__copy_icon,.cke_mixed_dir_content .cke_rtl .cke_button__copy_icon{background:url(icons.png) no-repeat 0 -312px!important}.cke_ltr .cke_button__copy_icon{background:url(icons.png) no-repeat 0 -336px!important}.cke_button__creatediv_icon{background:url(icons.png) no-repeat 0 -360px!important}.cke_rtl .cke_button__cut_icon,.cke_mixed_dir_content .cke_rtl .cke_button__cut_icon{background:url(icons.png) no-repeat 0 -384px!important}.cke_ltr .cke_button__cut_icon{background:url(icons.png) no-repeat 0 -408px!important}.cke_rtl .cke_button__docprops_icon,.cke_mixed_dir_content .cke_rtl .cke_button__docprops_icon{background:url(icons.png) no-repeat 0 -432px!important}.cke_ltr .cke_button__docprops_icon{background:url(icons.png) no-repeat 0 -456px!important}.cke_rtl .cke_button__find_icon,.cke_mixed_dir_content .cke_rtl .cke_button__find_icon{background:url(icons.png) no-repeat 0 -480px!important}.cke_ltr .cke_button__find_icon{background:url(icons.png) no-repeat 0 -504px!important}.cke_button__flash_icon{background:url(icons.png) no-repeat 0 -528px!important}.cke_button__form_icon{background:url(icons.png) no-repeat 0 -552px!important}.cke_button__hiddenfield_icon{background:url(icons.png) no-repeat 0 -576px!important}.cke_button__horizontalrule_icon{background:url(icons.png) no-repeat 0 -600px!important}.cke_button__iframe_icon{background:url(icons.png) no-repeat 0 -624px!important}.cke_button__image_icon{background:url(icons.png) no-repeat 0 -648px!important}.cke_button__imagebutton_icon{background:url(icons.png) no-repeat 0 -672px!important}.cke_rtl .cke_button__indent_icon,.cke_mixed_dir_content .cke_rtl .cke_button__indent_icon{background:url(icons.png) no-repeat 0 -696px!important}.cke_ltr .cke_button__indent_icon{background:url(icons.png) no-repeat 0 -720px!important}.cke_button__italic_icon{background:url(icons.png) no-repeat 0 -744px!important}.cke_button__justifyblock_icon{background:url(icons.png) no-repeat 0 -768px!important}.cke_button__justifycenter_icon{background:url(icons.png) no-repeat 0 -792px!important}.cke_button__justifyleft_icon{background:url(icons.png) no-repeat 0 -816px!important}.cke_button__justifyright_icon{background:url(icons.png) no-repeat 0 -840px!important}.cke_button__language_icon{background:url(icons.png) no-repeat 0 -864px!important}.cke_button__link_icon{background:url(icons.png) no-repeat 0 -888px!important}.cke_button__mathjax_icon{background:url(icons.png) no-repeat 0 -912px!important}.cke_button__maximize_icon{background:url(icons.png) no-repeat 0 -936px!important}.cke_rtl .cke_button__newpage_icon,.cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon{background:url(icons.png) no-repeat 0 -960px!important}.cke_ltr .cke_button__newpage_icon{background:url(icons.png) no-repeat 0 -984px!important}.cke_rtl .cke_button__numberedlist_icon,.cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon{background:url(icons.png) no-repeat 0 -1008px!important}.cke_ltr .cke_button__numberedlist_icon{background:url(icons.png) no-repeat 0 -1032px!important}.cke_rtl .cke_button__outdent_icon,.cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon{background:url(icons.png) no-repeat 0 -1056px!important}.cke_ltr .cke_button__outdent_icon{background:url(icons.png) no-repeat 0 -1080px!important}.cke_rtl .cke_button__pagebreak_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon{background:url(icons.png) no-repeat 0 -1104px!important}.cke_ltr .cke_button__pagebreak_icon{background:url(icons.png) no-repeat 0 -1128px!important}.cke_rtl .cke_button__paste_icon,.cke_mixed_dir_content .cke_rtl .cke_button__paste_icon{background:url(icons.png) no-repeat 0 -1152px!important}.cke_ltr .cke_button__paste_icon{background:url(icons.png) no-repeat 0 -1176px!important}.cke_rtl .cke_button__pastefromword_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon{background:url(icons.png) no-repeat 0 -1200px!important}.cke_ltr .cke_button__pastefromword_icon{background:url(icons.png) no-repeat 0 -1224px!important}.cke_rtl .cke_button__pastetext_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon{background:url(icons.png) no-repeat 0 -1248px!important}.cke_ltr .cke_button__pastetext_icon{background:url(icons.png) no-repeat 0 -1272px!important}.cke_button__placeholder_icon{background:url(icons.png) no-repeat 0 -1296px!important}.cke_rtl .cke_button__preview_icon,.cke_mixed_dir_content .cke_rtl .cke_button__preview_icon{background:url(icons.png) no-repeat 0 -1320px!important}.cke_ltr .cke_button__preview_icon{background:url(icons.png) no-repeat 0 -1344px!important}.cke_button__print_icon{background:url(icons.png) no-repeat 0 -1368px!important}.cke_button__radio_icon{background:url(icons.png) no-repeat 0 -1392px!important}.cke_rtl .cke_button__redo_icon,.cke_mixed_dir_content .cke_rtl .cke_button__redo_icon{background:url(icons.png) no-repeat 0 -1416px!important}.cke_ltr .cke_button__redo_icon{background:url(icons.png) no-repeat 0 -1440px!important}.cke_button__removeformat_icon{background:url(icons.png) no-repeat 0 -1464px!important}.cke_button__replace_icon{background:url(icons.png) no-repeat 0 -1488px!important}.cke_button__save_icon{background:url(icons.png) no-repeat 0 -1512px!important}.cke_button__scayt_icon{background:url(icons.png) no-repeat 0 -1536px!important}.cke_rtl .cke_button__select_icon,.cke_mixed_dir_content .cke_rtl .cke_button__select_icon{background:url(icons.png) no-repeat 0 -1560px!important}.cke_ltr .cke_button__select_icon{background:url(icons.png) no-repeat 0 -1584px!important}.cke_button__selectall_icon{background:url(icons.png) no-repeat 0 -1608px!important}.cke_rtl .cke_button__showblocks_icon,.cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon{background:url(icons.png) no-repeat 0 -1632px!important}.cke_ltr .cke_button__showblocks_icon{background:url(icons.png) no-repeat 0 -1656px!important}.cke_button__smiley_icon{background:url(icons.png) no-repeat 0 -1680px!important}.cke_rtl .cke_button__source_icon,.cke_mixed_dir_content .cke_rtl .cke_button__source_icon{background:url(icons.png) no-repeat 0 -1704px!important}.cke_ltr .cke_button__source_icon{background:url(icons.png) no-repeat 0 -1728px!important}.cke_rtl .cke_button__sourcedialog_icon,.cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon{background:url(icons.png) no-repeat 0 -1752px!important}.cke_ltr .cke_button__sourcedialog_icon{background:url(icons.png) no-repeat 0 -1776px!important}.cke_button__specialchar_icon{background:url(icons.png) no-repeat 0 -1800px!important}.cke_button__spellchecker_icon{background:url(icons.png) no-repeat 0 -1824px!important}.cke_button__strike_icon{background:url(icons.png) no-repeat 0 -1848px!important}.cke_button__subscript_icon{background:url(icons.png) no-repeat 0 -1872px!important}.cke_button__superscript_icon{background:url(icons.png) no-repeat 0 -1896px!important}.cke_button__table_icon{background:url(icons.png) no-repeat 0 -1920px!important}.cke_rtl .cke_button__templates_icon,.cke_mixed_dir_content .cke_rtl .cke_button__templates_icon{background:url(icons.png) no-repeat 0 -1944px!important}.cke_ltr .cke_button__templates_icon{background:url(icons.png) no-repeat 0 -1968px!important}.cke_rtl .cke_button__textarea_icon,.cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon{background:url(icons.png) no-repeat 0 -1992px!important}.cke_ltr .cke_button__textarea_icon{background:url(icons.png) no-repeat 0 -2016px!important}.cke_button__textcolor_icon{background:url(icons.png) no-repeat 0 -2040px!important}.cke_rtl .cke_button__textfield_icon,.cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon{background:url(icons.png) no-repeat 0 -2064px!important}.cke_ltr .cke_button__textfield_icon{background:url(icons.png) no-repeat 0 -2088px!important}.cke_button__uicolor_icon{background:url(icons.png) no-repeat 0 -2112px!important}.cke_button__underline_icon{background:url(icons.png) no-repeat 0 -2136px!important}.cke_rtl .cke_button__undo_icon,.cke_mixed_dir_content .cke_rtl .cke_button__undo_icon{background:url(icons.png) no-repeat 0 -2160px!important}.cke_ltr .cke_button__undo_icon{background:url(icons.png) no-repeat 0 -2184px!important}.cke_button__unlink_icon{background:url(icons.png) no-repeat 0 -2208px!important}.cke_hidpi .cke_button__about_icon{background:url(icons_hidpi.png) no-repeat 0 -0px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__anchor_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon{background:url(icons_hidpi.png) no-repeat 0 -24px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon{background:url(icons_hidpi.png) no-repeat 0 -48px!important;background-size:16px!important}.cke_hidpi .cke_button__bgcolor_icon{background:url(icons_hidpi.png) no-repeat 0 -72px!important;background-size:16px!important}.cke_hidpi .cke_button__bidiltr_icon{background:url(icons_hidpi.png) no-repeat 0 -96px!important;background-size:16px!important}.cke_hidpi .cke_button__bidirtl_icon{background:url(icons_hidpi.png) no-repeat 0 -120px!important;background-size:16px!important}.cke_hidpi .cke_button__blockquote_icon{background:url(icons_hidpi.png) no-repeat 0 -144px!important;background-size:16px!important}.cke_hidpi .cke_button__bold_icon{background:url(icons_hidpi.png) no-repeat 0 -168px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -192px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -216px!important;background-size:16px!important}.cke_hidpi .cke_button__button_icon{background:url(icons_hidpi.png) no-repeat 0 -240px!important;background-size:16px!important}.cke_hidpi .cke_button__checkbox_icon{background:url(icons_hidpi.png) no-repeat 0 -264px!important;background-size:16px!important}.cke_hidpi .cke_button__codesnippet_icon{background:url(icons_hidpi.png) no-repeat 0 -288px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__copy_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon{background:url(icons_hidpi.png) no-repeat 0 -312px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon{background:url(icons_hidpi.png) no-repeat 0 -336px!important;background-size:16px!important}.cke_hidpi .cke_button__creatediv_icon{background:url(icons_hidpi.png) no-repeat 0 -360px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__cut_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon{background:url(icons_hidpi.png) no-repeat 0 -384px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon{background:url(icons_hidpi.png) no-repeat 0 -408px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__docprops_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__docprops_icon{background:url(icons_hidpi.png) no-repeat 0 -432px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__docprops_icon,.cke_ltr.cke_hidpi .cke_button__docprops_icon{background:url(icons_hidpi.png) no-repeat 0 -456px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__find_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon{background:url(icons_hidpi.png) no-repeat 0 -480px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon{background:url(icons_hidpi.png) no-repeat 0 -504px!important;background-size:16px!important}.cke_hidpi .cke_button__flash_icon{background:url(icons_hidpi.png) no-repeat 0 -528px!important;background-size:16px!important}.cke_hidpi .cke_button__form_icon{background:url(icons_hidpi.png) no-repeat 0 -552px!important;background-size:16px!important}.cke_hidpi .cke_button__hiddenfield_icon{background:url(icons_hidpi.png) no-repeat 0 -576px!important;background-size:16px!important}.cke_hidpi .cke_button__horizontalrule_icon{background:url(icons_hidpi.png) no-repeat 0 -600px!important;background-size:16px!important}.cke_hidpi .cke_button__iframe_icon{background:url(icons_hidpi.png) no-repeat 0 -624px!important;background-size:16px!important}.cke_hidpi .cke_button__image_icon{background:url(icons_hidpi.png) no-repeat 0 -648px!important;background-size:16px!important}.cke_hidpi .cke_button__imagebutton_icon{background:url(icons_hidpi.png) no-repeat 0 -672px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__indent_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon{background:url(icons_hidpi.png) no-repeat 0 -696px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon{background:url(icons_hidpi.png) no-repeat 0 -720px!important;background-size:16px!important}.cke_hidpi .cke_button__italic_icon{background:url(icons_hidpi.png) no-repeat 0 -744px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyblock_icon{background:url(icons_hidpi.png) no-repeat 0 -768px!important;background-size:16px!important}.cke_hidpi .cke_button__justifycenter_icon{background:url(icons_hidpi.png) no-repeat 0 -792px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyleft_icon{background:url(icons_hidpi.png) no-repeat 0 -816px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyright_icon{background:url(icons_hidpi.png) no-repeat 0 -840px!important;background-size:16px!important}.cke_hidpi .cke_button__language_icon{background:url(icons_hidpi.png) no-repeat 0 -864px!important;background-size:16px!important}.cke_hidpi .cke_button__link_icon{background:url(icons_hidpi.png) no-repeat 0 -888px!important;background-size:16px!important}.cke_hidpi .cke_button__mathjax_icon{background:url(icons_hidpi.png) no-repeat 0 -912px!important;background-size:16px!important}.cke_hidpi .cke_button__maximize_icon{background:url(icons_hidpi.png) no-repeat 0 -936px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__newpage_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon{background:url(icons_hidpi.png) no-repeat 0 -960px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__newpage_icon,.cke_ltr.cke_hidpi .cke_button__newpage_icon{background:url(icons_hidpi.png) no-repeat 0 -984px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -1008px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -1032px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__outdent_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon{background:url(icons_hidpi.png) no-repeat 0 -1056px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon{background:url(icons_hidpi.png) no-repeat 0 -1080px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon{background:url(icons_hidpi.png) no-repeat 0 -1104px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon{background:url(icons_hidpi.png) no-repeat 0 -1128px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__paste_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon{background:url(icons_hidpi.png) no-repeat 0 -1152px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon{background:url(icons_hidpi.png) no-repeat 0 -1176px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon{background:url(icons_hidpi.png) no-repeat 0 -1200px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon{background:url(icons_hidpi.png) no-repeat 0 -1224px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pastetext_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon{background:url(icons_hidpi.png) no-repeat 0 -1248px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon{background:url(icons_hidpi.png) no-repeat 0 -1272px!important;background-size:16px!important}.cke_hidpi .cke_button__placeholder_icon{background:url(icons_hidpi.png) no-repeat 0 -1296px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__preview_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon{background:url(icons_hidpi.png) no-repeat 0 -1320px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon{background:url(icons_hidpi.png) no-repeat 0 -1344px!important;background-size:16px!important}.cke_hidpi .cke_button__print_icon{background:url(icons_hidpi.png) no-repeat 0 -1368px!important;background-size:16px!important}.cke_hidpi .cke_button__radio_icon{background:url(icons_hidpi.png) no-repeat 0 -1392px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__redo_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon{background:url(icons_hidpi.png) no-repeat 0 -1416px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon{background:url(icons_hidpi.png) no-repeat 0 -1440px!important;background-size:16px!important}.cke_hidpi .cke_button__removeformat_icon{background:url(icons_hidpi.png) no-repeat 0 -1464px!important;background-size:16px!important}.cke_hidpi .cke_button__replace_icon{background:url(icons_hidpi.png) no-repeat 0 -1488px!important;background-size:16px!important}.cke_hidpi .cke_button__save_icon{background:url(icons_hidpi.png) no-repeat 0 -1512px!important;background-size:16px!important}.cke_hidpi .cke_button__scayt_icon{background:url(icons_hidpi.png) no-repeat 0 -1536px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__select_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__select_icon{background:url(icons_hidpi.png) no-repeat 0 -1560px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__select_icon,.cke_ltr.cke_hidpi .cke_button__select_icon{background:url(icons_hidpi.png) no-repeat 0 -1584px!important;background-size:16px!important}.cke_hidpi .cke_button__selectall_icon{background:url(icons_hidpi.png) no-repeat 0 -1608px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__showblocks_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon{background:url(icons_hidpi.png) no-repeat 0 -1632px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon{background:url(icons_hidpi.png) no-repeat 0 -1656px!important;background-size:16px!important}.cke_hidpi .cke_button__smiley_icon{background:url(icons_hidpi.png) no-repeat 0 -1680px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__source_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon{background:url(icons_hidpi.png) no-repeat 0 -1704px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon{background:url(icons_hidpi.png) no-repeat 0 -1728px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__sourcedialog_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon{background:url(icons_hidpi.png) no-repeat 0 -1752px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__sourcedialog_icon,.cke_ltr.cke_hidpi .cke_button__sourcedialog_icon{background:url(icons_hidpi.png) no-repeat 0 -1776px!important;background-size:16px!important}.cke_hidpi .cke_button__specialchar_icon{background:url(icons_hidpi.png) no-repeat 0 -1800px!important;background-size:16px!important}.cke_hidpi .cke_button__spellchecker_icon{background:url(icons_hidpi.png) no-repeat 0 -1824px!important;background-size:16px!important}.cke_hidpi .cke_button__strike_icon{background:url(icons_hidpi.png) no-repeat 0 -1848px!important;background-size:16px!important}.cke_hidpi .cke_button__subscript_icon{background:url(icons_hidpi.png) no-repeat 0 -1872px!important;background-size:16px!important}.cke_hidpi .cke_button__superscript_icon{background:url(icons_hidpi.png) no-repeat 0 -1896px!important;background-size:16px!important}.cke_hidpi .cke_button__table_icon{background:url(icons_hidpi.png) no-repeat 0 -1920px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__templates_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon{background:url(icons_hidpi.png) no-repeat 0 -1944px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon{background:url(icons_hidpi.png) no-repeat 0 -1968px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__textarea_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon{background:url(icons_hidpi.png) no-repeat 0 -1992px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__textarea_icon,.cke_ltr.cke_hidpi .cke_button__textarea_icon{background:url(icons_hidpi.png) no-repeat 0 -2016px!important;background-size:16px!important}.cke_hidpi .cke_button__textcolor_icon{background:url(icons_hidpi.png) no-repeat 0 -2040px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__textfield_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon{background:url(icons_hidpi.png) no-repeat 0 -2064px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__textfield_icon,.cke_ltr.cke_hidpi .cke_button__textfield_icon{background:url(icons_hidpi.png) no-repeat 0 -2088px!important;background-size:16px!important}.cke_hidpi .cke_button__uicolor_icon{background:url(icons_hidpi.png) no-repeat 0 -2112px!important;background-size:16px!important}.cke_hidpi .cke_button__underline_icon{background:url(icons_hidpi.png) no-repeat 0 -2136px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__undo_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon{background:url(icons_hidpi.png) no-repeat 0 -2160px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon{background:url(icons_hidpi.png) no-repeat 0 -2184px!important;background-size:16px!important}.cke_hidpi .cke_button__unlink_icon{background:url(icons_hidpi.png) no-repeat 0 -2208px!important;background-size:16px!important}.cke_bottom{padding-bottom:3px}.cke_combo_text{margin-bottom:-1px;margin-top:1px} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_ie.css b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_ie.css new file mode 100644 index 000000000..c473b49d4 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_ie.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border:1px solid #0d0d0d;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.15) inset;background:#1f1f1f;background-image:-webkit-gradient(linear,left top,left bottom,from(#333),to(#1f1f1f));background-image:-moz-linear-gradient(top,#333,#1f1f1f);background-image:-webkit-linear-gradient(top,#333,#1f1f1f);background-image:-o-linear-gradient(top,#333,#1f1f1f);background-image:-ms-linear-gradient(top,#333,#1f1f1f);background-image:linear-gradient(top,#333,#1f1f1f);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#333333',endColorstr='#1f1f1f')}.cke_float .cke_top{border-color:#000}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#f2f2f2;text-shadow:0 1px 0 #000;border:1px solid #0d0d0d;border-bottom-color:#060606;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 0 8px rgba(0,0,0,.75) inset;-webkit-box-shadow:0 0 8px rgba(0,0,0,.75) inset;box-shadow:0 0 8px rgba(0,0,0,.75) inset;background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#262626),to(#1a1a1a));background-image:-moz-linear-gradient(top,#262626,#1a1a1a);background-image:-webkit-linear-gradient(top,#262626,#1a1a1a);background-image:-o-linear-gradient(top,#262626,#1a1a1a);background-image:-ms-linear-gradient(top,#262626,#1a1a1a);background-image:linear-gradient(top,#262626,#1a1a1a);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#262626',endColorstr='#1a1a1a')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#666),to(#4c4c4c));background-image:-moz-linear-gradient(top,#666,#4c4c4c);background-image:-webkit-linear-gradient(top,#666,#4c4c4c);background-image:-o-linear-gradient(top,#666,#4c4c4c);background-image:-ms-linear-gradient(top,#666,#4c4c4c);background-image:linear-gradient(top,#666,#4c4c4c);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#666666',endColorstr='#4c4c4c')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#e5e5e5;text-shadow:0 1px 0 #000}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #e6e6e6}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#272727;background-color:rgba(0,0,0,.5);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 0 rgba(255,255,255,.1);-moz-box-shadow:1px 0 0 rgba(255,255,255,.1);box-shadow:1px 0 0 rgba(255,255,255,.1)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 0 rgba(255,255,255,.1);-moz-box-shadow:-1px 0 0 rgba(255,255,255,.1);box-shadow:-1px 0 0 rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #e5e5e5;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#e5e5e5}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#262626;padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#444}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#666),to(#4c4c4c));background-image:-moz-linear-gradient(top,#666,#4c4c4c);background-image:-webkit-linear-gradient(top,#666,#4c4c4c);background-image:-o-linear-gradient(top,#666,#4c4c4c);background-image:-ms-linear-gradient(top,#666,#4c4c4c);background-image:linear-gradient(top,#666,#4c4c4c);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#666666',endColorstr='#4c4c4c');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{-moz-box-shadow:0 0 8px rgba(0,0,0,.75) inset;-webkit-box-shadow:0 0 8px rgba(0,0,0,.75) inset;box-shadow:0 0 8px rgba(0,0,0,.75) inset;background:#1a1a1a;background-image:-webkit-gradient(linear,left top,left bottom,from(#262626),to(#1a1a1a));background-image:-moz-linear-gradient(top,#262626,#1a1a1a);background-image:-webkit-linear-gradient(top,#262626,#1a1a1a);background-image:-o-linear-gradient(top,#262626,#1a1a1a);background-image:-ms-linear-gradient(top,#262626,#1a1a1a);background-image:linear-gradient(top,#262626,#1a1a1a);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#262626',endColorstr='#1a1a1a')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#e5e5e5;text-shadow:0 1px 0 #000;width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #e6e6e6}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}.cke_button__about_icon{background:url(icons.png) no-repeat 0 -0px!important}.cke_rtl .cke_button__anchor_icon,.cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon{background:url(icons.png) no-repeat 0 -24px!important}.cke_ltr .cke_button__anchor_icon{background:url(icons.png) no-repeat 0 -48px!important}.cke_button__bgcolor_icon{background:url(icons.png) no-repeat 0 -72px!important}.cke_button__bidiltr_icon{background:url(icons.png) no-repeat 0 -96px!important}.cke_button__bidirtl_icon{background:url(icons.png) no-repeat 0 -120px!important}.cke_button__blockquote_icon{background:url(icons.png) no-repeat 0 -144px!important}.cke_button__bold_icon{background:url(icons.png) no-repeat 0 -168px!important}.cke_rtl .cke_button__bulletedlist_icon,.cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon{background:url(icons.png) no-repeat 0 -192px!important}.cke_ltr .cke_button__bulletedlist_icon{background:url(icons.png) no-repeat 0 -216px!important}.cke_button__button_icon{background:url(icons.png) no-repeat 0 -240px!important}.cke_button__checkbox_icon{background:url(icons.png) no-repeat 0 -264px!important}.cke_button__codesnippet_icon{background:url(icons.png) no-repeat 0 -288px!important}.cke_rtl .cke_button__copy_icon,.cke_mixed_dir_content .cke_rtl .cke_button__copy_icon{background:url(icons.png) no-repeat 0 -312px!important}.cke_ltr .cke_button__copy_icon{background:url(icons.png) no-repeat 0 -336px!important}.cke_button__creatediv_icon{background:url(icons.png) no-repeat 0 -360px!important}.cke_rtl .cke_button__cut_icon,.cke_mixed_dir_content .cke_rtl .cke_button__cut_icon{background:url(icons.png) no-repeat 0 -384px!important}.cke_ltr .cke_button__cut_icon{background:url(icons.png) no-repeat 0 -408px!important}.cke_rtl .cke_button__docprops_icon,.cke_mixed_dir_content .cke_rtl .cke_button__docprops_icon{background:url(icons.png) no-repeat 0 -432px!important}.cke_ltr .cke_button__docprops_icon{background:url(icons.png) no-repeat 0 -456px!important}.cke_rtl .cke_button__find_icon,.cke_mixed_dir_content .cke_rtl .cke_button__find_icon{background:url(icons.png) no-repeat 0 -480px!important}.cke_ltr .cke_button__find_icon{background:url(icons.png) no-repeat 0 -504px!important}.cke_button__flash_icon{background:url(icons.png) no-repeat 0 -528px!important}.cke_button__form_icon{background:url(icons.png) no-repeat 0 -552px!important}.cke_button__hiddenfield_icon{background:url(icons.png) no-repeat 0 -576px!important}.cke_button__horizontalrule_icon{background:url(icons.png) no-repeat 0 -600px!important}.cke_button__iframe_icon{background:url(icons.png) no-repeat 0 -624px!important}.cke_button__image_icon{background:url(icons.png) no-repeat 0 -648px!important}.cke_button__imagebutton_icon{background:url(icons.png) no-repeat 0 -672px!important}.cke_rtl .cke_button__indent_icon,.cke_mixed_dir_content .cke_rtl .cke_button__indent_icon{background:url(icons.png) no-repeat 0 -696px!important}.cke_ltr .cke_button__indent_icon{background:url(icons.png) no-repeat 0 -720px!important}.cke_button__italic_icon{background:url(icons.png) no-repeat 0 -744px!important}.cke_button__justifyblock_icon{background:url(icons.png) no-repeat 0 -768px!important}.cke_button__justifycenter_icon{background:url(icons.png) no-repeat 0 -792px!important}.cke_button__justifyleft_icon{background:url(icons.png) no-repeat 0 -816px!important}.cke_button__justifyright_icon{background:url(icons.png) no-repeat 0 -840px!important}.cke_button__language_icon{background:url(icons.png) no-repeat 0 -864px!important}.cke_button__link_icon{background:url(icons.png) no-repeat 0 -888px!important}.cke_button__mathjax_icon{background:url(icons.png) no-repeat 0 -912px!important}.cke_button__maximize_icon{background:url(icons.png) no-repeat 0 -936px!important}.cke_rtl .cke_button__newpage_icon,.cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon{background:url(icons.png) no-repeat 0 -960px!important}.cke_ltr .cke_button__newpage_icon{background:url(icons.png) no-repeat 0 -984px!important}.cke_rtl .cke_button__numberedlist_icon,.cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon{background:url(icons.png) no-repeat 0 -1008px!important}.cke_ltr .cke_button__numberedlist_icon{background:url(icons.png) no-repeat 0 -1032px!important}.cke_rtl .cke_button__outdent_icon,.cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon{background:url(icons.png) no-repeat 0 -1056px!important}.cke_ltr .cke_button__outdent_icon{background:url(icons.png) no-repeat 0 -1080px!important}.cke_rtl .cke_button__pagebreak_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon{background:url(icons.png) no-repeat 0 -1104px!important}.cke_ltr .cke_button__pagebreak_icon{background:url(icons.png) no-repeat 0 -1128px!important}.cke_rtl .cke_button__paste_icon,.cke_mixed_dir_content .cke_rtl .cke_button__paste_icon{background:url(icons.png) no-repeat 0 -1152px!important}.cke_ltr .cke_button__paste_icon{background:url(icons.png) no-repeat 0 -1176px!important}.cke_rtl .cke_button__pastefromword_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon{background:url(icons.png) no-repeat 0 -1200px!important}.cke_ltr .cke_button__pastefromword_icon{background:url(icons.png) no-repeat 0 -1224px!important}.cke_rtl .cke_button__pastetext_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon{background:url(icons.png) no-repeat 0 -1248px!important}.cke_ltr .cke_button__pastetext_icon{background:url(icons.png) no-repeat 0 -1272px!important}.cke_button__placeholder_icon{background:url(icons.png) no-repeat 0 -1296px!important}.cke_rtl .cke_button__preview_icon,.cke_mixed_dir_content .cke_rtl .cke_button__preview_icon{background:url(icons.png) no-repeat 0 -1320px!important}.cke_ltr .cke_button__preview_icon{background:url(icons.png) no-repeat 0 -1344px!important}.cke_button__print_icon{background:url(icons.png) no-repeat 0 -1368px!important}.cke_button__radio_icon{background:url(icons.png) no-repeat 0 -1392px!important}.cke_rtl .cke_button__redo_icon,.cke_mixed_dir_content .cke_rtl .cke_button__redo_icon{background:url(icons.png) no-repeat 0 -1416px!important}.cke_ltr .cke_button__redo_icon{background:url(icons.png) no-repeat 0 -1440px!important}.cke_button__removeformat_icon{background:url(icons.png) no-repeat 0 -1464px!important}.cke_button__replace_icon{background:url(icons.png) no-repeat 0 -1488px!important}.cke_button__save_icon{background:url(icons.png) no-repeat 0 -1512px!important}.cke_button__scayt_icon{background:url(icons.png) no-repeat 0 -1536px!important}.cke_rtl .cke_button__select_icon,.cke_mixed_dir_content .cke_rtl .cke_button__select_icon{background:url(icons.png) no-repeat 0 -1560px!important}.cke_ltr .cke_button__select_icon{background:url(icons.png) no-repeat 0 -1584px!important}.cke_button__selectall_icon{background:url(icons.png) no-repeat 0 -1608px!important}.cke_rtl .cke_button__showblocks_icon,.cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon{background:url(icons.png) no-repeat 0 -1632px!important}.cke_ltr .cke_button__showblocks_icon{background:url(icons.png) no-repeat 0 -1656px!important}.cke_button__smiley_icon{background:url(icons.png) no-repeat 0 -1680px!important}.cke_rtl .cke_button__source_icon,.cke_mixed_dir_content .cke_rtl .cke_button__source_icon{background:url(icons.png) no-repeat 0 -1704px!important}.cke_ltr .cke_button__source_icon{background:url(icons.png) no-repeat 0 -1728px!important}.cke_rtl .cke_button__sourcedialog_icon,.cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon{background:url(icons.png) no-repeat 0 -1752px!important}.cke_ltr .cke_button__sourcedialog_icon{background:url(icons.png) no-repeat 0 -1776px!important}.cke_button__specialchar_icon{background:url(icons.png) no-repeat 0 -1800px!important}.cke_button__spellchecker_icon{background:url(icons.png) no-repeat 0 -1824px!important}.cke_button__strike_icon{background:url(icons.png) no-repeat 0 -1848px!important}.cke_button__subscript_icon{background:url(icons.png) no-repeat 0 -1872px!important}.cke_button__superscript_icon{background:url(icons.png) no-repeat 0 -1896px!important}.cke_button__table_icon{background:url(icons.png) no-repeat 0 -1920px!important}.cke_rtl .cke_button__templates_icon,.cke_mixed_dir_content .cke_rtl .cke_button__templates_icon{background:url(icons.png) no-repeat 0 -1944px!important}.cke_ltr .cke_button__templates_icon{background:url(icons.png) no-repeat 0 -1968px!important}.cke_rtl .cke_button__textarea_icon,.cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon{background:url(icons.png) no-repeat 0 -1992px!important}.cke_ltr .cke_button__textarea_icon{background:url(icons.png) no-repeat 0 -2016px!important}.cke_button__textcolor_icon{background:url(icons.png) no-repeat 0 -2040px!important}.cke_rtl .cke_button__textfield_icon,.cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon{background:url(icons.png) no-repeat 0 -2064px!important}.cke_ltr .cke_button__textfield_icon{background:url(icons.png) no-repeat 0 -2088px!important}.cke_button__uicolor_icon{background:url(icons.png) no-repeat 0 -2112px!important}.cke_button__underline_icon{background:url(icons.png) no-repeat 0 -2136px!important}.cke_rtl .cke_button__undo_icon,.cke_mixed_dir_content .cke_rtl .cke_button__undo_icon{background:url(icons.png) no-repeat 0 -2160px!important}.cke_ltr .cke_button__undo_icon{background:url(icons.png) no-repeat 0 -2184px!important}.cke_button__unlink_icon{background:url(icons.png) no-repeat 0 -2208px!important}.cke_hidpi .cke_button__about_icon{background:url(icons_hidpi.png) no-repeat 0 -0px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__anchor_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon{background:url(icons_hidpi.png) no-repeat 0 -24px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon{background:url(icons_hidpi.png) no-repeat 0 -48px!important;background-size:16px!important}.cke_hidpi .cke_button__bgcolor_icon{background:url(icons_hidpi.png) no-repeat 0 -72px!important;background-size:16px!important}.cke_hidpi .cke_button__bidiltr_icon{background:url(icons_hidpi.png) no-repeat 0 -96px!important;background-size:16px!important}.cke_hidpi .cke_button__bidirtl_icon{background:url(icons_hidpi.png) no-repeat 0 -120px!important;background-size:16px!important}.cke_hidpi .cke_button__blockquote_icon{background:url(icons_hidpi.png) no-repeat 0 -144px!important;background-size:16px!important}.cke_hidpi .cke_button__bold_icon{background:url(icons_hidpi.png) no-repeat 0 -168px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -192px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -216px!important;background-size:16px!important}.cke_hidpi .cke_button__button_icon{background:url(icons_hidpi.png) no-repeat 0 -240px!important;background-size:16px!important}.cke_hidpi .cke_button__checkbox_icon{background:url(icons_hidpi.png) no-repeat 0 -264px!important;background-size:16px!important}.cke_hidpi .cke_button__codesnippet_icon{background:url(icons_hidpi.png) no-repeat 0 -288px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__copy_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon{background:url(icons_hidpi.png) no-repeat 0 -312px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon{background:url(icons_hidpi.png) no-repeat 0 -336px!important;background-size:16px!important}.cke_hidpi .cke_button__creatediv_icon{background:url(icons_hidpi.png) no-repeat 0 -360px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__cut_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon{background:url(icons_hidpi.png) no-repeat 0 -384px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon{background:url(icons_hidpi.png) no-repeat 0 -408px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__docprops_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__docprops_icon{background:url(icons_hidpi.png) no-repeat 0 -432px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__docprops_icon,.cke_ltr.cke_hidpi .cke_button__docprops_icon{background:url(icons_hidpi.png) no-repeat 0 -456px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__find_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon{background:url(icons_hidpi.png) no-repeat 0 -480px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon{background:url(icons_hidpi.png) no-repeat 0 -504px!important;background-size:16px!important}.cke_hidpi .cke_button__flash_icon{background:url(icons_hidpi.png) no-repeat 0 -528px!important;background-size:16px!important}.cke_hidpi .cke_button__form_icon{background:url(icons_hidpi.png) no-repeat 0 -552px!important;background-size:16px!important}.cke_hidpi .cke_button__hiddenfield_icon{background:url(icons_hidpi.png) no-repeat 0 -576px!important;background-size:16px!important}.cke_hidpi .cke_button__horizontalrule_icon{background:url(icons_hidpi.png) no-repeat 0 -600px!important;background-size:16px!important}.cke_hidpi .cke_button__iframe_icon{background:url(icons_hidpi.png) no-repeat 0 -624px!important;background-size:16px!important}.cke_hidpi .cke_button__image_icon{background:url(icons_hidpi.png) no-repeat 0 -648px!important;background-size:16px!important}.cke_hidpi .cke_button__imagebutton_icon{background:url(icons_hidpi.png) no-repeat 0 -672px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__indent_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon{background:url(icons_hidpi.png) no-repeat 0 -696px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon{background:url(icons_hidpi.png) no-repeat 0 -720px!important;background-size:16px!important}.cke_hidpi .cke_button__italic_icon{background:url(icons_hidpi.png) no-repeat 0 -744px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyblock_icon{background:url(icons_hidpi.png) no-repeat 0 -768px!important;background-size:16px!important}.cke_hidpi .cke_button__justifycenter_icon{background:url(icons_hidpi.png) no-repeat 0 -792px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyleft_icon{background:url(icons_hidpi.png) no-repeat 0 -816px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyright_icon{background:url(icons_hidpi.png) no-repeat 0 -840px!important;background-size:16px!important}.cke_hidpi .cke_button__language_icon{background:url(icons_hidpi.png) no-repeat 0 -864px!important;background-size:16px!important}.cke_hidpi .cke_button__link_icon{background:url(icons_hidpi.png) no-repeat 0 -888px!important;background-size:16px!important}.cke_hidpi .cke_button__mathjax_icon{background:url(icons_hidpi.png) no-repeat 0 -912px!important;background-size:16px!important}.cke_hidpi .cke_button__maximize_icon{background:url(icons_hidpi.png) no-repeat 0 -936px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__newpage_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon{background:url(icons_hidpi.png) no-repeat 0 -960px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__newpage_icon,.cke_ltr.cke_hidpi .cke_button__newpage_icon{background:url(icons_hidpi.png) no-repeat 0 -984px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -1008px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -1032px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__outdent_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon{background:url(icons_hidpi.png) no-repeat 0 -1056px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon{background:url(icons_hidpi.png) no-repeat 0 -1080px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon{background:url(icons_hidpi.png) no-repeat 0 -1104px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon{background:url(icons_hidpi.png) no-repeat 0 -1128px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__paste_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon{background:url(icons_hidpi.png) no-repeat 0 -1152px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon{background:url(icons_hidpi.png) no-repeat 0 -1176px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon{background:url(icons_hidpi.png) no-repeat 0 -1200px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon{background:url(icons_hidpi.png) no-repeat 0 -1224px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pastetext_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon{background:url(icons_hidpi.png) no-repeat 0 -1248px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon{background:url(icons_hidpi.png) no-repeat 0 -1272px!important;background-size:16px!important}.cke_hidpi .cke_button__placeholder_icon{background:url(icons_hidpi.png) no-repeat 0 -1296px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__preview_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon{background:url(icons_hidpi.png) no-repeat 0 -1320px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon{background:url(icons_hidpi.png) no-repeat 0 -1344px!important;background-size:16px!important}.cke_hidpi .cke_button__print_icon{background:url(icons_hidpi.png) no-repeat 0 -1368px!important;background-size:16px!important}.cke_hidpi .cke_button__radio_icon{background:url(icons_hidpi.png) no-repeat 0 -1392px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__redo_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon{background:url(icons_hidpi.png) no-repeat 0 -1416px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon{background:url(icons_hidpi.png) no-repeat 0 -1440px!important;background-size:16px!important}.cke_hidpi .cke_button__removeformat_icon{background:url(icons_hidpi.png) no-repeat 0 -1464px!important;background-size:16px!important}.cke_hidpi .cke_button__replace_icon{background:url(icons_hidpi.png) no-repeat 0 -1488px!important;background-size:16px!important}.cke_hidpi .cke_button__save_icon{background:url(icons_hidpi.png) no-repeat 0 -1512px!important;background-size:16px!important}.cke_hidpi .cke_button__scayt_icon{background:url(icons_hidpi.png) no-repeat 0 -1536px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__select_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__select_icon{background:url(icons_hidpi.png) no-repeat 0 -1560px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__select_icon,.cke_ltr.cke_hidpi .cke_button__select_icon{background:url(icons_hidpi.png) no-repeat 0 -1584px!important;background-size:16px!important}.cke_hidpi .cke_button__selectall_icon{background:url(icons_hidpi.png) no-repeat 0 -1608px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__showblocks_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon{background:url(icons_hidpi.png) no-repeat 0 -1632px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon{background:url(icons_hidpi.png) no-repeat 0 -1656px!important;background-size:16px!important}.cke_hidpi .cke_button__smiley_icon{background:url(icons_hidpi.png) no-repeat 0 -1680px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__source_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon{background:url(icons_hidpi.png) no-repeat 0 -1704px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon{background:url(icons_hidpi.png) no-repeat 0 -1728px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__sourcedialog_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon{background:url(icons_hidpi.png) no-repeat 0 -1752px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__sourcedialog_icon,.cke_ltr.cke_hidpi .cke_button__sourcedialog_icon{background:url(icons_hidpi.png) no-repeat 0 -1776px!important;background-size:16px!important}.cke_hidpi .cke_button__specialchar_icon{background:url(icons_hidpi.png) no-repeat 0 -1800px!important;background-size:16px!important}.cke_hidpi .cke_button__spellchecker_icon{background:url(icons_hidpi.png) no-repeat 0 -1824px!important;background-size:16px!important}.cke_hidpi .cke_button__strike_icon{background:url(icons_hidpi.png) no-repeat 0 -1848px!important;background-size:16px!important}.cke_hidpi .cke_button__subscript_icon{background:url(icons_hidpi.png) no-repeat 0 -1872px!important;background-size:16px!important}.cke_hidpi .cke_button__superscript_icon{background:url(icons_hidpi.png) no-repeat 0 -1896px!important;background-size:16px!important}.cke_hidpi .cke_button__table_icon{background:url(icons_hidpi.png) no-repeat 0 -1920px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__templates_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon{background:url(icons_hidpi.png) no-repeat 0 -1944px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon{background:url(icons_hidpi.png) no-repeat 0 -1968px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__textarea_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon{background:url(icons_hidpi.png) no-repeat 0 -1992px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__textarea_icon,.cke_ltr.cke_hidpi .cke_button__textarea_icon{background:url(icons_hidpi.png) no-repeat 0 -2016px!important;background-size:16px!important}.cke_hidpi .cke_button__textcolor_icon{background:url(icons_hidpi.png) no-repeat 0 -2040px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__textfield_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon{background:url(icons_hidpi.png) no-repeat 0 -2064px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__textfield_icon,.cke_ltr.cke_hidpi .cke_button__textfield_icon{background:url(icons_hidpi.png) no-repeat 0 -2088px!important;background-size:16px!important}.cke_hidpi .cke_button__uicolor_icon{background:url(icons_hidpi.png) no-repeat 0 -2112px!important;background-size:16px!important}.cke_hidpi .cke_button__underline_icon{background:url(icons_hidpi.png) no-repeat 0 -2136px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__undo_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon{background:url(icons_hidpi.png) no-repeat 0 -2160px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon{background:url(icons_hidpi.png) no-repeat 0 -2184px!important;background-size:16px!important}.cke_hidpi .cke_button__unlink_icon{background:url(icons_hidpi.png) no-repeat 0 -2208px!important;background-size:16px!important}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_ie7.css b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_ie7.css new file mode 100644 index 000000000..48a633466 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_ie7.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border:1px solid #0d0d0d;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.15) inset;background:#1f1f1f;background-image:-webkit-gradient(linear,left top,left bottom,from(#333),to(#1f1f1f));background-image:-moz-linear-gradient(top,#333,#1f1f1f);background-image:-webkit-linear-gradient(top,#333,#1f1f1f);background-image:-o-linear-gradient(top,#333,#1f1f1f);background-image:-ms-linear-gradient(top,#333,#1f1f1f);background-image:linear-gradient(top,#333,#1f1f1f);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#333333',endColorstr='#1f1f1f')}.cke_float .cke_top{border-color:#000}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#f2f2f2;text-shadow:0 1px 0 #000;border:1px solid #0d0d0d;border-bottom-color:#060606;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 0 8px rgba(0,0,0,.75) inset;-webkit-box-shadow:0 0 8px rgba(0,0,0,.75) inset;box-shadow:0 0 8px rgba(0,0,0,.75) inset;background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#262626),to(#1a1a1a));background-image:-moz-linear-gradient(top,#262626,#1a1a1a);background-image:-webkit-linear-gradient(top,#262626,#1a1a1a);background-image:-o-linear-gradient(top,#262626,#1a1a1a);background-image:-ms-linear-gradient(top,#262626,#1a1a1a);background-image:linear-gradient(top,#262626,#1a1a1a);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#262626',endColorstr='#1a1a1a')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#666),to(#4c4c4c));background-image:-moz-linear-gradient(top,#666,#4c4c4c);background-image:-webkit-linear-gradient(top,#666,#4c4c4c);background-image:-o-linear-gradient(top,#666,#4c4c4c);background-image:-ms-linear-gradient(top,#666,#4c4c4c);background-image:linear-gradient(top,#666,#4c4c4c);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#666666',endColorstr='#4c4c4c')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#e5e5e5;text-shadow:0 1px 0 #000}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #e6e6e6}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#272727;background-color:rgba(0,0,0,.5);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 0 rgba(255,255,255,.1);-moz-box-shadow:1px 0 0 rgba(255,255,255,.1);box-shadow:1px 0 0 rgba(255,255,255,.1)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 0 rgba(255,255,255,.1);-moz-box-shadow:-1px 0 0 rgba(255,255,255,.1);box-shadow:-1px 0 0 rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #e5e5e5;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#e5e5e5}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#262626;padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#444}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#666),to(#4c4c4c));background-image:-moz-linear-gradient(top,#666,#4c4c4c);background-image:-webkit-linear-gradient(top,#666,#4c4c4c);background-image:-o-linear-gradient(top,#666,#4c4c4c);background-image:-ms-linear-gradient(top,#666,#4c4c4c);background-image:linear-gradient(top,#666,#4c4c4c);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#666666',endColorstr='#4c4c4c');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{-moz-box-shadow:0 0 8px rgba(0,0,0,.75) inset;-webkit-box-shadow:0 0 8px rgba(0,0,0,.75) inset;box-shadow:0 0 8px rgba(0,0,0,.75) inset;background:#1a1a1a;background-image:-webkit-gradient(linear,left top,left bottom,from(#262626),to(#1a1a1a));background-image:-moz-linear-gradient(top,#262626,#1a1a1a);background-image:-webkit-linear-gradient(top,#262626,#1a1a1a);background-image:-o-linear-gradient(top,#262626,#1a1a1a);background-image:-ms-linear-gradient(top,#262626,#1a1a1a);background-image:linear-gradient(top,#262626,#1a1a1a);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#262626',endColorstr='#1a1a1a')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#e5e5e5;text-shadow:0 1px 0 #000;width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #e6e6e6}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}.cke_button__about_icon{background:url(icons.png) no-repeat 0 -0px!important}.cke_rtl .cke_button__anchor_icon,.cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon{background:url(icons.png) no-repeat 0 -24px!important}.cke_ltr .cke_button__anchor_icon{background:url(icons.png) no-repeat 0 -48px!important}.cke_button__bgcolor_icon{background:url(icons.png) no-repeat 0 -72px!important}.cke_button__bidiltr_icon{background:url(icons.png) no-repeat 0 -96px!important}.cke_button__bidirtl_icon{background:url(icons.png) no-repeat 0 -120px!important}.cke_button__blockquote_icon{background:url(icons.png) no-repeat 0 -144px!important}.cke_button__bold_icon{background:url(icons.png) no-repeat 0 -168px!important}.cke_rtl .cke_button__bulletedlist_icon,.cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon{background:url(icons.png) no-repeat 0 -192px!important}.cke_ltr .cke_button__bulletedlist_icon{background:url(icons.png) no-repeat 0 -216px!important}.cke_button__button_icon{background:url(icons.png) no-repeat 0 -240px!important}.cke_button__checkbox_icon{background:url(icons.png) no-repeat 0 -264px!important}.cke_button__codesnippet_icon{background:url(icons.png) no-repeat 0 -288px!important}.cke_rtl .cke_button__copy_icon,.cke_mixed_dir_content .cke_rtl .cke_button__copy_icon{background:url(icons.png) no-repeat 0 -312px!important}.cke_ltr .cke_button__copy_icon{background:url(icons.png) no-repeat 0 -336px!important}.cke_button__creatediv_icon{background:url(icons.png) no-repeat 0 -360px!important}.cke_rtl .cke_button__cut_icon,.cke_mixed_dir_content .cke_rtl .cke_button__cut_icon{background:url(icons.png) no-repeat 0 -384px!important}.cke_ltr .cke_button__cut_icon{background:url(icons.png) no-repeat 0 -408px!important}.cke_rtl .cke_button__docprops_icon,.cke_mixed_dir_content .cke_rtl .cke_button__docprops_icon{background:url(icons.png) no-repeat 0 -432px!important}.cke_ltr .cke_button__docprops_icon{background:url(icons.png) no-repeat 0 -456px!important}.cke_rtl .cke_button__find_icon,.cke_mixed_dir_content .cke_rtl .cke_button__find_icon{background:url(icons.png) no-repeat 0 -480px!important}.cke_ltr .cke_button__find_icon{background:url(icons.png) no-repeat 0 -504px!important}.cke_button__flash_icon{background:url(icons.png) no-repeat 0 -528px!important}.cke_button__form_icon{background:url(icons.png) no-repeat 0 -552px!important}.cke_button__hiddenfield_icon{background:url(icons.png) no-repeat 0 -576px!important}.cke_button__horizontalrule_icon{background:url(icons.png) no-repeat 0 -600px!important}.cke_button__iframe_icon{background:url(icons.png) no-repeat 0 -624px!important}.cke_button__image_icon{background:url(icons.png) no-repeat 0 -648px!important}.cke_button__imagebutton_icon{background:url(icons.png) no-repeat 0 -672px!important}.cke_rtl .cke_button__indent_icon,.cke_mixed_dir_content .cke_rtl .cke_button__indent_icon{background:url(icons.png) no-repeat 0 -696px!important}.cke_ltr .cke_button__indent_icon{background:url(icons.png) no-repeat 0 -720px!important}.cke_button__italic_icon{background:url(icons.png) no-repeat 0 -744px!important}.cke_button__justifyblock_icon{background:url(icons.png) no-repeat 0 -768px!important}.cke_button__justifycenter_icon{background:url(icons.png) no-repeat 0 -792px!important}.cke_button__justifyleft_icon{background:url(icons.png) no-repeat 0 -816px!important}.cke_button__justifyright_icon{background:url(icons.png) no-repeat 0 -840px!important}.cke_button__language_icon{background:url(icons.png) no-repeat 0 -864px!important}.cke_button__link_icon{background:url(icons.png) no-repeat 0 -888px!important}.cke_button__mathjax_icon{background:url(icons.png) no-repeat 0 -912px!important}.cke_button__maximize_icon{background:url(icons.png) no-repeat 0 -936px!important}.cke_rtl .cke_button__newpage_icon,.cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon{background:url(icons.png) no-repeat 0 -960px!important}.cke_ltr .cke_button__newpage_icon{background:url(icons.png) no-repeat 0 -984px!important}.cke_rtl .cke_button__numberedlist_icon,.cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon{background:url(icons.png) no-repeat 0 -1008px!important}.cke_ltr .cke_button__numberedlist_icon{background:url(icons.png) no-repeat 0 -1032px!important}.cke_rtl .cke_button__outdent_icon,.cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon{background:url(icons.png) no-repeat 0 -1056px!important}.cke_ltr .cke_button__outdent_icon{background:url(icons.png) no-repeat 0 -1080px!important}.cke_rtl .cke_button__pagebreak_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon{background:url(icons.png) no-repeat 0 -1104px!important}.cke_ltr .cke_button__pagebreak_icon{background:url(icons.png) no-repeat 0 -1128px!important}.cke_rtl .cke_button__paste_icon,.cke_mixed_dir_content .cke_rtl .cke_button__paste_icon{background:url(icons.png) no-repeat 0 -1152px!important}.cke_ltr .cke_button__paste_icon{background:url(icons.png) no-repeat 0 -1176px!important}.cke_rtl .cke_button__pastefromword_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon{background:url(icons.png) no-repeat 0 -1200px!important}.cke_ltr .cke_button__pastefromword_icon{background:url(icons.png) no-repeat 0 -1224px!important}.cke_rtl .cke_button__pastetext_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon{background:url(icons.png) no-repeat 0 -1248px!important}.cke_ltr .cke_button__pastetext_icon{background:url(icons.png) no-repeat 0 -1272px!important}.cke_button__placeholder_icon{background:url(icons.png) no-repeat 0 -1296px!important}.cke_rtl .cke_button__preview_icon,.cke_mixed_dir_content .cke_rtl .cke_button__preview_icon{background:url(icons.png) no-repeat 0 -1320px!important}.cke_ltr .cke_button__preview_icon{background:url(icons.png) no-repeat 0 -1344px!important}.cke_button__print_icon{background:url(icons.png) no-repeat 0 -1368px!important}.cke_button__radio_icon{background:url(icons.png) no-repeat 0 -1392px!important}.cke_rtl .cke_button__redo_icon,.cke_mixed_dir_content .cke_rtl .cke_button__redo_icon{background:url(icons.png) no-repeat 0 -1416px!important}.cke_ltr .cke_button__redo_icon{background:url(icons.png) no-repeat 0 -1440px!important}.cke_button__removeformat_icon{background:url(icons.png) no-repeat 0 -1464px!important}.cke_button__replace_icon{background:url(icons.png) no-repeat 0 -1488px!important}.cke_button__save_icon{background:url(icons.png) no-repeat 0 -1512px!important}.cke_button__scayt_icon{background:url(icons.png) no-repeat 0 -1536px!important}.cke_rtl .cke_button__select_icon,.cke_mixed_dir_content .cke_rtl .cke_button__select_icon{background:url(icons.png) no-repeat 0 -1560px!important}.cke_ltr .cke_button__select_icon{background:url(icons.png) no-repeat 0 -1584px!important}.cke_button__selectall_icon{background:url(icons.png) no-repeat 0 -1608px!important}.cke_rtl .cke_button__showblocks_icon,.cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon{background:url(icons.png) no-repeat 0 -1632px!important}.cke_ltr .cke_button__showblocks_icon{background:url(icons.png) no-repeat 0 -1656px!important}.cke_button__smiley_icon{background:url(icons.png) no-repeat 0 -1680px!important}.cke_rtl .cke_button__source_icon,.cke_mixed_dir_content .cke_rtl .cke_button__source_icon{background:url(icons.png) no-repeat 0 -1704px!important}.cke_ltr .cke_button__source_icon{background:url(icons.png) no-repeat 0 -1728px!important}.cke_rtl .cke_button__sourcedialog_icon,.cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon{background:url(icons.png) no-repeat 0 -1752px!important}.cke_ltr .cke_button__sourcedialog_icon{background:url(icons.png) no-repeat 0 -1776px!important}.cke_button__specialchar_icon{background:url(icons.png) no-repeat 0 -1800px!important}.cke_button__spellchecker_icon{background:url(icons.png) no-repeat 0 -1824px!important}.cke_button__strike_icon{background:url(icons.png) no-repeat 0 -1848px!important}.cke_button__subscript_icon{background:url(icons.png) no-repeat 0 -1872px!important}.cke_button__superscript_icon{background:url(icons.png) no-repeat 0 -1896px!important}.cke_button__table_icon{background:url(icons.png) no-repeat 0 -1920px!important}.cke_rtl .cke_button__templates_icon,.cke_mixed_dir_content .cke_rtl .cke_button__templates_icon{background:url(icons.png) no-repeat 0 -1944px!important}.cke_ltr .cke_button__templates_icon{background:url(icons.png) no-repeat 0 -1968px!important}.cke_rtl .cke_button__textarea_icon,.cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon{background:url(icons.png) no-repeat 0 -1992px!important}.cke_ltr .cke_button__textarea_icon{background:url(icons.png) no-repeat 0 -2016px!important}.cke_button__textcolor_icon{background:url(icons.png) no-repeat 0 -2040px!important}.cke_rtl .cke_button__textfield_icon,.cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon{background:url(icons.png) no-repeat 0 -2064px!important}.cke_ltr .cke_button__textfield_icon{background:url(icons.png) no-repeat 0 -2088px!important}.cke_button__uicolor_icon{background:url(icons.png) no-repeat 0 -2112px!important}.cke_button__underline_icon{background:url(icons.png) no-repeat 0 -2136px!important}.cke_rtl .cke_button__undo_icon,.cke_mixed_dir_content .cke_rtl .cke_button__undo_icon{background:url(icons.png) no-repeat 0 -2160px!important}.cke_ltr .cke_button__undo_icon{background:url(icons.png) no-repeat 0 -2184px!important}.cke_button__unlink_icon{background:url(icons.png) no-repeat 0 -2208px!important}.cke_hidpi .cke_button__about_icon{background:url(icons_hidpi.png) no-repeat 0 -0px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__anchor_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon{background:url(icons_hidpi.png) no-repeat 0 -24px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon{background:url(icons_hidpi.png) no-repeat 0 -48px!important;background-size:16px!important}.cke_hidpi .cke_button__bgcolor_icon{background:url(icons_hidpi.png) no-repeat 0 -72px!important;background-size:16px!important}.cke_hidpi .cke_button__bidiltr_icon{background:url(icons_hidpi.png) no-repeat 0 -96px!important;background-size:16px!important}.cke_hidpi .cke_button__bidirtl_icon{background:url(icons_hidpi.png) no-repeat 0 -120px!important;background-size:16px!important}.cke_hidpi .cke_button__blockquote_icon{background:url(icons_hidpi.png) no-repeat 0 -144px!important;background-size:16px!important}.cke_hidpi .cke_button__bold_icon{background:url(icons_hidpi.png) no-repeat 0 -168px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -192px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -216px!important;background-size:16px!important}.cke_hidpi .cke_button__button_icon{background:url(icons_hidpi.png) no-repeat 0 -240px!important;background-size:16px!important}.cke_hidpi .cke_button__checkbox_icon{background:url(icons_hidpi.png) no-repeat 0 -264px!important;background-size:16px!important}.cke_hidpi .cke_button__codesnippet_icon{background:url(icons_hidpi.png) no-repeat 0 -288px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__copy_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon{background:url(icons_hidpi.png) no-repeat 0 -312px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon{background:url(icons_hidpi.png) no-repeat 0 -336px!important;background-size:16px!important}.cke_hidpi .cke_button__creatediv_icon{background:url(icons_hidpi.png) no-repeat 0 -360px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__cut_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon{background:url(icons_hidpi.png) no-repeat 0 -384px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon{background:url(icons_hidpi.png) no-repeat 0 -408px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__docprops_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__docprops_icon{background:url(icons_hidpi.png) no-repeat 0 -432px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__docprops_icon,.cke_ltr.cke_hidpi .cke_button__docprops_icon{background:url(icons_hidpi.png) no-repeat 0 -456px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__find_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon{background:url(icons_hidpi.png) no-repeat 0 -480px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon{background:url(icons_hidpi.png) no-repeat 0 -504px!important;background-size:16px!important}.cke_hidpi .cke_button__flash_icon{background:url(icons_hidpi.png) no-repeat 0 -528px!important;background-size:16px!important}.cke_hidpi .cke_button__form_icon{background:url(icons_hidpi.png) no-repeat 0 -552px!important;background-size:16px!important}.cke_hidpi .cke_button__hiddenfield_icon{background:url(icons_hidpi.png) no-repeat 0 -576px!important;background-size:16px!important}.cke_hidpi .cke_button__horizontalrule_icon{background:url(icons_hidpi.png) no-repeat 0 -600px!important;background-size:16px!important}.cke_hidpi .cke_button__iframe_icon{background:url(icons_hidpi.png) no-repeat 0 -624px!important;background-size:16px!important}.cke_hidpi .cke_button__image_icon{background:url(icons_hidpi.png) no-repeat 0 -648px!important;background-size:16px!important}.cke_hidpi .cke_button__imagebutton_icon{background:url(icons_hidpi.png) no-repeat 0 -672px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__indent_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon{background:url(icons_hidpi.png) no-repeat 0 -696px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon{background:url(icons_hidpi.png) no-repeat 0 -720px!important;background-size:16px!important}.cke_hidpi .cke_button__italic_icon{background:url(icons_hidpi.png) no-repeat 0 -744px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyblock_icon{background:url(icons_hidpi.png) no-repeat 0 -768px!important;background-size:16px!important}.cke_hidpi .cke_button__justifycenter_icon{background:url(icons_hidpi.png) no-repeat 0 -792px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyleft_icon{background:url(icons_hidpi.png) no-repeat 0 -816px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyright_icon{background:url(icons_hidpi.png) no-repeat 0 -840px!important;background-size:16px!important}.cke_hidpi .cke_button__language_icon{background:url(icons_hidpi.png) no-repeat 0 -864px!important;background-size:16px!important}.cke_hidpi .cke_button__link_icon{background:url(icons_hidpi.png) no-repeat 0 -888px!important;background-size:16px!important}.cke_hidpi .cke_button__mathjax_icon{background:url(icons_hidpi.png) no-repeat 0 -912px!important;background-size:16px!important}.cke_hidpi .cke_button__maximize_icon{background:url(icons_hidpi.png) no-repeat 0 -936px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__newpage_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon{background:url(icons_hidpi.png) no-repeat 0 -960px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__newpage_icon,.cke_ltr.cke_hidpi .cke_button__newpage_icon{background:url(icons_hidpi.png) no-repeat 0 -984px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -1008px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -1032px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__outdent_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon{background:url(icons_hidpi.png) no-repeat 0 -1056px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon{background:url(icons_hidpi.png) no-repeat 0 -1080px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon{background:url(icons_hidpi.png) no-repeat 0 -1104px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon{background:url(icons_hidpi.png) no-repeat 0 -1128px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__paste_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon{background:url(icons_hidpi.png) no-repeat 0 -1152px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon{background:url(icons_hidpi.png) no-repeat 0 -1176px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon{background:url(icons_hidpi.png) no-repeat 0 -1200px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon{background:url(icons_hidpi.png) no-repeat 0 -1224px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pastetext_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon{background:url(icons_hidpi.png) no-repeat 0 -1248px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon{background:url(icons_hidpi.png) no-repeat 0 -1272px!important;background-size:16px!important}.cke_hidpi .cke_button__placeholder_icon{background:url(icons_hidpi.png) no-repeat 0 -1296px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__preview_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon{background:url(icons_hidpi.png) no-repeat 0 -1320px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon{background:url(icons_hidpi.png) no-repeat 0 -1344px!important;background-size:16px!important}.cke_hidpi .cke_button__print_icon{background:url(icons_hidpi.png) no-repeat 0 -1368px!important;background-size:16px!important}.cke_hidpi .cke_button__radio_icon{background:url(icons_hidpi.png) no-repeat 0 -1392px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__redo_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon{background:url(icons_hidpi.png) no-repeat 0 -1416px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon{background:url(icons_hidpi.png) no-repeat 0 -1440px!important;background-size:16px!important}.cke_hidpi .cke_button__removeformat_icon{background:url(icons_hidpi.png) no-repeat 0 -1464px!important;background-size:16px!important}.cke_hidpi .cke_button__replace_icon{background:url(icons_hidpi.png) no-repeat 0 -1488px!important;background-size:16px!important}.cke_hidpi .cke_button__save_icon{background:url(icons_hidpi.png) no-repeat 0 -1512px!important;background-size:16px!important}.cke_hidpi .cke_button__scayt_icon{background:url(icons_hidpi.png) no-repeat 0 -1536px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__select_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__select_icon{background:url(icons_hidpi.png) no-repeat 0 -1560px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__select_icon,.cke_ltr.cke_hidpi .cke_button__select_icon{background:url(icons_hidpi.png) no-repeat 0 -1584px!important;background-size:16px!important}.cke_hidpi .cke_button__selectall_icon{background:url(icons_hidpi.png) no-repeat 0 -1608px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__showblocks_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon{background:url(icons_hidpi.png) no-repeat 0 -1632px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon{background:url(icons_hidpi.png) no-repeat 0 -1656px!important;background-size:16px!important}.cke_hidpi .cke_button__smiley_icon{background:url(icons_hidpi.png) no-repeat 0 -1680px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__source_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon{background:url(icons_hidpi.png) no-repeat 0 -1704px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon{background:url(icons_hidpi.png) no-repeat 0 -1728px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__sourcedialog_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon{background:url(icons_hidpi.png) no-repeat 0 -1752px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__sourcedialog_icon,.cke_ltr.cke_hidpi .cke_button__sourcedialog_icon{background:url(icons_hidpi.png) no-repeat 0 -1776px!important;background-size:16px!important}.cke_hidpi .cke_button__specialchar_icon{background:url(icons_hidpi.png) no-repeat 0 -1800px!important;background-size:16px!important}.cke_hidpi .cke_button__spellchecker_icon{background:url(icons_hidpi.png) no-repeat 0 -1824px!important;background-size:16px!important}.cke_hidpi .cke_button__strike_icon{background:url(icons_hidpi.png) no-repeat 0 -1848px!important;background-size:16px!important}.cke_hidpi .cke_button__subscript_icon{background:url(icons_hidpi.png) no-repeat 0 -1872px!important;background-size:16px!important}.cke_hidpi .cke_button__superscript_icon{background:url(icons_hidpi.png) no-repeat 0 -1896px!important;background-size:16px!important}.cke_hidpi .cke_button__table_icon{background:url(icons_hidpi.png) no-repeat 0 -1920px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__templates_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon{background:url(icons_hidpi.png) no-repeat 0 -1944px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon{background:url(icons_hidpi.png) no-repeat 0 -1968px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__textarea_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon{background:url(icons_hidpi.png) no-repeat 0 -1992px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__textarea_icon,.cke_ltr.cke_hidpi .cke_button__textarea_icon{background:url(icons_hidpi.png) no-repeat 0 -2016px!important;background-size:16px!important}.cke_hidpi .cke_button__textcolor_icon{background:url(icons_hidpi.png) no-repeat 0 -2040px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__textfield_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon{background:url(icons_hidpi.png) no-repeat 0 -2064px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__textfield_icon,.cke_ltr.cke_hidpi .cke_button__textfield_icon{background:url(icons_hidpi.png) no-repeat 0 -2088px!important;background-size:16px!important}.cke_hidpi .cke_button__uicolor_icon{background:url(icons_hidpi.png) no-repeat 0 -2112px!important;background-size:16px!important}.cke_hidpi .cke_button__underline_icon{background:url(icons_hidpi.png) no-repeat 0 -2136px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__undo_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon{background:url(icons_hidpi.png) no-repeat 0 -2160px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon{background:url(icons_hidpi.png) no-repeat 0 -2184px!important;background-size:16px!important}.cke_hidpi .cke_button__unlink_icon{background:url(icons_hidpi.png) no-repeat 0 -2208px!important;background-size:16px!important}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_button,.cke_rtl .cke_button *,.cke_rtl .cke_combo,.cke_rtl .cke_combo *,.cke_rtl .cke_path_item,.cke_rtl .cke_path_item *,.cke_rtl .cke_path_empty{float:none}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_combo_button,.cke_rtl .cke_combo_button *,.cke_rtl .cke_button,.cke_rtl .cke_button_icon,{display:inline-block;vertical-align:top}.cke_toolbox{display:inline-block;padding-bottom:5px;height:100%}.cke_rtl .cke_toolbox{padding-bottom:0}.cke_toolbar{margin-bottom:5px}.cke_rtl .cke_toolbar{margin-bottom:0}.cke_toolgroup{height:26px}.cke_toolgroup,.cke_combo{position:relative}a.cke_button{float:none;vertical-align:top}.cke_toolbar_separator{display:inline-block;float:none;vertical-align:top;background-color:#c0c0c0}.cke_toolbox_collapser .cke_arrow{margin-top:0}.cke_toolbox_collapser .cke_arrow{border-width:4px}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{border-width:3px}.cke_rtl .cke_button_arrow{padding-top:8px;margin-right:2px}.cke_rtl .cke_combo_inlinelabel{display:table-cell;vertical-align:middle}.cke_menubutton{display:block;height:24px}.cke_menubutton_inner{display:block;position:relative}.cke_menubutton_icon{height:16px;width:16px}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:inline-block}.cke_menubutton_label{width:auto;vertical-align:top;line-height:24px;height:24px;margin:0 10px 0 0}.cke_menuarrow{width:5px;height:6px;padding:0;position:absolute;right:8px;top:10px;background-position:0 0}.cke_rtl .cke_menubutton_icon{position:absolute;right:0;top:0}.cke_rtl .cke_menubutton_label{float:right;clear:both;margin:0 24px 0 10px}.cke_hc .cke_rtl .cke_menubutton_label{margin-right:0}.cke_rtl .cke_menuarrow{left:8px;right:auto;background-position:0 -24px}.cke_hc .cke_menuarrow{top:5px;padding:0 5px}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{position:relative}.cke_wysiwyg_div{padding-top:0!important;padding-bottom:0!important} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_ie8.css b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_ie8.css new file mode 100644 index 000000000..f2ec07dbf --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_ie8.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border:1px solid #0d0d0d;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.15) inset;background:#1f1f1f;background-image:-webkit-gradient(linear,left top,left bottom,from(#333),to(#1f1f1f));background-image:-moz-linear-gradient(top,#333,#1f1f1f);background-image:-webkit-linear-gradient(top,#333,#1f1f1f);background-image:-o-linear-gradient(top,#333,#1f1f1f);background-image:-ms-linear-gradient(top,#333,#1f1f1f);background-image:linear-gradient(top,#333,#1f1f1f);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#333333',endColorstr='#1f1f1f')}.cke_float .cke_top{border-color:#000}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#f2f2f2;text-shadow:0 1px 0 #000;border:1px solid #0d0d0d;border-bottom-color:#060606;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 0 8px rgba(0,0,0,.75) inset;-webkit-box-shadow:0 0 8px rgba(0,0,0,.75) inset;box-shadow:0 0 8px rgba(0,0,0,.75) inset;background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#262626),to(#1a1a1a));background-image:-moz-linear-gradient(top,#262626,#1a1a1a);background-image:-webkit-linear-gradient(top,#262626,#1a1a1a);background-image:-o-linear-gradient(top,#262626,#1a1a1a);background-image:-ms-linear-gradient(top,#262626,#1a1a1a);background-image:linear-gradient(top,#262626,#1a1a1a);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#262626',endColorstr='#1a1a1a')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#666),to(#4c4c4c));background-image:-moz-linear-gradient(top,#666,#4c4c4c);background-image:-webkit-linear-gradient(top,#666,#4c4c4c);background-image:-o-linear-gradient(top,#666,#4c4c4c);background-image:-ms-linear-gradient(top,#666,#4c4c4c);background-image:linear-gradient(top,#666,#4c4c4c);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#666666',endColorstr='#4c4c4c')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#e5e5e5;text-shadow:0 1px 0 #000}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #e6e6e6}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#272727;background-color:rgba(0,0,0,.5);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 0 rgba(255,255,255,.1);-moz-box-shadow:1px 0 0 rgba(255,255,255,.1);box-shadow:1px 0 0 rgba(255,255,255,.1)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 0 rgba(255,255,255,.1);-moz-box-shadow:-1px 0 0 rgba(255,255,255,.1);box-shadow:-1px 0 0 rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #e5e5e5;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#e5e5e5}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#262626;padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#444}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#666),to(#4c4c4c));background-image:-moz-linear-gradient(top,#666,#4c4c4c);background-image:-webkit-linear-gradient(top,#666,#4c4c4c);background-image:-o-linear-gradient(top,#666,#4c4c4c);background-image:-ms-linear-gradient(top,#666,#4c4c4c);background-image:linear-gradient(top,#666,#4c4c4c);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#666666',endColorstr='#4c4c4c');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{-moz-box-shadow:0 0 8px rgba(0,0,0,.75) inset;-webkit-box-shadow:0 0 8px rgba(0,0,0,.75) inset;box-shadow:0 0 8px rgba(0,0,0,.75) inset;background:#1a1a1a;background-image:-webkit-gradient(linear,left top,left bottom,from(#262626),to(#1a1a1a));background-image:-moz-linear-gradient(top,#262626,#1a1a1a);background-image:-webkit-linear-gradient(top,#262626,#1a1a1a);background-image:-o-linear-gradient(top,#262626,#1a1a1a);background-image:-ms-linear-gradient(top,#262626,#1a1a1a);background-image:linear-gradient(top,#262626,#1a1a1a);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#262626',endColorstr='#1a1a1a')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#e5e5e5;text-shadow:0 1px 0 #000;width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #e6e6e6}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}.cke_button__about_icon{background:url(icons.png) no-repeat 0 -0px!important}.cke_rtl .cke_button__anchor_icon,.cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon{background:url(icons.png) no-repeat 0 -24px!important}.cke_ltr .cke_button__anchor_icon{background:url(icons.png) no-repeat 0 -48px!important}.cke_button__bgcolor_icon{background:url(icons.png) no-repeat 0 -72px!important}.cke_button__bidiltr_icon{background:url(icons.png) no-repeat 0 -96px!important}.cke_button__bidirtl_icon{background:url(icons.png) no-repeat 0 -120px!important}.cke_button__blockquote_icon{background:url(icons.png) no-repeat 0 -144px!important}.cke_button__bold_icon{background:url(icons.png) no-repeat 0 -168px!important}.cke_rtl .cke_button__bulletedlist_icon,.cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon{background:url(icons.png) no-repeat 0 -192px!important}.cke_ltr .cke_button__bulletedlist_icon{background:url(icons.png) no-repeat 0 -216px!important}.cke_button__button_icon{background:url(icons.png) no-repeat 0 -240px!important}.cke_button__checkbox_icon{background:url(icons.png) no-repeat 0 -264px!important}.cke_button__codesnippet_icon{background:url(icons.png) no-repeat 0 -288px!important}.cke_rtl .cke_button__copy_icon,.cke_mixed_dir_content .cke_rtl .cke_button__copy_icon{background:url(icons.png) no-repeat 0 -312px!important}.cke_ltr .cke_button__copy_icon{background:url(icons.png) no-repeat 0 -336px!important}.cke_button__creatediv_icon{background:url(icons.png) no-repeat 0 -360px!important}.cke_rtl .cke_button__cut_icon,.cke_mixed_dir_content .cke_rtl .cke_button__cut_icon{background:url(icons.png) no-repeat 0 -384px!important}.cke_ltr .cke_button__cut_icon{background:url(icons.png) no-repeat 0 -408px!important}.cke_rtl .cke_button__docprops_icon,.cke_mixed_dir_content .cke_rtl .cke_button__docprops_icon{background:url(icons.png) no-repeat 0 -432px!important}.cke_ltr .cke_button__docprops_icon{background:url(icons.png) no-repeat 0 -456px!important}.cke_rtl .cke_button__find_icon,.cke_mixed_dir_content .cke_rtl .cke_button__find_icon{background:url(icons.png) no-repeat 0 -480px!important}.cke_ltr .cke_button__find_icon{background:url(icons.png) no-repeat 0 -504px!important}.cke_button__flash_icon{background:url(icons.png) no-repeat 0 -528px!important}.cke_button__form_icon{background:url(icons.png) no-repeat 0 -552px!important}.cke_button__hiddenfield_icon{background:url(icons.png) no-repeat 0 -576px!important}.cke_button__horizontalrule_icon{background:url(icons.png) no-repeat 0 -600px!important}.cke_button__iframe_icon{background:url(icons.png) no-repeat 0 -624px!important}.cke_button__image_icon{background:url(icons.png) no-repeat 0 -648px!important}.cke_button__imagebutton_icon{background:url(icons.png) no-repeat 0 -672px!important}.cke_rtl .cke_button__indent_icon,.cke_mixed_dir_content .cke_rtl .cke_button__indent_icon{background:url(icons.png) no-repeat 0 -696px!important}.cke_ltr .cke_button__indent_icon{background:url(icons.png) no-repeat 0 -720px!important}.cke_button__italic_icon{background:url(icons.png) no-repeat 0 -744px!important}.cke_button__justifyblock_icon{background:url(icons.png) no-repeat 0 -768px!important}.cke_button__justifycenter_icon{background:url(icons.png) no-repeat 0 -792px!important}.cke_button__justifyleft_icon{background:url(icons.png) no-repeat 0 -816px!important}.cke_button__justifyright_icon{background:url(icons.png) no-repeat 0 -840px!important}.cke_button__language_icon{background:url(icons.png) no-repeat 0 -864px!important}.cke_button__link_icon{background:url(icons.png) no-repeat 0 -888px!important}.cke_button__mathjax_icon{background:url(icons.png) no-repeat 0 -912px!important}.cke_button__maximize_icon{background:url(icons.png) no-repeat 0 -936px!important}.cke_rtl .cke_button__newpage_icon,.cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon{background:url(icons.png) no-repeat 0 -960px!important}.cke_ltr .cke_button__newpage_icon{background:url(icons.png) no-repeat 0 -984px!important}.cke_rtl .cke_button__numberedlist_icon,.cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon{background:url(icons.png) no-repeat 0 -1008px!important}.cke_ltr .cke_button__numberedlist_icon{background:url(icons.png) no-repeat 0 -1032px!important}.cke_rtl .cke_button__outdent_icon,.cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon{background:url(icons.png) no-repeat 0 -1056px!important}.cke_ltr .cke_button__outdent_icon{background:url(icons.png) no-repeat 0 -1080px!important}.cke_rtl .cke_button__pagebreak_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon{background:url(icons.png) no-repeat 0 -1104px!important}.cke_ltr .cke_button__pagebreak_icon{background:url(icons.png) no-repeat 0 -1128px!important}.cke_rtl .cke_button__paste_icon,.cke_mixed_dir_content .cke_rtl .cke_button__paste_icon{background:url(icons.png) no-repeat 0 -1152px!important}.cke_ltr .cke_button__paste_icon{background:url(icons.png) no-repeat 0 -1176px!important}.cke_rtl .cke_button__pastefromword_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon{background:url(icons.png) no-repeat 0 -1200px!important}.cke_ltr .cke_button__pastefromword_icon{background:url(icons.png) no-repeat 0 -1224px!important}.cke_rtl .cke_button__pastetext_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon{background:url(icons.png) no-repeat 0 -1248px!important}.cke_ltr .cke_button__pastetext_icon{background:url(icons.png) no-repeat 0 -1272px!important}.cke_button__placeholder_icon{background:url(icons.png) no-repeat 0 -1296px!important}.cke_rtl .cke_button__preview_icon,.cke_mixed_dir_content .cke_rtl .cke_button__preview_icon{background:url(icons.png) no-repeat 0 -1320px!important}.cke_ltr .cke_button__preview_icon{background:url(icons.png) no-repeat 0 -1344px!important}.cke_button__print_icon{background:url(icons.png) no-repeat 0 -1368px!important}.cke_button__radio_icon{background:url(icons.png) no-repeat 0 -1392px!important}.cke_rtl .cke_button__redo_icon,.cke_mixed_dir_content .cke_rtl .cke_button__redo_icon{background:url(icons.png) no-repeat 0 -1416px!important}.cke_ltr .cke_button__redo_icon{background:url(icons.png) no-repeat 0 -1440px!important}.cke_button__removeformat_icon{background:url(icons.png) no-repeat 0 -1464px!important}.cke_button__replace_icon{background:url(icons.png) no-repeat 0 -1488px!important}.cke_button__save_icon{background:url(icons.png) no-repeat 0 -1512px!important}.cke_button__scayt_icon{background:url(icons.png) no-repeat 0 -1536px!important}.cke_rtl .cke_button__select_icon,.cke_mixed_dir_content .cke_rtl .cke_button__select_icon{background:url(icons.png) no-repeat 0 -1560px!important}.cke_ltr .cke_button__select_icon{background:url(icons.png) no-repeat 0 -1584px!important}.cke_button__selectall_icon{background:url(icons.png) no-repeat 0 -1608px!important}.cke_rtl .cke_button__showblocks_icon,.cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon{background:url(icons.png) no-repeat 0 -1632px!important}.cke_ltr .cke_button__showblocks_icon{background:url(icons.png) no-repeat 0 -1656px!important}.cke_button__smiley_icon{background:url(icons.png) no-repeat 0 -1680px!important}.cke_rtl .cke_button__source_icon,.cke_mixed_dir_content .cke_rtl .cke_button__source_icon{background:url(icons.png) no-repeat 0 -1704px!important}.cke_ltr .cke_button__source_icon{background:url(icons.png) no-repeat 0 -1728px!important}.cke_rtl .cke_button__sourcedialog_icon,.cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon{background:url(icons.png) no-repeat 0 -1752px!important}.cke_ltr .cke_button__sourcedialog_icon{background:url(icons.png) no-repeat 0 -1776px!important}.cke_button__specialchar_icon{background:url(icons.png) no-repeat 0 -1800px!important}.cke_button__spellchecker_icon{background:url(icons.png) no-repeat 0 -1824px!important}.cke_button__strike_icon{background:url(icons.png) no-repeat 0 -1848px!important}.cke_button__subscript_icon{background:url(icons.png) no-repeat 0 -1872px!important}.cke_button__superscript_icon{background:url(icons.png) no-repeat 0 -1896px!important}.cke_button__table_icon{background:url(icons.png) no-repeat 0 -1920px!important}.cke_rtl .cke_button__templates_icon,.cke_mixed_dir_content .cke_rtl .cke_button__templates_icon{background:url(icons.png) no-repeat 0 -1944px!important}.cke_ltr .cke_button__templates_icon{background:url(icons.png) no-repeat 0 -1968px!important}.cke_rtl .cke_button__textarea_icon,.cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon{background:url(icons.png) no-repeat 0 -1992px!important}.cke_ltr .cke_button__textarea_icon{background:url(icons.png) no-repeat 0 -2016px!important}.cke_button__textcolor_icon{background:url(icons.png) no-repeat 0 -2040px!important}.cke_rtl .cke_button__textfield_icon,.cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon{background:url(icons.png) no-repeat 0 -2064px!important}.cke_ltr .cke_button__textfield_icon{background:url(icons.png) no-repeat 0 -2088px!important}.cke_button__uicolor_icon{background:url(icons.png) no-repeat 0 -2112px!important}.cke_button__underline_icon{background:url(icons.png) no-repeat 0 -2136px!important}.cke_rtl .cke_button__undo_icon,.cke_mixed_dir_content .cke_rtl .cke_button__undo_icon{background:url(icons.png) no-repeat 0 -2160px!important}.cke_ltr .cke_button__undo_icon{background:url(icons.png) no-repeat 0 -2184px!important}.cke_button__unlink_icon{background:url(icons.png) no-repeat 0 -2208px!important}.cke_hidpi .cke_button__about_icon{background:url(icons_hidpi.png) no-repeat 0 -0px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__anchor_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon{background:url(icons_hidpi.png) no-repeat 0 -24px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon{background:url(icons_hidpi.png) no-repeat 0 -48px!important;background-size:16px!important}.cke_hidpi .cke_button__bgcolor_icon{background:url(icons_hidpi.png) no-repeat 0 -72px!important;background-size:16px!important}.cke_hidpi .cke_button__bidiltr_icon{background:url(icons_hidpi.png) no-repeat 0 -96px!important;background-size:16px!important}.cke_hidpi .cke_button__bidirtl_icon{background:url(icons_hidpi.png) no-repeat 0 -120px!important;background-size:16px!important}.cke_hidpi .cke_button__blockquote_icon{background:url(icons_hidpi.png) no-repeat 0 -144px!important;background-size:16px!important}.cke_hidpi .cke_button__bold_icon{background:url(icons_hidpi.png) no-repeat 0 -168px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -192px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -216px!important;background-size:16px!important}.cke_hidpi .cke_button__button_icon{background:url(icons_hidpi.png) no-repeat 0 -240px!important;background-size:16px!important}.cke_hidpi .cke_button__checkbox_icon{background:url(icons_hidpi.png) no-repeat 0 -264px!important;background-size:16px!important}.cke_hidpi .cke_button__codesnippet_icon{background:url(icons_hidpi.png) no-repeat 0 -288px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__copy_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon{background:url(icons_hidpi.png) no-repeat 0 -312px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon{background:url(icons_hidpi.png) no-repeat 0 -336px!important;background-size:16px!important}.cke_hidpi .cke_button__creatediv_icon{background:url(icons_hidpi.png) no-repeat 0 -360px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__cut_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon{background:url(icons_hidpi.png) no-repeat 0 -384px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon{background:url(icons_hidpi.png) no-repeat 0 -408px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__docprops_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__docprops_icon{background:url(icons_hidpi.png) no-repeat 0 -432px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__docprops_icon,.cke_ltr.cke_hidpi .cke_button__docprops_icon{background:url(icons_hidpi.png) no-repeat 0 -456px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__find_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon{background:url(icons_hidpi.png) no-repeat 0 -480px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon{background:url(icons_hidpi.png) no-repeat 0 -504px!important;background-size:16px!important}.cke_hidpi .cke_button__flash_icon{background:url(icons_hidpi.png) no-repeat 0 -528px!important;background-size:16px!important}.cke_hidpi .cke_button__form_icon{background:url(icons_hidpi.png) no-repeat 0 -552px!important;background-size:16px!important}.cke_hidpi .cke_button__hiddenfield_icon{background:url(icons_hidpi.png) no-repeat 0 -576px!important;background-size:16px!important}.cke_hidpi .cke_button__horizontalrule_icon{background:url(icons_hidpi.png) no-repeat 0 -600px!important;background-size:16px!important}.cke_hidpi .cke_button__iframe_icon{background:url(icons_hidpi.png) no-repeat 0 -624px!important;background-size:16px!important}.cke_hidpi .cke_button__image_icon{background:url(icons_hidpi.png) no-repeat 0 -648px!important;background-size:16px!important}.cke_hidpi .cke_button__imagebutton_icon{background:url(icons_hidpi.png) no-repeat 0 -672px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__indent_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon{background:url(icons_hidpi.png) no-repeat 0 -696px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon{background:url(icons_hidpi.png) no-repeat 0 -720px!important;background-size:16px!important}.cke_hidpi .cke_button__italic_icon{background:url(icons_hidpi.png) no-repeat 0 -744px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyblock_icon{background:url(icons_hidpi.png) no-repeat 0 -768px!important;background-size:16px!important}.cke_hidpi .cke_button__justifycenter_icon{background:url(icons_hidpi.png) no-repeat 0 -792px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyleft_icon{background:url(icons_hidpi.png) no-repeat 0 -816px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyright_icon{background:url(icons_hidpi.png) no-repeat 0 -840px!important;background-size:16px!important}.cke_hidpi .cke_button__language_icon{background:url(icons_hidpi.png) no-repeat 0 -864px!important;background-size:16px!important}.cke_hidpi .cke_button__link_icon{background:url(icons_hidpi.png) no-repeat 0 -888px!important;background-size:16px!important}.cke_hidpi .cke_button__mathjax_icon{background:url(icons_hidpi.png) no-repeat 0 -912px!important;background-size:16px!important}.cke_hidpi .cke_button__maximize_icon{background:url(icons_hidpi.png) no-repeat 0 -936px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__newpage_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon{background:url(icons_hidpi.png) no-repeat 0 -960px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__newpage_icon,.cke_ltr.cke_hidpi .cke_button__newpage_icon{background:url(icons_hidpi.png) no-repeat 0 -984px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -1008px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -1032px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__outdent_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon{background:url(icons_hidpi.png) no-repeat 0 -1056px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon{background:url(icons_hidpi.png) no-repeat 0 -1080px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon{background:url(icons_hidpi.png) no-repeat 0 -1104px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon{background:url(icons_hidpi.png) no-repeat 0 -1128px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__paste_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon{background:url(icons_hidpi.png) no-repeat 0 -1152px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon{background:url(icons_hidpi.png) no-repeat 0 -1176px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon{background:url(icons_hidpi.png) no-repeat 0 -1200px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon{background:url(icons_hidpi.png) no-repeat 0 -1224px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pastetext_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon{background:url(icons_hidpi.png) no-repeat 0 -1248px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon{background:url(icons_hidpi.png) no-repeat 0 -1272px!important;background-size:16px!important}.cke_hidpi .cke_button__placeholder_icon{background:url(icons_hidpi.png) no-repeat 0 -1296px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__preview_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon{background:url(icons_hidpi.png) no-repeat 0 -1320px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon{background:url(icons_hidpi.png) no-repeat 0 -1344px!important;background-size:16px!important}.cke_hidpi .cke_button__print_icon{background:url(icons_hidpi.png) no-repeat 0 -1368px!important;background-size:16px!important}.cke_hidpi .cke_button__radio_icon{background:url(icons_hidpi.png) no-repeat 0 -1392px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__redo_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon{background:url(icons_hidpi.png) no-repeat 0 -1416px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon{background:url(icons_hidpi.png) no-repeat 0 -1440px!important;background-size:16px!important}.cke_hidpi .cke_button__removeformat_icon{background:url(icons_hidpi.png) no-repeat 0 -1464px!important;background-size:16px!important}.cke_hidpi .cke_button__replace_icon{background:url(icons_hidpi.png) no-repeat 0 -1488px!important;background-size:16px!important}.cke_hidpi .cke_button__save_icon{background:url(icons_hidpi.png) no-repeat 0 -1512px!important;background-size:16px!important}.cke_hidpi .cke_button__scayt_icon{background:url(icons_hidpi.png) no-repeat 0 -1536px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__select_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__select_icon{background:url(icons_hidpi.png) no-repeat 0 -1560px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__select_icon,.cke_ltr.cke_hidpi .cke_button__select_icon{background:url(icons_hidpi.png) no-repeat 0 -1584px!important;background-size:16px!important}.cke_hidpi .cke_button__selectall_icon{background:url(icons_hidpi.png) no-repeat 0 -1608px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__showblocks_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon{background:url(icons_hidpi.png) no-repeat 0 -1632px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon{background:url(icons_hidpi.png) no-repeat 0 -1656px!important;background-size:16px!important}.cke_hidpi .cke_button__smiley_icon{background:url(icons_hidpi.png) no-repeat 0 -1680px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__source_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon{background:url(icons_hidpi.png) no-repeat 0 -1704px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon{background:url(icons_hidpi.png) no-repeat 0 -1728px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__sourcedialog_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon{background:url(icons_hidpi.png) no-repeat 0 -1752px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__sourcedialog_icon,.cke_ltr.cke_hidpi .cke_button__sourcedialog_icon{background:url(icons_hidpi.png) no-repeat 0 -1776px!important;background-size:16px!important}.cke_hidpi .cke_button__specialchar_icon{background:url(icons_hidpi.png) no-repeat 0 -1800px!important;background-size:16px!important}.cke_hidpi .cke_button__spellchecker_icon{background:url(icons_hidpi.png) no-repeat 0 -1824px!important;background-size:16px!important}.cke_hidpi .cke_button__strike_icon{background:url(icons_hidpi.png) no-repeat 0 -1848px!important;background-size:16px!important}.cke_hidpi .cke_button__subscript_icon{background:url(icons_hidpi.png) no-repeat 0 -1872px!important;background-size:16px!important}.cke_hidpi .cke_button__superscript_icon{background:url(icons_hidpi.png) no-repeat 0 -1896px!important;background-size:16px!important}.cke_hidpi .cke_button__table_icon{background:url(icons_hidpi.png) no-repeat 0 -1920px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__templates_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon{background:url(icons_hidpi.png) no-repeat 0 -1944px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon{background:url(icons_hidpi.png) no-repeat 0 -1968px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__textarea_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon{background:url(icons_hidpi.png) no-repeat 0 -1992px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__textarea_icon,.cke_ltr.cke_hidpi .cke_button__textarea_icon{background:url(icons_hidpi.png) no-repeat 0 -2016px!important;background-size:16px!important}.cke_hidpi .cke_button__textcolor_icon{background:url(icons_hidpi.png) no-repeat 0 -2040px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__textfield_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon{background:url(icons_hidpi.png) no-repeat 0 -2064px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__textfield_icon,.cke_ltr.cke_hidpi .cke_button__textfield_icon{background:url(icons_hidpi.png) no-repeat 0 -2088px!important;background-size:16px!important}.cke_hidpi .cke_button__uicolor_icon{background:url(icons_hidpi.png) no-repeat 0 -2112px!important;background-size:16px!important}.cke_hidpi .cke_button__underline_icon{background:url(icons_hidpi.png) no-repeat 0 -2136px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__undo_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon{background:url(icons_hidpi.png) no-repeat 0 -2160px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon{background:url(icons_hidpi.png) no-repeat 0 -2184px!important;background-size:16px!important}.cke_hidpi .cke_button__unlink_icon{background:url(icons_hidpi.png) no-repeat 0 -2208px!important;background-size:16px!important}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_toolbox_collapser .cke_arrow{border-width:4px}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{border-width:3px}.cke_toolbox_collapser .cke_arrow{margin-top:0} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_iequirks.css b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_iequirks.css new file mode 100644 index 000000000..aafa67c3d --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/editor_iequirks.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border:1px solid #0d0d0d;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.15) inset;background:#1f1f1f;background-image:-webkit-gradient(linear,left top,left bottom,from(#333),to(#1f1f1f));background-image:-moz-linear-gradient(top,#333,#1f1f1f);background-image:-webkit-linear-gradient(top,#333,#1f1f1f);background-image:-o-linear-gradient(top,#333,#1f1f1f);background-image:-ms-linear-gradient(top,#333,#1f1f1f);background-image:linear-gradient(top,#333,#1f1f1f);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#333333',endColorstr='#1f1f1f')}.cke_float .cke_top{border-color:#000}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#f2f2f2;text-shadow:0 1px 0 #000;border:1px solid #0d0d0d;border-bottom-color:#060606;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 0 8px rgba(0,0,0,.75) inset;-webkit-box-shadow:0 0 8px rgba(0,0,0,.75) inset;box-shadow:0 0 8px rgba(0,0,0,.75) inset;background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#262626),to(#1a1a1a));background-image:-moz-linear-gradient(top,#262626,#1a1a1a);background-image:-webkit-linear-gradient(top,#262626,#1a1a1a);background-image:-o-linear-gradient(top,#262626,#1a1a1a);background-image:-ms-linear-gradient(top,#262626,#1a1a1a);background-image:linear-gradient(top,#262626,#1a1a1a);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#262626',endColorstr='#1a1a1a')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#666),to(#4c4c4c));background-image:-moz-linear-gradient(top,#666,#4c4c4c);background-image:-webkit-linear-gradient(top,#666,#4c4c4c);background-image:-o-linear-gradient(top,#666,#4c4c4c);background-image:-ms-linear-gradient(top,#666,#4c4c4c);background-image:linear-gradient(top,#666,#4c4c4c);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#666666',endColorstr='#4c4c4c')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#e5e5e5;text-shadow:0 1px 0 #000}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #e6e6e6}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#272727;background-color:rgba(0,0,0,.5);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 0 rgba(255,255,255,.1);-moz-box-shadow:1px 0 0 rgba(255,255,255,.1);box-shadow:1px 0 0 rgba(255,255,255,.1)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 0 rgba(255,255,255,.1);-moz-box-shadow:-1px 0 0 rgba(255,255,255,.1);box-shadow:-1px 0 0 rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #e5e5e5;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#e5e5e5}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#262626;padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#444}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #070707;border-bottom-color:#060606;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.1),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#404040;background-image:-webkit-gradient(linear,left top,left bottom,from(#595959),to(#404040));background-image:-moz-linear-gradient(top,#595959,#404040);background-image:-webkit-linear-gradient(top,#595959,#404040);background-image:-o-linear-gradient(top,#595959,#404040);background-image:-ms-linear-gradient(top,#595959,#404040);background-image:linear-gradient(top,#595959,#404040);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#595959',endColorstr='#404040')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#4c4c4c;background-image:-webkit-gradient(linear,left top,left bottom,from(#666),to(#4c4c4c));background-image:-moz-linear-gradient(top,#666,#4c4c4c);background-image:-webkit-linear-gradient(top,#666,#4c4c4c);background-image:-o-linear-gradient(top,#666,#4c4c4c);background-image:-ms-linear-gradient(top,#666,#4c4c4c);background-image:linear-gradient(top,#666,#4c4c4c);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#666666',endColorstr='#4c4c4c');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{-moz-box-shadow:0 0 8px rgba(0,0,0,.75) inset;-webkit-box-shadow:0 0 8px rgba(0,0,0,.75) inset;box-shadow:0 0 8px rgba(0,0,0,.75) inset;background:#1a1a1a;background-image:-webkit-gradient(linear,left top,left bottom,from(#262626),to(#1a1a1a));background-image:-moz-linear-gradient(top,#262626,#1a1a1a);background-image:-webkit-linear-gradient(top,#262626,#1a1a1a);background-image:-o-linear-gradient(top,#262626,#1a1a1a);background-image:-ms-linear-gradient(top,#262626,#1a1a1a);background-image:linear-gradient(top,#262626,#1a1a1a);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#262626',endColorstr='#1a1a1a')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#e5e5e5;text-shadow:0 1px 0 #000;width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #e6e6e6}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}.cke_button__about_icon{background:url(icons.png) no-repeat 0 -0px!important}.cke_rtl .cke_button__anchor_icon,.cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon{background:url(icons.png) no-repeat 0 -24px!important}.cke_ltr .cke_button__anchor_icon{background:url(icons.png) no-repeat 0 -48px!important}.cke_button__bgcolor_icon{background:url(icons.png) no-repeat 0 -72px!important}.cke_button__bidiltr_icon{background:url(icons.png) no-repeat 0 -96px!important}.cke_button__bidirtl_icon{background:url(icons.png) no-repeat 0 -120px!important}.cke_button__blockquote_icon{background:url(icons.png) no-repeat 0 -144px!important}.cke_button__bold_icon{background:url(icons.png) no-repeat 0 -168px!important}.cke_rtl .cke_button__bulletedlist_icon,.cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon{background:url(icons.png) no-repeat 0 -192px!important}.cke_ltr .cke_button__bulletedlist_icon{background:url(icons.png) no-repeat 0 -216px!important}.cke_button__button_icon{background:url(icons.png) no-repeat 0 -240px!important}.cke_button__checkbox_icon{background:url(icons.png) no-repeat 0 -264px!important}.cke_button__codesnippet_icon{background:url(icons.png) no-repeat 0 -288px!important}.cke_rtl .cke_button__copy_icon,.cke_mixed_dir_content .cke_rtl .cke_button__copy_icon{background:url(icons.png) no-repeat 0 -312px!important}.cke_ltr .cke_button__copy_icon{background:url(icons.png) no-repeat 0 -336px!important}.cke_button__creatediv_icon{background:url(icons.png) no-repeat 0 -360px!important}.cke_rtl .cke_button__cut_icon,.cke_mixed_dir_content .cke_rtl .cke_button__cut_icon{background:url(icons.png) no-repeat 0 -384px!important}.cke_ltr .cke_button__cut_icon{background:url(icons.png) no-repeat 0 -408px!important}.cke_rtl .cke_button__docprops_icon,.cke_mixed_dir_content .cke_rtl .cke_button__docprops_icon{background:url(icons.png) no-repeat 0 -432px!important}.cke_ltr .cke_button__docprops_icon{background:url(icons.png) no-repeat 0 -456px!important}.cke_rtl .cke_button__find_icon,.cke_mixed_dir_content .cke_rtl .cke_button__find_icon{background:url(icons.png) no-repeat 0 -480px!important}.cke_ltr .cke_button__find_icon{background:url(icons.png) no-repeat 0 -504px!important}.cke_button__flash_icon{background:url(icons.png) no-repeat 0 -528px!important}.cke_button__form_icon{background:url(icons.png) no-repeat 0 -552px!important}.cke_button__hiddenfield_icon{background:url(icons.png) no-repeat 0 -576px!important}.cke_button__horizontalrule_icon{background:url(icons.png) no-repeat 0 -600px!important}.cke_button__iframe_icon{background:url(icons.png) no-repeat 0 -624px!important}.cke_button__image_icon{background:url(icons.png) no-repeat 0 -648px!important}.cke_button__imagebutton_icon{background:url(icons.png) no-repeat 0 -672px!important}.cke_rtl .cke_button__indent_icon,.cke_mixed_dir_content .cke_rtl .cke_button__indent_icon{background:url(icons.png) no-repeat 0 -696px!important}.cke_ltr .cke_button__indent_icon{background:url(icons.png) no-repeat 0 -720px!important}.cke_button__italic_icon{background:url(icons.png) no-repeat 0 -744px!important}.cke_button__justifyblock_icon{background:url(icons.png) no-repeat 0 -768px!important}.cke_button__justifycenter_icon{background:url(icons.png) no-repeat 0 -792px!important}.cke_button__justifyleft_icon{background:url(icons.png) no-repeat 0 -816px!important}.cke_button__justifyright_icon{background:url(icons.png) no-repeat 0 -840px!important}.cke_button__language_icon{background:url(icons.png) no-repeat 0 -864px!important}.cke_button__link_icon{background:url(icons.png) no-repeat 0 -888px!important}.cke_button__mathjax_icon{background:url(icons.png) no-repeat 0 -912px!important}.cke_button__maximize_icon{background:url(icons.png) no-repeat 0 -936px!important}.cke_rtl .cke_button__newpage_icon,.cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon{background:url(icons.png) no-repeat 0 -960px!important}.cke_ltr .cke_button__newpage_icon{background:url(icons.png) no-repeat 0 -984px!important}.cke_rtl .cke_button__numberedlist_icon,.cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon{background:url(icons.png) no-repeat 0 -1008px!important}.cke_ltr .cke_button__numberedlist_icon{background:url(icons.png) no-repeat 0 -1032px!important}.cke_rtl .cke_button__outdent_icon,.cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon{background:url(icons.png) no-repeat 0 -1056px!important}.cke_ltr .cke_button__outdent_icon{background:url(icons.png) no-repeat 0 -1080px!important}.cke_rtl .cke_button__pagebreak_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon{background:url(icons.png) no-repeat 0 -1104px!important}.cke_ltr .cke_button__pagebreak_icon{background:url(icons.png) no-repeat 0 -1128px!important}.cke_rtl .cke_button__paste_icon,.cke_mixed_dir_content .cke_rtl .cke_button__paste_icon{background:url(icons.png) no-repeat 0 -1152px!important}.cke_ltr .cke_button__paste_icon{background:url(icons.png) no-repeat 0 -1176px!important}.cke_rtl .cke_button__pastefromword_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon{background:url(icons.png) no-repeat 0 -1200px!important}.cke_ltr .cke_button__pastefromword_icon{background:url(icons.png) no-repeat 0 -1224px!important}.cke_rtl .cke_button__pastetext_icon,.cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon{background:url(icons.png) no-repeat 0 -1248px!important}.cke_ltr .cke_button__pastetext_icon{background:url(icons.png) no-repeat 0 -1272px!important}.cke_button__placeholder_icon{background:url(icons.png) no-repeat 0 -1296px!important}.cke_rtl .cke_button__preview_icon,.cke_mixed_dir_content .cke_rtl .cke_button__preview_icon{background:url(icons.png) no-repeat 0 -1320px!important}.cke_ltr .cke_button__preview_icon{background:url(icons.png) no-repeat 0 -1344px!important}.cke_button__print_icon{background:url(icons.png) no-repeat 0 -1368px!important}.cke_button__radio_icon{background:url(icons.png) no-repeat 0 -1392px!important}.cke_rtl .cke_button__redo_icon,.cke_mixed_dir_content .cke_rtl .cke_button__redo_icon{background:url(icons.png) no-repeat 0 -1416px!important}.cke_ltr .cke_button__redo_icon{background:url(icons.png) no-repeat 0 -1440px!important}.cke_button__removeformat_icon{background:url(icons.png) no-repeat 0 -1464px!important}.cke_button__replace_icon{background:url(icons.png) no-repeat 0 -1488px!important}.cke_button__save_icon{background:url(icons.png) no-repeat 0 -1512px!important}.cke_button__scayt_icon{background:url(icons.png) no-repeat 0 -1536px!important}.cke_rtl .cke_button__select_icon,.cke_mixed_dir_content .cke_rtl .cke_button__select_icon{background:url(icons.png) no-repeat 0 -1560px!important}.cke_ltr .cke_button__select_icon{background:url(icons.png) no-repeat 0 -1584px!important}.cke_button__selectall_icon{background:url(icons.png) no-repeat 0 -1608px!important}.cke_rtl .cke_button__showblocks_icon,.cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon{background:url(icons.png) no-repeat 0 -1632px!important}.cke_ltr .cke_button__showblocks_icon{background:url(icons.png) no-repeat 0 -1656px!important}.cke_button__smiley_icon{background:url(icons.png) no-repeat 0 -1680px!important}.cke_rtl .cke_button__source_icon,.cke_mixed_dir_content .cke_rtl .cke_button__source_icon{background:url(icons.png) no-repeat 0 -1704px!important}.cke_ltr .cke_button__source_icon{background:url(icons.png) no-repeat 0 -1728px!important}.cke_rtl .cke_button__sourcedialog_icon,.cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon{background:url(icons.png) no-repeat 0 -1752px!important}.cke_ltr .cke_button__sourcedialog_icon{background:url(icons.png) no-repeat 0 -1776px!important}.cke_button__specialchar_icon{background:url(icons.png) no-repeat 0 -1800px!important}.cke_button__spellchecker_icon{background:url(icons.png) no-repeat 0 -1824px!important}.cke_button__strike_icon{background:url(icons.png) no-repeat 0 -1848px!important}.cke_button__subscript_icon{background:url(icons.png) no-repeat 0 -1872px!important}.cke_button__superscript_icon{background:url(icons.png) no-repeat 0 -1896px!important}.cke_button__table_icon{background:url(icons.png) no-repeat 0 -1920px!important}.cke_rtl .cke_button__templates_icon,.cke_mixed_dir_content .cke_rtl .cke_button__templates_icon{background:url(icons.png) no-repeat 0 -1944px!important}.cke_ltr .cke_button__templates_icon{background:url(icons.png) no-repeat 0 -1968px!important}.cke_rtl .cke_button__textarea_icon,.cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon{background:url(icons.png) no-repeat 0 -1992px!important}.cke_ltr .cke_button__textarea_icon{background:url(icons.png) no-repeat 0 -2016px!important}.cke_button__textcolor_icon{background:url(icons.png) no-repeat 0 -2040px!important}.cke_rtl .cke_button__textfield_icon,.cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon{background:url(icons.png) no-repeat 0 -2064px!important}.cke_ltr .cke_button__textfield_icon{background:url(icons.png) no-repeat 0 -2088px!important}.cke_button__uicolor_icon{background:url(icons.png) no-repeat 0 -2112px!important}.cke_button__underline_icon{background:url(icons.png) no-repeat 0 -2136px!important}.cke_rtl .cke_button__undo_icon,.cke_mixed_dir_content .cke_rtl .cke_button__undo_icon{background:url(icons.png) no-repeat 0 -2160px!important}.cke_ltr .cke_button__undo_icon{background:url(icons.png) no-repeat 0 -2184px!important}.cke_button__unlink_icon{background:url(icons.png) no-repeat 0 -2208px!important}.cke_hidpi .cke_button__about_icon{background:url(icons_hidpi.png) no-repeat 0 -0px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__anchor_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon{background:url(icons_hidpi.png) no-repeat 0 -24px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon{background:url(icons_hidpi.png) no-repeat 0 -48px!important;background-size:16px!important}.cke_hidpi .cke_button__bgcolor_icon{background:url(icons_hidpi.png) no-repeat 0 -72px!important;background-size:16px!important}.cke_hidpi .cke_button__bidiltr_icon{background:url(icons_hidpi.png) no-repeat 0 -96px!important;background-size:16px!important}.cke_hidpi .cke_button__bidirtl_icon{background:url(icons_hidpi.png) no-repeat 0 -120px!important;background-size:16px!important}.cke_hidpi .cke_button__blockquote_icon{background:url(icons_hidpi.png) no-repeat 0 -144px!important;background-size:16px!important}.cke_hidpi .cke_button__bold_icon{background:url(icons_hidpi.png) no-repeat 0 -168px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -192px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -216px!important;background-size:16px!important}.cke_hidpi .cke_button__button_icon{background:url(icons_hidpi.png) no-repeat 0 -240px!important;background-size:16px!important}.cke_hidpi .cke_button__checkbox_icon{background:url(icons_hidpi.png) no-repeat 0 -264px!important;background-size:16px!important}.cke_hidpi .cke_button__codesnippet_icon{background:url(icons_hidpi.png) no-repeat 0 -288px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__copy_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon{background:url(icons_hidpi.png) no-repeat 0 -312px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon{background:url(icons_hidpi.png) no-repeat 0 -336px!important;background-size:16px!important}.cke_hidpi .cke_button__creatediv_icon{background:url(icons_hidpi.png) no-repeat 0 -360px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__cut_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon{background:url(icons_hidpi.png) no-repeat 0 -384px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon{background:url(icons_hidpi.png) no-repeat 0 -408px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__docprops_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__docprops_icon{background:url(icons_hidpi.png) no-repeat 0 -432px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__docprops_icon,.cke_ltr.cke_hidpi .cke_button__docprops_icon{background:url(icons_hidpi.png) no-repeat 0 -456px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__find_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon{background:url(icons_hidpi.png) no-repeat 0 -480px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon{background:url(icons_hidpi.png) no-repeat 0 -504px!important;background-size:16px!important}.cke_hidpi .cke_button__flash_icon{background:url(icons_hidpi.png) no-repeat 0 -528px!important;background-size:16px!important}.cke_hidpi .cke_button__form_icon{background:url(icons_hidpi.png) no-repeat 0 -552px!important;background-size:16px!important}.cke_hidpi .cke_button__hiddenfield_icon{background:url(icons_hidpi.png) no-repeat 0 -576px!important;background-size:16px!important}.cke_hidpi .cke_button__horizontalrule_icon{background:url(icons_hidpi.png) no-repeat 0 -600px!important;background-size:16px!important}.cke_hidpi .cke_button__iframe_icon{background:url(icons_hidpi.png) no-repeat 0 -624px!important;background-size:16px!important}.cke_hidpi .cke_button__image_icon{background:url(icons_hidpi.png) no-repeat 0 -648px!important;background-size:16px!important}.cke_hidpi .cke_button__imagebutton_icon{background:url(icons_hidpi.png) no-repeat 0 -672px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__indent_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon{background:url(icons_hidpi.png) no-repeat 0 -696px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon{background:url(icons_hidpi.png) no-repeat 0 -720px!important;background-size:16px!important}.cke_hidpi .cke_button__italic_icon{background:url(icons_hidpi.png) no-repeat 0 -744px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyblock_icon{background:url(icons_hidpi.png) no-repeat 0 -768px!important;background-size:16px!important}.cke_hidpi .cke_button__justifycenter_icon{background:url(icons_hidpi.png) no-repeat 0 -792px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyleft_icon{background:url(icons_hidpi.png) no-repeat 0 -816px!important;background-size:16px!important}.cke_hidpi .cke_button__justifyright_icon{background:url(icons_hidpi.png) no-repeat 0 -840px!important;background-size:16px!important}.cke_hidpi .cke_button__language_icon{background:url(icons_hidpi.png) no-repeat 0 -864px!important;background-size:16px!important}.cke_hidpi .cke_button__link_icon{background:url(icons_hidpi.png) no-repeat 0 -888px!important;background-size:16px!important}.cke_hidpi .cke_button__mathjax_icon{background:url(icons_hidpi.png) no-repeat 0 -912px!important;background-size:16px!important}.cke_hidpi .cke_button__maximize_icon{background:url(icons_hidpi.png) no-repeat 0 -936px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__newpage_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon{background:url(icons_hidpi.png) no-repeat 0 -960px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__newpage_icon,.cke_ltr.cke_hidpi .cke_button__newpage_icon{background:url(icons_hidpi.png) no-repeat 0 -984px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -1008px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon{background:url(icons_hidpi.png) no-repeat 0 -1032px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__outdent_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon{background:url(icons_hidpi.png) no-repeat 0 -1056px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon{background:url(icons_hidpi.png) no-repeat 0 -1080px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon{background:url(icons_hidpi.png) no-repeat 0 -1104px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon{background:url(icons_hidpi.png) no-repeat 0 -1128px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__paste_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon{background:url(icons_hidpi.png) no-repeat 0 -1152px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon{background:url(icons_hidpi.png) no-repeat 0 -1176px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon{background:url(icons_hidpi.png) no-repeat 0 -1200px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon{background:url(icons_hidpi.png) no-repeat 0 -1224px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__pastetext_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon{background:url(icons_hidpi.png) no-repeat 0 -1248px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon{background:url(icons_hidpi.png) no-repeat 0 -1272px!important;background-size:16px!important}.cke_hidpi .cke_button__placeholder_icon{background:url(icons_hidpi.png) no-repeat 0 -1296px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__preview_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon{background:url(icons_hidpi.png) no-repeat 0 -1320px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon{background:url(icons_hidpi.png) no-repeat 0 -1344px!important;background-size:16px!important}.cke_hidpi .cke_button__print_icon{background:url(icons_hidpi.png) no-repeat 0 -1368px!important;background-size:16px!important}.cke_hidpi .cke_button__radio_icon{background:url(icons_hidpi.png) no-repeat 0 -1392px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__redo_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon{background:url(icons_hidpi.png) no-repeat 0 -1416px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon{background:url(icons_hidpi.png) no-repeat 0 -1440px!important;background-size:16px!important}.cke_hidpi .cke_button__removeformat_icon{background:url(icons_hidpi.png) no-repeat 0 -1464px!important;background-size:16px!important}.cke_hidpi .cke_button__replace_icon{background:url(icons_hidpi.png) no-repeat 0 -1488px!important;background-size:16px!important}.cke_hidpi .cke_button__save_icon{background:url(icons_hidpi.png) no-repeat 0 -1512px!important;background-size:16px!important}.cke_hidpi .cke_button__scayt_icon{background:url(icons_hidpi.png) no-repeat 0 -1536px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__select_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__select_icon{background:url(icons_hidpi.png) no-repeat 0 -1560px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__select_icon,.cke_ltr.cke_hidpi .cke_button__select_icon{background:url(icons_hidpi.png) no-repeat 0 -1584px!important;background-size:16px!important}.cke_hidpi .cke_button__selectall_icon{background:url(icons_hidpi.png) no-repeat 0 -1608px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__showblocks_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon{background:url(icons_hidpi.png) no-repeat 0 -1632px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon{background:url(icons_hidpi.png) no-repeat 0 -1656px!important;background-size:16px!important}.cke_hidpi .cke_button__smiley_icon{background:url(icons_hidpi.png) no-repeat 0 -1680px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__source_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon{background:url(icons_hidpi.png) no-repeat 0 -1704px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon{background:url(icons_hidpi.png) no-repeat 0 -1728px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__sourcedialog_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__sourcedialog_icon{background:url(icons_hidpi.png) no-repeat 0 -1752px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__sourcedialog_icon,.cke_ltr.cke_hidpi .cke_button__sourcedialog_icon{background:url(icons_hidpi.png) no-repeat 0 -1776px!important;background-size:16px!important}.cke_hidpi .cke_button__specialchar_icon{background:url(icons_hidpi.png) no-repeat 0 -1800px!important;background-size:16px!important}.cke_hidpi .cke_button__spellchecker_icon{background:url(icons_hidpi.png) no-repeat 0 -1824px!important;background-size:16px!important}.cke_hidpi .cke_button__strike_icon{background:url(icons_hidpi.png) no-repeat 0 -1848px!important;background-size:16px!important}.cke_hidpi .cke_button__subscript_icon{background:url(icons_hidpi.png) no-repeat 0 -1872px!important;background-size:16px!important}.cke_hidpi .cke_button__superscript_icon{background:url(icons_hidpi.png) no-repeat 0 -1896px!important;background-size:16px!important}.cke_hidpi .cke_button__table_icon{background:url(icons_hidpi.png) no-repeat 0 -1920px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__templates_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon{background:url(icons_hidpi.png) no-repeat 0 -1944px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon{background:url(icons_hidpi.png) no-repeat 0 -1968px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__textarea_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon{background:url(icons_hidpi.png) no-repeat 0 -1992px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__textarea_icon,.cke_ltr.cke_hidpi .cke_button__textarea_icon{background:url(icons_hidpi.png) no-repeat 0 -2016px!important;background-size:16px!important}.cke_hidpi .cke_button__textcolor_icon{background:url(icons_hidpi.png) no-repeat 0 -2040px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__textfield_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon{background:url(icons_hidpi.png) no-repeat 0 -2064px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__textfield_icon,.cke_ltr.cke_hidpi .cke_button__textfield_icon{background:url(icons_hidpi.png) no-repeat 0 -2088px!important;background-size:16px!important}.cke_hidpi .cke_button__uicolor_icon{background:url(icons_hidpi.png) no-repeat 0 -2112px!important;background-size:16px!important}.cke_hidpi .cke_button__underline_icon{background:url(icons_hidpi.png) no-repeat 0 -2136px!important;background-size:16px!important}.cke_rtl.cke_hidpi .cke_button__undo_icon,.cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon{background:url(icons_hidpi.png) no-repeat 0 -2160px!important;background-size:16px!important}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon{background:url(icons_hidpi.png) no-repeat 0 -2184px!important;background-size:16px!important}.cke_hidpi .cke_button__unlink_icon{background:url(icons_hidpi.png) no-repeat 0 -2208px!important;background-size:16px!important}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_top,.cke_contents,.cke_bottom{width:100%}.cke_button_arrow{font-size:0}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_button,.cke_rtl .cke_button *,.cke_rtl .cke_combo,.cke_rtl .cke_combo *,.cke_rtl .cke_path_item,.cke_rtl .cke_path_item *,.cke_rtl .cke_path_empty{float:none}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_combo_button,.cke_rtl .cke_combo_button *,.cke_rtl .cke_button,.cke_rtl .cke_button_icon,{display:inline-block;vertical-align:top}.cke_rtl .cke_button_icon{float:none}.cke_resizer{width:10px}.cke_source{white-space:normal}.cke_bottom{position:static}.cke_colorbox{font-size:0} \ No newline at end of file diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/icons.png b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/icons.png new file mode 100644 index 0000000000000000000000000000000000000000..c0b3ac8f26768197e44e4d741266f64618ff5dd6 GIT binary patch literal 22920 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 Qt^fc407*qoM6N<$g5NBiO8@`> literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/arrow.png b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..0d1eb39c6763770690d4cd6faf81503975a25f08 GIT binary patch literal 261 zcmeAS@N?(olHy`uVBq!ia0vp^Y(Ol>0V4T5^Y?)SlDyqr82*Fcg1yTp14TFsJR*x3 z7`TN&n2}-D90{Nxdx@v7EBhTTAs$Q7;?s#GK%q&VE{-7@=ig3J6RR&$neB-Qn+l0CXLLr>mdKI;Vst0B#;z A`2YX_ literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/close.png b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/close.png new file mode 100644 index 0000000000000000000000000000000000000000..900ae87edaa2821f0145b58cb4b273f8e15e3fa7 GIT binary patch literal 720 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6-E$sR$z z3=CCj3=9n|3=F@3LJcn%7)lKo7+xhXFj&oCU=S~uvn$XBD8ZKG?e4Eak-ar*6~{aLpYM2?<+?!PhX>V=hV-g`?7_-63U zv?+PZU9rMg#AhM@Lw5nS8GQ4Ymagb#60Bp)XMMlYd+xz46HQidxW4EQwEz3pD#Wk1 z@cx2w+v)Pp=TtZT-)yhawMa7gjUGqSXJrs88aVntky8JKuYO}_TD8h5x#xJH&+D(hmS)aUzHH+Dwd$`?U-Bu5 z$E#MoVrWU`^JAE!2{gYgFk)J$Ro`UGzR8i(LZ#XQHM$ltTC6T(WGLYeVEQ25eY8Jp z_17hrU(Q*U8Rb1`$+YK|*G=A5*~s}b*04^nxnWoEk^6wxw5PXi&L6b=e_2m)Lh4Vk z1FLTRy!|J!4`}Cvnc*x>91~SmdR+bzyZ!dxAN~ijwpJ;3J!*ej=56^r=CX+_L)+np z4FXQH&ZbRNIe9y7{r8s+s1ZQ^GQTCKyz_{cV?PA|=jX!f-RO zv$t;le=mWS<-69!`!B!zonartkDW1k`@JW9*>N||{(g>``RAX1ve<9*f8aRa?e%i= zB8@zTn%mlI7#~at`n5=di~B%2!y5sIRs6!Mj8onJxv)$Kw_NSwWJ?9znhg z3{`3j3=J&|48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6@fg!ItFh?!xdN1Q+aGJ{c&& zS>O>_47BY!2s1iq%&q|1z~$-U7!q;#?bP$$+TkL{_Ztg;&Q6QU5KmfIcu{8w%a?@< zFC2dz{L(Gz&9c?&yk49>)LQab{=+nW!K5wMvL^hBg$P`&PaF)w(Rx zK3r>R!1|q2y;PTE-pY=>uAjB_R@BZIKAS1$<6~lSGH1E1zN&TEq&I8UvT0sRmw#6U zk+YVqoV)Y+^XIo2DxxRcJ?){Q#MSg6bo0$8K9^e(CFW$#+N9!{-*xnnv3kYEh#ED| zOVXE3p1zhbneBV-X_2qHlHf(X_Tq@wbDNu+_Z~cWus{FCCmR;W3qY%XM8Xro^ezG(e=|J7HsE;A^c zF1lrMHrhJ9=VFD;yczT7_cQ*GW_ZcQ$;ZUgux)6BNLsG{`1R@2r&l*IpNqX9%hvEX!QjU%Ie zO(b~su@>CnmMM7G6g~0$bM-%U^}FKMci&yUcdzukc8#vDr%#`Lxp3ja`2XgOHFow7 zzgAra8m6T9(=F4#h+MkG+kKdq9L*? z_>o^@jGj42>#Sur4~2(?O=2)GHvYVJZi|ZNSGUE5%Ue#rbT*s)_sHXqOIBZ9rCXDm zn`=AMM{S*Ug4^PY;&X+13`16j22Oig0#sB}QDN~}fUz;?S5Ro^M1dmayvQ)_eO;?B z_x1Mnh8~kxbnyju-{V`^L0$`2tvd1fk2gd7gH=oOo8G(#4i5hGUjd1{hQcX^3#m`}pyrX5=*X zT@Po^o?YhLR_47RIYP6m=*O$8tFLdE$?G?Hf;ms~*YDr?Pi^`Ww=u%TPi^x4ocw(C z2R08i7))oM)mpX6jGc|`p1AAByOSqRwl6O$tFyAQ`o(OvePOWp2L?8Vo?kWl8rHo| zWw2yezN7w7B?Au=$IqI5{3WsaOh04~*zeetS}l~}S;6q-;VZ4&Te3>+0t`E>i+HVn zBr_bSXRbIf(SZA+Jg}%xEpd$~Nl7e8wMs5Z1yT$~28JfO24=bjmLZ0QR;C74hGyCZ qMpgy}L5CL1LD7(#pOTqYiK)TB1frp073XxI1_n=8KbLh*2~7Zy7dxE* literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/hidpi/lock-open.png b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/hidpi/lock-open.png new file mode 100644 index 0000000000000000000000000000000000000000..6f465a8b6879280702950622900aea80c3a94eb2 GIT binary patch literal 1107 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzmUKs7M+SzC{oH>NSwWJ?9znhg z3{`3j3=J&|48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6@fg!ItFh?!xdN1Q+aGJ{c&& zS>O>_47BY!2s1iq%&uTyU=Hi|?XRaqTidl?f9CTrpWaj=(H6h-@=H#K>(L=93JIy3Z?6CR z^N+csfK9kp;k^k#LM)Apd*ZdG+GR~iQDSW{DM-!9d2@E=%$eohOD`R~b0?-SKmWY6 zy!?I}Tid^W;o;%sOIi{o?wvb#ZtKK}6XS*6T%ORv`-L%|IiG>qLBF81py0!^U%#rh z#^|js+POw+YFAWr^zTLUE_r$}9RK>IQRo9l1y2s+erEgpoSZxH5fKpcml1U46NsIIdx8 z!pF1)jNzI`XPWi;Zn?_BP!iIVrfMyI`}S>6AnX))6m{rsq0I3P4i3c^Z{A#qdab_i zef^#L_y5Nlv#dFL_U!St#2znAVebO7YDJc1nTxjS@$vAaG=4}~Jj3)><3$CIj?H(L zv@DsjW$V`7YuEBT4)8QJbf?7gZ%z4kY0}2_0I!>09IFJ62zA_fWAE*tsX849o;`oQ zpMA!R85Ok^6+gNJl&*ah63n=AT3cJ&-p|*!mTe8=lg~f%)6>)KWu>G}9Xl#&FcN8h5%oj`vQR;=tjkHu>hG8}}E76&lSv6K4A~YFR^2 zSB#!{rJ36F)4pb1*_}*L*+DC>^j^Js)jH^uKBLd&J(4U3dlxTOezjM8wwl7yHQ6rf zUPpPY)6$72h(C0@$6{gxc~_wV0jU=W83ExpWeHS6ok zn>#HoZ@6{)cKoZ?ud7X`dX;WX`s}rI)7~9BDt1Tc*fGtUze32JL4su+)ASubZW}f+ zeQS_!;Pt!P_Vr$i*zxdmrR=rLCqEuGwXyxFZWbXGv`BmP0${FFEpd$~Nl7e8wMs5Z z1yT$~28JfO24=bjmLZ0QR;C74hGyCZMpgy}L5CL1LD7(#pOTqYiK)TB1frp073XxI O1_n=8KbLh*2~7ZaF6*fP literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/hidpi/lock.png b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/hidpi/lock.png new file mode 100644 index 0000000000000000000000000000000000000000..07b23818d43d1a707ff70515a96797def368716b GIT binary patch literal 1154 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzmUKs7M+SzC{oH>NSwWJ?9znhg z3{`3j3=J&|48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6@fg!ItFh?!xdN1Q+aGJ{c&& zS>O>_47BY!2s1iq%&uTyU~chraSVw#{C2v(hfKK4@%{N}BIQc2PKw2@^ybJ}oaD{Z zvf)Cp-p30K2_GJq-pJ0k{dz5?dON#!!9q@MC;q)To-b9m#YU=by17B^)uq0}lMIc| zeXx4}x2izR=k1v{IVM}$|2-&|yf^>-`_I+;?^iSb$^XA;;633>-=#_^DPO%IP zwP#~cJdz)D%J+Kdepy-B+HdDrqNkOf|Gek=y4PIC3zy{HzO*g(rA1#!YDQ$`9_4RRg~d6Ll0}+ z+5n9;CbQ4_S)4QRy_sS1Zu!J>lbCut@?17fKmD|5_0=kl1$+;_A9%es>~-SK7(MsP zjxOd58P5e5yxLV~D&pX>;%Zhu!wd!s21yI{glkz_-Ce%8HLQCb&bZ>aC3ExJvfmM2 zod(+<1A*feky)*Ko+i`Bi3)iok zORu>b+HlIUU0~7j-d&LbXYP9$eH1vhuwHzchCCsKgr9qh+Z|~t&ba1&)`uE$rckj%dI@U8fgkBXr_w()K$-+zaiW_qaI4v<#I$mg^ z`Sfm#-gXX#b+3)CmsaP+J=b*pv5)`uwnz_E%}?8v3Q9`8B&DQ0X`XlJWzt-~=SOem zd-^)Re*b>|l=IK^U+=Q35u81H+0OWtAz|CMZL4GY@LXEUlZip3;Mc2K{+s{hC;2e_ zU_PMF5Y=&~Ei>PVcX@ca|60?dEPnFq>b^XVKhR#(p7wIL6)=;kmbgZgq$HN4S|t~y z0x1R~149#C12bI%%Me3DD^mk2Lo;myBP#=gphFAhplHa=PsvQH#MEG50?|;higP+p O1B0ilpUXO@geCwSko(sF literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/hidpi/refresh.png b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/hidpi/refresh.png new file mode 100644 index 0000000000000000000000000000000000000000..53b610d47bcabbabcae90a0e45be02318a440d3a GIT binary patch literal 1694 zcmV;P24VS$P)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 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 literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/lock.png b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/lock.png new file mode 100644 index 0000000000000000000000000000000000000000..7c535df52921bd3593b8720484e5b90600415a5a GIT binary patch literal 723 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6-E$sR$z z3=CCj3=9n|3=F@3LJcn%7)lKo7+xhXFj&oCU=S~uvn$XBD8ZKG?e4Eak-aeC<_+w9v86373m-`>>IV|28_@M!SXC(J26 znlpF*;7&Pv{l%mF32PTPdY=$CSlZ3Xsy|C)`D6{I#R;4_FW+qTFW;qCs-^vo`^y81 zca=Zy{+<7v@n7-8`<9C|Ud>qcGw%A=?Q=fo&p!L?bAmy_f0y3JKbnGmosgJ(`)!!f zF_ooX4Er8;SFH&%x9CfjYAe)l*>Kt9?DESmb$l73rg&M;Z$v|P>o`Gw~kHTSYy zuuw61J?WE;y|9zR^{?p++6>kVOV_vM#K4$1PT&;~!nTe)bjnmBfa>Et75$ z&{(?R{`LVVs*ktsnJOnBFZaUXtof#tv| zp;^1{@&%pRzwKwb&*xCVRsr|hpKbC@q-wv|oL~LhuWX@|!qS%4yUIWR{4*Iy1)ZAQ zkS1F&VL_(UvBw{;7VZ2~RaaN1y3{3dn*LV{PK~Zd92ee}<>%bqm)O%7^oz-2&U%JG z5! literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/refresh.png b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/images/refresh.png new file mode 100644 index 0000000000000000000000000000000000000000..3c10f0673398a00d50e2d928242d2fbcedc9db06 GIT binary patch literal 886 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6-E$sR$z z3=CCj3=9n|3=F@3LJcn%7)lKo7+xhXFj&oCU=S~uvn$XBD8ZKG?e4pLrnsjBC#Q?fIAA z-u+!xn2=TSYNy@#|CRs#|Nm_BVSjRV_UfbC-cHZX&OVk|dENd)QeE9Xwu(EqZtdE% zd2{hkmxGxreAF&K|5&k(Q?aUOXH4()*L!ta4!kXUFWP;S-PhOmyJIiZn zh>4UhKQFH>^Dl9eY}wbi14*@AzLw5;sg`Lk#LzI5kKjrckdoUi00CoX{oX^mSvthcdl;Ej2RWGOM94p?*H5LydZY(0oMKZ?6#2ZzQey|m4FFTwZt`|BqgyV)hf9t6-Y4{85o-A8kp%CScVuHSs9sI unHp*v7+Dz@q%wWFgQ6ifKP5A*5>tbT2}DEJ+0;m&1_n=8KbLh*2~7aIQFZ|U literal 0 HcmV?d00001 diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/readme.md b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/readme.md new file mode 100644 index 000000000..1b48dd25c --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/readme.md @@ -0,0 +1,51 @@ +"Moono" Skin +==================== + +This skin has been chosen for the **default skin** of CKEditor 4.x, elected from the CKEditor +[skin contest](http://ckeditor.com/blog/new_ckeditor_4_skin) and further shaped by +the CKEditor team. "Moono" is maintained by the core developers. + +For more information about skins, please check the [CKEditor Skin SDK](http://docs.cksource.com/CKEditor_4.x/Skin_SDK) +documentation. + +Features +------------------- +"Moono" is a monochromatic skin, which offers a modern look coupled with gradients and transparency. +It comes with the following features: + +- Chameleon feature with brightness, +- high-contrast compatibility, +- graphics source provided in SVG. + +Directory Structure +------------------- + +CSS parts: +- **editor.css**: the main CSS file. It's simply loading several other files, for easier maintenance, +- **mainui.css**: the file contains styles of entire editor outline structures, +- **toolbar.css**: the file contains styles of the editor toolbar space (top), +- **richcombo.css**: the file contains styles of the rich combo ui elements on toolbar, +- **panel.css**: the file contains styles of the rich combo drop-down, it's not loaded +until the first panel open up, +- **elementspath.css**: the file contains styles of the editor elements path bar (bottom), +- **menu.css**: the file contains styles of all editor menus including context menu and button drop-down, +it's not loaded until the first menu open up, +- **dialog.css**: the CSS files for the dialog UI, it's not loaded until the first dialog open, +- **reset.css**: the file defines the basis of style resets among all editor UI spaces, +- **preset.css**: the file defines the default styles of some UI elements reflecting the skin preference, +- **editor_XYZ.css** and **dialog_XYZ.css**: browser specific CSS hacks. + +Other parts: +- **skin.js**: the only JavaScript part of the skin that registers the skin, its browser specific files and its icons and defines the Chameleon feature, +- **icons/**: contains all skin defined icons, +- **images/**: contains a fill general used images, +- **dev/**: contains SVG source of the skin icons. + +License +------- + +Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved. + +Licensed under the terms of any of the following licenses at your choice: [GPL](http://www.gnu.org/licenses/gpl.html), [LGPL](http://www.gnu.org/licenses/lgpl.html) and [MPL](http://www.mozilla.org/MPL/MPL-1.1.html). + +See LICENSE.md for more information. diff --git a/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/skin.js b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/skin.js new file mode 100644 index 000000000..9365ca471 --- /dev/null +++ b/common/js/plugins/ckeditor/ckeditor/skins/moono-dark/skin.js @@ -0,0 +1,5 @@ +/* + Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved. + For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.skin.name="moono-dark";CKEDITOR.skin.ua_editor="ie,iequirks,ie7,ie8,gecko";CKEDITOR.skin.ua_dialog="ie,iequirks,ie7,ie8"; \ No newline at end of file From d9c4e416d473bad0063f23068d91ac7eea91d5be Mon Sep 17 00:00:00 2001 From: bnu Date: Tue, 24 Feb 2015 18:44:10 +0900 Subject: [PATCH 058/236] =?UTF-8?q?#1087=20=EC=97=90=EB=94=94=ED=84=B0=20A?= =?UTF-8?q?PI=EB=A5=BC=20=EC=9C=84=ED=95=9C=20JAF=20App=20'xeEditorApp'=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/editor/tpl/js/editor.app.js | 35 +++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 modules/editor/tpl/js/editor.app.js diff --git a/modules/editor/tpl/js/editor.app.js b/modules/editor/tpl/js/editor.app.js new file mode 100644 index 000000000..32a9889b6 --- /dev/null +++ b/modules/editor/tpl/js/editor.app.js @@ -0,0 +1,35 @@ +(function($){ + var xeEditorApp = xe.createApp('xeEditorApp', { + init : function() { + console.log('INIT @ xeEditorApp') + }, + API_ONREADY : function() { + console.log('ONREADY @ xeEditorApp'); + }, + getContent : function(seq) { + this.cast('GET_CONTENT'); + }, + API_EDITOR_CREATED : function(){ + console.log('APP @ API_EDITOR_CREATED'); + }, + }); + + // Shortcut function in jQuery + $.fn.xeEditorApp = function(opts) { + var u = new xeEditorApp(this.eq(0), opts); + if(u) xe.registerApp(u); + + return u; + }; + + // Shortcut function in XE + window.xe.createXeEditor = function() { + var u = new xeEditorApp(); + // if(u) xe.registerApp(u); + + return u; + }; + var u = new xeEditorApp(); + xe.registerApp(u); + +})(jQuery); From 58c8a726ce006c0c594aa2dc3599ff744c23f7eb Mon Sep 17 00:00:00 2001 From: bnu Date: Tue, 24 Feb 2015 18:57:29 +0900 Subject: [PATCH 059/236] =?UTF-8?q?#1087=20=EC=97=90=EB=94=94=ED=84=B0=20?= =?UTF-8?q?=EC=8A=A4=ED=82=A8=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ckeditor/plugins/xe_component/plugin.js | 6 +- modules/editor/skins/ckeditor/css/default.css | 0 modules/editor/skins/ckeditor/editor.html | 88 +++++++++++++++++++ .../editor/skins/ckeditor/js/xe_interface.js | 44 ++++++++++ modules/editor/skins/ckeditor/skin.xml | 20 +++++ 5 files changed, 157 insertions(+), 1 deletion(-) create mode 100755 modules/editor/skins/ckeditor/css/default.css create mode 100755 modules/editor/skins/ckeditor/editor.html create mode 100755 modules/editor/skins/ckeditor/js/xe_interface.js create mode 100755 modules/editor/skins/ckeditor/skin.xml diff --git a/common/js/plugins/ckeditor/ckeditor/plugins/xe_component/plugin.js b/common/js/plugins/ckeditor/ckeditor/plugins/xe_component/plugin.js index 1a6274003..49d14a01c 100755 --- a/common/js/plugins/ckeditor/ckeditor/plugins/xe_component/plugin.js +++ b/common/js/plugins/ckeditor/ckeditor/plugins/xe_component/plugin.js @@ -1,3 +1,7 @@ +/* + * @author Arnia + * @modifier XpressEngine + */ CKEDITOR.plugins.add('xe_component', { requires: 'richcombo', icons: 'xe_component', @@ -22,7 +26,7 @@ CKEDITOR.plugins.add('xe_component', { }); editor.ui.addRichCombo('Xe_component', { - label: '확장기능', + label: '확장기능', // @TODO: lang title: 'Extension Components', panel: { css: [CKEDITOR.skin.getPath('editor')].concat(config.contentsCss), diff --git a/modules/editor/skins/ckeditor/css/default.css b/modules/editor/skins/ckeditor/css/default.css new file mode 100755 index 000000000..e69de29bb diff --git a/modules/editor/skins/ckeditor/editor.html b/modules/editor/skins/ckeditor/editor.html new file mode 100755 index 000000000..0f9f052e1 --- /dev/null +++ b/modules/editor/skins/ckeditor/editor.html @@ -0,0 +1,88 @@ + + + + + + + + + +{@ $css_content = null } + + {@ $css_content = '.xe_content.editable p { margin: 0;'. chr(125); } + + {@ $css_content .= ' .xe_content.editable { '} + + {@ $css_content .= 'font-family:' . $content_font . ';';} + + + + {@ $css_content .= 'font-size:' . $content_font_size . ';';} + + {@ $css_content .= chr(125);} + + +
+ + diff --git a/modules/editor/skins/ckeditor/js/xe_interface.js b/modules/editor/skins/ckeditor/js/xe_interface.js new file mode 100755 index 000000000..454e3d055 --- /dev/null +++ b/modules/editor/skins/ckeditor/js/xe_interface.js @@ -0,0 +1,44 @@ +function _getCkeInstance(editor_sequence) { + var $editor_area = jQuery("#ckeditor_instance_"+editor_sequence); + return $editor_area.data('cke_instance'); +} + +//Get content from editor +function editorGetContentTextarea_xe(editor_sequence) { + return _getCkeInstance(editor_sequence).getText(); +} + + +function editorGetSelectedHtml(editor_sequence) { + return _getCkeInstance(editor_sequence).getSelection().getSelectedText(); +} + +function editorGetContent(editor_sequence) { + return _getCkeInstance(editor_sequence).getData(); +} + +//Replace html content to editor +function editorReplaceHTML(iframe_obj, content) { + content = editorReplacePath(content); + + var editor_sequence = parseInt(iframe_obj.id.replace(/^.*_/, ''), 10); + + _getCkeInstance(editor_sequence).insertHtml(content, "unfiltered_html"); +} + +function editorGetIFrame(editor_sequence) { + return jQuery('#ckeditor_instance_' + editor_sequence).get(0); +} + + +function editorReplacePath(content) { + // 태그 내 src, href, url의 XE 상대경로를 http로 시작하는 full path로 변경 + content = content.replace(/\<([^\>\<]*)(src=|href=|url\()("|\')*([^"\'\)]+)("|\'|\))*(\s|>)*/ig, function(m0,m1,m2,m3,m4,m5,m6) { + if(m2=="url(") { m3=''; m5=')'; } else { if(typeof(m3)=='undefined') m3 = '"'; if(typeof(m5)=='undefined') m5 = '"'; if(typeof(m6)=='undefined') m6 = ''; } + var val = jQuery.trim(m4).replace(/^\.\//,''); + if(/^(http\:|https\:|ftp\:|telnet\:|mms\:|mailto\:|\/|\.\.|\#)/i.test(val)) return m0; + return '<'+m1+m2+m3+request_uri+val+m5+m6; + }); + + return content; +} diff --git a/modules/editor/skins/ckeditor/skin.xml b/modules/editor/skins/ckeditor/skin.xml new file mode 100755 index 000000000..3b1961a1d --- /dev/null +++ b/modules/editor/skins/ckeditor/skin.xml @@ -0,0 +1,20 @@ + + + CKEditor 스킨 + CKEditor + 1.0.0 + 2015-02-24 + + + NAVER + + + + + Moono + + + Moono Dark + + + From 080bbcb0f71b3010c03e2fbb17d35f50f09cd6db Mon Sep 17 00:00:00 2001 From: bnu Date: Tue, 24 Feb 2015 19:16:34 +0900 Subject: [PATCH 060/236] =?UTF-8?q?grunt=20jshint=20=EC=84=A4=EC=A0=95=20?= =?UTF-8?q?=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Gruntfile.js | 15 ++++++++------- common/js/plugins/ckeditor/xeEditor.plugin.js | 1 + modules/admin/tpl/js/admin.js | 1 + modules/editor/skins/ckeditor/editor.html | 1 + modules/editor/tpl/js/editor.app.js | 15 ++++++--------- 5 files changed, 17 insertions(+), 16 deletions(-) diff --git a/Gruntfile.js b/Gruntfile.js index 2adb308a0..d30e48441 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -160,11 +160,6 @@ module.exports = function(grunt) { files: [ 'Gruntfile.js', 'common/js/*.js', - '!common/js/html5.js', - '!common/js/jquery.js', - '!common/js/x.js', - '!common/js/xe.js', - '!common/js/modernizr.js', 'modules/admin/tpl/js/*.js', 'modules/board/tpl/js/*.js', 'modules/editor/tpl/js/*.js', @@ -175,9 +170,15 @@ module.exports = function(grunt) { ignores : [ '**/jquery*.js', '**/swfupload.js', - '**/*.min.js', + '**/**.min.js', '**/*-packed.js', - '**/*.compressed.js' + '**/*.compressed.js', + '**/jquery-*.js', + '**/jquery.*.js', + 'common/js/html5.js', + 'common/js/x.js', + 'common/js/xe.js', + 'common/js/modernizr.js', ] } }, diff --git a/common/js/plugins/ckeditor/xeEditor.plugin.js b/common/js/plugins/ckeditor/xeEditor.plugin.js index 959eb32f6..b5805d038 100644 --- a/common/js/plugins/ckeditor/xeEditor.plugin.js +++ b/common/js/plugins/ckeditor/xeEditor.plugin.js @@ -1,4 +1,5 @@ (function($){ + "use strict"; var App = window.xe.getApp('xeEditorApp')[0]; var CK = window.CKEDITOR; diff --git a/modules/admin/tpl/js/admin.js b/modules/admin/tpl/js/admin.js index 0c82e8620..0eee8ae5b 100644 --- a/modules/admin/tpl/js/admin.js +++ b/modules/admin/tpl/js/admin.js @@ -797,6 +797,7 @@ jQuery(function($){ }); if(typeof console == 'undefined'){ + /* jshint -W020 */ console={log:function(){}}; } diff --git a/modules/editor/skins/ckeditor/editor.html b/modules/editor/skins/ckeditor/editor.html index 0f9f052e1..1391ef828 100755 --- a/modules/editor/skins/ckeditor/editor.html +++ b/modules/editor/skins/ckeditor/editor.html @@ -26,6 +26,7 @@ + + + diff --git a/modules/file/file.controller.php b/modules/file/file.controller.php index 66c0c5733..e66a5e1e6 100644 --- a/modules/file/file.controller.php +++ b/modules/file/file.controller.php @@ -43,7 +43,8 @@ class fileController extends file // Create if upload_target_srl is not defined in the session information if(!$upload_target_srl) $_SESSION['upload_info'][$editor_sequence]->upload_target_srl = $upload_target_srl = getNextSequence(); - return $this->insertFile($file_info, $module_srl, $upload_target_srl); + $output = $this->insertFile($file_info, $module_srl, $upload_target_srl); + Context::setResponseMethod('JSON'); } /** diff --git a/modules/file/file.model.php b/modules/file/file.model.php index fa4bf8242..eb8f48b43 100644 --- a/modules/file/file.model.php +++ b/modules/file/file.model.php @@ -67,11 +67,19 @@ class fileModel extends file $file_config = $this->getUploadConfig(); $left_size = $file_config->allowed_attach_size*1024*1024 - $attached_size; // Settings of required information + $attached_size = FileHandler::filesize($attached_size); + $allowed_attach_size = FileHandler::filesize($file_config->allowed_attach_size*1024*1024); + $allowed_filesize = FileHandler::filesize($file_config->allowed_filesize*1024*1024); + $allowed_filetypes = $file_config->allowed_filetypes; $this->add("files",$files); $this->add("editor_sequence",$editor_sequence); $this->add("upload_target_srl",$upload_target_srl); $this->add("upload_status",$upload_status); $this->add("left_size",$left_size); + $this->add('attached_size', $attached_size); + $this->add('allowed_attach_size', $allowed_attach_size); + $this->add('allowed_filesize', $allowed_filesize); + $this->add('allowed_filetypes', $allowed_filetypes); } /** diff --git a/modules/file/tpl/js/fileupload.app.js b/modules/file/tpl/js/fileupload.app.js new file mode 100644 index 000000000..bc4d73209 --- /dev/null +++ b/modules/file/tpl/js/fileupload.app.js @@ -0,0 +1,24 @@ +(function($){ + "use strict"; + var XeUploader = xe.createApp('XeUploader', { + init : function() { + } + }); + + // Shortcut function in jQuery + $.fn.uploader = function(opts) { + console.log(); + var u = new XeUploader(this.eq(0), opts); + if(u) xe.registerApp(u); + + return u; + }; + + // Shortcut function in XE + xe.createUploader = function(browseButton, opts) { + var u = new XeUploader(browseButton, opts); + if(u) xe.registerApp(u); + + return u; + }; +})(jQuery); From 052262c196ddfa4ac90af3b1c4bfb1013630f8ae Mon Sep 17 00:00:00 2001 From: bnu Date: Fri, 27 Feb 2015 11:31:59 +0900 Subject: [PATCH 065/236] =?UTF-8?q?#1086=20=EC=97=85=EB=A1=9C=EB=93=9C=20?= =?UTF-8?q?=EA=B2=BD=EB=A1=9C=20=EC=84=A4=EC=A0=95=20=EB=93=B1=20=EB=AC=B8?= =?UTF-8?q?=EC=A0=9C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../js/plugins/jquery.fileupload/js/main.js | 32 ++++++++++++------- modules/editor/skins/ckeditor/editor.html | 6 +++- modules/file/file.controller.php | 1 + 3 files changed, 26 insertions(+), 13 deletions(-) diff --git a/common/js/plugins/jquery.fileupload/js/main.js b/common/js/plugins/jquery.fileupload/js/main.js index c8d5db3b6..344b0fe7c 100644 --- a/common/js/plugins/jquery.fileupload/js/main.js +++ b/common/js/plugins/jquery.fileupload/js/main.js @@ -16,24 +16,34 @@ this.editor_sequence = $container.data('editor-sequence'); var settings = { - url: '/core-origin/index.php?act=procFileUpload&module=file', + url: request_uri.setQuery('module', 'file').setQuery('act', 'procFileUpload'), autoUpload: true, formData: {"editor_sequence": data.editorSequence, "upload_target_srl" : data.uploadTargetSrl}, dataType: 'json', dropZone: $container, - done: function() { - self.done.call(self, arguments); + done: function(e, res) { + var result = res.result; + this.uploadedBytes += res.fi + + if(result.error == 0) { + this.uploadedBytes += res.total; + self.done.call(self, arguments); + } else { + alert(result.message); + } + }, + stop: function() { + self.loadFilelist(); }, start: function() { - $('#progress').show(); + $('#progress').find('.progress-bar').width(0).addBack().show(); }, progressall: function (e, data) { var progress = parseInt(data.loaded / data.total * 100, 10); - $('#progress .progress-bar').width(progress+'%'); + $('.progress-bar').width(progress+'%'); if(progress >= 100) { $('#progress').delay(5000).slideUp(); - self.displayPreview($('.xe-uploader-filelist select option:last').data('fileinfo')); } } }; @@ -66,7 +76,6 @@ this.loadFilelist(); - // 본문 삽입 $('.xe-act-link-selected').on('click', function() { self.insertToContent(); @@ -76,12 +85,9 @@ $('.xe-act-delete-selected').on('click', function() { self.deleteFile(); }); - - }, done: function() { - this.loadFilelist(); - + // this.loadFilelist(); }, insertToContent: function() { for(var i = 0, len = this.selected_files.length; i < len; i++) { @@ -125,13 +131,15 @@ .val(file.file_srl) .appendTo('.xe-uploader-filelist select'); }); - // self.displayPreview($('.xe-uploader-filelist select option:last').data('fileinfo')); + self.displayPreview($('.xe-uploader-filelist select option:last').data('fileinfo')); }); }, selectFile: function() { this.displayPreview($(this.last_selected_file).data('fileinfo')); }, displayPreview: function(fileinfo) { + if(!fileinfo) return; + if(/\.(jpe?g|png|gif)$/i.test(fileinfo.download_url)) { $('.xe-uploader-preview img').attr('src', window.request_uri + fileinfo.download_url); } else { diff --git a/modules/editor/skins/ckeditor/editor.html b/modules/editor/skins/ckeditor/editor.html index c173300f2..730cb24a5 100755 --- a/modules/editor/skins/ckeditor/editor.html +++ b/modules/editor/skins/ckeditor/editor.html @@ -59,7 +59,11 @@ diff --git a/modules/file/file.controller.php b/modules/file/file.controller.php index e66a5e1e6..4676f8ede 100644 --- a/modules/file/file.controller.php +++ b/modules/file/file.controller.php @@ -45,6 +45,7 @@ class fileController extends file $output = $this->insertFile($file_info, $module_srl, $upload_target_srl); Context::setResponseMethod('JSON'); + if($output->error != '0') $this->stop($output->message); } /** From d2d092a7eb63d268d491aa3d5be83e5d0fdc6755 Mon Sep 17 00:00:00 2001 From: bnu Date: Fri, 27 Feb 2015 14:10:05 +0900 Subject: [PATCH 066/236] fix --- .../js/plugins/jquery.fileupload/js/main.js | 4 ++- modules/editor/skins/ckeditor/editor.html | 26 ++++++++----------- modules/file/file.controller.php | 2 ++ 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/common/js/plugins/jquery.fileupload/js/main.js b/common/js/plugins/jquery.fileupload/js/main.js index 344b0fe7c..8a96e53d4 100644 --- a/common/js/plugins/jquery.fileupload/js/main.js +++ b/common/js/plugins/jquery.fileupload/js/main.js @@ -23,7 +23,6 @@ dropZone: $container, done: function(e, res) { var result = res.result; - this.uploadedBytes += res.fi if(result.error == 0) { this.uploadedBytes += res.total; @@ -93,6 +92,9 @@ for(var i = 0, len = this.selected_files.length; i < len; i++) { var fileinfo = $(this.selected_files[i]).data('fileinfo'); var temp_code = ''; + + if(!fileinfo) return; + if(/\.(jpg|jpeg|png|gif)$/i.test(fileinfo.download_url)) { temp_code += ''+fileinfo.source_filename+'' + "\r\n
"; _getCkeInstance(this.editor_sequence).insertHtml(temp_code, "unfiltered_html"); diff --git a/modules/editor/skins/ckeditor/editor.html b/modules/editor/skins/ckeditor/editor.html index 730cb24a5..a6683dce3 100755 --- a/modules/editor/skins/ckeditor/editor.html +++ b/modules/editor/skins/ckeditor/editor.html @@ -25,14 +25,13 @@
-
+
-
@@ -54,19 +53,6 @@
{$upload_status}
- - -
"].join(""),j.id=r,(k?j:l).innerHTML+=f,l.appendChild(j),k||(l.style.background="",l.style.overflow="hidden",i=q.style.overflow,q.style.overflow="hidden",q.appendChild(l)),g=c(j,a),k?j.parentNode.removeChild(j):(l.parentNode.removeChild(l),q.style.overflow=i),!!g},I=function(){function a(a,e){e=e||b.createElement(d[a]||"div"),a="on"+a;var g=a in e;return g||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(a,""),g=f(e[a],"function"),f(e[a],"undefined")||(e[a]=c),e.removeAttribute(a))),e=null,g}var d={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return a}(),J={}.hasOwnProperty;m=f(J,"undefined")||f(J.call,"undefined")?function(a,b){return b in a&&f(a.constructor.prototype[b],"undefined")}:function(a,b){return J.call(a,b)},Function.prototype.bind||(Function.prototype.bind=function(a){var b=this;if("function"!=typeof b)throw new TypeError;var c=G.call(arguments,1),d=function(){if(this instanceof d){var e=function(){};e.prototype=b.prototype;var f=new e,g=b.apply(f,c.concat(G.call(arguments)));return Object(g)===g?g:f}return b.apply(a,c.concat(G.call(arguments)))};return d}),C.flexbox=function(){return j("flexWrap")},C.flexboxlegacy=function(){return j("boxDirection")},C.canvas=function(){var a=b.createElement("canvas");return!(!a.getContext||!a.getContext("2d"))},C.canvastext=function(){return!(!o.canvas||!f(b.createElement("canvas").getContext("2d").fillText,"function"))},C.webgl=function(){return!!a.WebGLRenderingContext},C.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:H(["@media (",x.join("touch-enabled),("),r,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=9===a.offsetTop}),c},C.geolocation=function(){return"geolocation"in navigator},C.postmessage=function(){return!!a.postMessage},C.websqldatabase=function(){return!!a.openDatabase},C.indexedDB=function(){return!!j("indexedDB",a)},C.hashchange=function(){return I("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},C.history=function(){return!(!a.history||!history.pushState)},C.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},C.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},C.rgba=function(){return d("background-color:rgba(150,255,150,.5)"),g(t.backgroundColor,"rgba")},C.hsla=function(){return d("background-color:hsla(120,40%,100%,.5)"),g(t.backgroundColor,"rgba")||g(t.backgroundColor,"hsla")},C.multiplebgs=function(){return d("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(t.background)},C.backgroundsize=function(){return j("backgroundSize")},C.borderimage=function(){return j("borderImage")},C.borderradius=function(){return j("borderRadius")},C.boxshadow=function(){return j("boxShadow")},C.textshadow=function(){return""===b.createElement("div").style.textShadow},C.opacity=function(){return e("opacity:.55"),/^0.55$/.test(t.opacity)},C.cssanimations=function(){return j("animationName")},C.csscolumns=function(){return j("columnCount")},C.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return d((a+"-webkit- ".split(" ").join(b+a)+x.join(c+a)).slice(0,-a.length)),g(t.backgroundImage,"gradient")},C.cssreflections=function(){return j("boxReflect")},C.csstransforms=function(){return!!j("transform")},C.csstransforms3d=function(){var a=!!j("perspective");return a&&"webkitPerspective"in q.style&&H("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b){a=9===b.offsetLeft&&3===b.offsetHeight}),a},C.csstransitions=function(){return j("transition")},C.fontface=function(){var a;return H('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&0===g.indexOf(d.split(" ")[0])}),a},C.generatedcontent=function(){var a;return H(["#",r,"{font:0/0 a}#",r,':after{content:"',v,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a},C.video=function(){var a=b.createElement("video"),c=!1;try{(c=!!a.canPlayType)&&(c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,""))}catch(d){}return c},C.audio=function(){var a=b.createElement("audio"),c=!1;try{(c=!!a.canPlayType)&&(c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,""))}catch(d){}return c},C.localstorage=function(){try{return localStorage.setItem(r,r),localStorage.removeItem(r),!0}catch(a){return!1}},C.sessionstorage=function(){try{return sessionStorage.setItem(r,r),sessionStorage.removeItem(r),!0}catch(a){return!1}},C.webworkers=function(){return!!a.Worker},C.applicationcache=function(){return!!a.applicationCache},C.svg=function(){return!!b.createElementNS&&!!b.createElementNS(B.svg,"svg").createSVGRect},C.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="",(a.firstChild&&a.firstChild.namespaceURI)==B.svg},C.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(w.call(b.createElementNS(B.svg,"animate")))},C.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(w.call(b.createElementNS(B.svg,"clipPath")))};for(var K in C)m(C,K)&&(l=K.toLowerCase(),o[l]=C[K](),F.push((o[l]?"":"no-")+l));return o.input||k(),o.addTest=function(a,b){if("object"==typeof a)for(var d in a)m(a,d)&&o.addTest(d,a[d]);else{if(a=a.toLowerCase(),o[a]!==c)return o;b="function"==typeof b?b():b,"undefined"!=typeof p&&p&&(q.className+=" modernizr-"+(b?"":"no-")+a),o[a]=b}return o},d(""),s=u=null,function(a,b){function c(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x",d.insertBefore(c.lastChild,d.firstChild)}function d(){var a=s.elements;return"string"==typeof a?a.split(" "):a}function e(a){var b=r[a[p]];return b||(b={},q++,a[p]=q,r[q]=b),b}function f(a,c,d){if(c||(c=b),k)return c.createElement(a);d||(d=e(c));var f;return f=d.cache[a]?d.cache[a].cloneNode():o.test(a)?(d.cache[a]=d.createElem(a)).cloneNode():d.createElem(a),!f.canHaveChildren||n.test(a)||f.tagUrn?f:d.frag.appendChild(f)}function g(a,c){if(a||(a=b),k)return a.createDocumentFragment();c=c||e(a);for(var f=c.frag.cloneNode(),g=0,h=d(),i=h.length;i>g;g++)f.createElement(h[g]);return f}function h(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return s.shivMethods?f(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+d().join().replace(/[\w\-]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(s,b.frag)}function i(a){a||(a=b);var d=e(a);return!s.shivCSS||j||d.hasCSS||(d.hasCSS=!!c(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),k||h(a,d),a}var j,k,l="3.7.0",m=a.html5||{},n=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,o=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,p="_html5shiv",q=0,r={};!function(){try{var a=b.createElement("a");a.innerHTML="",j="hidden"in a,k=1==a.childNodes.length||function(){b.createElement("a");var a=b.createDocumentFragment();return"undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}()}catch(c){j=!0,k=!0}}();var s={elements:m.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:l,shivCSS:m.shivCSS!==!1,supportsUnknownElements:k,shivMethods:m.shivMethods!==!1,type:"default",shivDocument:i,createElement:f,createDocumentFragment:g};a.html5=s,i(b)}(this,b),o._version=n,o._prefixes=x,o._domPrefixes=A,o._cssomPrefixes=z,o.hasEvent=I,o.testProp=function(a){return h([a])},o.testAllProps=j,o.testStyles=H,q.className=q.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(p?" modernizr-js modernizr-"+F.join(" modernizr-"):""),o}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==q.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=r.shift();s=1,a?a.t?o(function(){("c"==a.t?m.injectCss:m.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):s=0}function i(a,c,d,e,f,i,j){function k(b){if(!n&&g(l.readyState)&&(t.r=n=1,!s&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&o(function(){v.removeChild(l)},50);for(var d in A[c])A[c].hasOwnProperty(d)&&A[c][d].onload()}}var j=j||m.errorTimeout,l=b.createElement(a),n=0,q=0,t={t:d,s:c,e:f,a:i,x:j};1===A[c]&&(q=1,A[c]=[]),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,q)},r.splice(e,0,t),"img"!=a&&(q||2===A[c]?(v.insertBefore(l,u?null:p),o(k,j)):A[c].push(l))}function j(a,b,c,d,f){return s=0,b=b||"j",e(a)?i("c"==b?x:w,a,b,this.i++,c,d,f):(r.splice(this.i++,0,a),1==r.length&&h()),this}function k(){var a=m;return a.loader={load:j,i:0},a}var l,m,n=b.documentElement,o=a.setTimeout,p=b.getElementsByTagName("script")[0],q={}.toString,r=[],s=0,t="MozAppearance"in n.style,u=t&&!!b.createRange().compareNode,v=u?n:p.parentNode,n=a.opera&&"[object Opera]"==q.call(a.opera),n=!!b.attachEvent&&!n,w=t?"object":n?"script":"img",x=n?"script":w,y=Array.isArray||function(a){return"[object Array]"==q.call(a)},z=[],A={},B={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}};m=function(a){function b(a){var b,c,d,a=a.split("!"),e=z.length,f=a.pop(),g=a.length,f={url:f,origUrl:f,prefixes:a};for(c=0;g>c;c++)d=a[c].split("="),(b=B[d.shift()])&&(f=b(f,d));for(c=0;e>c;c++)f=z[c](f);return f}function g(a,e,f,g,h){var i=b(a),j=i.autoCallback;i.url.split(".").pop().split("?").shift(),i.bypass||(e&&(e=d(e)?e:e[a]||e[g]||e[a.split("/").pop().split("?")[0]]),i.instead?i.instead(a,e,f,g,h):(A[i.url]?i.noexec=!0:A[i.url]=1,f.load(i.url,i.forceCSS||!i.forceJS&&"css"==i.url.split(".").pop().split("?").shift()?"c":c,i.noexec,i.attrs,i.timeout),(d(e)||d(j))&&f.load(function(){k(),e&&e(i.origUrl,h,g),j&&j(i.origUrl,h,g),A[i.url]=2})))}function h(a,b){function c(a,c){if(a){if(e(a))c||(l=function(){var a=[].slice.call(arguments);m.apply(this,a),n()}),g(a,l,b,0,j);else if(Object(a)===a)for(i in h=function(){var b,c=0;for(b in a)a.hasOwnProperty(b)&&c++;return c}(),a)a.hasOwnProperty(i)&&(!c&&!--h&&(d(l)?l=function(){var a=[].slice.call(arguments);m.apply(this,a),n()}:l[i]=function(a){return function(){var b=[].slice.call(arguments);a&&a.apply(this,b),n()}}(m[i])),g(a[i],l,b,i,j))}else!c&&n()}var h,i,j=!!a.test,k=a.load||a.both,l=a.callback||f,m=l,n=a.complete||f;c(j?a.yep:a.nope,!!k),k&&c(k)}var i,j,l=this.yepnope.loader;if(e(a))g(a,0,l,0);else if(y(a))for(i=0;i"+k+" "}}this.loaded_popup_menus[e]=g}if(g){var o=a("#popup_menu_area").html("
    "+g+"
"),p={top:d.page_y,left:d.page_x};o.outerHeight()+p.top>a(window).height()+a(window).scrollTop()&&(p.top=a(window).height()-o.outerHeight()+a(window).scrollTop()),o.outerWidth()+p.left>a(window).width()+a(window).scrollLeft()&&(p.left=a(window).width()-o.outerWidth()+a(window).scrollLeft()),o.css({top:p.top,left:p.left}).show().focus()}}}}(jQuery),jQuery(function(a){a.browser.msie&&a("select").each(function(a,b){for(var c=!1,d=[],e=0;e-1?d[a]:e;c&&(b.oldonchange=b.onchange,b.onchange=function(){this.options[this.selectedIndex].disabled?this.selectedIndex=d[a]:this.oldonchange&&this.oldonchange()},b.selectedIndex>=0&&b.options[b.selectedIndex].disabled&&b.onchange())});var b=a(".xe_content .fold_button");if(b.size()){var c=a("div.fold_container",b);a("button.more",b).click(function(){a(this).hide().next("button").show().parent().next(c).show()}),a("button.less",b).click(function(){a(this).hide().prev("button").show().parent().next(c).hide()})}jQuery('input[type="submit"],button[type="submit"]').click(function(a){var b=jQuery(a.currentTarget);setTimeout(function(){return function(){b.attr("disabled","disabled")}}(),0),setTimeout(function(){return function(){b.removeAttr("disabled")}}(),3e3)})}),function(){function a(a,b){return a.replace(/#.*$/,"")===b.replace(/#.*$/,"")}var b=Array.isArray||function(a){return"[object Array]"==Object.prototype.toString.call(a)};String.prototype.getQuery=function(b){var c=a(this,window.location.href)?current_url:this,d=c.indexOf("?");if(-1==d)return null;var e=c.substr(d+1,this.length),f={};e.replace(/([^=]+)=([^&]*)(&|$)/g,function(){f[arguments[1]]=arguments[2]});var g=f[b];return"undefined"==typeof g&&(g=""),g},String.prototype.setQuery=function(c,d){var e,f,g,h,i=a(this,window.location.href)?current_url:this,j=i.indexOf("?"),k=i.replace(/#$/,"");if("undefined"==typeof d&&(d=""),-1!=j){var l=k.substr(j+1,i.length),m={},n=[];k=i.substr(0,j),l.replace(/([^=]+)=([^&]*)(&|$)/g,function(a,b,c){m[b]=c}),m[c]=d;for(var o in m)m.hasOwnProperty(o)&&(g=String(m[o]).trim())&&n.push(o+"="+decodeURI(g));l=n.join("&"),k+=l?"?"+l:""}else String(d).trim()&&(k=k+"?"+c+"="+d);f=/^https:\/\/([^:\/]+)(:\d+|)/i,f.test(k)&&(h="http://"+RegExp.$1,window.http_port&&80!=http_port&&(h+=":"+http_port),k=k.replace(f,h));var p=!!window.enforce_ssl;if(!p&&b(window.ssl_actions)&&(e=k.getQuery("act")))for(var q=0,r=ssl_actions.length;r>q;q++)if(ssl_actions[q]===e){p=!0;break}return f=/http:\/\/([^:\/]+)(:\d+|)/i,p&&f.test(k)&&(h="https://"+RegExp.$1,window.https_port&&443!=https_port&&(h+=":"+https_port),k=k.replace(f,h)),k=k.replace(/\/(index\.php)?\?/,"/index.php?"),encodeURI(k)},String.prototype.trim=function(){return this.replace(/(^\s*)|(\s*$)/g,"")}}();var winopen_list=[],objForSavedDoc=null,addedDocument=[],Base64={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",encode:function(a){var b,c,d,e,f,g,h,i="",j=0;for(a=Base64._utf8_encode(a);j>2,f=(3&b)<<4|c>>4,g=(15&c)<<2|d>>6,h=63&d,isNaN(c)?g=h=64:isNaN(d)&&(h=64),i=i+this._keyStr.charAt(e)+this._keyStr.charAt(f)+this._keyStr.charAt(g)+this._keyStr.charAt(h);return i},decode:function(a){var b,c,d,e,f,g,h,i="",j=0;for(a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");j>4,c=(15&f)<<4|g>>2,d=(3&g)<<6|h,i+=String.fromCharCode(b),64!=g&&(i+=String.fromCharCode(c)),64!=h&&(i+=String.fromCharCode(d));return i=Base64._utf8_decode(i)},_utf8_encode:function(a){a=a.replace(/\r\n/g,"\n");for(var b="",c=0;cd?b+=String.fromCharCode(d):d>127&&2048>d?(b+=String.fromCharCode(d>>6|192),b+=String.fromCharCode(63&d|128)):(b+=String.fromCharCode(d>>12|224),b+=String.fromCharCode(d>>6&63|128),b+=String.fromCharCode(63&d|128))}return b},_utf8_decode:function(a){for(var b="",c=0,d=0,e=0,f=0;cd?(b+=String.fromCharCode(d),c++):d>191&&224>d?(e=a.charCodeAt(c+1),b+=String.fromCharCode((31&d)<<6|63&e),c+=2):(e=a.charCodeAt(c+1),f=a.charCodeAt(c+2),b+=String.fromCharCode((15&d)<<12|(63&e)<<6|63&f),c+=3); -return b}};"undefined"==typeof resizeImageContents&&(window.resizeImageContents=function(){}),"undefined"==typeof activateOptionDisabled&&(window.activateOptionDisabled=function(){}),objectExtend=jQuery.extend;var loaded_popup_menus=XE.loaded_popup_menus;jQuery(function(a){a(document).on("click",function(b){var c=a("#popup_menu_area");c.length||(c=a('