From 6622928299f9b0adb1c45d509ef5c6f71ce03025 Mon Sep 17 00:00:00 2001 From: franzz Date: Mon, 24 Aug 2015 23:03:22 +0200 Subject: [PATCH] v2.0 first push --- .gitignore | 1 + aescrawl.ttf | Bin 31056 -> 0 bytes config.php | 372 +------------------ functions.js | 54 --- images/bg.jpg | Bin 0 -> 221216 bytes images/icons-black-2x.png | Bin 0 -> 15142 bytes images/icons-black.png | Bin 0 -> 8119 bytes images/icons-white-2x.png | Bin 0 -> 13806 bytes images/icons-white.png | Bin 0 -> 7196 bytes images/jquery-te.png | Bin 0 -> 2603 bytes images/minicloud.png | Bin 5210 -> 7716 bytes inc/auth.php | 174 +++++++++ inc/calendar.php | 142 ++++++++ inc/mythoughts.php | 342 +++++++++++++++++ index.php | 85 ++++- log.html | 0 mask/index.html | 37 -- mask/logon.html | 20 - mask/write_thought.html | 77 ---- {mask => masks}/calendar.html | 0 {mask => masks}/errors.html | 0 masks/home.html | 6 + masks/index.html | 25 ++ masks/logon.html | 56 +++ {mask => masks}/menu.html | 0 {mask => masks}/read_thought.html | 0 {mask => masks}/settings.html | 0 masks/template.html | 10 + masks/write.html | 176 +++++++++ scripts/functions.js | 588 ++++++++++++++++++++++++++++++ scripts/jquery-te-1.4.0.min.js | 9 + scripts/jquery.js | 4 + scripts/mythoughts.js | 232 ++++++++++++ scripts/trumbowyg.min.js | 2 + style.css | 365 ------------------- style/FontAwesome.otf | Bin 0 -> 93888 bytes style/aescrawl.ttf | Bin 0 -> 65776 bytes style/font-awesome.css | 195 ++++++++++ style/fontawesome-webfont.eot | Bin 0 -> 60767 bytes style/fontawesome-webfont.svg | 565 ++++++++++++++++++++++++++++ style/fontawesome-webfont.ttf | Bin 0 -> 122092 bytes style/fontawesome-webfont.woff | Bin 0 -> 71508 bytes style/fontawesome-webfont.woff2 | Bin 0 -> 56780 bytes style/jquery-te-1.4.0.css | 457 +++++++++++++++++++++++ style/style.css | 535 +++++++++++++++++++++++++++ style/trumbowyg.min.css | 2 + welcome | 2 +- 47 files changed, 3608 insertions(+), 925 deletions(-) mode change 100644 => 100755 .gitignore delete mode 100755 aescrawl.ttf delete mode 100755 functions.js create mode 100755 images/bg.jpg create mode 100755 images/icons-black-2x.png create mode 100755 images/icons-black.png create mode 100755 images/icons-white-2x.png create mode 100755 images/icons-white.png create mode 100755 images/jquery-te.png create mode 100755 inc/auth.php create mode 100755 inc/calendar.php create mode 100755 inc/mythoughts.php create mode 100755 log.html delete mode 100755 mask/index.html delete mode 100755 mask/logon.html delete mode 100755 mask/write_thought.html rename {mask => masks}/calendar.html (100%) rename {mask => masks}/errors.html (100%) create mode 100755 masks/home.html create mode 100755 masks/index.html create mode 100755 masks/logon.html rename {mask => masks}/menu.html (100%) rename {mask => masks}/read_thought.html (100%) rename {mask => masks}/settings.html (100%) create mode 100755 masks/template.html create mode 100755 masks/write.html create mode 100755 scripts/functions.js create mode 100755 scripts/jquery-te-1.4.0.min.js create mode 100755 scripts/jquery.js create mode 100755 scripts/mythoughts.js create mode 100755 scripts/trumbowyg.min.js delete mode 100755 style.css create mode 100755 style/FontAwesome.otf create mode 100755 style/aescrawl.ttf create mode 100755 style/font-awesome.css create mode 100755 style/fontawesome-webfont.eot create mode 100755 style/fontawesome-webfont.svg create mode 100755 style/fontawesome-webfont.ttf create mode 100755 style/fontawesome-webfont.woff create mode 100755 style/fontawesome-webfont.woff2 create mode 100755 style/jquery-te-1.4.0.css create mode 100755 style/style.css create mode 100755 style/trumbowyg.min.css diff --git a/.gitignore b/.gitignore old mode 100644 new mode 100755 index 939cf88..51131f6 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /.project /settings.php /.buildpath +/.settings/ diff --git a/aescrawl.ttf b/aescrawl.ttf deleted file mode 100755 index fe13851ee7d5b163cf4bd7aa09b8f9e0c6d89d22..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31056 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 Vd=$yzT%mx^SKk8NQzOj2e*v1m7svnr diff --git a/config.php b/config.php index a5d620d..fa48f61 100755 --- a/config.php +++ b/config.php @@ -98,337 +98,6 @@ class PhpObject } } -class MySqlManager extends PhpObject -{ - const DB_SERVER = Settings::DB_SERVER; - const DB_LOGIN = Settings::DB_LOGIN; - const DB_PASS = Settings::DB_PASS; - const DB_NAME = Settings::DB_NAME; - - const ID_TAG = 'id_'; - const USERS_TABLE = 'users'; - const THOUGHTS_TABLE = 'thoughts'; - const SETTINGS_TABLE = 'settings'; - - private $oConnection; - - public function __construct() - { - parent::__construct(); - $this->oConnection = mysql_connect(self::DB_SERVER, self::DB_LOGIN, self::DB_PASS); - if(!$this->oConnection) - { - $this->addError('bug connection'); - } - else - { - if(!mysql_select_db(self::DB_NAME, $this->oConnection)) - { - $this->install(); - } - } - } - - public function __destruct() - { - mysql_close($this->oConnection); - } - - private function install() - { - $this->setQuery("DROP DATABASE IF EXISTS ".self::DB_NAME); - $this->setQuery("CREATE /* ".basename(__FILE__)." ".__LINE__." */ DATABASE ".self::DB_NAME); - mysql_select_db(self::DB_NAME, $this->oConnection); - @array_walk(array_map(array($this, 'getInstallQuery'), $this->getTables()), array($this, 'setQuery')); - } - - private function getInstallQuery($sTableName) - { - $asTableColumns = $this->getTableColumns($sTableName); - $sQuery = "\n".implodeAll($asTableColumns, "` ", "\n", "`", ",")."\n".implode(", \n", $this->getTableConstraints($sTableName)); - return "CREATE /* ".basename(__FILE__)." ".__LINE__." */ TABLE `{$sTableName}` ({$sQuery})"; - } - - private function setQuery($sQuery, $sTypeQuery=__FUNCTION__) - { - return $this->getQuery($sQuery, $sTypeQuery); - } - - private function getQuery($sQuery, $sTypeQuery=__FUNCTION__) - { - $oResult = mysql_query($sQuery, $this->oConnection); - if(!$oResult) - { - $this->addError("\nErreur SQL : \n".$sQuery."\n".mysql_error()); - } - return $oResult; - } - - public function getArrayQuery($sQuery, $bStringOnly=false, $sTypeQuery=__FUNCTION__) - { - $asResult = array(); - $oResult = $this->getQuery($sQuery, true, $sTypeQuery); - if($oResult!==false) - { - while($asCurrentRow = mysql_fetch_array($oResult)) - { - if($bStringOnly) - { - $asCurrentRow = $this->arrayKeyFilter($asCurrentRow, 'is_string'); - } - - //One column case : collapse a level - if(count($asCurrentRow)==1) - { - $asResult[] = array_shift($asCurrentRow); - } - else - { - $asResult[] = $asCurrentRow; - } - } - } - return $asResult; - } - - private function arrayKeyFilter($asArray, $sCallBack) - { - $asValidKeys = array_flip(array_filter(array_keys($asArray), $sCallBack)); - return array_intersect_key($asArray, $asValidKeys); - } - - public static function getTables() - { - return array(self::USERS_TABLE, self::THOUGHTS_TABLE, self::SETTINGS_TABLE); - } - - public static function getId($sTableName) - { - return self::ID_TAG.substr($sTableName, 0, -1); - } - - public static function getText($sTableName) - { - return substr($sTableName, 0, -1); - } - - private static function isId($sColumnName, $sTableName='') - { - $asTables = ($sTableName=='')?self::getTables():array($sTableName); - $asTableIds = array_map(array('self', 'getId'), $asTables); - return in_array($sColumnName, $asTableIds); - } - - public static function getTablecolumns($sTableName) - { - $asTableColumns = array(self::getId($sTableName)); - - switch($sTableName) - { - case self::USERS_TABLE: - $asTableColumns[] = 'user'; - $asTableColumns[] = 'pass'; - break; - case self::THOUGHTS_TABLE: - $asTableColumns[] = self::getId(self::USERS_TABLE); - $asTableColumns[] = 'thought'; - break; - case self::SETTINGS_TABLE: - $asTableColumns[] = self::getId(self::USERS_TABLE); - $asTableColumns[] = 'setting'; - $asTableColumns[] = 'value'; - break; - default: - $this->addError('Function '.__FUNCTION__.', table '.$sTableName.' not found'); - } - $asTableColumns[] = 'led'; - $asTableName = array_fill(0, count($asTableColumns), $sTableName); - return array_combine($asTableColumns, array_map(array('self', 'getColumnType'), $asTableColumns, $asTableName)); - } - - private static function getColumnType($sColumnName, $sTableName) - { - $sColumnType = ''; - switch($sColumnName) - { - case 'user': - $sColumnType = "varchar(20) NOT NULL"; - break; - case 'pass': - $sColumnType = "varchar(128) NOT NULL"; - break; - case 'thought': - $sColumnType = "longtext NOT NULL"; - break; - case 'setting': - $sColumnType = "varchar(20) NOT NULL"; - break; - case 'value': - $sColumnType = 'varchar(20) NOT NULL'; - break; - case 'led': - $sColumnType = "TIMESTAMP NOT NULL ON UPDATE CURRENT_TIMESTAMP DEFAULT CURRENT_TIMESTAMP"; - break; - case self::isId($sColumnName, $sTableName): - $sColumnType = "int(10) UNSIGNED auto_increment"; - break; - case self::isId($sColumnName): - $sColumnType = "int(10) UNSIGNED NOT NULL"; - break; - } - return $sColumnType; - } - - private static function getTableConstraints($sTableName) - { - //primary key - $asTableConstraints = array('PRIMARY' => "PRIMARY KEY (`".self::getId($sTableName)."`)"); - - //other constraints - switch($sTableName) - { - case 'user' : - break; - case 'thought' : - break; - } - return $asTableConstraints; - } - - private function addQuotes($oData) - { - return array_map_encapsulate($oData, "'"); - } - - private function getLastId() - { - return mysql_insert_id(); - } - - public function insertRow($sTableName, $asData) - { - $this->cleanSql($sTableName); - $this->cleanSql($asData); - - $asQueryValues = $this->addQuotes($asData); - $sQuery = "INSERT /* ".basename(__FILE__)." ".__LINE__." */ - INTO ".$sTableName." (`".implode("`, `", array_keys($asQueryValues))."`) - VALUES (".implode(", ", $asQueryValues).")"; - - return $this->setQuery($sQuery)?$this->getLastId():false; - } - - public function updateRow($sTableName, $asConstraints, $asData) - { - if(!is_array($asConstraints)) - { - $asConstraints = array($this->getId($sTableName)=>$asConstraints); - } - $iTableId = - - $this->cleanSql($sTableName); - $this->cleanSql($iTableId); - $this->cleanSql($asData); - $this->cleanSql($asConstraints); - $asQueryValues = $this->addQuotes($asData); - $asConstraintsValues = $this->addQuotes($asConstraints); - - $sQuery = "UPDATE /* ".basename(__FILE__)." ".__LINE__." */ $sTableName - SET ".implodeAll($asQueryValues, " = ", ", ")." - WHERE ".implodeAll($asConstraintsValues, " = ", " AND ")." LIMIT 1"; - return $this->setQuery($sQuery)?$this->selectValue($sTableName, $this->getId($sTableName), $asConstraints):false; - } - - public function insertUpdateRow($sTableName, $asConstraints, $asData) - { - $iTableId = $this->selectValue($sTableName, $this->getId($sTableName), $asConstraints); - if(!$iTableId) - { - $asData = array_merge($asConstraints, $asData); - return $this->insertRow($sTableName, $asData); - } - else - { - return $this->updateRow($sTableName, $asConstraints, $asData); - } - } - - public function selectRow($sTableName, $asConstraints=array(), $sColumnName='*', $bStringOnly=false) - { - $asResult = $this->selectRows(array('select'=>$sColumnName, 'from'=>$sTableName, 'constraint'=>$asConstraints)); - $iCountNb = count($asResult); - switch($iCountNb) - { - case 0 : - return false; - case $iCountNb > 1 : - $this->addError('Trop de résultats pour un selectRow() : '.$iCountNb); - break; - } - return array_shift($asResult); - } - function selectValue($sTableName, $sColumnName, $asConstraints) - { - if(is_numeric($asConstraints)) - { - $asConstraints = array(self::getId($sTableName)=>$asConstraints); - } - return $this->selectRow($sTableName, $asConstraints, $sColumnName); - } - - public function selectRows($asInfo, $bStringOnly=true) - { - $sAttributes = array('select'=>"SELECT", 'from'=>"FROM", 'constraint'=>"WHERE", 'groupBy'=>"GROUP BY", 'orderBy'=>"ORDER BY"); - $asRowSeparators = array('select'=>", ", 'from'=>"", 'constraint'=>" AND ", 'groupBy'=>", ", 'orderBy'=>", "); - $asOperators = array('constraint'=>" = ", 'orderBy'=>" "); - - $sQuery = "/* ".basename(__FILE__)." ".__LINE__." */"; - foreach($sAttributes as $sStatement => $sKeyWord) - { - $asSelection = array_key_exists($sStatement, $asInfo)?$asInfo[$sStatement]:array(); - if(!is_array($asSelection)) - { - $asSelection = array($asSelection); - } - - //if provided values - if(!empty($asSelection)) - { - $this->cleanSql($asSelection); - - if($sStatement=='constraint') - { - $asSelection = $this->addQuotes($asSelection); - } - - $sQuery .= " ".$sKeyWord." "; - - //in case of double value input - if(array_key_exists($sStatement, $asOperators)) - { - $sQuery .= implodeAll($asSelection, $asOperators[$sStatement], $asRowSeparators[$sStatement]); - } - else - { - $sQuery .= implode($asRowSeparators[$sStatement], $asSelection); - } - } - //default value for select - elseif($sStatement=='select') - { - $sQuery .= " ".$sKeyWord." * "; - } - } - - return $this->getArrayQuery($sQuery, $bStringOnly); - } - - private function cleanSql(&$oData) - { - cleanData($oData, 'mysql_real_escape_string'); - } -} - class Session extends PhpObject { private $iUserId; @@ -874,21 +543,8 @@ class MyThoughts extends PhpObject $this->asSettings = array(); } - public function register($sLogin, $sPass) - { - $asData = array('user'=>$sLogin, 'pass'=>$sPass); - $bRegistered = $this->oSession->register($asData); - if($bRegistered) - { - $this->addThought(file_get_contents(self::WELCOME_MSG_FILE)); - } - return $bRegistered; - } - public function logMeIn($sLogin, $sPass) - { - return $this->oSession->logMeIn($sLogin, $sPass); - } + public function logMeOut() { @@ -928,12 +584,7 @@ class MyThoughts extends PhpObject die(); } - public function addThought($sThought) - { - $asThought = array('thought'=>$this->encodeThought($sThought)); - $asThought[MySqlManager::getId(MySqlManager::USERS_TABLE)] = $this->oSession->getUserId(); - return $this->oMySql->insertRow(MySqlManager::THOUGHTS_TABLE, $asThought); - } + public function updateThought($iThoughtId, $sThought) { @@ -943,15 +594,7 @@ class MyThoughts extends PhpObject $this->oMySql->updateRow(MySqlManager::THOUGHTS_TABLE, $asConstraints, $asValues); } - private function encodeThought($sthought) - { - return base64_encode(serialize(explode("\n", $this->shuffleText($sthought)))); - } - - private function decodeThought($sEncodedThought) - { - return $this->shuffleText(implode("\n", unserialize(base64_decode($sEncodedThought)))); - } + private function shuffleText($sText) { @@ -1139,15 +782,6 @@ class MyThoughts extends PhpObject return $oErrorMask->getMask(); } - public function getPage() - { - $this->oMenuMask->setTag('calendar', $this->oCalendar->getCalendar()); - $this->oMainMask->setTag('menu', $this->oMenuMask->getMask()); - $this->oMainMask->setTag('content', $this->oPageMask->getMask()); - $this->oMainMask->setTag('errors', $this->collectErrors()); - $this->oMainMask->setTag('post_token', $this->oSession->getNewPostToken()); - return $this->oMainMask->getMask(); - } } class Calendar extends PhpObject diff --git a/functions.js b/functions.js deleted file mode 100755 index dbb4490..0000000 --- a/functions.js +++ /dev/null @@ -1,54 +0,0 @@ -function emptyBox(element, text) -{ - //var textarea = $('#thoughts_form textarea[name="thoughts"]'); - if(element.value == text) - { - element.value = ''; - } - else if(element.value == '') - { - element.value = text; - } -} - -function setHeight(element) -{ - var padtext = element.value; - var height = Math.max(300, 130 + Math.round((padtext.length / 85 + padtext.split("\n").length) * 20)); - //alert(height); - element.style.height = height+'px'; -} - -function goTo(url) -{ - window.location.href = url; -} - -function addInput(form, name, type, value) -{ - var registerInput = document.createElement('input'); - registerInput.setAttribute('type', type); - registerInput.setAttribute('name', name); - registerInput.setAttribute('value', value); - document.forms[form].appendChild(registerInput); -} - -/* -texts = new Object(); -texts['thoughts'] = 'Talk to me.'; -texts['login'] = 'Nickname'; -texts['pass'] = 'Password'; - -window.onload = function () -{ - for (i in texts) - { - var id = document.getElementById(i); - if(id) - { - id.addEventListener('focus', function() {emptyBox(this, texts[this.name]);}, false); - id.addEventListener('blur', function() {emptyBox(this, texts[this.name]);}, false); - } - } -}; -*/ \ No newline at end of file diff --git a/images/bg.jpg b/images/bg.jpg new file mode 100755 index 0000000000000000000000000000000000000000..c818cd33f8d12725dda85f3a8304e469cb6b62d6 GIT binary patch literal 221216 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ⅇdb^&77 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

x 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%0A7>alG9)Uari`#BX}mmyRZ~qtdG2 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 literal 0 HcmV?d00001 diff --git a/images/icons-white.png b/images/icons-white.png new file mode 100755 index 0000000000000000000000000000000000000000..2ec87731f69b12483edc1edb26d5ab55cb7d9cd9 GIT binary patch literal 7196 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 literal 0 HcmV?d00001 diff --git a/images/jquery-te.png b/images/jquery-te.png new file mode 100755 index 0000000000000000000000000000000000000000..f809fb2860ade6355b53c2aebf7e1d21c4791797 GIT binary patch literal 2603 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 JPDHLkV1h5ZwaWki diff --git a/inc/auth.php b/inc/auth.php new file mode 100755 index 0000000..2aedf19 --- /dev/null +++ b/inc/auth.php @@ -0,0 +1,174 @@ +oMySql = $oMySql; + $this->setUserId(0); + $this->sApiKey = $sApiKey; + if($bAutoLogin) $this->autoLogIn(); + } + + private function setUserId($iUserId) + { + $this->iUserId = $iUserId; + } + + public function getUserId() + { + return $this->iUserId; + } + + public function isLoggedIn() + { + return ($this->getUserId() > 0); + } + + public function logMeIn($sToken) + { + $sDesc = ''; + if($sToken!='') + { + $sLoginToken = addslashes(strstr($sToken, self::TOKEN_SEP, true)); + $sPassToken = substr(strstr($sToken, self::TOKEN_SEP), strlen(self::TOKEN_SEP)); + if($sLoginToken!='' && $sPassToken!='') + { + $asEmpl = $this->oMySql->selectRow(MyThoughts::USER_TABLE, array("MD5(".MySqlManager::getText(MyThoughts::USER_TABLE).")"=>$sLoginToken)); + if(!empty($asEmpl)) + { + if(self::CheckPassword($sPassToken, $asEmpl['pass'])) + { + $this->setUserId($asEmpl[MySqlManager::getId(MyThoughts::USER_TABLE)]); + $this->resetAuthCookie($this->getUserId()); + } + else $sDesc = 'wrong password'; + } + else $sDesc = 'unknown nickname'; + } + else $sDesc = 'corrupted token, please login again'; + } + else $sDesc = 'no credentials has been received by the server'; + + return MyThoughts::getJsonResult($this->isLoggedIn(), $sDesc); + } + + public function autoLogIn() + { + if(isset($_COOKIE[self::USER_COOKIE_PASS])) + { + $sCookie = $_COOKIE[self::USER_COOKIE_PASS]; + $iUserId = addslashes(strstr($sCookie, self::TOKEN_SEP, true)); + $sCookie = substr(strstr($sCookie, self::TOKEN_SEP), strlen(self::TOKEN_SEP)); + + $asEmpl = $this->oMySql->selectRow(MyThoughts::USER_TABLE, array(MySqlManager::getId(MyThoughts::USER_TABLE)=>$iUserId)); + if(!empty($asEmpl)) + { + if($sCookie==$asEmpl['cookie']) + { + $this->setUserId($asEmpl[MySqlManager::getId(MyThoughts::USER_TABLE)]); + + //Reset pass once a day + if(mb_substr($asEmpl['led'], 0, 10) != date('Y-m-d')) $this->resetAuthCookie($this->getUserId()); + } + else $this->addError('token corrompu pour le user '.$asEmpl[MySqlManager::getId(MyThoughts::USER_TABLE)]); + } + else $this->addError('Utilisateur '.$iUserId.' inconnu'); + } + } + + public function addUser($sSafeNickName, $sNickName, $bLogMeIn=false) + { + $sPass = self::HashPassword(self::getLoginToken($sSafeNickName)); + $bExist = $this->oMySql->pingValue(MyThoughts::USER_TABLE, array(MySqlManager::getText(MyThoughts::USER_TABLE)=>$sSafeNickName)); + if($bExist) return -1; + else + { + $iUserId = $this->oMySql->insertRow(MyThoughts::USER_TABLE, array(MySqlManager::getText(MyThoughts::USER_TABLE)=>$sSafeNickName, 'nickname'=>$sNickName)); + if($iUserId>0) + { + $this->resetPass($iUserId); + if($bLogMeIn) $this->logMeIn(md5($sSafeNickName).self::TOKEN_SEP.$this->getLoginToken($sSafeNickName)); + } + } + return $iUserId; + } + + //TODO integrate with logMeIn() + public function checkApiKey($sApiKey) + { + return ($this->sApiKey!='' && $sApiKey==$this->sApiKey); + } + + private function resetPass($iUserId=0) + { + $sUserIdCol = MySqlManager::getId(MyThoughts::USER_TABLE); + $sUserTextCol = MySqlManager::getText(MyThoughts::USER_TABLE); + + $asInfo = array('select'=>array($sUserIdCol, $sUserTextCol), 'from'=>MyThoughts::USER_TABLE); + if($iUserId>0) $asInfo['constraint'] = array($sUserIdCol=>$iUserId); + + $asUsers = $this->oMySql->selectRows($asInfo); + foreach($asUsers as $asUser) + { + $sToken = self::HashPassword(self::getLoginToken($asUser[$sUserTextCol])); + $this->oMySql->updateRow(MyThoughts::USER_TABLE, array(MySqlManager::getId(MyThoughts::USER_TABLE)=>$asUser[$sUserIdCol]), array('pass'=>$sToken)); + } + } + + private static function getLoginToken($sPass) + { + //Add Server Name + $sServerName = array_key_exists('SERVER_NAME', $_SERVER)?$_SERVER['SERVER_NAME']:$_SERVER['PWD']; + $sAppPath = $_SERVER['REQUEST_SCHEME'].'://'.str_replace(array('http://', 'https://'), '', $sServerName.dirname($_SERVER['SCRIPT_NAME'])); + $_GET['serv_name'] = $sAppPath.(mb_substr($sAppPath, -1)!='/'?'/':''); + return md5($sPass.$_GET['serv_name']); + } + + private function resetAuthCookie($iUserId) + { + $sNewPass = self::getAuthCookie($iUserId); + $iTimeLimit = time()+60*60*24*30; + //mysqli_query($con, "UPDATE EMPLOYEE SET COOKIE = '".addslashes($sNewPass)."' WHERE ID = ".$iUserId); + $this->oMySql->updateRow(MyThoughts::USER_TABLE, array(MySqlManager::getId(MyThoughts::USER_TABLE)=>$iUserId), array("cookie"=>$sNewPass)); + setcookie(self::USER_COOKIE_PASS, $iUserId.self::TOKEN_SEP.$sNewPass, $iTimeLimit); + } + + private static function getAuthCookie() + { + return self::HashPassword + ( + $_SERVER['HTTP_USER_AGENT']. + $_SERVER['REMOTE_ADDR']. + $_SERVER['REQUEST_TIME']. + mb_strstr(microtime(), ' ', true). + $_SERVER['SERVER_SIGNATURE']. + $_SERVER['SERVER_ADMIN'] + ); + } + + private static function HashPassword($sPass) + { + return password_hash($sPass, self::ALGO, array('cost'=>self::COST)); + } + + private static function CheckPassword($sPass, $sHash) + { + return password_verify($sPass, $sHash); + } +} + +?> \ No newline at end of file diff --git a/inc/calendar.php b/inc/calendar.php new file mode 100755 index 0000000..610af0c --- /dev/null +++ b/inc/calendar.php @@ -0,0 +1,142 @@ +oMySql = $oMySql; + $this->oSession = $oSession; + $this->oMask = new Mask('calendar'); + $this->iYear = 0; + $this->iMonth = 0; + } + + public function setDate($iYear=0, $iMonth=0) + { + if($iYear==0) + { + $iYear = date('Y'); + } + if($iMonth==0) + { + $iMonth = date('m'); + } + $this->iYear = $iYear; + $this->iMonth = $iMonth; + } + + private function getThoughts() + { + //TODO essayer avec selectRows + $sQuery = "SELECT DATE_FORMAT(led, '%d') AS day + FROM ".MySqlManager::THOUGHTS_TABLE." + WHERE ".MySqlManager::getId(MySqlManager::USERS_TABLE)." = ".$this->oSession->getUserId()." + AND YEAR(led) = ".$this->iYear." + AND MONTH(led) = ".$this->iMonth." + GROUP BY day + ORDER BY day"; + + return $this->oMySql->getArrayQuery($sQuery, true); + } + + private function getUpdatedLink($asParams) + { + $sCurrentVariables = $_SERVER['QUERY_STRING']; + $asCurrentVariables = explode('&', $sCurrentVariables); + foreach($asCurrentVariables as $sParam) + { + $sKey = strstr($sParam, '=', true); + $sValue = substr(strstr($sParam, '='), 1); + $asVariables[$sKey] = $sValue; + } + return '?'.implodeAll(array_merge($asVariables, $asParams), '=', '&'); + } + + private function getLink($iOffset) + { + $iTimeStamp = mktime(0, 0, 0, $this->iMonth + $iOffset, 1, $this->iYear); + return $this->getUpdatedLink(array(self::CAL_MONTH=>date('n', $iTimeStamp), self::CAL_YEAR=>date('Y', $iTimeStamp))); + } + + private function setMaskItems() + { + //week starting on the sunday : offset = 0, monday : offset = 1 + $iOffset = 1; + + //days in the month + $iMonthLastDay = date('d', mktime(0, 0, 0, $this->iMonth+1, 0, $this->iYear)); + $asDays = range(1, $iMonthLastDay); + + $iDayNb = 1 - date($iOffset?'N':'w', mktime(0, 0, 0, $this->iMonth, 1, $this->iYear)) + $iOffset; + $iCalendarLastDay = $iMonthLastDay + (7 - date($iOffset?'N':'w', mktime(0, 0, 0, $this->iMonth+1, 0, $this->iYear))) + $iOffset; + + //days with thoughts + $asThoughts = $this->getThoughts(); + + while($iDayNb < $iCalendarLastDay) + { + $iCurrentDayTimeStamp = mktime(0, 0, 0, $this->iMonth, $iDayNb, $this->iYear); + $sItemDate = date('d', $iCurrentDayTimeStamp); + + //new week + if(date('w', $iCurrentDayTimeStamp) == $iOffset) + { + $this->oMask->newInstance('WEEK'); + } + + //day within month + if(date('n', $iCurrentDayTimeStamp)==$this->iMonth) + { + $bThoughts = in_array($iDayNb, $asThoughts); + + $sItemClass = $bThoughts?'full':'empty'; + $sItemLink = $bThoughts?$this->getUpdatedLink(array('d'=>date(MyThoughts::URL_DATE_FORMAT, $iCurrentDayTimeStamp), 'p'=>'r')):'#'; + $sItemLinkTitle = $bThoughts?'See my thoughts on '.date(MyThoughts::LAYOUT_DATE_FORMAT, $iCurrentDayTimeStamp):''; + } + else + { + $sItemClass = 'disabled'; + $sItemLink = '#'; + $sItemLinkTitle = ''; + } + + $this->oMask->addInstance('DAY', array('item_day'=>$sItemDate, 'item_class'=>$sItemClass, 'item_link'=>$sItemLink, 'item_link_title'=>$sItemLinkTitle)); + $iDayNb++; + } + + //column titles + $asDayNames = array('1'=>'Mon', '2'=>'Tue', '3'=>'Wed', '4'=>'Thu', '5'=>'Fri', '6'=>'Sat', $iOffset?'7':'0'=>'Sun'); + ksort($asDayNames); + foreach($asDayNames as $sDayName) + { + $this->oMask->addInstance('TITLE', array('day_name'=>$sDayName)); + } + + } + + public function getCalendar() + { + $sResult = ''; + if($this->iYear!=0 && $this->iMonth!=0) + { + $this->oMask->setTag('link_prev', $this->getLink(-1)); + $this->oMask->setTag('current_month', date('F', mktime(0, 0, 0, $this->iMonth, 1, $this->iYear))); + $this->oMask->setTag('link_next', $this->getLink(1)); + $this->setMaskItems(); + $sResult = $this->oMask->getMask(); + } + return $sResult; + } +} +?> \ No newline at end of file diff --git a/inc/mythoughts.php b/inc/mythoughts.php new file mode 100755 index 0000000..9c8b4da --- /dev/null +++ b/inc/mythoughts.php @@ -0,0 +1,342 @@ +oClassManagement = $oClassManagement; + $this->setContext($sProcessPage); + + //Load classes + $this->oClassManagement->incClass('mysqlmanager'); + $this->oClassManagement->incClass('auth', true); + //$this->oClassManagement->incClass('calendar', true); + + //Init objects + $this->oMySql = new MySqlManager(Settings::DB_SERVER, Settings::DB_LOGIN, Settings::DB_PASS, Settings::DB_NAME, self::getSqlOptions() , Settings::DB_ENC); + if($this->oMySql->sDbState == MySqlManager::DB_NO_DATA) $this->install(); + else $this->oAuth = new Auth($this->oMySql, Settings::API_KEY); + } + + private function install() + { + $this->oAuth = new Auth($this->oMySql, Settings::API_KEY, false); + + //Install DB + $this->oMySql->install(); + $this->addUser('franzz'); + } + + private function setContext($sProcessPage) + { + //Browser <> PHP <> MySql synchronization + date_default_timezone_set(Settings::TIMEZONE); + ini_set('default_charset', Settings::TEXT_ENC); + header('Content-Type: text/html; charset='.Settings::TEXT_ENC); + mb_internal_encoding(Settings::TEXT_ENC); + mb_http_output(Settings::TEXT_ENC); + mb_http_input(Settings::TEXT_ENC); + mb_language('uni'); + mb_regex_encoding(Settings::TEXT_ENC); + + $this->asContext['process_page'] = basename($sProcessPage); + + $sServerName = array_key_exists('SERVER_NAME', $_SERVER)?$_SERVER['SERVER_NAME']:$_SERVER['PWD']; + $sAppPath = 'http://'.str_replace('http://', '', $sServerName.dirname($_SERVER['SCRIPT_NAME'])); + $this->asContext['serv_name'] = $sAppPath.(mb_substr($sAppPath, -1)!='/'?'/':''); + } + + public function addUncaughtError($sError) + { + $this->addError('Uncaught errors:'."\n".$sError); + } + + /* Authorizations handling */ + + public function isLoggedIn() + { + return $this->oAuth->isLoggedIn(); + } + + public function logMeIn($sToken) + { + return $this->oAuth->logMeIn($sToken); + } + + public function checkApiKey($sApiKey) + { + return $this->oAuth->checkApiKey($sApiKey); + } + + /* Building main pages */ + + public function getPage($bLoggedIn) + { + /*$asMaskPaths = glob('masks/*.html'); + $asMaskNames = array_map('basename', $asMaskPaths, array_fill(1, count($asMaskPaths), '.html'));*/ + + //Constants + $asPages = array('logon', 'write', 'settings', 'template'); + foreach($asPages as $sPage) $asGlobalVars['consts']['pages'][$sPage] = $this->getPageContent($sPage); + $asGlobalVars['consts']['token_sep'] = Auth::TOKEN_SEP; + $asGlobalVars['consts']['error'] = self::ERROR; + $asGlobalVars['consts']['success'] = self::SUCCESS; + $asGlobalVars['consts']['context'] = $this->asContext; + $asGlobalVars['vars']['id'] = $this->oAuth->getUserId(); + $asGlobalVars['vars']['log_in'] = $bLoggedIn; + + //Main Page + $sPage = $this->getPageContent('index'); + $sPage = str_replace('asGlobalVars', json_encode($asGlobalVars), $sPage); + return $sPage; + } + + private function getPageContent($sPage) + { + $sPageFile = 'masks/'.$sPage.'.html'; + return file_get_contents($sPageFile); + } + + /* DB structure. See MySqlManager::__construct */ + + private static function getSqlOptions() + { + return array + ( + 'tables' => array + ( + self::USER_TABLE =>array(MySqlManager::getText(self::USER_TABLE), 'nickname', 'pass', 'cookie'), + self::THOUGHT_TABLE =>array(MySqlManager::getId(self::USER_TABLE), + MySqlManager::getText(self::THOUGHT_TABLE)), + self::SETTINGS_TABLE=>array(MySqlManager::getId(self::USER_TABLE), + MySqlManager::getText(self::SETTINGS_TABLE), + 'value') + ), + 'types' => array + ( + MySqlManager::getText(self::USER_TABLE)=>"varchar(50) NOT NULL", + 'nickname'=>'varchar(60) NOT NULL', + 'pass'=>"varchar(256) NOT NULL", + 'cookie'=>"varchar(255) NOT NULL", + MySqlManager::getText(self::THOUGHT_TABLE)=>"longtext", + MySqlManager::getText(self::SETTINGS_TABLE)=>"varchar(20) NOT NULL", + 'value'=>"varchar(20) NOT NULL" + ), + 'constraints' => array + ( + self::USER_TABLE=>"UNIQUE KEY `username` (`".MySqlManager::getText(self::USER_TABLE)."`)" + ), + 'cascading_delete' => array + ( + self::USER_TABLE=>array(self::SETTINGS_TABLE) + ) + ); + } + + /* My Thoughts public functions */ + + public function register($sNickName) + { + $iUserId = $this->addUser($sNickName, true); + $bSuccess = false; + $sDesc = ''; + switch($iUserId) + { + case -1: + $sDesc = 'There is already a user using this nickname, sorry!'; + break; + case 0: + $sDesc = 'A database error occured. Contact admin'; + break; + default: + $bSuccess = true; + } + return self::getJsonResult($bSuccess, $sDesc); + } + + public function updateThought($sThought, $iThoughtId=0) + { + if($iThoughtId==0) + { + $iThoughtId = $this->addThought($sThought); + $sDesc = 'created'; + } + else + { + $asKeys = array(MySqlManager::getId(self::USER_TABLE) => $this->oAuth->getUserId(), + MySqlManager::getId(self::THOUGHT_TABLE)=> $iThoughtId); + $asThought = array(MySqlManager::getText(self::THOUGHT_TABLE) => self::encodeThought($sThought)); + $iThoughtId = $this->oMySql->updateRow(self::THOUGHT_TABLE, $asKeys, $asThought); + $sDesc = 'updated'; + } + $bSuccess = ($iThoughtId>0); + $sDesc = 'thought '.($bSuccess?'':'not ').$sDesc; + return self::getJsonResult($bSuccess, $sDesc, $this->getThoughtInfo($iThoughtId)); + } + + /* My Thoughts private functions */ + + private function addUser($sNickName, $bLogMeIn=false) + { + $iUserId = $this->oAuth->addUser(self::getSafeNickName($sNickName), $sNickName, $bLogMeIn); + if($iUserId>0) $this->addThought(file_get_contents(self::WELCOME_MSG_FILE), $iUserId); + return $iUserId; + } + + private function addThought($sThought, $iUserId=-1) + { + if($iUserId==-1) $iUserId = $this->oAuth->getUserId(); + if($iUserId!=0) + { + $asThought = array( MySqlManager::getId(self::USER_TABLE) => $iUserId, + MySqlManager::getText(self::THOUGHT_TABLE) => self::encodeThought($sThought)); + $ithoughtId = $this->oMySql->insertRow(self::THOUGHT_TABLE, $asThought); + } + else $this->addError('Adding a thought with no user id'); + return $ithoughtId; + } + + private function getThoughtInfo($iThoughtId, $bThoughtContent=false) + { + $asThoughtInfo = array(); + if($iThoughtId>0) + { + $asThoughtInfo = $this->oMySql->selectRow(self::THOUGHT_TABLE, $iThoughtId); + if(!$bThoughtContent) unset($asThoughtInfo[MySqlManager::getText(self::THOUGHT_TABLE)]); + } + else $this->addError('getting thought info with no thought id'); + return $asThoughtInfo; + } + + /* Static toolbox functions */ + + private static function encodeThought($sthought) + { + return base64_encode(serialize(explode("\n", self::shuffleText($sthought)))); + } + + private static function decodeThought($sEncodedThought) + { + return self::shuffleText(implode("\n", unserialize(base64_decode($sEncodedThought)))); + } + + private static function shuffleText($sText) + { + $sRandomText = "let's_mess%a&bit;with~it,!just§for¨the^sake*of-it"; + for($iIndex=0; $iIndex < strlen($sText); $iIndex++) + { + $sText[$iIndex] = $sRandomText[$iIndex%strlen($sRandomText)] ^ $sText[$iIndex]; + } + return $sText; + } + + public static function getJsonResult($bSuccess, $sDesc='', $asVars=array()) + { + header('Content-type: application/json'); + return json_encode(array('result'=>$bSuccess?self::SUCCESS:self::ERROR, 'desc'=>ToolBox::mb_ucwords($sDesc))+$asVars); + } + + public function getSafeNickName($sNickName) + { + return $sNickName; + } + + public static function getDateTimeDesc($oTime) + { + $iTimeStamp = is_numeric($oTime)?$oTime:strtotime($oTime); + $sCurTimeStamp = time(); + + $asWeekDays = array('monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'satursday', 'sunday'); + $asMonths = array('january', 'february', 'march', 'april', 'may', 'june', 'july', 'august', 'september', 'october', 'november', 'december'); + $sSep = '|'; + $sFormat = 'Y'.$sSep.'n'.$sSep.'W'.$sSep.'N'.$sSep.'j'.$sSep.'G'; + list($sYear, $sMonth, $sWeek, $sWeekDay, $sDay, $sHour) = explode($sSep, date($sFormat, $iTimeStamp)); + list($sCurYear, $sCurMonth, $sCurWeek, $sCurWeekDay, $sCurDay, $sCurHour) = explode($sSep, date($sFormat, $sCurTimeStamp)); + + $sDesc = ''; + if($iTimeStamp>$sCurTimeStamp) $sDesc = 'in the future'; + elseif($sCurTimeStamp-$iTimeStamp<60) $sDesc = 'a few seconds ago'; + elseif($sCurTimeStamp-$iTimeStamp<60*10) $sDesc = 'a few minutes ago'; + elseif($sCurTimeStamp-$iTimeStamp<60*20) $sDesc = '15 minutes ago'; + elseif($sCurTimeStamp-$iTimeStamp<60*50) $sDesc = 'half an hour ago'; + elseif($sCurTimeStamp-$iTimeStamp<60*60*2) $sDesc = 'an hour ago'; + elseif($sCurTimeStamp-$iTimeStamp<60*60*24 && $sDay==$sCurDay) $sDesc = 'at '.$sHour.' o\'clock'; + elseif($sCurTimeStamp-$iTimeStamp<60*60*24) $sDesc = 'yesterday'; + elseif($sCurTimeStamp-$iTimeStamp<60*60*24*7 && $sWeek==$sCurWeek) $sDesc = $asWeekDays[$sWeekDay-1]; + elseif($sCurTimeStamp-$iTimeStamp<60*60*24*7) $sDesc = 'last '.$asWeekDays[$sWeekDay-1]; + elseif($sCurTimeStamp-$iTimeStamp<60*60*24*9) $sDesc = 'a week ago'; + elseif($sCurTimeStamp-$iTimeStamp<60*60*24*12) $sDesc = '10 days ago'; + elseif($sCurTimeStamp-$iTimeStamp<60*60*24*16) $sDesc = '2 weeks ago'; + elseif($sCurTimeStamp-$iTimeStamp<60*60*24*23) $sDesc = '3 weeks ago'; + elseif($sCurTimeStamp-$iTimeStamp<60*60*24*31 && $sMonth==$sCurMonth) $sDesc = 'on '.$asMonths[$sMonth-1].', '.$sDay; + elseif($sCurTimeStamp-$iTimeStamp<60*60*24*30*2 && $sMonth==($sCurMonth-1)) $sDesc = 'last month'; + elseif($sCurTimeStamp-$iTimeStamp<60*60*24*365 && $sYear==$sCurYear) $sDesc = 'in '.$asMonths[$sMonth-1]; + elseif($sCurTimeStamp-$iTimeStamp<60*60*24*365) $sDesc = 'in '.$asMonths[$sMonth-1].' '.$sYear; + elseif($sYear==($sCurYear-1)) $sDesc = 'last year'; + else $sDesc = 'in '.$sYear; + + //return self::mb_ucfirst($sDesc); + return $sDesc; + } +} + +?> \ No newline at end of file diff --git a/index.php b/index.php index 52d725e..dd2ff0b 100755 --- a/index.php +++ b/index.php @@ -1,5 +1,86 @@ isLoggedIn(); + +$sResult = ''; +if($sAction=='logmein') $sResult = $oMyThoughts->logMeIn($sToken); +elseif($sAction!='' && $bLoggedIn) +{ + switch ($sAction) + { + case 'update': + $sResult = $oMyThoughts->updateThought($sContent, $iId); + break; + default: + $sResult = MyThoughts::getJsonResult(false, MyThoughts::NOT_FOUND); + } +} +elseif($sAction!='' && !$bLoggedIn) +{ + if($oMyThoughts->checkApiKey($iApiKey)) + { + switch ($sAction) + { + case '': + //$sResult = $oMyThoughts->apifunction(); + break; + default: + $sResult = MyThoughts::getJsonResult(false, MyThoughts::NOT_FOUND); + } + } + elseif($sAction=='register') $sResult = $oMyThoughts->register($sNickName); + else $sResult = MyThoughts::getJsonResult(false, MyThoughts::UNAUTHORIZED); +} +else $sResult = $oMyThoughts->getPage($bLoggedIn); + +$sDebug = ob_get_clean(); +if(Settings::DEBUG && $sDebug!='') $oMyThoughts->addUncaughtError($sDebug); + +echo $sResult; + +/* + //load classes session_start(); require_once 'config.php'; @@ -9,8 +90,6 @@ cleanPost($_POST); cleanPost($_GET); cleanPost($_REQUEST); -/* Reserved Variables and Default Values */ - //general $sPage = (isset($_GET['p']) && $_GET['p']!='')?$_GET['p']:'w'; $sPostToken = isset($_POST['post_token'])?$_POST['post_token']:''; @@ -106,4 +185,6 @@ else } } echo $oMyThougths->getPage(); + +*/ ?> \ No newline at end of file diff --git a/log.html b/log.html new file mode 100755 index 0000000..e69de29 diff --git a/mask/index.html b/mask/index.html deleted file mode 100755 index ed06854..0000000 --- a/mask/index.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - Thoughts • #title# - - -

- - - \ No newline at end of file diff --git a/mask/logon.html b/mask/logon.html deleted file mode 100755 index ce746c0..0000000 --- a/mask/logon.html +++ /dev/null @@ -1,20 +0,0 @@ -
-
-
-

Nickname ->

-

Password ->

-
-

-

-
-
- \ No newline at end of file diff --git a/mask/write_thought.html b/mask/write_thought.html deleted file mode 100755 index a050e22..0000000 --- a/mask/write_thought.html +++ /dev/null @@ -1,77 +0,0 @@ -
-
-
-
- -

#last_saved#

-
- -
-
- \ No newline at end of file diff --git a/mask/calendar.html b/masks/calendar.html similarity index 100% rename from mask/calendar.html rename to masks/calendar.html diff --git a/mask/errors.html b/masks/errors.html similarity index 100% rename from mask/errors.html rename to masks/errors.html diff --git a/masks/home.html b/masks/home.html new file mode 100755 index 0000000..8964acb --- /dev/null +++ b/masks/home.html @@ -0,0 +1,6 @@ + \ No newline at end of file diff --git a/masks/index.html b/masks/index.html new file mode 100755 index 0000000..be88851 --- /dev/null +++ b/masks/index.html @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + My Thoughts + + +
+ + + \ No newline at end of file diff --git a/masks/logon.html b/masks/logon.html new file mode 100755 index 0000000..7d60567 --- /dev/null +++ b/masks/logon.html @@ -0,0 +1,56 @@ +
+
+
+

+

+
+

+

+
+
+ \ No newline at end of file diff --git a/mask/menu.html b/masks/menu.html similarity index 100% rename from mask/menu.html rename to masks/menu.html diff --git a/mask/read_thought.html b/masks/read_thought.html similarity index 100% rename from mask/read_thought.html rename to masks/read_thought.html diff --git a/mask/settings.html b/masks/settings.html similarity index 100% rename from mask/settings.html rename to masks/settings.html diff --git a/masks/template.html b/masks/template.html new file mode 100755 index 0000000..0e202a1 --- /dev/null +++ b/masks/template.html @@ -0,0 +1,10 @@ + + +
+ +#errors# \ No newline at end of file diff --git a/masks/write.html b/masks/write.html new file mode 100755 index 0000000..d986aaf --- /dev/null +++ b/masks/write.html @@ -0,0 +1,176 @@ +
+
+ + +
+ \ No newline at end of file diff --git a/scripts/functions.js b/scripts/functions.js new file mode 100755 index 0000000..6104c81 --- /dev/null +++ b/scripts/functions.js @@ -0,0 +1,588 @@ +function emptyBox(element, text) +{ + //var textarea = $('#thoughts_form textarea[name="thoughts"]'); + if(element.value == text) + { + element.value = ''; + } + else if(element.value == '') + { + element.value = text; + } +} + +function setHeight(element) +{ + var padtext = element.value; + var height = Math.max(300, 130 + Math.round((padtext.length / 85 + padtext.split("\n").length) * 20)); + //alert(height); + element.style.height = height+'px'; +} + +function goTo(url) +{ + window.location.href = url; +} + +function addInput(form, name, type, value) +{ + var registerInput = document.createElement('input'); + registerInput.setAttribute('type', type); + registerInput.setAttribute('name', name); + registerInput.setAttribute('value', value); + document.forms[form].appendChild(registerInput); +} + +/* +texts = new Object(); +texts['thoughts'] = 'Talk to me.'; +texts['login'] = 'Nickname'; +texts['pass'] = 'Password'; + +window.onload = function () +{ + for (i in texts) + { + var id = document.getElementById(i); + if(id) + { + id.addEventListener('focus', function() {emptyBox(this, texts[this.name]);}, false); + id.addEventListener('blur', function() {emptyBox(this, texts[this.name]);}, false); + } + } +}; +*/ + +function getInfo(action, fOnSuccess, vars, fOnError, sType/*, bProcessIcon*/) +{ + if(!vars) vars = {}; + sType = sType || 'GET'; + //bProcessIcon = bProcessIcon || false; + //if(bProcessIcon) self.addBufferIcon(); + + vars['a'] = action; + $.ajax( + { + url: oMyThoughts.consts.context.process_page, + type:sType, + data: vars, + dataType: 'json' + }) + .done(function(oData) + { + if(oData.result==oMyThoughts.consts.error) + { + if(!fOnError) console.log(oData.desc); + else fOnError(oData.desc); + } + else + { + //if(bProcessIcon) self.resetIcon(); + fOnSuccess(oData); + } + }) + .fail(function(jqXHR, textStatus, errorThrown) + { + //if(bProcessIcon) self.resetIcon(); + if(!fOnError) console.log(textStatus+' '+errorThrown); + else fOnError(textStatus); + }); +} + +function feedback(sClass, sMsg, $Box) +{ + $Box = $Box || $('body'); + sMsg = sMsg || ''; + var sHeight = 20; + $('.feedback').each(function(){sHeight += $(this).outerHeight() + 10;}); + if(sClass=='error' && sMsg=='') sMsg = 'Oops ! An unknown error occured'; + $('', {'class':'feedback round '+sClass}) + .css('top', sHeight+'px') + //.append($('', {'class':'fa fa-standalone fa-'+sClass})) + .append(addPunctuation(sMsg)) + .appendTo($Box) + .slideDown('fast') + .delay(5000) + .slideUp('fast', function(){$(this).remove();}); +}; + +function addPunctuation(sMsg) +{ + var asPunctuations = ['?', '!', '.', ',', ':', ';', '-', '/']; + return sMsg+($.inArray(sMsg.slice(-1), asPunctuations)==-1?'.':''); +}; + +function copyArray(asArray) +{ + return asArray.slice(0); //trick to copy array +} + +$.prototype.addButton = function(sType, sTitle, oClickLink, sId, sButtonClass) +{ + $This = $(this); + var asAttributes = {id:(sId || ''), + 'class':'main-button fa-stack fa-lg'+(typeof sButtonClass != 'undefined'?' '+sButtonClass:''), + title:sTitle}; + + //Link + var bLink = (typeof oClickLink == 'string'); + if(bLink) + { + asAttributes.href = oClickLink; + //asAttributes.target = '_blank'; + } + var $Button = $('', asAttributes) + .append($('', {'class':'fa fa-circle fa-stack-2x'})) + .append($('', {'class':'fa fa-stack-1x fa-inverse fa-'+sType})) + //.append($('', {'class':'value'}).text(sTitle)) + .appendTo($This); + + //Function + if(!bLink) $Button.click(function(e){e.preventDefault(); oClickLink($(this));}); + + return $This; +}; + + +$.prototype.addDefaultValue = function(sDefaultValue, sInitValue) +{ + sInitValue = sInitValue || ''; + return $(this) + .data('default_value', sDefaultValue) + .val(sInitValue==''?sDefaultValue:sInitValue) + .addClass(sInitValue==''?'default_text':'') + .focus(function() + { + var $This = $(this); + if($This.val() == $This.data('default_value')) $This.val(''); + $This.removeClass('default_text'); + }) + .blur(function() + { + var $This = $(this); + if($This.val() == '') $This.val($This.data('default_value')).addClass('default_text'); + }); +}; + +$.prototype.checkForm = function(sSelector) +{ + sSelector = sSelector || 'input[type="password"], input[type="text"], textarea'; + var $This = $(this); + var bOk = true; + $This.find(sSelector).each(function() + { + $This = $(this); + bOk = bOk && $This.val()!='' && $This.val()!=$This.data('default_value'); + }); + return bOk; +}; + +$.fn.toEm = function(settings){ + settings = jQuery.extend({ + scope: 'body' + }, settings); + var that = parseInt(this[0],10), + scopeTest = jQuery('
 
').appendTo(settings.scope), + scopeVal = scopeTest.height(); + scopeTest.remove(); + return (that / scopeVal).toFixed(8) + 'em'; +}; + +$.fn.toPx = function(settings){ + settings = jQuery.extend({ + scope: 'body' + }, settings); + var that = parseFloat(this[0]), + scopeTest = jQuery('
 
').appendTo(settings.scope), + scopeVal = scopeTest.height(); + scopeTest.remove(); + return Math.round(that * scopeVal) + 'px'; +}; + +function getElem(anchor, path) +{ + return (typeof path == 'object' && path.length > 1)?getElem(anchor[path.shift()], path):anchor[(typeof path == 'object')?path.shift():path]; +} + +function setElem(anchor, path, value) +{ + if(typeof path == 'object' && path.length > 1) + { + var nextlevel = path.shift(); + if(typeof anchor[nextlevel] === 'undefined') anchor[nextlevel] = {}; + if(typeof anchor[nextlevel] !== 'object') console.log('Error - setElem() : Already existing path at level'+nextlevel+'. Cancelling setElem() action'); + return setElem(anchor[nextlevel], path, value); + } + else return anchor[(typeof path == 'object')?path.shift():path] = value; +} + +function getLoginToken(sPass) +{ + if(!window.location.origin) window.location.origin = window.location.protocol + "//" + window.location.hostname + (window.location.port ? ':' + window.location.port: ''); + return md5(sPass+window.location.origin+window.location.pathname); +} + +var defaultDiacriticsRemovalap = [ + {'base':'A', 'letters':'\u0041\u24B6\uFF21\u00C0\u00C1\u00C2\u1EA6\u1EA4\u1EAA\u1EA8\u00C3\u0100\u0102\u1EB0\u1EAE\u1EB4\u1EB2\u0226\u01E0\u00C4\u01DE\u1EA2\u00C5\u01FA\u01CD\u0200\u0202\u1EA0\u1EAC\u1EB6\u1E00\u0104\u023A\u2C6F'}, + {'base':'AA','letters':'\uA732'}, + {'base':'AE','letters':'\u00C6\u01FC\u01E2'}, + {'base':'AO','letters':'\uA734'}, + {'base':'AU','letters':'\uA736'}, + {'base':'AV','letters':'\uA738\uA73A'}, + {'base':'AY','letters':'\uA73C'}, + {'base':'B', 'letters':'\u0042\u24B7\uFF22\u1E02\u1E04\u1E06\u0243\u0182\u0181'}, + {'base':'C', 'letters':'\u0043\u24B8\uFF23\u0106\u0108\u010A\u010C\u00C7\u1E08\u0187\u023B\uA73E'}, + {'base':'D', 'letters':'\u0044\u24B9\uFF24\u1E0A\u010E\u1E0C\u1E10\u1E12\u1E0E\u0110\u018B\u018A\u0189\uA779'}, + {'base':'DZ','letters':'\u01F1\u01C4'}, + {'base':'Dz','letters':'\u01F2\u01C5'}, + {'base':'E', 'letters':'\u0045\u24BA\uFF25\u00C8\u00C9\u00CA\u1EC0\u1EBE\u1EC4\u1EC2\u1EBC\u0112\u1E14\u1E16\u0114\u0116\u00CB\u1EBA\u011A\u0204\u0206\u1EB8\u1EC6\u0228\u1E1C\u0118\u1E18\u1E1A\u0190\u018E'}, + {'base':'F', 'letters':'\u0046\u24BB\uFF26\u1E1E\u0191\uA77B'}, + {'base':'G', 'letters':'\u0047\u24BC\uFF27\u01F4\u011C\u1E20\u011E\u0120\u01E6\u0122\u01E4\u0193\uA7A0\uA77D\uA77E'}, + {'base':'H', 'letters':'\u0048\u24BD\uFF28\u0124\u1E22\u1E26\u021E\u1E24\u1E28\u1E2A\u0126\u2C67\u2C75\uA78D'}, + {'base':'I', 'letters':'\u0049\u24BE\uFF29\u00CC\u00CD\u00CE\u0128\u012A\u012C\u0130\u00CF\u1E2E\u1EC8\u01CF\u0208\u020A\u1ECA\u012E\u1E2C\u0197'}, + {'base':'J', 'letters':'\u004A\u24BF\uFF2A\u0134\u0248'}, + {'base':'K', 'letters':'\u004B\u24C0\uFF2B\u1E30\u01E8\u1E32\u0136\u1E34\u0198\u2C69\uA740\uA742\uA744\uA7A2'}, + {'base':'L', 'letters':'\u004C\u24C1\uFF2C\u013F\u0139\u013D\u1E36\u1E38\u013B\u1E3C\u1E3A\u0141\u023D\u2C62\u2C60\uA748\uA746\uA780'}, + {'base':'LJ','letters':'\u01C7'}, + {'base':'Lj','letters':'\u01C8'}, + {'base':'M', 'letters':'\u004D\u24C2\uFF2D\u1E3E\u1E40\u1E42\u2C6E\u019C'}, + {'base':'N', 'letters':'\u004E\u24C3\uFF2E\u01F8\u0143\u00D1\u1E44\u0147\u1E46\u0145\u1E4A\u1E48\u0220\u019D\uA790\uA7A4'}, + {'base':'NJ','letters':'\u01CA'}, + {'base':'Nj','letters':'\u01CB'}, + {'base':'O', 'letters':'\u004F\u24C4\uFF2F\u00D2\u00D3\u00D4\u1ED2\u1ED0\u1ED6\u1ED4\u00D5\u1E4C\u022C\u1E4E\u014C\u1E50\u1E52\u014E\u022E\u0230\u00D6\u022A\u1ECE\u0150\u01D1\u020C\u020E\u01A0\u1EDC\u1EDA\u1EE0\u1EDE\u1EE2\u1ECC\u1ED8\u01EA\u01EC\u00D8\u01FE\u0186\u019F\uA74A\uA74C'}, + {'base':'OI','letters':'\u01A2'}, + {'base':'OO','letters':'\uA74E'}, + {'base':'OU','letters':'\u0222'}, + {'base':'OE','letters':'\u008C\u0152'}, + {'base':'oe','letters':'\u009C\u0153'}, + {'base':'P', 'letters':'\u0050\u24C5\uFF30\u1E54\u1E56\u01A4\u2C63\uA750\uA752\uA754'}, + {'base':'Q', 'letters':'\u0051\u24C6\uFF31\uA756\uA758\u024A'}, + {'base':'R', 'letters':'\u0052\u24C7\uFF32\u0154\u1E58\u0158\u0210\u0212\u1E5A\u1E5C\u0156\u1E5E\u024C\u2C64\uA75A\uA7A6\uA782'}, + {'base':'S', 'letters':'\u0053\u24C8\uFF33\u1E9E\u015A\u1E64\u015C\u1E60\u0160\u1E66\u1E62\u1E68\u0218\u015E\u2C7E\uA7A8\uA784'}, + {'base':'T', 'letters':'\u0054\u24C9\uFF34\u1E6A\u0164\u1E6C\u021A\u0162\u1E70\u1E6E\u0166\u01AC\u01AE\u023E\uA786'}, + {'base':'TZ','letters':'\uA728'}, + {'base':'U', 'letters':'\u0055\u24CA\uFF35\u00D9\u00DA\u00DB\u0168\u1E78\u016A\u1E7A\u016C\u00DC\u01DB\u01D7\u01D5\u01D9\u1EE6\u016E\u0170\u01D3\u0214\u0216\u01AF\u1EEA\u1EE8\u1EEE\u1EEC\u1EF0\u1EE4\u1E72\u0172\u1E76\u1E74\u0244'}, + {'base':'V', 'letters':'\u0056\u24CB\uFF36\u1E7C\u1E7E\u01B2\uA75E\u0245'}, + {'base':'VY','letters':'\uA760'}, + {'base':'W', 'letters':'\u0057\u24CC\uFF37\u1E80\u1E82\u0174\u1E86\u1E84\u1E88\u2C72'}, + {'base':'X', 'letters':'\u0058\u24CD\uFF38\u1E8A\u1E8C'}, + {'base':'Y', 'letters':'\u0059\u24CE\uFF39\u1EF2\u00DD\u0176\u1EF8\u0232\u1E8E\u0178\u1EF6\u1EF4\u01B3\u024E\u1EFE'}, + {'base':'Z', 'letters':'\u005A\u24CF\uFF3A\u0179\u1E90\u017B\u017D\u1E92\u1E94\u01B5\u0224\u2C7F\u2C6B\uA762'}, + {'base':'a', 'letters':'\u0061\u24D0\uFF41\u1E9A\u00E0\u00E1\u00E2\u1EA7\u1EA5\u1EAB\u1EA9\u00E3\u0101\u0103\u1EB1\u1EAF\u1EB5\u1EB3\u0227\u01E1\u00E4\u01DF\u1EA3\u00E5\u01FB\u01CE\u0201\u0203\u1EA1\u1EAD\u1EB7\u1E01\u0105\u2C65\u0250'}, + {'base':'aa','letters':'\uA733'}, + {'base':'ae','letters':'\u00E6\u01FD\u01E3'}, + {'base':'ao','letters':'\uA735'}, + {'base':'au','letters':'\uA737'}, + {'base':'av','letters':'\uA739\uA73B'}, + {'base':'ay','letters':'\uA73D'}, + {'base':'b', 'letters':'\u0062\u24D1\uFF42\u1E03\u1E05\u1E07\u0180\u0183\u0253'}, + {'base':'c', 'letters':'\u0063\u24D2\uFF43\u0107\u0109\u010B\u010D\u00E7\u1E09\u0188\u023C\uA73F\u2184'}, + {'base':'d', 'letters':'\u0064\u24D3\uFF44\u1E0B\u010F\u1E0D\u1E11\u1E13\u1E0F\u0111\u018C\u0256\u0257\uA77A'}, + {'base':'dz','letters':'\u01F3\u01C6'}, + {'base':'e', 'letters':'\u0065\u24D4\uFF45\u00E8\u00E9\u00EA\u1EC1\u1EBF\u1EC5\u1EC3\u1EBD\u0113\u1E15\u1E17\u0115\u0117\u00EB\u1EBB\u011B\u0205\u0207\u1EB9\u1EC7\u0229\u1E1D\u0119\u1E19\u1E1B\u0247\u025B\u01DD'}, + {'base':'f', 'letters':'\u0066\u24D5\uFF46\u1E1F\u0192\uA77C'}, + {'base':'g', 'letters':'\u0067\u24D6\uFF47\u01F5\u011D\u1E21\u011F\u0121\u01E7\u0123\u01E5\u0260\uA7A1\u1D79\uA77F'}, + {'base':'h', 'letters':'\u0068\u24D7\uFF48\u0125\u1E23\u1E27\u021F\u1E25\u1E29\u1E2B\u1E96\u0127\u2C68\u2C76\u0265'}, + {'base':'hv','letters':'\u0195'}, + {'base':'i', 'letters':'\u0069\u24D8\uFF49\u00EC\u00ED\u00EE\u0129\u012B\u012D\u00EF\u1E2F\u1EC9\u01D0\u0209\u020B\u1ECB\u012F\u1E2D\u0268\u0131'}, + {'base':'j', 'letters':'\u006A\u24D9\uFF4A\u0135\u01F0\u0249'}, + {'base':'k', 'letters':'\u006B\u24DA\uFF4B\u1E31\u01E9\u1E33\u0137\u1E35\u0199\u2C6A\uA741\uA743\uA745\uA7A3'}, + {'base':'l', 'letters':'\u006C\u24DB\uFF4C\u0140\u013A\u013E\u1E37\u1E39\u013C\u1E3D\u1E3B\u017F\u0142\u019A\u026B\u2C61\uA749\uA781\uA747'}, + {'base':'lj','letters':'\u01C9'}, + {'base':'m', 'letters':'\u006D\u24DC\uFF4D\u1E3F\u1E41\u1E43\u0271\u026F'}, + {'base':'n', 'letters':'\u006E\u24DD\uFF4E\u01F9\u0144\u00F1\u1E45\u0148\u1E47\u0146\u1E4B\u1E49\u019E\u0272\u0149\uA791\uA7A5'}, + {'base':'nj','letters':'\u01CC'}, + {'base':'o', 'letters':'\u006F\u24DE\uFF4F\u00F2\u00F3\u00F4\u1ED3\u1ED1\u1ED7\u1ED5\u00F5\u1E4D\u022D\u1E4F\u014D\u1E51\u1E53\u014F\u022F\u0231\u00F6\u022B\u1ECF\u0151\u01D2\u020D\u020F\u01A1\u1EDD\u1EDB\u1EE1\u1EDF\u1EE3\u1ECD\u1ED9\u01EB\u01ED\u00F8\u01FF\u0254\uA74B\uA74D\u0275'}, + {'base':'oi','letters':'\u01A3'}, + {'base':'ou','letters':'\u0223'}, + {'base':'oo','letters':'\uA74F'}, + {'base':'p','letters':'\u0070\u24DF\uFF50\u1E55\u1E57\u01A5\u1D7D\uA751\uA753\uA755'}, + {'base':'q','letters':'\u0071\u24E0\uFF51\u024B\uA757\uA759'}, + {'base':'r','letters':'\u0072\u24E1\uFF52\u0155\u1E59\u0159\u0211\u0213\u1E5B\u1E5D\u0157\u1E5F\u024D\u027D\uA75B\uA7A7\uA783'}, + {'base':'s','letters':'\u0073\u24E2\uFF53\u00DF\u015B\u1E65\u015D\u1E61\u0161\u1E67\u1E63\u1E69\u0219\u015F\u023F\uA7A9\uA785\u1E9B'}, + {'base':'t','letters':'\u0074\u24E3\uFF54\u1E6B\u1E97\u0165\u1E6D\u021B\u0163\u1E71\u1E6F\u0167\u01AD\u0288\u2C66\uA787'}, + {'base':'tz','letters':'\uA729'}, + {'base':'u','letters': '\u0075\u24E4\uFF55\u00F9\u00FA\u00FB\u0169\u1E79\u016B\u1E7B\u016D\u00FC\u01DC\u01D8\u01D6\u01DA\u1EE7\u016F\u0171\u01D4\u0215\u0217\u01B0\u1EEB\u1EE9\u1EEF\u1EED\u1EF1\u1EE5\u1E73\u0173\u1E77\u1E75\u0289'}, + {'base':'v','letters':'\u0076\u24E5\uFF56\u1E7D\u1E7F\u028B\uA75F\u028C'}, + {'base':'vy','letters':'\uA761'}, + {'base':'w','letters':'\u0077\u24E6\uFF57\u1E81\u1E83\u0175\u1E87\u1E85\u1E98\u1E89\u2C73'}, + {'base':'x','letters':'\u0078\u24E7\uFF58\u1E8B\u1E8D'}, + {'base':'y','letters':'\u0079\u24E8\uFF59\u1EF3\u00FD\u0177\u1EF9\u0233\u1E8F\u00FF\u1EF7\u1E99\u1EF5\u01B4\u024F\u1EFF'}, + {'base':'z','letters':'\u007A\u24E9\uFF5A\u017A\u1E91\u017C\u017E\u1E93\u1E95\u01B6\u0225\u0240\u2C6C\uA763'} +]; + +var diacriticsMap = {}; +for (var i=0; i < defaultDiacriticsRemovalap.length; i++) +{ + var letters = defaultDiacriticsRemovalap[i].letters; + for (var j=0; j < letters.length ; j++) diacriticsMap[letters[j]] = defaultDiacriticsRemovalap[i].base; +} + +// "what?" version ... http://jsperf.com/diacritics/12 +function removeDiacritics(str) +{ + return str.replace(/[^\u0000-\u007E]/g, function(a) + { + return diacriticsMap[a] || a; + }); +} + +function md5(str) +{ + var xl; + + var rotateLeft = function (lValue, iShiftBits) { + return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits)); + }; + + var addUnsigned = function (lX, lY) { + var lX4, lY4, lX8, lY8, lResult; + lX8 = (lX & 0x80000000); + lY8 = (lY & 0x80000000); + lX4 = (lX & 0x40000000); + lY4 = (lY & 0x40000000); + lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF); + if (lX4 & lY4) { + return (lResult ^ 0x80000000 ^ lX8 ^ lY8); + } + if (lX4 | lY4) { + if (lResult & 0x40000000) { + return (lResult ^ 0xC0000000 ^ lX8 ^ lY8); + } else { + return (lResult ^ 0x40000000 ^ lX8 ^ lY8); + } + } else { + return (lResult ^ lX8 ^ lY8); + } + }; + + var _F = function (x, y, z) { + return (x & y) | ((~x) & z); + }; + var _G = function (x, y, z) { + return (x & z) | (y & (~z)); + }; + var _H = function (x, y, z) { + return (x ^ y ^ z); + }; + var _I = function (x, y, z) { + return (y ^ (x | (~z))); + }; + + var _FF = function (a, b, c, d, x, s, ac) { + a = addUnsigned(a, addUnsigned(addUnsigned(_F(b, c, d), x), ac)); + return addUnsigned(rotateLeft(a, s), b); + }; + + var _GG = function (a, b, c, d, x, s, ac) { + a = addUnsigned(a, addUnsigned(addUnsigned(_G(b, c, d), x), ac)); + return addUnsigned(rotateLeft(a, s), b); + }; + + var _HH = function (a, b, c, d, x, s, ac) { + a = addUnsigned(a, addUnsigned(addUnsigned(_H(b, c, d), x), ac)); + return addUnsigned(rotateLeft(a, s), b); + }; + + var _II = function (a, b, c, d, x, s, ac) { + a = addUnsigned(a, addUnsigned(addUnsigned(_I(b, c, d), x), ac)); + return addUnsigned(rotateLeft(a, s), b); + }; + + var convertToWordArray = function (str) { + var lWordCount; + var lMessageLength = str.length; + var lNumberOfWords_temp1 = lMessageLength + 8; + var lNumberOfWords_temp2 = (lNumberOfWords_temp1 - (lNumberOfWords_temp1 % 64)) / 64; + var lNumberOfWords = (lNumberOfWords_temp2 + 1) * 16; + var lWordArray = new Array(lNumberOfWords - 1); + var lBytePosition = 0; + var lByteCount = 0; + while (lByteCount < lMessageLength) { + lWordCount = (lByteCount - (lByteCount % 4)) / 4; + lBytePosition = (lByteCount % 4) * 8; + lWordArray[lWordCount] = (lWordArray[lWordCount] | (str.charCodeAt(lByteCount) << lBytePosition)); + lByteCount++; + } + lWordCount = (lByteCount - (lByteCount % 4)) / 4; + lBytePosition = (lByteCount % 4) * 8; + lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition); + lWordArray[lNumberOfWords - 2] = lMessageLength << 3; + lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29; + return lWordArray; + }; + + var wordToHex = function (lValue) { + var wordToHexValue = '', + wordToHexValue_temp = '', + lByte, lCount; + for (lCount = 0; lCount <= 3; lCount++) { + lByte = (lValue >>> (lCount * 8)) & 255; + wordToHexValue_temp = '0' + lByte.toString(16); + wordToHexValue = wordToHexValue + wordToHexValue_temp.substr(wordToHexValue_temp.length - 2, 2); + } + return wordToHexValue; + }; + + var x = [], + k, AA, BB, CC, DD, a, b, c, d, S11 = 7, + S12 = 12, + S13 = 17, + S14 = 22, + S21 = 5, + S22 = 9, + S23 = 14, + S24 = 20, + S31 = 4, + S32 = 11, + S33 = 16, + S34 = 23, + S41 = 6, + S42 = 10, + S43 = 15, + S44 = 21; + + str = utf8_encode(str); + x = convertToWordArray(str); + a = 0x67452301; + b = 0xEFCDAB89; + c = 0x98BADCFE; + d = 0x10325476; + + xl = x.length; + for (k = 0; k < xl; k += 16) { + AA = a; + BB = b; + CC = c; + DD = d; + a = _FF(a, b, c, d, x[k + 0], S11, 0xD76AA478); + d = _FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756); + c = _FF(c, d, a, b, x[k + 2], S13, 0x242070DB); + b = _FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE); + a = _FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF); + d = _FF(d, a, b, c, x[k + 5], S12, 0x4787C62A); + c = _FF(c, d, a, b, x[k + 6], S13, 0xA8304613); + b = _FF(b, c, d, a, x[k + 7], S14, 0xFD469501); + a = _FF(a, b, c, d, x[k + 8], S11, 0x698098D8); + d = _FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF); + c = _FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1); + b = _FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE); + a = _FF(a, b, c, d, x[k + 12], S11, 0x6B901122); + d = _FF(d, a, b, c, x[k + 13], S12, 0xFD987193); + c = _FF(c, d, a, b, x[k + 14], S13, 0xA679438E); + b = _FF(b, c, d, a, x[k + 15], S14, 0x49B40821); + a = _GG(a, b, c, d, x[k + 1], S21, 0xF61E2562); + d = _GG(d, a, b, c, x[k + 6], S22, 0xC040B340); + c = _GG(c, d, a, b, x[k + 11], S23, 0x265E5A51); + b = _GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA); + a = _GG(a, b, c, d, x[k + 5], S21, 0xD62F105D); + d = _GG(d, a, b, c, x[k + 10], S22, 0x2441453); + c = _GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681); + b = _GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8); + a = _GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6); + d = _GG(d, a, b, c, x[k + 14], S22, 0xC33707D6); + c = _GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87); + b = _GG(b, c, d, a, x[k + 8], S24, 0x455A14ED); + a = _GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905); + d = _GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8); + c = _GG(c, d, a, b, x[k + 7], S23, 0x676F02D9); + b = _GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A); + a = _HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942); + d = _HH(d, a, b, c, x[k + 8], S32, 0x8771F681); + c = _HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122); + b = _HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C); + a = _HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44); + d = _HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9); + c = _HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60); + b = _HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70); + a = _HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6); + d = _HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA); + c = _HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085); + b = _HH(b, c, d, a, x[k + 6], S34, 0x4881D05); + a = _HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039); + d = _HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5); + c = _HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8); + b = _HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665); + a = _II(a, b, c, d, x[k + 0], S41, 0xF4292244); + d = _II(d, a, b, c, x[k + 7], S42, 0x432AFF97); + c = _II(c, d, a, b, x[k + 14], S43, 0xAB9423A7); + b = _II(b, c, d, a, x[k + 5], S44, 0xFC93A039); + a = _II(a, b, c, d, x[k + 12], S41, 0x655B59C3); + d = _II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92); + c = _II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D); + b = _II(b, c, d, a, x[k + 1], S44, 0x85845DD1); + a = _II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F); + d = _II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0); + c = _II(c, d, a, b, x[k + 6], S43, 0xA3014314); + b = _II(b, c, d, a, x[k + 13], S44, 0x4E0811A1); + a = _II(a, b, c, d, x[k + 4], S41, 0xF7537E82); + d = _II(d, a, b, c, x[k + 11], S42, 0xBD3AF235); + c = _II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB); + b = _II(b, c, d, a, x[k + 9], S44, 0xEB86D391); + a = addUnsigned(a, AA); + b = addUnsigned(b, BB); + c = addUnsigned(c, CC); + d = addUnsigned(d, DD); + } + + var temp = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d); + + return temp.toLowerCase(); +} + +function utf8_encode(argString) +{ + if (argString === null || typeof argString === 'undefined') { + return ''; + } + + // .replace(/\r\n/g, "\n").replace(/\r/g, "\n"); + var string = (argString + ''); + var utftext = '', + start, end, stringl = 0; + + start = end = 0; + stringl = string.length; + for (var n = 0; n < stringl; n++) { + var c1 = string.charCodeAt(n); + var enc = null; + + if (c1 < 128) { + end++; + } else if (c1 > 127 && c1 < 2048) { + enc = String.fromCharCode( + (c1 >> 6) | 192, (c1 & 63) | 128 + ); + } else if ((c1 & 0xF800) != 0xD800) { + enc = String.fromCharCode( + (c1 >> 12) | 224, ((c1 >> 6) & 63) | 128, (c1 & 63) | 128 + ); + } else { + // surrogate pairs + if ((c1 & 0xFC00) != 0xD800) { + throw new RangeError('Unmatched trail surrogate at ' + n); + } + var c2 = string.charCodeAt(++n); + if ((c2 & 0xFC00) != 0xDC00) { + throw new RangeError('Unmatched lead surrogate at ' + (n - 1)); + } + c1 = ((c1 & 0x3FF) << 10) + (c2 & 0x3FF) + 0x10000; + enc = String.fromCharCode( + (c1 >> 18) | 240, ((c1 >> 12) & 63) | 128, ((c1 >> 6) & 63) | 128, (c1 & 63) | 128 + ); + } + if (enc !== null) { + if (end > start) { + utftext += string.slice(start, end); + } + utftext += enc; + start = end = n + 1; + } + } + + if (end > start) { + utftext += string.slice(start, stringl); + } + + return utftext; +} \ No newline at end of file diff --git a/scripts/jquery-te-1.4.0.min.js b/scripts/jquery-te-1.4.0.min.js new file mode 100755 index 0000000..6e9f58d --- /dev/null +++ b/scripts/jquery-te-1.4.0.min.js @@ -0,0 +1,9 @@ +/*! + * + * jQuery TE 1.4.0 , http://jqueryte.com/ + * Copyright (C) 2013, Fatih Koca (fattih@fattih.com), (http://jqueryte.com/about) + + * jQuery TE is provided under the MIT LICENSE. + * +*/ +(function(e){e.fn.jqte=function(t){function l(e,t,n,r,i){var s=f.length+1;return f.push({name:e,cls:s,command:t,key:n,tag:r,emphasis:i})}var n=[{title:"Text Format"},{title:"Font Size"},{title:"Color"},{title:"Bold",hotkey:"B"},{title:"Italic",hotkey:"I"},{title:"Underline",hotkey:"U"},{title:"Ordered List",hotkey:"."},{title:"Unordered List",hotkey:","},{title:"Subscript",hotkey:"down arrow"},{title:"Superscript",hotkey:"up arrow"},{title:"Outdent",hotkey:"left arrow"},{title:"Indent",hotkey:"right arrow"},{title:"Justify Left"},{title:"Justify Center"},{title:"Justify Right"},{title:"Strike Through",hotkey:"K"},{title:"Add Link",hotkey:"L"},{title:"Remove Link"},{title:"Cleaner Style",hotkey:"Delete"},{title:"Horizontal Rule",hotkey:"H"},{title:"Source"}];var r=[["p","Normal"],["h1","Header 1"],["h2","Header 2"],["h3","Header 3"],["h4","Header 4"],["h5","Header 5"],["h6","Header 6"],["pre","Preformatted"]];var i=["10","12","16","18","20","24","28"];var s=["0,0,0","68,68,68","102,102,102","153,153,153","204,204,204","238,238,238","243,243,243","255,255,255",null,"255,0,0","255,153,0","255,255,0","0,255,0","0,255,255","0,0,255","153,0,255","255,0,255",null,"244,204,204","252,229,205","255,242,204","217,234,211","208,224,227","207,226,243","217,210,233","234,209,220","234,153,153","249,203,156","255,229,153","182,215,168","162,196,201","159,197,232","180,167,214","213,166,189","224,102,102","246,178,107","255,217,102","147,196,125","118,165,175","111,168,220","142,124,195","194,123,160","204,0,0","230,145,56","241,194,50","106,168,79","69,129,142","61,133,198","103,78,167","166,77,121","153,0,0","180,95,6","191,144,0","56,118,29","19,79,92","11,83,148","53,28,117","116,27,71","102,0,0","120,63,4","127,96,0","39,78,19","12,52,61","7,55,99","32,18,77","76,17,48"];var o=["Web Address","E-mail Address","Picture URL"];var u=e.extend({status:true,css:"jqte",title:true,titletext:n,button:"OK",format:true,formats:r,fsize:true,fsizes:i,funit:"px",color:true,linktypes:o,b:true,i:true,u:true,ol:true,ul:true,sub:true,sup:true,outdent:true,indent:true,left:true,center:true,right:true,strike:true,link:true,unlink:true,remove:true,rule:true,source:true,placeholder:false,br:true,p:true,change:"",focus:"",blur:""},t);e.fn.jqteVal=function(t){e(this).closest("."+u.css).find("."+u.css+"_editor").html(t)};var a=navigator.userAgent.toLowerCase();if(/msie [1-7]./.test(a))u.title=false;var f=[];l("format","formats","","",false);l("fsize","fSize","","",false);l("color","colors","","",false);l("b","Bold","B",["b","strong"],true);l("i","Italic","I",["i","em"],true);l("u","Underline","U",["u"],true);l("ol","insertorderedlist","¾",["ol"],true);l("ul","insertunorderedlist","¼",["ul"],true);l("sub","subscript","(",["sub"],true);l("sup","superscript","&",["sup"],true);l("outdent","outdent","%",["blockquote"],false);l("indent","indent","'",["blockquote"],true);l("left","justifyLeft","","",false);l("center","justifyCenter","","",false);l("right","justifyRight","","",false);l("strike","strikeThrough","K",["strike"],true);l("link","linkcreator","L",["a"],true);l("unlink","unlink","",["a"],false);l("remove","removeformat",".","",false);l("rule","inserthorizontalrule","H",["hr"],false);l("source","displaysource","","",false);return this.each(function(){function B(){if(window.getSelection)return window.getSelection();else if(document.selection&&document.selection.createRange&&document.selection.type!="None")return document.selection.createRange()}function j(e,t){var n,r=B();if(window.getSelection){if(r.anchorNode&&r.getRangeAt)n=r.getRangeAt(0);if(n){r.removeAllRanges();r.addRange(n)}if(!a.match(/msie/))document.execCommand("StyleWithCSS",false,false);document.execCommand(e,false,t)}else if(document.selection&&document.selection.createRange&&document.selection.type!="None"){n=document.selection.createRange();n.execCommand(e,false,t)}q(false,false)}function F(t,n,r){if(v.not(":focus"))v.focus();if(window.getSelection){var i=B(),s,o,u;if(i.anchorNode&&i.getRangeAt){s=i.getRangeAt(0);o=document.createElement(t);e(o).attr(n,r);u=s.extractContents();o.appendChild(u);s.insertNode(o);i.removeAllRanges();if(n=="style")q(e(o),r);else q(e(o),false)}}else if(document.selection&&document.selection.createRange&&document.selection.type!="None"){var a=document.selection.createRange();var f=a.htmlText;var l="<"+t+" "+n+'="'+r+'">'+f+"";document.selection.createRange().pasteHTML(l)}}function q(e,t){var n=I();n=n?n:e;if(n&&t==false){if(n.parent().is("[style]"))n.attr("style",n.parent().attr("style"));if(n.is("[style]"))n.find("*").attr("style",n.attr("style"))}else if(e&&t&&e.is("[style]")){var r=t.split(";");r=r[0].split(":");if(e.is("[style*="+r[0]+"]"))e.find("*").css(r[0],r[1]);R(e)}}function R(t){if(t){var t=t[0];if(document.body.createTextRange){var n=document.body.createTextRange();n.moveToElementText(t);n.select()}else if(window.getSelection){var r=window.getSelection();var n=document.createRange();if(t!="undefined"&&t!=null){n.selectNodeContents(t);r.removeAllRanges();r.addRange(n);if(e(t).is(":empty")){e(t).append(" ");R(e(t))}}}}}function U(){if(!p.data("sourceOpened")){var t=I();var n="http://";W(true);if(t){var r=t.prop("tagName").toLowerCase();if(r=="a"&&t.is("[href]")){n=t.attr("href");t.attr(S,"")}else F("a",S,"")}else y.val(n).focus();g.click(function(t){if(e(t.target).hasClass(u.css+"_linktypetext")||e(t.target).hasClass(u.css+"_linktypearrow"))X(true)});w.find("a").click(function(){var t=e(this).attr(u.css+"-linktype");w.data("linktype",t);E.find("."+u.css+"_linktypetext").html(w.find("a:eq("+w.data("linktype")+")").text());V(n);X()});V(n);y.focus().val(n).bind("keypress keyup",function(e){if(e.keyCode==13){z(h.find("["+S+"]"));return false}});b.click(function(){z(h.find("["+S+"]"))})}else W(false)}function z(t){y.focus();R(t);t.removeAttr(S);if(w.data("linktype")!="2")j("createlink",y.val());else{j("insertImage",y.val());v.find("img").each(function(){var t=e(this).prev("a");var n=e(this).next("a");if(t.length>0&&t.html()=="")t.remove();else if(n.length>0&&n.html()=="")n.remove()})}W();v.trigger("change")}function W(e){Q("["+S+"]:not([href])");h.find("["+S+"][href]").removeAttr(S);if(e){p.data("linkOpened",true);d.show()}else{p.data("linkOpened",false);d.hide()}X()}function X(e){if(e)w.show();else w.hide()}function V(e){var t=w.data("linktype");if(t=="1"&&(y.val()=="http://"||y.is("[value^=http://]")||!y.is("[value^=mailto]")))y.val("mailto:");else if(t!="1"&&!y.is("[value^=http://]"))y.val("http://");else y.val(e)}function J(t){if(!p.data("sourceOpened")){if(t=="fSize")styleField=P;else if(t=="colors")styleField=H;K(styleField,true);styleField.find("a").unbind("click").click(function(){var n=e(this).attr(u.css+"-styleval");if(t=="fSize"){styleType="font-size";n=n+u.funit}else if(t=="colors"){styleType="color";n="rgb("+n+")"}var r=G(styleType);F("span","style",styleType+":"+n+";"+r);K("",false);e("."+u.css+"_title").remove();v.trigger("change")})}else K(styleField,false);W(false)}function K(e,t){var n="",r=[{d:"fsizeOpened",f:P},{d:"cpallOpened",f:H}];if(e!=""){for(var i=0;i");Z(false)})}function Z(e){var t=e?true:false;t=e&&D.data("status")?true:false;if(t||!e)D.data("status",false).slideUp(200);else D.data("status",true).slideDown(200)}function et(e){var t=D.closest("."+u.css+"_tool").find("."+u.css+"_tool_label").find("."+u.css+"_tool_text");if(e.length>10)e=e.substr(0,7)+"...";t.html(e)}function tt(e){var t,n,r;t=e.replace(/\n/gim,"").replace(/\r/gim,"").replace(/\t/gim,"").replace(/ /gim," ");n=[/\(.*?)<\/span><\/span>/gim,/<(\w*[^p])\s*[^\/>]*>\s*<\/\1>/gim,/\(.*?)\<\/div>/gim,/\(.*?)\<\/strong>/gim,/\(.*?)\<\/em>/gim];r=["$3
","","$2

","$2
- - -
- #content# -
-
- #errors# -
","$2"];for(A=0;A<5;A++){for(var i=0;i(.*?)\<\/p>/ig,"
$2");if(!u.br){n=[/\
(.*?)/ig,/\(.*?)/ig];r=["

$1

","

$1

"];for(var i=0;i(.*?)\<\/p>/ig,"
$1
");return t}function nt(){var e=v.text()==""&&v.html().length<12?"":v.html();l.val(tt(e))}function rt(){v.html(tt(l.val()))}function it(t){var n=false,r=I(),i;if(r){e.each(t,function(t,s){i=r.prop("tagName").toLowerCase();if(i==s)n=true;else{r.parents().each(function(){i=e(this).prop("tagName").toLowerCase();if(i==s)n=true})}});return n}else return false}function st(t){for(var n=0;n0&&it(s)){et(u.formats[i][1]);r=true;break}}if(!r)et(u.formats[0][1])}K("",false);Z(false)}if(!e(this).data("jqte")||e(this).data("jqte")==null||e(this).data("jqte")=="undefined")e(this).data("jqte",true);else e(this).data("jqte",false);if(!u.status||!e(this).data("jqte")){if(e(this).closest("."+u.css).length>0){var t=e(this).closest("."+u.css).find("."+u.css+"_editor").html();var n="";e(e(this)[0].attributes).each(function(){if(this.nodeName!="style")n=n+" "+this.nodeName+'="'+this.nodeValue+'"'});var r=e(this).is("[data-origin]")&&e(this).attr("data-origin")!=""?e(this).attr("data-origin"):"textarea";var i=">"+t;if(r=="input"||r=="option"){t=t.replace(/"/g,""").replace(/'/g,"'").replace(//g,">");i='value="'+t+'">'}var o=e(this).clone();e(this).data("jqte",false).closest("."+u.css).before(o).remove();o.replaceWith("<"+r+n+i+"")}return}var l=e(this);var r=e(this).prop("tagName").toLowerCase();e(this).attr("data-origin",r);var c=e(this).is("[value]")||r=="textarea"?e(this).val():e(this).html();c=c.replace(/"/g,'"').replace(/'/g,"'").replace(//g,">").replace(/&/g,"&");e(this).after('
');var h=e(this).next("."+u.css);h.html('
');var p=h.find("."+u.css+"_toolbar");var d=h.find("."+u.css+"_linkform");var v=h.find("."+u.css+"_editor");var m=u.css+"_tool_depressed";d.append('
'+u.button+'
');var g=d.find("."+u.css+"_linktypeselect");var y=d.find("."+u.css+"_linkinput");var b=d.find("."+u.css+"_linkbutton");g.append('
');var w=g.find("."+u.css+"_linktypes");var E=g.find("."+u.css+"_linktypeview");var S=u.css+"-setlink";v.after('
');var x=h.find("."+u.css+"_source");l.appendTo(x);if(r!="textarea"){var n="";e(l[0].attributes).each(function(){if(this.nodeName!="type"&&this.nodeName!="value")n=n+" "+this.nodeName+'="'+this.nodeValue+'"'});l.replaceWith("");l=x.find("textarea")}v.attr("contenteditable","true").html(c);for(var T=0;T0?u.titletext[T].hotkey!=null&&u.titletext[T].hotkey!="undefined"&&u.titletext[T].hotkey!=""?" (Ctrl+"+u.titletext[T].hotkey+")":"":"";var C=u.titletext[T].title!=null&&u.titletext[T].title!="undefined"&&u.titletext[T].title!=""?u.titletext[T].title+N:"";p.append('
');p.find("."+u.css+"_tool[data-tool="+T+"]").data({tag:f[T].tag,command:f[T].command,emphasis:f[T].emphasis,title:C});if(f[T].name=="format"&&e.isArray(u.formats)){var k=u.formats[0][1].length>0&&u.formats[0][1]!="undefined"?u.formats[0][1]:"";p.find("."+u.css+"_tool_"+f[T].cls).find("."+u.css+"_tool_icon").replaceWith(''+k+'');p.find("."+u.css+"_tool_"+f[T].cls).append('
');for(var L=0;L'+u.formats[L][1]+"")}p.find("."+u.css+"_formats").data("status",false)}else if(f[T].name=="fsize"&&e.isArray(u.fsizes)){p.find("."+u.css+"_tool_"+f[T].cls).append('
');for(var L=0;LAbcdefgh...')}}else if(f[T].name=="color"&&e.isArray(s)){p.find("."+u.css+"_tool_"+f[T].cls).append('
');for(var A=0;A');else p.find("."+u.css+"_cpalette").append('
')}}}}w.data("linktype","0");for(var T=0;T<3;T++){w.append("'+u.linktypes[T]+"");E.html('
'+w.find("a:eq("+w.data("linktype")+")").text()+"
")}var O="";if(/msie/.test(a))O="-ms-";else if(/chrome/.test(a)||/safari/.test(a)||/yandex/.test(a))O="-webkit-";else if(/mozilla/.test(a))O="-moz-";else if(/opera/.test(a))O="-o-";else if(/konqueror/.test(a))O="-khtml-";else O="";if(u.placeholder&&u.placeholder!=""){h.prepend('
'+u.placeholder+"
");var M=h.find("."+u.css+"_placeholder");M.click(function(){v.focus()})}h.find("[unselectable]").css(O+"user-select","none").addClass("unselectable").attr("unselectable","on").on("selectstart mousedown",false);var _=p.find("."+u.css+"_tool");var D=p.find("."+u.css+"_formats");var P=p.find("."+u.css+"_fontsizes");var H=p.find("."+u.css+"_cpalette");var I=function(){var t,n;if(window.getSelection){n=getSelection();t=n.anchorNode}if(!t&&document.selection&&document.selection.createRange&&document.selection.type!="None"){n=document.selection;var r=n.getRangeAt?n.getRangeAt(0):n.createRange();t=r.commonAncestorContainer?r.commonAncestorContainer:r.parentElement?r.parentElement():r.item(0)}if(t){return t.nodeName=="#text"?e(t.parentNode):e(t)}else return false};_.unbind("click").click(function(t){if(e(this).data("command")=="displaysource"&&!p.data("sourceOpened")){p.find("."+u.css+"_tool").addClass(u.css+"_hiddenField");e(this).removeClass(u.css+"_hiddenField");p.data("sourceOpened",true);l.css("height",v.outerHeight());x.removeClass(u.css+"_hiddenField");v.addClass(u.css+"_hiddenField");l.focus();W(false);K("",false);Z();if(u.placeholder&&u.placeholder!="")M.hide()}else{if(!p.data("sourceOpened")){if(e(this).data("command")=="linkcreator"){if(!p.data("linkOpened"))U();else{W(false);Z(false)}}else if(e(this).data("command")=="formats"){if(e(this).data("command")=="formats"&&!e(t.target).hasClass(u.css+"_format"))Y();K("",false);if(v.not(":focus"))v.focus()}else if(e(this).data("command")=="fSize"||e(this).data("command")=="colors"){if(e(this).data("command")=="fSize"&&!e(t.target).hasClass(u.css+"_fontsize")||e(this).data("command")=="colors"&&!e(t.target).hasClass(u.css+"_color"))J(e(this).data("command"));Z(false);if(v.not(":focus"))v.focus()}else{if(v.not(":focus"))v.focus();j(e(this).data("command"),null);K("",false);Z(false);X();e(this).data("emphasis")==true&&!e(this).hasClass(m)?e(this).addClass(m):e(this).removeClass(m);x.addClass(u.css+"_hiddenField");v.removeClass(u.css+"_hiddenField")}}else{p.data("sourceOpened",false);p.find("."+u.css+"_tool").removeClass(u.css+"_hiddenField");x.addClass(u.css+"_hiddenField");v.removeClass(u.css+"_hiddenField")}if(u.placeholder&&u.placeholder!="")v.html()!=""?M.hide():M.show()}v.trigger("change")}).hover(function(t){if(u.title&&e(this).data("title")!=""&&(e(t.target).hasClass(u.css+"_tool")||e(t.target).hasClass(u.css+"_tool_icon"))){e("."+u.css+"_title").remove();h.append('
'+e(this).data("title")+"
");var n=e("."+u.css+"_title:first");var r=n.find("."+u.css+"_titleArrowIcon");var i=e(this).position();var s=i.left+e(this).outerWidth()-n.outerWidth()/2-e(this).outerWidth()/2;var o=i.top+e(this).outerHeight()+5;n.delay(400).css({top:o,left:s}).fadeIn(200)}},function(){e("."+u.css+"_title").remove()});var ot=null;v.bind("keypress keyup keydown drop cut copy paste DOMCharacterDataModified DOMSubtreeModified",function(){if(!p.data("sourceOpened"))e(this).trigger("change");X();if(e.isFunction(u.change))u.change();if(u.placeholder&&u.placeholder!="")e(this).text()!=""?M.hide():M.show()}).bind("change",function(){if(!p.data("sourceOpened")){clearTimeout(ot);ot=setTimeout(nt,10)}}).keydown(function(e){if(e.ctrlKey){for(var t=0;ta?this[a+this.length]:this[a]:d.call(this)},pushStack:function(a){var b=n.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a,b){return n.each(this,a,b)},map:function(a){return this.pushStack(n.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(d.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:c.sort,splice:c.splice},n.extend=n.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||n.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(a=arguments[h]))for(b in a)c=g[b],d=a[b],g!==d&&(j&&d&&(n.isPlainObject(d)||(e=n.isArray(d)))?(e?(e=!1,f=c&&n.isArray(c)?c:[]):f=c&&n.isPlainObject(c)?c:{},g[b]=n.extend(j,f,d)):void 0!==d&&(g[b]=d));return g},n.extend({expando:"jQuery"+(m+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===n.type(a)},isArray:Array.isArray,isWindow:function(a){return null!=a&&a===a.window},isNumeric:function(a){return!n.isArray(a)&&a-parseFloat(a)+1>=0},isPlainObject:function(a){return"object"!==n.type(a)||a.nodeType||n.isWindow(a)?!1:a.constructor&&!j.call(a.constructor.prototype,"isPrototypeOf")?!1:!0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?h[i.call(a)]||"object":typeof a},globalEval:function(a){var b,c=eval;a=n.trim(a),a&&(1===a.indexOf("use strict")?(b=l.createElement("script"),b.text=a,l.head.appendChild(b).parentNode.removeChild(b)):c(a))},camelCase:function(a){return a.replace(p,"ms-").replace(q,r)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,c){var d,e=0,f=a.length,g=s(a);if(c){if(g){for(;f>e;e++)if(d=b.apply(a[e],c),d===!1)break}else for(e in a)if(d=b.apply(a[e],c),d===!1)break}else if(g){for(;f>e;e++)if(d=b.call(a[e],e,a[e]),d===!1)break}else for(e in a)if(d=b.call(a[e],e,a[e]),d===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(o,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(s(Object(a))?n.merge(c,"string"==typeof a?[a]:a):f.call(c,a)),c},inArray:function(a,b,c){return null==b?-1:g.call(b,a,c)},merge:function(a,b){for(var c=+b.length,d=0,e=a.length;c>d;d++)a[e++]=b[d];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,f=0,g=a.length,h=s(a),i=[];if(h)for(;g>f;f++)d=b(a[f],f,c),null!=d&&i.push(d);else for(f in a)d=b(a[f],f,c),null!=d&&i.push(d);return e.apply([],i)},guid:1,proxy:function(a,b){var c,e,f;return"string"==typeof b&&(c=a[b],b=a,a=c),n.isFunction(a)?(e=d.call(arguments,2),f=function(){return a.apply(b||this,e.concat(d.call(arguments)))},f.guid=a.guid=a.guid||n.guid++,f):void 0},now:Date.now,support:k}),n.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(a,b){h["[object "+b+"]"]=b.toLowerCase()});function s(a){var b="length"in a&&a.length,c=n.type(a);return"function"===c||n.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}var t=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=ha(),z=ha(),A=ha(),B=function(a,b){return a===b&&(l=!0),0},C=1<<31,D={}.hasOwnProperty,E=[],F=E.pop,G=E.push,H=E.push,I=E.slice,J=function(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return c;return-1},K="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",N=M.replace("w","w#"),O="\\["+L+"*("+M+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+N+"))|)"+L+"*\\]",P=":("+M+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+O+")*)|.*)\\)|)",Q=new RegExp(L+"+","g"),R=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),S=new RegExp("^"+L+"*,"+L+"*"),T=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),U=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),V=new RegExp(P),W=new RegExp("^"+N+"$"),X={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),TAG:new RegExp("^("+M.replace("w","w*")+")"),ATTR:new RegExp("^"+O),PSEUDO:new RegExp("^"+P),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+K+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},Y=/^(?:input|select|textarea|button)$/i,Z=/^h\d$/i,$=/^[^{]+\{\s*\[native \w/,_=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,aa=/[+~]/,ba=/'|\\/g,ca=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),da=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},ea=function(){m()};try{H.apply(E=I.call(v.childNodes),v.childNodes),E[v.childNodes.length].nodeType}catch(fa){H={apply:E.length?function(a,b){G.apply(a,I.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function ga(a,b,d,e){var f,h,j,k,l,o,r,s,w,x;if((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,d=d||[],k=b.nodeType,"string"!=typeof a||!a||1!==k&&9!==k&&11!==k)return d;if(!e&&p){if(11!==k&&(f=_.exec(a)))if(j=f[1]){if(9===k){if(h=b.getElementById(j),!h||!h.parentNode)return d;if(h.id===j)return d.push(h),d}else if(b.ownerDocument&&(h=b.ownerDocument.getElementById(j))&&t(b,h)&&h.id===j)return d.push(h),d}else{if(f[2])return H.apply(d,b.getElementsByTagName(a)),d;if((j=f[3])&&c.getElementsByClassName)return H.apply(d,b.getElementsByClassName(j)),d}if(c.qsa&&(!q||!q.test(a))){if(s=r=u,w=b,x=1!==k&&a,1===k&&"object"!==b.nodeName.toLowerCase()){o=g(a),(r=b.getAttribute("id"))?s=r.replace(ba,"\\$&"):b.setAttribute("id",s),s="[id='"+s+"'] ",l=o.length;while(l--)o[l]=s+ra(o[l]);w=aa.test(a)&&pa(b.parentNode)||b,x=o.join(",")}if(x)try{return H.apply(d,w.querySelectorAll(x)),d}catch(y){}finally{r||b.removeAttribute("id")}}}return i(a.replace(R,"$1"),b,d,e)}function ha(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ia(a){return a[u]=!0,a}function ja(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function ka(a,b){var c=a.split("|"),e=a.length;while(e--)d.attrHandle[c[e]]=b}function la(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||C)-(~a.sourceIndex||C);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function ma(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function na(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function oa(a){return ia(function(b){return b=+b,ia(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function pa(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=ga.support={},f=ga.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=ga.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=g.documentElement,e=g.defaultView,e&&e!==e.top&&(e.addEventListener?e.addEventListener("unload",ea,!1):e.attachEvent&&e.attachEvent("onunload",ea)),p=!f(g),c.attributes=ja(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ja(function(a){return a.appendChild(g.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=$.test(g.getElementsByClassName),c.getById=ja(function(a){return o.appendChild(a).id=u,!g.getElementsByName||!g.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},d.filter.ID=function(a){var b=a.replace(ca,da);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(ca,da);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=$.test(g.querySelectorAll))&&(ja(function(a){o.appendChild(a).innerHTML="",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+L+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+L+"*(?:value|"+K+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),ja(function(a){var b=g.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+L+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=$.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ja(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",P)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=$.test(o.compareDocumentPosition),t=b||$.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===g||a.ownerDocument===v&&t(v,a)?-1:b===g||b.ownerDocument===v&&t(v,b)?1:k?J(k,a)-J(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,h=[a],i=[b];if(!e||!f)return a===g?-1:b===g?1:e?-1:f?1:k?J(k,a)-J(k,b):0;if(e===f)return la(a,b);c=a;while(c=c.parentNode)h.unshift(c);c=b;while(c=c.parentNode)i.unshift(c);while(h[d]===i[d])d++;return d?la(h[d],i[d]):h[d]===v?-1:i[d]===v?1:0},g):n},ga.matches=function(a,b){return ga(a,null,null,b)},ga.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(U,"='$1']"),!(!c.matchesSelector||!p||r&&r.test(b)||q&&q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return ga(b,n,null,[a]).length>0},ga.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},ga.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&D.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},ga.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},ga.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=ga.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=ga.selectors={cacheLength:50,createPseudo:ia,match:X,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(ca,da),a[3]=(a[3]||a[4]||a[5]||"").replace(ca,da),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||ga.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&ga.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return X.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&V.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(ca,da).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+L+")"+a+"("+L+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=ga.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(Q," ")+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h;if(q){if(f){while(p){l=b;while(l=l[p])if(h?l.nodeName.toLowerCase()===r:1===l.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){k=q[u]||(q[u]={}),j=k[a]||[],n=j[0]===w&&j[1],m=j[0]===w&&j[2],l=n&&q.childNodes[n];while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if(1===l.nodeType&&++m&&l===b){k[a]=[w,n,m];break}}else if(s&&(j=(b[u]||(b[u]={}))[a])&&j[0]===w)m=j[1];else while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if((h?l.nodeName.toLowerCase()===r:1===l.nodeType)&&++m&&(s&&((l[u]||(l[u]={}))[a]=[w,m]),l===b))break;return m-=e,m===d||m%d===0&&m/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||ga.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ia(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=J(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ia(function(a){var b=[],c=[],d=h(a.replace(R,"$1"));return d[u]?ia(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ia(function(a){return function(b){return ga(a,b).length>0}}),contains:ia(function(a){return a=a.replace(ca,da),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ia(function(a){return W.test(a||"")||ga.error("unsupported lang: "+a),a=a.replace(ca,da).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Z.test(a.nodeName)},input:function(a){return Y.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:oa(function(){return[0]}),last:oa(function(a,b){return[b-1]}),eq:oa(function(a,b,c){return[0>c?c+b:c]}),even:oa(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:oa(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:oa(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:oa(function(a,b,c){for(var d=0>c?c+b:c;++db;b++)d+=a[b].value;return d}function sa(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j=[w,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(i=b[u]||(b[u]={}),(h=i[d])&&h[0]===w&&h[1]===f)return j[2]=h[2];if(i[d]=j,j[2]=a(b,c,g))return!0}}}function ta(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function ua(a,b,c){for(var d=0,e=b.length;e>d;d++)ga(a,b[d],c);return c}function va(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function wa(a,b,c,d,e,f){return d&&!d[u]&&(d=wa(d)),e&&!e[u]&&(e=wa(e,f)),ia(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||ua(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:va(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=va(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?J(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=va(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):H.apply(g,r)})}function xa(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=sa(function(a){return a===b},h,!0),l=sa(function(a){return J(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];f>i;i++)if(c=d.relative[a[i].type])m=[sa(ta(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e;e++)if(d.relative[a[e].type])break;return wa(i>1&&ta(m),i>1&&ra(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(R,"$1"),c,e>i&&xa(a.slice(i,e)),f>e&&xa(a=a.slice(e)),f>e&&ra(a))}m.push(c)}return ta(m)}function ya(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,m,o,p=0,q="0",r=f&&[],s=[],t=j,u=f||e&&d.find.TAG("*",k),v=w+=null==t?1:Math.random()||.1,x=u.length;for(k&&(j=g!==n&&g);q!==x&&null!=(l=u[q]);q++){if(e&&l){m=0;while(o=a[m++])if(o(l,g,h)){i.push(l);break}k&&(w=v)}c&&((l=!o&&l)&&p--,f&&r.push(l))}if(p+=q,c&&q!==p){m=0;while(o=b[m++])o(r,s,g,h);if(f){if(p>0)while(q--)r[q]||s[q]||(s[q]=F.call(i));s=va(s)}H.apply(i,s),k&&!f&&s.length>0&&p+b.length>1&&ga.uniqueSort(i)}return k&&(w=v,j=t),r};return c?ia(f):f}return h=ga.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=xa(b[c]),f[u]?d.push(f):e.push(f);f=A(a,ya(e,d)),f.selector=a}return f},i=ga.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(ca,da),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=X.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(ca,da),aa.test(j[0].type)&&pa(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&ra(j),!a)return H.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,aa.test(a)&&pa(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ja(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),ja(function(a){return a.innerHTML="","#"===a.firstChild.getAttribute("href")})||ka("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ja(function(a){return a.innerHTML="",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||ka("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),ja(function(a){return null==a.getAttribute("disabled")})||ka(K,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),ga}(a);n.find=t,n.expr=t.selectors,n.expr[":"]=n.expr.pseudos,n.unique=t.uniqueSort,n.text=t.getText,n.isXMLDoc=t.isXML,n.contains=t.contains;var u=n.expr.match.needsContext,v=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,w=/^.[^:#\[\.,]*$/;function x(a,b,c){if(n.isFunction(b))return n.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return n.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(w.test(b))return n.filter(b,a,c);b=n.filter(b,a)}return n.grep(a,function(a){return g.call(b,a)>=0!==c})}n.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?n.find.matchesSelector(d,a)?[d]:[]:n.find.matches(a,n.grep(b,function(a){return 1===a.nodeType}))},n.fn.extend({find:function(a){var b,c=this.length,d=[],e=this;if("string"!=typeof a)return this.pushStack(n(a).filter(function(){for(b=0;c>b;b++)if(n.contains(e[b],this))return!0}));for(b=0;c>b;b++)n.find(a,e[b],d);return d=this.pushStack(c>1?n.unique(d):d),d.selector=this.selector?this.selector+" "+a:a,d},filter:function(a){return this.pushStack(x(this,a||[],!1))},not:function(a){return this.pushStack(x(this,a||[],!0))},is:function(a){return!!x(this,"string"==typeof a&&u.test(a)?n(a):a||[],!1).length}});var y,z=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,A=n.fn.init=function(a,b){var c,d;if(!a)return this;if("string"==typeof a){if(c="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:z.exec(a),!c||!c[1]&&b)return!b||b.jquery?(b||y).find(a):this.constructor(b).find(a);if(c[1]){if(b=b instanceof n?b[0]:b,n.merge(this,n.parseHTML(c[1],b&&b.nodeType?b.ownerDocument||b:l,!0)),v.test(c[1])&&n.isPlainObject(b))for(c in b)n.isFunction(this[c])?this[c](b[c]):this.attr(c,b[c]);return this}return d=l.getElementById(c[2]),d&&d.parentNode&&(this.length=1,this[0]=d),this.context=l,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):n.isFunction(a)?"undefined"!=typeof y.ready?y.ready(a):a(n):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),n.makeArray(a,this))};A.prototype=n.fn,y=n(l);var B=/^(?:parents|prev(?:Until|All))/,C={children:!0,contents:!0,next:!0,prev:!0};n.extend({dir:function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&n(a).is(c))break;d.push(a)}return d},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}}),n.fn.extend({has:function(a){var b=n(a,this),c=b.length;return this.filter(function(){for(var a=0;c>a;a++)if(n.contains(this,b[a]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=u.test(a)||"string"!=typeof a?n(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&n.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?n.unique(f):f)},index:function(a){return a?"string"==typeof a?g.call(n(a),this[0]):g.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(n.unique(n.merge(this.get(),n(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function D(a,b){while((a=a[b])&&1!==a.nodeType);return a}n.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return n.dir(a,"parentNode")},parentsUntil:function(a,b,c){return n.dir(a,"parentNode",c)},next:function(a){return D(a,"nextSibling")},prev:function(a){return D(a,"previousSibling")},nextAll:function(a){return n.dir(a,"nextSibling")},prevAll:function(a){return n.dir(a,"previousSibling")},nextUntil:function(a,b,c){return n.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return n.dir(a,"previousSibling",c)},siblings:function(a){return n.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return n.sibling(a.firstChild)},contents:function(a){return a.contentDocument||n.merge([],a.childNodes)}},function(a,b){n.fn[a]=function(c,d){var e=n.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=n.filter(d,e)),this.length>1&&(C[a]||n.unique(e),B.test(a)&&e.reverse()),this.pushStack(e)}});var E=/\S+/g,F={};function G(a){var b=F[a]={};return n.each(a.match(E)||[],function(a,c){b[c]=!0}),b}n.Callbacks=function(a){a="string"==typeof a?F[a]||G(a):n.extend({},a);var b,c,d,e,f,g,h=[],i=!a.once&&[],j=function(l){for(b=a.memory&&l,c=!0,g=e||0,e=0,f=h.length,d=!0;h&&f>g;g++)if(h[g].apply(l[0],l[1])===!1&&a.stopOnFalse){b=!1;break}d=!1,h&&(i?i.length&&j(i.shift()):b?h=[]:k.disable())},k={add:function(){if(h){var c=h.length;!function g(b){n.each(b,function(b,c){var d=n.type(c);"function"===d?a.unique&&k.has(c)||h.push(c):c&&c.length&&"string"!==d&&g(c)})}(arguments),d?f=h.length:b&&(e=c,j(b))}return this},remove:function(){return h&&n.each(arguments,function(a,b){var c;while((c=n.inArray(b,h,c))>-1)h.splice(c,1),d&&(f>=c&&f--,g>=c&&g--)}),this},has:function(a){return a?n.inArray(a,h)>-1:!(!h||!h.length)},empty:function(){return h=[],f=0,this},disable:function(){return h=i=b=void 0,this},disabled:function(){return!h},lock:function(){return i=void 0,b||k.disable(),this},locked:function(){return!i},fireWith:function(a,b){return!h||c&&!i||(b=b||[],b=[a,b.slice?b.slice():b],d?i.push(b):j(b)),this},fire:function(){return k.fireWith(this,arguments),this},fired:function(){return!!c}};return k},n.extend({Deferred:function(a){var b=[["resolve","done",n.Callbacks("once memory"),"resolved"],["reject","fail",n.Callbacks("once memory"),"rejected"],["notify","progress",n.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return n.Deferred(function(c){n.each(b,function(b,f){var g=n.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&n.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?n.extend(a,d):d}},e={};return d.pipe=d.then,n.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=d.call(arguments),e=c.length,f=1!==e||a&&n.isFunction(a.promise)?e:0,g=1===f?a:n.Deferred(),h=function(a,b,c){return function(e){b[a]=this,c[a]=arguments.length>1?d.call(arguments):e,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(e>1)for(i=new Array(e),j=new Array(e),k=new Array(e);e>b;b++)c[b]&&n.isFunction(c[b].promise)?c[b].promise().done(h(b,k,c)).fail(g.reject).progress(h(b,j,i)):--f;return f||g.resolveWith(k,c),g.promise()}});var H;n.fn.ready=function(a){return n.ready.promise().done(a),this},n.extend({isReady:!1,readyWait:1,holdReady:function(a){a?n.readyWait++:n.ready(!0)},ready:function(a){(a===!0?--n.readyWait:n.isReady)||(n.isReady=!0,a!==!0&&--n.readyWait>0||(H.resolveWith(l,[n]),n.fn.triggerHandler&&(n(l).triggerHandler("ready"),n(l).off("ready"))))}});function I(){l.removeEventListener("DOMContentLoaded",I,!1),a.removeEventListener("load",I,!1),n.ready()}n.ready.promise=function(b){return H||(H=n.Deferred(),"complete"===l.readyState?setTimeout(n.ready):(l.addEventListener("DOMContentLoaded",I,!1),a.addEventListener("load",I,!1))),H.promise(b)},n.ready.promise();var J=n.access=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===n.type(c)){e=!0;for(h in c)n.access(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,n.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(n(a),c)})),b))for(;i>h;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f};n.acceptData=function(a){return 1===a.nodeType||9===a.nodeType||!+a.nodeType};function K(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=n.expando+K.uid++}K.uid=1,K.accepts=n.acceptData,K.prototype={key:function(a){if(!K.accepts(a))return 0;var b={},c=a[this.expando];if(!c){c=K.uid++;try{b[this.expando]={value:c},Object.defineProperties(a,b)}catch(d){b[this.expando]=c,n.extend(a,b)}}return this.cache[c]||(this.cache[c]={}),c},set:function(a,b,c){var d,e=this.key(a),f=this.cache[e];if("string"==typeof b)f[b]=c;else if(n.isEmptyObject(f))n.extend(this.cache[e],b);else for(d in b)f[d]=b[d];return f},get:function(a,b){var c=this.cache[this.key(a)];return void 0===b?c:c[b]},access:function(a,b,c){var d;return void 0===b||b&&"string"==typeof b&&void 0===c?(d=this.get(a,b),void 0!==d?d:this.get(a,n.camelCase(b))):(this.set(a,b,c),void 0!==c?c:b)},remove:function(a,b){var c,d,e,f=this.key(a),g=this.cache[f];if(void 0===b)this.cache[f]={};else{n.isArray(b)?d=b.concat(b.map(n.camelCase)):(e=n.camelCase(b),b in g?d=[b,e]:(d=e,d=d in g?[d]:d.match(E)||[])),c=d.length;while(c--)delete g[d[c]]}},hasData:function(a){return!n.isEmptyObject(this.cache[a[this.expando]]||{})},discard:function(a){a[this.expando]&&delete this.cache[a[this.expando]]}};var L=new K,M=new K,N=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,O=/([A-Z])/g;function P(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(O,"-$1").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:N.test(c)?n.parseJSON(c):c}catch(e){}M.set(a,b,c)}else c=void 0;return c}n.extend({hasData:function(a){return M.hasData(a)||L.hasData(a)},data:function(a,b,c){ +return M.access(a,b,c)},removeData:function(a,b){M.remove(a,b)},_data:function(a,b,c){return L.access(a,b,c)},_removeData:function(a,b){L.remove(a,b)}}),n.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=M.get(f),1===f.nodeType&&!L.get(f,"hasDataAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=n.camelCase(d.slice(5)),P(f,d,e[d])));L.set(f,"hasDataAttrs",!0)}return e}return"object"==typeof a?this.each(function(){M.set(this,a)}):J(this,function(b){var c,d=n.camelCase(a);if(f&&void 0===b){if(c=M.get(f,a),void 0!==c)return c;if(c=M.get(f,d),void 0!==c)return c;if(c=P(f,d,void 0),void 0!==c)return c}else this.each(function(){var c=M.get(this,d);M.set(this,d,b),-1!==a.indexOf("-")&&void 0!==c&&M.set(this,a,b)})},null,b,arguments.length>1,null,!0)},removeData:function(a){return this.each(function(){M.remove(this,a)})}}),n.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=L.get(a,b),c&&(!d||n.isArray(c)?d=L.access(a,b,n.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=n.queue(a,b),d=c.length,e=c.shift(),f=n._queueHooks(a,b),g=function(){n.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return L.get(a,c)||L.access(a,c,{empty:n.Callbacks("once memory").add(function(){L.remove(a,[b+"queue",c])})})}}),n.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.lengthx",k.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var U="undefined";k.focusinBubbles="onfocusin"in a;var V=/^key/,W=/^(?:mouse|pointer|contextmenu)|click/,X=/^(?:focusinfocus|focusoutblur)$/,Y=/^([^.]*)(?:\.(.+)|)$/;function Z(){return!0}function $(){return!1}function _(){try{return l.activeElement}catch(a){}}n.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=L.get(a);if(r){c.handler&&(f=c,c=f.handler,e=f.selector),c.guid||(c.guid=n.guid++),(i=r.events)||(i=r.events={}),(g=r.handle)||(g=r.handle=function(b){return typeof n!==U&&n.event.triggered!==b.type?n.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(E)||[""],j=b.length;while(j--)h=Y.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o&&(l=n.event.special[o]||{},o=(e?l.delegateType:l.bindType)||o,l=n.event.special[o]||{},k=n.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&n.expr.match.needsContext.test(e),namespace:p.join(".")},f),(m=i[o])||(m=i[o]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,p,g)!==!1||a.addEventListener&&a.addEventListener(o,g,!1)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),n.event.global[o]=!0)}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=L.hasData(a)&&L.get(a);if(r&&(i=r.events)){b=(b||"").match(E)||[""],j=b.length;while(j--)if(h=Y.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=n.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,m=i[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;while(f--)k=m[f],!e&&q!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||n.removeEvent(a,o,r.handle),delete i[o])}else for(o in i)n.event.remove(a,o+b[j],c,d,!0);n.isEmptyObject(i)&&(delete r.handle,L.remove(a,"events"))}},trigger:function(b,c,d,e){var f,g,h,i,k,m,o,p=[d||l],q=j.call(b,"type")?b.type:b,r=j.call(b,"namespace")?b.namespace.split("."):[];if(g=h=d=d||l,3!==d.nodeType&&8!==d.nodeType&&!X.test(q+n.event.triggered)&&(q.indexOf(".")>=0&&(r=q.split("."),q=r.shift(),r.sort()),k=q.indexOf(":")<0&&"on"+q,b=b[n.expando]?b:new n.Event(q,"object"==typeof b&&b),b.isTrigger=e?2:3,b.namespace=r.join("."),b.namespace_re=b.namespace?new RegExp("(^|\\.)"+r.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=d),c=null==c?[b]:n.makeArray(c,[b]),o=n.event.special[q]||{},e||!o.trigger||o.trigger.apply(d,c)!==!1)){if(!e&&!o.noBubble&&!n.isWindow(d)){for(i=o.delegateType||q,X.test(i+q)||(g=g.parentNode);g;g=g.parentNode)p.push(g),h=g;h===(d.ownerDocument||l)&&p.push(h.defaultView||h.parentWindow||a)}f=0;while((g=p[f++])&&!b.isPropagationStopped())b.type=f>1?i:o.bindType||q,m=(L.get(g,"events")||{})[b.type]&&L.get(g,"handle"),m&&m.apply(g,c),m=k&&g[k],m&&m.apply&&n.acceptData(g)&&(b.result=m.apply(g,c),b.result===!1&&b.preventDefault());return b.type=q,e||b.isDefaultPrevented()||o._default&&o._default.apply(p.pop(),c)!==!1||!n.acceptData(d)||k&&n.isFunction(d[q])&&!n.isWindow(d)&&(h=d[k],h&&(d[k]=null),n.event.triggered=q,d[q](),n.event.triggered=void 0,h&&(d[k]=h)),b.result}},dispatch:function(a){a=n.event.fix(a);var b,c,e,f,g,h=[],i=d.call(arguments),j=(L.get(this,"events")||{})[a.type]||[],k=n.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=n.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,c=0;while((g=f.handlers[c++])&&!a.isImmediatePropagationStopped())(!a.namespace_re||a.namespace_re.test(g.namespace))&&(a.handleObj=g,a.data=g.data,e=((n.event.special[g.origType]||{}).handle||g.handler).apply(f.elem,i),void 0!==e&&(a.result=e)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&(!a.button||"click"!==a.type))for(;i!==this;i=i.parentNode||this)if(i.disabled!==!0||"click"!==a.type){for(d=[],c=0;h>c;c++)f=b[c],e=f.selector+" ",void 0===d[e]&&(d[e]=f.needsContext?n(e,this).index(i)>=0:n.find(e,this,null,[i]).length),d[e]&&d.push(f);d.length&&g.push({elem:i,handlers:d})}return h]*)\/>/gi,ba=/<([\w:]+)/,ca=/<|&#?\w+;/,da=/<(?:script|style|link)/i,ea=/checked\s*(?:[^=]|=\s*.checked.)/i,fa=/^$|\/(?:java|ecma)script/i,ga=/^true\/(.*)/,ha=/^\s*\s*$/g,ia={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};ia.optgroup=ia.option,ia.tbody=ia.tfoot=ia.colgroup=ia.caption=ia.thead,ia.th=ia.td;function ja(a,b){return n.nodeName(a,"table")&&n.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function ka(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function la(a){var b=ga.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function ma(a,b){for(var c=0,d=a.length;d>c;c++)L.set(a[c],"globalEval",!b||L.get(b[c],"globalEval"))}function na(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(L.hasData(a)&&(f=L.access(a),g=L.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;d>c;c++)n.event.add(b,e,j[e][c])}M.hasData(a)&&(h=M.access(a),i=n.extend({},h),M.set(b,i))}}function oa(a,b){var c=a.getElementsByTagName?a.getElementsByTagName(b||"*"):a.querySelectorAll?a.querySelectorAll(b||"*"):[];return void 0===b||b&&n.nodeName(a,b)?n.merge([a],c):c}function pa(a,b){var c=b.nodeName.toLowerCase();"input"===c&&T.test(a.type)?b.checked=a.checked:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}n.extend({clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=n.contains(a.ownerDocument,a);if(!(k.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||n.isXMLDoc(a)))for(g=oa(h),f=oa(a),d=0,e=f.length;e>d;d++)pa(f[d],g[d]);if(b)if(c)for(f=f||oa(a),g=g||oa(h),d=0,e=f.length;e>d;d++)na(f[d],g[d]);else na(a,h);return g=oa(h,"script"),g.length>0&&ma(g,!i&&oa(a,"script")),h},buildFragment:function(a,b,c,d){for(var e,f,g,h,i,j,k=b.createDocumentFragment(),l=[],m=0,o=a.length;o>m;m++)if(e=a[m],e||0===e)if("object"===n.type(e))n.merge(l,e.nodeType?[e]:e);else if(ca.test(e)){f=f||k.appendChild(b.createElement("div")),g=(ba.exec(e)||["",""])[1].toLowerCase(),h=ia[g]||ia._default,f.innerHTML=h[1]+e.replace(aa,"<$1>")+h[2],j=h[0];while(j--)f=f.lastChild;n.merge(l,f.childNodes),f=k.firstChild,f.textContent=""}else l.push(b.createTextNode(e));k.textContent="",m=0;while(e=l[m++])if((!d||-1===n.inArray(e,d))&&(i=n.contains(e.ownerDocument,e),f=oa(k.appendChild(e),"script"),i&&ma(f),c)){j=0;while(e=f[j++])fa.test(e.type||"")&&c.push(e)}return k},cleanData:function(a){for(var b,c,d,e,f=n.event.special,g=0;void 0!==(c=a[g]);g++){if(n.acceptData(c)&&(e=c[L.expando],e&&(b=L.cache[e]))){if(b.events)for(d in b.events)f[d]?n.event.remove(c,d):n.removeEvent(c,d,b.handle);L.cache[e]&&delete L.cache[e]}delete M.cache[c[M.expando]]}}}),n.fn.extend({text:function(a){return J(this,function(a){return void 0===a?n.text(this):this.empty().each(function(){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&(this.textContent=a)})},null,a,arguments.length)},append:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=ja(this,a);b.appendChild(a)}})},prepend:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=ja(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var c,d=a?n.filter(a,this):this,e=0;null!=(c=d[e]);e++)b||1!==c.nodeType||n.cleanData(oa(c)),c.parentNode&&(b&&n.contains(c.ownerDocument,c)&&ma(oa(c,"script")),c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(n.cleanData(oa(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return n.clone(this,a,b)})},html:function(a){return J(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!da.test(a)&&!ia[(ba.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(aa,"<$1>");try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(n.cleanData(oa(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=arguments[0];return this.domManip(arguments,function(b){a=this.parentNode,n.cleanData(oa(this)),a&&a.replaceChild(b,this)}),a&&(a.length||a.nodeType)?this:this.remove()},detach:function(a){return this.remove(a,!0)},domManip:function(a,b){a=e.apply([],a);var c,d,f,g,h,i,j=0,l=this.length,m=this,o=l-1,p=a[0],q=n.isFunction(p);if(q||l>1&&"string"==typeof p&&!k.checkClone&&ea.test(p))return this.each(function(c){var d=m.eq(c);q&&(a[0]=p.call(this,c,d.html())),d.domManip(a,b)});if(l&&(c=n.buildFragment(a,this[0].ownerDocument,!1,this),d=c.firstChild,1===c.childNodes.length&&(c=d),d)){for(f=n.map(oa(c,"script"),ka),g=f.length;l>j;j++)h=c,j!==o&&(h=n.clone(h,!0,!0),g&&n.merge(f,oa(h,"script"))),b.call(this[j],h,j);if(g)for(i=f[f.length-1].ownerDocument,n.map(f,la),j=0;g>j;j++)h=f[j],fa.test(h.type||"")&&!L.access(h,"globalEval")&&n.contains(i,h)&&(h.src?n._evalUrl&&n._evalUrl(h.src):n.globalEval(h.textContent.replace(ha,"")))}return this}}),n.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){n.fn[a]=function(a){for(var c,d=[],e=n(a),g=e.length-1,h=0;g>=h;h++)c=h===g?this:this.clone(!0),n(e[h])[b](c),f.apply(d,c.get());return this.pushStack(d)}});var qa,ra={};function sa(b,c){var d,e=n(c.createElement(b)).appendTo(c.body),f=a.getDefaultComputedStyle&&(d=a.getDefaultComputedStyle(e[0]))?d.display:n.css(e[0],"display");return e.detach(),f}function ta(a){var b=l,c=ra[a];return c||(c=sa(a,b),"none"!==c&&c||(qa=(qa||n("