diff --git a/php/clonos.php b/php/clonos.php
new file mode 100644
index 00000000..b93d1d6d
--- /dev/null
+++ b/php/clonos.php
@@ -0,0 +1,549 @@
+ array('pipe','r'),
+ 1 => array('pipe','w'),
+ 2 => array('pipe','r')
+ );
+//echo self::CBSD_CMD.$cmd;exit;
+ $process = proc_open(self::CBSD_CMD.trim($cmd),$descriptorspec,$pipes,null,null);
+
+ $error=false;
+ $error_message='';
+ $message='';
+ if (is_resource($process))
+ {
+ $buf=stream_get_contents($pipes[1]);
+ $buf0=stream_get_contents($pipes[0]);
+ $buf1=stream_get_contents($pipes[2]);
+ fclose($pipes[0]);
+ fclose($pipes[1]);
+ fclose($pipes[2]);
+
+ $task_id=-1;
+ $return_value = proc_close($process);
+ if($return_value!=0)
+ {
+ $error=true;
+ $error_message=$buf;
+ //$log_file='/tmp';
+ //if(file_exists())
+ }else{
+ $message=trim($buf);
+ }
+ //echo self::CBSD_CMD.$cmd;
+ return array('cmd'=>$cmd,'retval'=>$return_value, 'message'=>$message, 'error'=>$error,'error_message'=>$error_message);
+ }
+ }
+
+ function __construct($_REALPATH) # /usr/home/web/cp/clonos
+ {
+ $this->workdir=getenv('WORKDIR');
+ # // /usr/jails
+
+ $this->realpath_php=$_REALPATH.'/php/';
+ # /usr/home/web/cp/clonos/php/
+
+ $this->realpath_php=$_REALPATH.'/public/';
+ # /usr/home/web/cp/clonos/public/
+
+ include('config.php');
+ include('db.php');
+ include('menu.php');
+
+ $this->config=new Config();
+ $this->menu=new Menu($this->config->menu);
+
+
+
+
+
+
+
+ return;
+//echo base64_encode(file_get_contents($rp.'/images/tree-minus.gif'));exit;
+ if(substr($rp,-7)=='/webdev')
+ {
+ $this->realpath=substr($rp,0,-7);
+ }else{
+ $this->realpath=$rp;
+ }
+ include_once($this->realpath.'/db.php');
+
+
+ $this->_db=new Db('sqlite_webdev');
+ $this->_db_tasks=new Db('sqlite_cbsd','tasks');
+ $this->_db_jails=new Db('sqlite_cbsd','jails');
+ $this->_post=($_SERVER['REQUEST_METHOD']=='POST');
+
+ if(isset($_POST['groupsUpdate'])) return;
+
+ if($this->_post)
+ {
+ $this->_vars=$_POST;
+ unset($_POST);
+
+ $this->projectId=intval($this->_vars['project']);
+ $this->jailId=intval($this->_vars['jail']);
+ $this->moduleId=intval($this->_vars['module']);
+ if(isset($this->_vars['helper']))
+ $this->helper=$this->_vars['helper'];
+ $this->mode=$this->_vars['mode'];
+ if(isset($this->_vars['form_data'])) $this->form=$this->_vars['form_data'];
+
+ switch($this->mode)
+ {
+ case 'getProjectsList':
+ $projects=$this->getProjectsList();
+ echo json_encode(array('projects'=>$projects));
+ return;break;
+ case 'getJailsList':
+ $projects=$this->getProjectsList();
+ $jails=$this->getJailsList();
+ echo json_encode(array('jails'=>$jails,'projects'=>$projects));
+ return;break;
+ case 'getModulesList':
+ $jails=$this->getJailsList();
+ $modules=$this->getModulesList();
+ echo json_encode(array('jails'=>$jails,'modules'=>$modules));
+ return;break;
+ case 'getModuleSettings':
+ $modules=$this->getModulesList();
+ $settings=$this->getModuleSettings();
+ echo json_encode(array('modules'=>$modules,'settings'=>$settings));
+ return;break;
+ case 'getHelpersList':
+ $jails=$this->getJailsList();
+ $helpers=$this->getHelpersList();
+ echo json_encode(array('jails'=>$jails,'helpers'=>$helpers));
+ return;break;
+ case 'getHelper':
+ //$jails=$this->getJailsList();
+ $modules=$this->getHelpersList();
+ $helper=$this->getHelper();
+ echo json_encode(array('modules'=>$modules,'helpers'=>$helper));
+ return;break;
+ case 'installHelper':
+ $res=$this->installHelper();
+ $modules=$this->getHelpersList();
+ $helper=$this->getHelper();
+ echo json_encode(array('modules'=>$modules,'helpers'=>$helper,'res'=>$res));
+ return;break;
+ case 'saveHelperValues':
+ $res=$this->saveHelperValues();
+ echo json_encode($res);
+ return;break;
+ case 'getServicesList':
+ $jails=$this->getJailsList();
+ $services=$this->getServicesList();
+ echo json_encode(array('jails'=>$jails,'services'=>$services));
+ return;break;
+ case 'getUsersList':
+ $jails=$this->getJailsList();
+ $users=$this->getUsersList();
+ echo json_encode(array('jails'=>$jails,'users'=>$users));
+ return;break;
+ case 'getModulesListForInstall':
+//$this->updateCountsModules();
+ $modules=$this->getModulesListForInstallHtml();
+ echo json_encode(array('html'=>$modules));
+ return;break;
+/*
+ case 'getInstalledModulesList':
+ $jails=$this->getJailsList();
+ $modules=$this->getInstalledModules();
+ echo json_encode(array('jails'=>$jails,'html'=>$modules));
+ return;break;
+*/
+ case 'addProject':
+ echo json_encode($this->projectAdd());
+ return;break;
+ case 'editProject':
+ echo json_encode($this->projectEdit());
+ return;break;
+ case 'addJail':
+ echo json_encode($this->addJail());
+ return;break;
+ case 'editJail':
+ echo json_encode($this->editJail());
+ return;break;
+/*
+ case 'jailClone':
+ echo json_encode($this->jailClone());
+ return;break;
+*/
+/*
+ case 'addModule':
+ $this->addModule();
+ return;break;
+*/
+/*
+ case 'removeModules':
+ $this->removeModules();
+ return;break;
+*/
+ case 'jailStart':
+ echo json_encode($this->jailStart($this->form['jail_name']));
+ return;break;
+ case 'getTasksStatus':
+ echo json_encode($this->_getTasksStatus($this->form['jsonObj']));
+ return;break;
+ case 'getJailSettings':
+ echo json_encode($this->getJailSettings($this->form['id']));
+ return;break;
+ case 'getExportedFiles':
+ echo json_encode($this->getExportedFiles());
+ return;break;
+ case 'getImportedFileInfo':
+ echo json_encode($this->getImportedFileInfo($this->form));
+ return;break;
+ case 'addNewUser':
+ $new_user=$this->addNewUser($this->form);
+ $jails=$this->getJailsList();
+ $users=$this->getUsersList();
+ echo json_encode(array('jails'=>$jails,'users'=>$users,'new_user'=>$new_user));
+ return;break;
+ case 'editUser':
+ $edit_user=$this->editUser($this->form);
+ $user=array();
+ $jails=$this->getJailsList();
+ $users=$this->getUsersList();
+ echo json_encode(array('jails'=>$jails,'users'=>$users,'new_user'=>$edit_user));
+ return;break;
+ case 'getTaskLog':
+ $jails=$this->getJailsList();
+ $log=$this->getTaskLog();
+ echo json_encode(array('jails'=>$jails,'tasklog'=>$log));
+ return;break;
+ case 'getTaskLogItem':
+ $jails=$this->getJailsList();
+ $item=$this->getTaskLogItem();
+ echo json_encode(array('jails'=>$jails,'item'=>$item));
+ return;break;
+ case 'getForm':
+ $res=$this->getForm();
+ echo json_encode($res);
+ return;break;
+ }
+ }
+ }
+
+ function check_locktime($nodeip)
+ {
+ $lockfile=$this->workdir."/ftmp/shmux_${nodeip}.lock";
+ if (!file_exists($lockfile)) {
+ return 0;
+ }
+
+ $cur_time = time();
+ $st_time=filemtime($lockfile);
+
+ $difftime=(( $cur_time - $st_time ) / 60 );
+ if ( $difftime > 1 ) {
+ return round($difftime);;
+ } else {
+ return 0; //lock exist but too fresh
+ }
+ }
+
+ function get_node_info($nodename,$value)
+ {
+ $db = new SQLite3($this->realpath."/var/db/nodes.sqlite"); $db->busyTimeout(5000);
+ if (!$db) return;
+ $sql = "SELECT $value FROM nodelist WHERE nodename=\"$nodename\"";
+
+ $result = $db->query($sql);//->fetchArray(SQLITE3_ASSOC);
+ $row = array();
+
+ while($res = $result->fetchArray(SQLITE3_ASSOC)){
+ if(!isset($res["$value"])) return;
+ return $res["$value"];
+ }
+ }
+
+/*
+ function getProjectsListOnStart()
+ {
+ $query='select * from projects';
+ $res=$this->_db->select($query);
+ echo ' var projects=',json_encode($res),PHP_EOL;
+ }
+*/
+
+/*
+ function getTaskStatus($task_id)
+ {
+ $status=$this->_db_tasks->selectAssoc("select status,logfile,errcode from taskd where id='{$task_id}'");
+ if($status['errcode']>0)
+ {
+ $status['errmsg']=file_get_contents($status['logfile']);
+ }
+ return $status;
+ }
+*/
+ function _getTasksStatus($jsonObj)
+ {
+ $tasks=array();
+ $obj=json_decode($jsonObj,true);
+
+ if(isset($obj['proj_ops'])) return $this->GetProjectTasksStatus($obj);
+ if(isset($obj['mod_ops'])) return $this->GetModulesTasksStatus($obj);
+
+ $ops_array=array('jcreate','jstart','jstop','jedit','jremove','jexport','jimport','jclone','madd','sstart','sstop','projremove'); //,'mremove'
+ $stat_array=array(
+ 'jcreate'=>array(get_translate('Creating'),get_translate('Not running')),
+ 'jstart'=>array(get_translate('Starting'),get_translate('Launched')),
+ 'jstop'=>array(get_translate('Stopping'),get_translate('Stopped')),
+ 'jedit'=>array(get_translate('Saving'),get_translate('Saved')),
+ 'jremove'=>array(get_translate('Removing'),get_translate('Removed')),
+ 'jexport'=>array(get_translate('Exporting'),get_translate('Exported')),
+ 'jimport'=>array(get_translate('Importing'),get_translate('Imported')),
+ 'jclone'=>array(get_translate('Cloning'),get_translate('Cloned')),
+ 'madd'=>array(get_translate('Installing'),get_translate('Installed')),
+ //'mremove'=>array('Removing','Removed'),
+ 'sstart'=>array(get_translate('Starting'),get_translate('Started')),
+ 'sstop'=>array(get_translate('Stopping'),get_translate('Stopped')),
+ //'projremove'=>array('Removing','Removed'),
+ );
+ if(!empty($obj)) foreach($obj as $key=>$task)
+ {
+ $op=$task['operation'];
+ $status=$task['status'];
+ if(in_array($op,$ops_array))
+ {
+ $res=false;
+ if($status==-1)
+ {
+ switch($op)
+ {
+ case 'jstart': $res=$this->jailStart('jail'.$key,$key);break;
+ case 'jstop': $res=$this->jailStop('jail'.$key,$key);break;
+ case 'jedit': $res=$this->jailEdit('jail'.$key);break;
+ case 'jremove': $res=$this->jailRemove('jail'.$key,$key);break;
+ case 'jexport': $res=$this->jailExport('jail'.$key,$task['jname'],$key);break;
+ case 'jimport': $res=$this->jailImport('jail'.$key,$task['jname'],$key);break;
+ case 'jclone': $res=$this->jailClone('jail'.$key,$key,$obj[$key]);break;
+ case 'madd': $res=$this->moduleAdd('jail'.$key,$task['jname'],$key);break;
+ //case 'mremove': $res=$this->moduleRemove('jail'.$key,$task['jname'],$key);break;
+ case 'sstart': $res=$this->serviceStart($task);break;
+ case 'sstop': $res=$this->serviceStop($task);break;
+ //case 'projremove': $res=$this->projectRemove($key,$task);break;
+ }
+ }
+
+ if($res!==false)
+ {
+ if($res['error'])
+ $obj[$key]['retval']=$res['retval'];
+ if(!empty($res['error_message']))
+ $obj[$key]['error_message']=$res['error_message'];
+
+ if(isset($res['message']))
+ {
+ $task_id=intval($res['message']);
+ if($task_id>0)
+ {
+ $tasks[]=$task_id;
+ $obj[$key]['task_id']=$task_id;
+ //$obj[$key]['txt_log']=file_get_contents('/tmp/taskd.'.$task_id.'.log');
+ }
+ }
+ }else{
+ $tasks[]=$task['task_id'];
+ }
+ }
+ }
+
+ $ids=join(',',$tasks);
+ if(!empty($ids))
+ {
+ $query="select id,status,logfile,errcode from taskd where id in ({$ids})";
+ $statuses=$this->_db_tasks->select($query);
+ //print_r($statuses);
+ if(!empty($obj)) foreach($obj as $key=>$task)
+ {
+ if(!empty($statuses)) foreach($statuses as $stat)
+ {
+ if($task['task_id']==$stat['id'])
+ {
+ $obj[$key]['status']=$stat['status'];
+ $num=($stat['status']<2?0:1);
+ $obj[$key]['txt_status']=$stat_array[$obj[$key]['operation']][$num];
+ if($stat['errcode']>0)
+ {
+ $obj[$key]['errmsg']=file_get_contents($stat['logfile']);
+ $obj[$key]['txt_status']=get_translate('Error');
+ }
+ # Удаляем джейл
+ if($stat['status']==2 && $task['operation']=='jremove')
+ {
+ $this->jailRemoveFromDb($stat['errcode'],$task);
+ }
+ # Удаляем модуль
+ /*
+ if($stat['status']==2 && $task['operation']=='mremove')
+ {
+ $this->moduleRemoveFromDb($stat['errcode'],$task);
+ }
+ */
+ # Возвращаем IP клонированному джейлу, если он был присвоен по DHCP
+ if($stat['status']==2 && $task['operation']=='jclone')
+ {
+ //$obj[$key]['new_ip']=$this->getJailIpOnJcloneEnd($key);
+ }
+ }
+ }
+ }
+ }
+
+ if(isset($res['cloned']) && $res['cloned'])
+ {
+ $obj[-1]['jails']=$this->getJailsList();
+ }
+
+ return $obj;
+ }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ function GhzConvert($Hz=0)
+ {
+ $h=1;$l='Mhz';
+ if($Hz>1000){$h=1000;$l='Ghz';}
+
+ return round($Hz/$h,2).' '.$l;
+ }
+
+ function fileSizeConvert($bytes, $bytes_in_mb=1024)
+ {
+ $bytes = floatval($bytes);
+ $arBytes = array(
+ 0 => array(
+ "UNIT" => "TB",
+ "VALUE" => pow($bytes_in_mb, 4)
+ ),
+ 1 => array(
+ "UNIT" => "GB",
+ "VALUE" => pow($bytes_in_mb, 3)
+ ),
+ 2 => array(
+ "UNIT" => "MB",
+ "VALUE" => pow($bytes_in_mb, 2)
+ ),
+ 3 => array(
+ "UNIT" => "KB",
+ "VALUE" => $bytes_in_mb
+ ),
+ 4 => array(
+ "UNIT" => "B",
+ "VALUE" => 1
+ ),
+ );
+
+ $result='0 MB';
+ foreach($arBytes as $arItem)
+ {
+ if($bytes >= $arItem["VALUE"])
+ {
+ $result = $bytes / $arItem["VALUE"];
+ $result = str_replace(".", "," , strval(round($result, 2)))." ".$arItem["UNIT"];
+ break;
+ }
+ }
+ return $result;
+ }
+}
+
+function translate($phrase)
+{
+ $lang=getLang();
+ $file=getLangFilePath($lang);
+ if(!file_exists($file)) $file=getLangFilePath('en');
+ if(!file_exists($file)) return;
+ require($file);
+
+ if(isset($lang[$phrase]))
+ echo $lang[$phrase];
+ else
+ echo $phrase;
+}
+function get_translate($phrase)
+{
+ $lang=getLang();
+ $file=getLangFilePath($lang);
+ if(!file_exists($file)) $file=getLangFilePath('en');
+ require($file);
+
+ if(isset($lang[$phrase]))
+ return $lang[$phrase];
+ else
+ return $phrase;
+}
+
+function getLang()
+{
+ if(isset($_COOKIE['lang']))
+ $lang=$_COOKIE['lang'];
+ if(empty($lang)) $lang='en';
+ return $lang;
+}
+function getLangFilePath($lang)
+{
+ global $_REALPATH;
+ return $_REALPATH.'/public/lang/'.$lang.'.php';
+}
\ No newline at end of file
diff --git a/php/config.php b/php/config.php
new file mode 100644
index 00000000..5124a0eb
--- /dev/null
+++ b/php/config.php
@@ -0,0 +1,89 @@
+'English',
+ 'ru'=>'Russian',
+ 'de'=>'Deutch',
+ );
+
+ /* Меню проекта */
+ /* Так же можно использовать подменю (в menu.php есть пример) */
+ public $menu=array(
+ 'overview'=>array(
+ 'name'=>'Overview',
+ 'title'=>'Summary Overview', // заголовки лучше делать более полными, чем просто повторение пункта меню
+ ),
+ 'jailscontainers'=>array(
+ 'name'=>'Jails containers',
+ 'title'=>'Jails containers control panel',
+ ),
+
+ 'instance_jail'=>array(
+ 'name'=>'Template for jail',
+ 'title'=>'Helpers and wizard for containers',
+ ),
+
+ 'bhyvevms'=>array(
+ 'name'=>'Bhyve VMs',
+ 'title'=>'Virtual machine control panel',
+ ),
+
+ 'nodes'=>array(
+ 'name'=>'Nodes',
+ 'title'=>'Nodes control panel',
+ ),
+
+ 'vpnet'=>array(
+ 'name'=>'Virtual Private Network',
+ 'title'=>'Manage for virtual private networks',
+ ),
+
+ 'authkey'=>array(
+ 'name'=>'Authkey',
+ 'title'=>'Manage for SSH auth key',
+ ),
+
+ 'media'=>array(
+ 'name'=>'Storage Media',
+ 'title'=>'Virtual Media Manager',
+ ),
+
+ 'repo'=>array(
+ 'name'=>'Repository',
+ 'title'=>'Remote repository',
+ ),
+
+ 'bases'=>array(
+ 'name'=>'FreeBSD Bases',
+ 'title'=>'FreeBSD bases manager',
+ ),
+
+ 'sources'=>array(
+ 'name'=>'FreeBSD Sources',
+ 'title'=>'FreeBSD sources manager',
+ ),
+
+ 'jail_marketplace'=>array(
+ 'name'=>'Jail Marketplace',
+ 'title'=>'Public remote containers marketplace',
+ ),
+
+ 'bhyve_marketplace'=>array(
+ 'name'=>'Bhyve Marketplace',
+ 'title'=>'Public remote virtual machine marketplace',
+ ),
+
+ 'tasklog'=>array(
+ 'name'=>'TaskLog',
+ 'title'=>'System task log',
+ ),
+
+ 'sqlite'=>array(
+ 'name'=>'SQLite admin',
+ 'title'=>'SQLite admin interface',
+ ),
+
+ );
+}
\ No newline at end of file
diff --git a/php/db.php b/php/db.php
new file mode 100644
index 00000000..9d18732e
--- /dev/null
+++ b/php/db.php
@@ -0,0 +1,145 @@
+_workdir=getenv('WORKDIR'); // /usr/jails/
+
+ // sqlite:/usr/jails/var/db/local.sqlite
+ if($place=='base')
+ {
+ $file_name=$this->_workdir.'/var/db/'.$database.'.sqlite';
+ $connect='sqlite:'.$file_name;
+ }elseif($place=='file'){
+
+ }
+ /*
+ $databases=array(
+ 'tasks'=>'cbsdtaskd',
+ 'jails'=>'local',
+ );
+
+ switch($driver)
+ {
+ case 'sqlite_webdev':
+ $connect='sqlite:/var/db/webdev/webdev.sqlite';
+ break;
+ case 'forms':
+ $connect='sqlite:/var/db/webdev/forms.sqlite';
+ break;
+ case 'helpers':
+ if(is_array($database))
+ {
+ $connect='sqlite:'.$this->_workdir.'/jails-system/'.
+ $database['jname'].'/helpers/'.$database['helper'].".sqlite";
+ }else{
+ $connect='';
+ }
+ break;
+ case 'sqlite_cbsd':
+ if($database!='')
+ {
+ if(!isset($databases[$database])) break;
+ $db=$databases[$database];
+ $connect='sqlite:'.$this->_workdir.'/var/db/'.$db.'.sqlite';
+ }
+ break;
+ case 'pkg':
+ $connect='sqlite:'.$this->_workdir.'/jails-data/'.$database.'-data/var/db/pkg/local.sqlite';
+ break;
+/-*
+ case 'from_file':
+ echo $this->_workdir.$database;
+ $connect='sqlite:'.$this->_workdir.$database;
+ //"/jails-system/jail".$this->jailId."/helpers/".$this->helper.".sqlite"
+ break;
+*-/
+ default:
+ throw new Exception('Unknown database driver!');
+ break;
+ }
+ */
+
+ if(!file_exists($file_name))
+ {
+ $this->error=true;
+ $this->error_message='DB file not found!';
+ return false;
+ }
+
+ if(!empty($connect))
+ {
+ try
+ {
+ $this->_pdo = new PDO($connect);
+ $this->_pdo->setAttribute(PDO::ATTR_TIMEOUT,5000);
+ }catch (PDOException $e){
+ $this->error=true;
+ $this->error_message=$e->getMessage(); //'DB Error';
+ return false;
+ }
+ }else{
+ return false;
+ }
+ }
+
+ function getWorkdir()
+ {
+ return $this->_workdir;
+ }
+
+ function select($query)
+ {
+ if($quer=$this->_pdo->query($query))
+ {
+ $res=$quer->fetchAll(PDO::FETCH_ASSOC);
+ return $res;
+ }
+ return array();
+ }
+
+ function selectAssoc($query)
+ {
+ if($quer=$this->_pdo->query($query))
+ {
+ $res=$quer->fetch(PDO::FETCH_ASSOC);
+ return $res;
+ }
+ return array();
+ }
+
+ function insert($query)
+ {
+ if($quer=$this->_pdo->query($query))
+ {
+ $lastID=$this->_pdo->lastInsertId();
+ return array('error'=>false,'lastID'=>$lastID);
+ }else{
+ $error=array('error'=>true,'info'=>$this->_pdo->errorInfo());
+ return $error;
+ }
+ return false;
+ }
+
+ function update($query)
+ {
+ if($quer=$this->_pdo->query($query))
+ {
+ $rowCount=$quer->rowCount();
+ return array('rowCount'=>$rowCount);
+ }else{
+ $error=$this->_pdo->errorInfo();
+ return $error;
+ }
+ return false;
+ }
+}
\ No newline at end of file
diff --git a/php/forms.php b/php/forms.php
new file mode 100644
index 00000000..18c5621d
--- /dev/null
+++ b/php/forms.php
@@ -0,0 +1,149 @@
+name=$jname;
+ $this->db=new Db('helpers',array('jname'=>$jname,'helper'=>$helper));
+ }
+
+ function generate()
+ {
+ $query="select * from forms order by group_id asc, order_id asc";
+ $fields=$this->db->select($query);
+ //echo '
';print_r($fields);
+ $defaults=array();
+
+ $last_type='';
+ $this->html='
';
+ return array('html'=>$this->html,'defaults'=>$defaults);
+ }
+
+ function getElement($el,$arr=array())
+ {
+ $tpl='';
+ switch(trim($el))
+ {
+ case 'inputbox':
+ $tpl='[default]${desc}
';
+ break;
+ case 'password':
+ $tpl='[default]${desc}
';
+ break;
+ case 'delimer':
+ $tpl='${desc}
';
+ break;
+ case 'checkbox':
+ $tpl='';
+ break;
+ case 'select':
+ $tpl=$this->getSelect($el,$arr);
+ break;
+ case 'radio':
+ $tpl=$this->getRadio($el,$arr);
+ break;
+ }
+ return $tpl;
+ }
+
+ function getSelect($el,$arr)
+ {
+ $tpl='[default]${desc}
';
+ return $tpl;
+ }
+
+ function getRadio($el,$arr)
+ {
+ $tpl='';
+ return $tpl;
+ }
+
+ function setButtons($arr=array())
+ {
+ $this->html.='
';
+ }
+}
+
+/*
+
+$form=new Forms('php');
+?>
+
+
+generate();
+//$form->setButtons(array('save','cancel'));
+
+*/
\ No newline at end of file
diff --git a/php/menu.php b/php/menu.php
new file mode 100644
index 00000000..118e1809
--- /dev/null
+++ b/php/menu.php
@@ -0,0 +1,86 @@
+array(
+ 'name'=>'Новости',
+ 'title'=>'Новости сети',
+ ),
+ 'connect'=>array(
+ 'name'=>'Подключение к сети',
+ 'title'=>'Подключитесь к сети прямо сейчас!',
+ 'submenu'=>array(
+ 'map'=>array(
+ 'name'=>'Зона обслуживания',
+ 'title'=>'Зона обслуживания абонентов',
+ ),
+ 'wifi'=>array(
+ 'name'=>'Wi-Fi зоны',
+ 'title'=>'Бесплатные Wi-Fi зоны г. Кириши',
+ ),
+ 'docs'=>array(
+ 'name'=>'Документы',
+ 'title'=>'Документы'
+ )
+ )
+ ),
+*/
+
+
+class Menu
+{
+ public $html=array();
+ public $name='';
+ public $title='Error';
+ public $path='';
+ public $first_key=array();
+
+ function __construct($menu_config=array())
+ {
+ if(!empty($menu_config))
+ {
+ reset($menu_config);
+ $this->first_key=key($menu_config);
+ }
+
+ $this->html='';
+ }
+}
\ No newline at end of file
diff --git a/public/authkey/authkey_add.inc b/public-old/authkey/authkey_add.inc
similarity index 100%
rename from public/authkey/authkey_add.inc
rename to public-old/authkey/authkey_add.inc
diff --git a/public/authkey/index.inc b/public-old/authkey/index.inc
similarity index 100%
rename from public/authkey/index.inc
rename to public-old/authkey/index.inc
diff --git a/public/authkey/show_authkey.php b/public-old/authkey/show_authkey.php
similarity index 100%
rename from public/authkey/show_authkey.php
rename to public-old/authkey/show_authkey.php
diff --git a/public/bases/index.inc b/public-old/bases/index.inc
similarity index 100%
rename from public/bases/index.inc
rename to public-old/bases/index.inc
diff --git a/public/bases/show_bases.php b/public-old/bases/show_bases.php
similarity index 100%
rename from public/bases/show_bases.php
rename to public-old/bases/show_bases.php
diff --git a/public/bhyve_marketplace/index.inc b/public-old/bhyve_marketplace/index.inc
similarity index 100%
rename from public/bhyve_marketplace/index.inc
rename to public-old/bhyve_marketplace/index.inc
diff --git a/public/bhyvevms/bcreate.inc b/public-old/bhyvevms/bcreate.inc
similarity index 100%
rename from public/bhyvevms/bcreate.inc
rename to public-old/bhyvevms/bcreate.inc
diff --git a/public/bhyvevms/bcreate_cloud-fromargs.php b/public-old/bhyvevms/bcreate_cloud-fromargs.php
similarity index 100%
rename from public/bhyvevms/bcreate_cloud-fromargs.php
rename to public-old/bhyvevms/bcreate_cloud-fromargs.php
diff --git a/public/bhyvevms/bobtain.inc b/public-old/bhyvevms/bobtain.inc
similarity index 100%
rename from public/bhyvevms/bobtain.inc
rename to public-old/bhyvevms/bobtain.inc
diff --git a/public/bhyvevms/bobtain.inc-orig b/public-old/bhyvevms/bobtain.inc-orig
similarity index 100%
rename from public/bhyvevms/bobtain.inc-orig
rename to public-old/bhyvevms/bobtain.inc-orig
diff --git a/public/bhyvevms/bremove.php b/public-old/bhyvevms/bremove.php
similarity index 100%
rename from public/bhyvevms/bremove.php
rename to public-old/bhyvevms/bremove.php
diff --git a/public/bhyvevms/bstart.php b/public-old/bhyvevms/bstart.php
similarity index 100%
rename from public/bhyvevms/bstart.php
rename to public-old/bhyvevms/bstart.php
diff --git a/public/bhyvevms/bstop.php b/public-old/bhyvevms/bstop.php
similarity index 100%
rename from public/bhyvevms/bstop.php
rename to public-old/bhyvevms/bstop.php
diff --git a/public/bhyvevms/index.inc b/public-old/bhyvevms/index.inc
similarity index 100%
rename from public/bhyvevms/index.inc
rename to public-old/bhyvevms/index.inc
diff --git a/public/bhyvevms/show_bhyvevm.php b/public-old/bhyvevms/show_bhyvevm.php
similarity index 100%
rename from public/bhyvevms/show_bhyvevm.php
rename to public-old/bhyvevms/show_bhyvevm.php
diff --git a/public/bootstrap/.editorconfig b/public-old/bootstrap/.editorconfig
similarity index 100%
rename from public/bootstrap/.editorconfig
rename to public-old/bootstrap/.editorconfig
diff --git a/public/bootstrap/.gitattributes b/public-old/bootstrap/.gitattributes
similarity index 100%
rename from public/bootstrap/.gitattributes
rename to public-old/bootstrap/.gitattributes
diff --git a/public/bootstrap/.gitignore b/public-old/bootstrap/.gitignore
similarity index 100%
rename from public/bootstrap/.gitignore
rename to public-old/bootstrap/.gitignore
diff --git a/public/bootstrap/.hound.yml b/public-old/bootstrap/.hound.yml
similarity index 100%
rename from public/bootstrap/.hound.yml
rename to public-old/bootstrap/.hound.yml
diff --git a/public/bootstrap/.travis.yml b/public-old/bootstrap/.travis.yml
similarity index 100%
rename from public/bootstrap/.travis.yml
rename to public-old/bootstrap/.travis.yml
diff --git a/public/bootstrap/CHANGELOG.md b/public-old/bootstrap/CHANGELOG.md
similarity index 100%
rename from public/bootstrap/CHANGELOG.md
rename to public-old/bootstrap/CHANGELOG.md
diff --git a/public/bootstrap/CNAME b/public-old/bootstrap/CNAME
similarity index 100%
rename from public/bootstrap/CNAME
rename to public-old/bootstrap/CNAME
diff --git a/public/bootstrap/CONTRIBUTING.md b/public-old/bootstrap/CONTRIBUTING.md
similarity index 100%
rename from public/bootstrap/CONTRIBUTING.md
rename to public-old/bootstrap/CONTRIBUTING.md
diff --git a/public/bootstrap/Gemfile b/public-old/bootstrap/Gemfile
similarity index 100%
rename from public/bootstrap/Gemfile
rename to public-old/bootstrap/Gemfile
diff --git a/public/bootstrap/Gemfile.lock b/public-old/bootstrap/Gemfile.lock
similarity index 100%
rename from public/bootstrap/Gemfile.lock
rename to public-old/bootstrap/Gemfile.lock
diff --git a/public/bootstrap/Gruntfile.js b/public-old/bootstrap/Gruntfile.js
similarity index 100%
rename from public/bootstrap/Gruntfile.js
rename to public-old/bootstrap/Gruntfile.js
diff --git a/public/bootstrap/ISSUE_TEMPLATE.md b/public-old/bootstrap/ISSUE_TEMPLATE.md
similarity index 100%
rename from public/bootstrap/ISSUE_TEMPLATE.md
rename to public-old/bootstrap/ISSUE_TEMPLATE.md
diff --git a/public/bootstrap/LICENSE b/public-old/bootstrap/LICENSE
similarity index 100%
rename from public/bootstrap/LICENSE
rename to public-old/bootstrap/LICENSE
diff --git a/public/bootstrap/README.md b/public-old/bootstrap/README.md
similarity index 100%
rename from public/bootstrap/README.md
rename to public-old/bootstrap/README.md
diff --git a/public/bootstrap/_config.yml b/public-old/bootstrap/_config.yml
similarity index 100%
rename from public/bootstrap/_config.yml
rename to public-old/bootstrap/_config.yml
diff --git a/public/bootstrap/bower.json b/public-old/bootstrap/bower.json
similarity index 100%
rename from public/bootstrap/bower.json
rename to public-old/bootstrap/bower.json
diff --git a/public/bootstrap/composer.json b/public-old/bootstrap/composer.json
similarity index 100%
rename from public/bootstrap/composer.json
rename to public-old/bootstrap/composer.json
diff --git a/public/bootstrap/dist/css/bootstrap-theme.css b/public-old/bootstrap/dist/css/bootstrap-theme.css
similarity index 100%
rename from public/bootstrap/dist/css/bootstrap-theme.css
rename to public-old/bootstrap/dist/css/bootstrap-theme.css
diff --git a/public/bootstrap/dist/css/bootstrap-theme.css.map b/public-old/bootstrap/dist/css/bootstrap-theme.css.map
similarity index 100%
rename from public/bootstrap/dist/css/bootstrap-theme.css.map
rename to public-old/bootstrap/dist/css/bootstrap-theme.css.map
diff --git a/public/bootstrap/dist/css/bootstrap-theme.min.css b/public-old/bootstrap/dist/css/bootstrap-theme.min.css
similarity index 100%
rename from public/bootstrap/dist/css/bootstrap-theme.min.css
rename to public-old/bootstrap/dist/css/bootstrap-theme.min.css
diff --git a/public/bootstrap/dist/css/bootstrap-theme.min.css.map b/public-old/bootstrap/dist/css/bootstrap-theme.min.css.map
similarity index 100%
rename from public/bootstrap/dist/css/bootstrap-theme.min.css.map
rename to public-old/bootstrap/dist/css/bootstrap-theme.min.css.map
diff --git a/public/bootstrap/dist/css/bootstrap.css b/public-old/bootstrap/dist/css/bootstrap.css
similarity index 100%
rename from public/bootstrap/dist/css/bootstrap.css
rename to public-old/bootstrap/dist/css/bootstrap.css
diff --git a/public/bootstrap/dist/css/bootstrap.css.map b/public-old/bootstrap/dist/css/bootstrap.css.map
similarity index 100%
rename from public/bootstrap/dist/css/bootstrap.css.map
rename to public-old/bootstrap/dist/css/bootstrap.css.map
diff --git a/public/bootstrap/dist/css/bootstrap.min.css b/public-old/bootstrap/dist/css/bootstrap.min.css
similarity index 100%
rename from public/bootstrap/dist/css/bootstrap.min.css
rename to public-old/bootstrap/dist/css/bootstrap.min.css
diff --git a/public/bootstrap/dist/css/bootstrap.min.css.map b/public-old/bootstrap/dist/css/bootstrap.min.css.map
similarity index 100%
rename from public/bootstrap/dist/css/bootstrap.min.css.map
rename to public-old/bootstrap/dist/css/bootstrap.min.css.map
diff --git a/public/bootstrap/dist/fonts/glyphicons-halflings-regular.eot b/public-old/bootstrap/dist/fonts/glyphicons-halflings-regular.eot
similarity index 100%
rename from public/bootstrap/dist/fonts/glyphicons-halflings-regular.eot
rename to public-old/bootstrap/dist/fonts/glyphicons-halflings-regular.eot
diff --git a/public/bootstrap/dist/fonts/glyphicons-halflings-regular.svg b/public-old/bootstrap/dist/fonts/glyphicons-halflings-regular.svg
similarity index 100%
rename from public/bootstrap/dist/fonts/glyphicons-halflings-regular.svg
rename to public-old/bootstrap/dist/fonts/glyphicons-halflings-regular.svg
diff --git a/public/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf b/public-old/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf
similarity index 100%
rename from public/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf
rename to public-old/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf
diff --git a/public/bootstrap/dist/fonts/glyphicons-halflings-regular.woff b/public-old/bootstrap/dist/fonts/glyphicons-halflings-regular.woff
similarity index 100%
rename from public/bootstrap/dist/fonts/glyphicons-halflings-regular.woff
rename to public-old/bootstrap/dist/fonts/glyphicons-halflings-regular.woff
diff --git a/public/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2 b/public-old/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2
similarity index 100%
rename from public/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2
rename to public-old/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2
diff --git a/public/bootstrap/dist/js/bootstrap.js b/public-old/bootstrap/dist/js/bootstrap.js
similarity index 100%
rename from public/bootstrap/dist/js/bootstrap.js
rename to public-old/bootstrap/dist/js/bootstrap.js
diff --git a/public/bootstrap/dist/js/bootstrap.min.js b/public-old/bootstrap/dist/js/bootstrap.min.js
similarity index 100%
rename from public/bootstrap/dist/js/bootstrap.min.js
rename to public-old/bootstrap/dist/js/bootstrap.min.js
diff --git a/public/bootstrap/dist/js/npm.js b/public-old/bootstrap/dist/js/npm.js
similarity index 100%
rename from public/bootstrap/dist/js/npm.js
rename to public-old/bootstrap/dist/js/npm.js
diff --git a/public/bootstrap/docs/LICENSE b/public-old/bootstrap/docs/LICENSE
similarity index 100%
rename from public/bootstrap/docs/LICENSE
rename to public-old/bootstrap/docs/LICENSE
diff --git a/public/bootstrap/docs/_data/browser-bugs.yml b/public-old/bootstrap/docs/_data/browser-bugs.yml
similarity index 100%
rename from public/bootstrap/docs/_data/browser-bugs.yml
rename to public-old/bootstrap/docs/_data/browser-bugs.yml
diff --git a/public/bootstrap/docs/_data/browser-features.yml b/public-old/bootstrap/docs/_data/browser-features.yml
similarity index 100%
rename from public/bootstrap/docs/_data/browser-features.yml
rename to public-old/bootstrap/docs/_data/browser-features.yml
diff --git a/public/bootstrap/docs/_data/core-team.yml b/public-old/bootstrap/docs/_data/core-team.yml
similarity index 100%
rename from public/bootstrap/docs/_data/core-team.yml
rename to public-old/bootstrap/docs/_data/core-team.yml
diff --git a/public/bootstrap/docs/_data/glyphicons.yml b/public-old/bootstrap/docs/_data/glyphicons.yml
similarity index 100%
rename from public/bootstrap/docs/_data/glyphicons.yml
rename to public-old/bootstrap/docs/_data/glyphicons.yml
diff --git a/public/bootstrap/docs/_data/sass-team.yml b/public-old/bootstrap/docs/_data/sass-team.yml
similarity index 100%
rename from public/bootstrap/docs/_data/sass-team.yml
rename to public-old/bootstrap/docs/_data/sass-team.yml
diff --git a/public/bootstrap/docs/_data/showcase.yml b/public-old/bootstrap/docs/_data/showcase.yml
similarity index 100%
rename from public/bootstrap/docs/_data/showcase.yml
rename to public-old/bootstrap/docs/_data/showcase.yml
diff --git a/public/bootstrap/docs/_data/translations.yml b/public-old/bootstrap/docs/_data/translations.yml
similarity index 100%
rename from public/bootstrap/docs/_data/translations.yml
rename to public-old/bootstrap/docs/_data/translations.yml
diff --git a/public/bootstrap/docs/_includes/ads.html b/public-old/bootstrap/docs/_includes/ads.html
similarity index 100%
rename from public/bootstrap/docs/_includes/ads.html
rename to public-old/bootstrap/docs/_includes/ads.html
diff --git a/public/bootstrap/docs/_includes/components/alerts.html b/public-old/bootstrap/docs/_includes/components/alerts.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/alerts.html
rename to public-old/bootstrap/docs/_includes/components/alerts.html
diff --git a/public/bootstrap/docs/_includes/components/badges.html b/public-old/bootstrap/docs/_includes/components/badges.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/badges.html
rename to public-old/bootstrap/docs/_includes/components/badges.html
diff --git a/public/bootstrap/docs/_includes/components/breadcrumbs.html b/public-old/bootstrap/docs/_includes/components/breadcrumbs.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/breadcrumbs.html
rename to public-old/bootstrap/docs/_includes/components/breadcrumbs.html
diff --git a/public/bootstrap/docs/_includes/components/button-dropdowns.html b/public-old/bootstrap/docs/_includes/components/button-dropdowns.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/button-dropdowns.html
rename to public-old/bootstrap/docs/_includes/components/button-dropdowns.html
diff --git a/public/bootstrap/docs/_includes/components/button-groups.html b/public-old/bootstrap/docs/_includes/components/button-groups.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/button-groups.html
rename to public-old/bootstrap/docs/_includes/components/button-groups.html
diff --git a/public/bootstrap/docs/_includes/components/dropdowns.html b/public-old/bootstrap/docs/_includes/components/dropdowns.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/dropdowns.html
rename to public-old/bootstrap/docs/_includes/components/dropdowns.html
diff --git a/public/bootstrap/docs/_includes/components/glyphicons.html b/public-old/bootstrap/docs/_includes/components/glyphicons.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/glyphicons.html
rename to public-old/bootstrap/docs/_includes/components/glyphicons.html
diff --git a/public/bootstrap/docs/_includes/components/input-groups.html b/public-old/bootstrap/docs/_includes/components/input-groups.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/input-groups.html
rename to public-old/bootstrap/docs/_includes/components/input-groups.html
diff --git a/public/bootstrap/docs/_includes/components/jumbotron.html b/public-old/bootstrap/docs/_includes/components/jumbotron.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/jumbotron.html
rename to public-old/bootstrap/docs/_includes/components/jumbotron.html
diff --git a/public/bootstrap/docs/_includes/components/labels.html b/public-old/bootstrap/docs/_includes/components/labels.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/labels.html
rename to public-old/bootstrap/docs/_includes/components/labels.html
diff --git a/public/bootstrap/docs/_includes/components/list-group.html b/public-old/bootstrap/docs/_includes/components/list-group.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/list-group.html
rename to public-old/bootstrap/docs/_includes/components/list-group.html
diff --git a/public/bootstrap/docs/_includes/components/media.html b/public-old/bootstrap/docs/_includes/components/media.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/media.html
rename to public-old/bootstrap/docs/_includes/components/media.html
diff --git a/public/bootstrap/docs/_includes/components/navbar.html b/public-old/bootstrap/docs/_includes/components/navbar.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/navbar.html
rename to public-old/bootstrap/docs/_includes/components/navbar.html
diff --git a/public/bootstrap/docs/_includes/components/navs.html b/public-old/bootstrap/docs/_includes/components/navs.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/navs.html
rename to public-old/bootstrap/docs/_includes/components/navs.html
diff --git a/public/bootstrap/docs/_includes/components/page-header.html b/public-old/bootstrap/docs/_includes/components/page-header.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/page-header.html
rename to public-old/bootstrap/docs/_includes/components/page-header.html
diff --git a/public/bootstrap/docs/_includes/components/pagination.html b/public-old/bootstrap/docs/_includes/components/pagination.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/pagination.html
rename to public-old/bootstrap/docs/_includes/components/pagination.html
diff --git a/public/bootstrap/docs/_includes/components/panels.html b/public-old/bootstrap/docs/_includes/components/panels.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/panels.html
rename to public-old/bootstrap/docs/_includes/components/panels.html
diff --git a/public/bootstrap/docs/_includes/components/progress-bars.html b/public-old/bootstrap/docs/_includes/components/progress-bars.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/progress-bars.html
rename to public-old/bootstrap/docs/_includes/components/progress-bars.html
diff --git a/public/bootstrap/docs/_includes/components/responsive-embed.html b/public-old/bootstrap/docs/_includes/components/responsive-embed.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/responsive-embed.html
rename to public-old/bootstrap/docs/_includes/components/responsive-embed.html
diff --git a/public/bootstrap/docs/_includes/components/thumbnails.html b/public-old/bootstrap/docs/_includes/components/thumbnails.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/thumbnails.html
rename to public-old/bootstrap/docs/_includes/components/thumbnails.html
diff --git a/public/bootstrap/docs/_includes/components/wells.html b/public-old/bootstrap/docs/_includes/components/wells.html
similarity index 100%
rename from public/bootstrap/docs/_includes/components/wells.html
rename to public-old/bootstrap/docs/_includes/components/wells.html
diff --git a/public/bootstrap/docs/_includes/css/buttons.html b/public-old/bootstrap/docs/_includes/css/buttons.html
similarity index 100%
rename from public/bootstrap/docs/_includes/css/buttons.html
rename to public-old/bootstrap/docs/_includes/css/buttons.html
diff --git a/public/bootstrap/docs/_includes/css/code.html b/public-old/bootstrap/docs/_includes/css/code.html
similarity index 100%
rename from public/bootstrap/docs/_includes/css/code.html
rename to public-old/bootstrap/docs/_includes/css/code.html
diff --git a/public/bootstrap/docs/_includes/css/forms.html b/public-old/bootstrap/docs/_includes/css/forms.html
similarity index 100%
rename from public/bootstrap/docs/_includes/css/forms.html
rename to public-old/bootstrap/docs/_includes/css/forms.html
diff --git a/public/bootstrap/docs/_includes/css/grid.html b/public-old/bootstrap/docs/_includes/css/grid.html
similarity index 100%
rename from public/bootstrap/docs/_includes/css/grid.html
rename to public-old/bootstrap/docs/_includes/css/grid.html
diff --git a/public/bootstrap/docs/_includes/css/helpers.html b/public-old/bootstrap/docs/_includes/css/helpers.html
similarity index 100%
rename from public/bootstrap/docs/_includes/css/helpers.html
rename to public-old/bootstrap/docs/_includes/css/helpers.html
diff --git a/public/bootstrap/docs/_includes/css/images.html b/public-old/bootstrap/docs/_includes/css/images.html
similarity index 100%
rename from public/bootstrap/docs/_includes/css/images.html
rename to public-old/bootstrap/docs/_includes/css/images.html
diff --git a/public/bootstrap/docs/_includes/css/less.html b/public-old/bootstrap/docs/_includes/css/less.html
similarity index 100%
rename from public/bootstrap/docs/_includes/css/less.html
rename to public-old/bootstrap/docs/_includes/css/less.html
diff --git a/public/bootstrap/docs/_includes/css/overview.html b/public-old/bootstrap/docs/_includes/css/overview.html
similarity index 100%
rename from public/bootstrap/docs/_includes/css/overview.html
rename to public-old/bootstrap/docs/_includes/css/overview.html
diff --git a/public/bootstrap/docs/_includes/css/responsive-utilities.html b/public-old/bootstrap/docs/_includes/css/responsive-utilities.html
similarity index 100%
rename from public/bootstrap/docs/_includes/css/responsive-utilities.html
rename to public-old/bootstrap/docs/_includes/css/responsive-utilities.html
diff --git a/public/bootstrap/docs/_includes/css/sass.html b/public-old/bootstrap/docs/_includes/css/sass.html
similarity index 100%
rename from public/bootstrap/docs/_includes/css/sass.html
rename to public-old/bootstrap/docs/_includes/css/sass.html
diff --git a/public/bootstrap/docs/_includes/css/tables.html b/public-old/bootstrap/docs/_includes/css/tables.html
similarity index 100%
rename from public/bootstrap/docs/_includes/css/tables.html
rename to public-old/bootstrap/docs/_includes/css/tables.html
diff --git a/public/bootstrap/docs/_includes/css/type.html b/public-old/bootstrap/docs/_includes/css/type.html
similarity index 100%
rename from public/bootstrap/docs/_includes/css/type.html
rename to public-old/bootstrap/docs/_includes/css/type.html
diff --git a/public/bootstrap/docs/_includes/customizer-variables.html b/public-old/bootstrap/docs/_includes/customizer-variables.html
similarity index 100%
rename from public/bootstrap/docs/_includes/customizer-variables.html
rename to public-old/bootstrap/docs/_includes/customizer-variables.html
diff --git a/public/bootstrap/docs/_includes/footer.html b/public-old/bootstrap/docs/_includes/footer.html
similarity index 100%
rename from public/bootstrap/docs/_includes/footer.html
rename to public-old/bootstrap/docs/_includes/footer.html
diff --git a/public/bootstrap/docs/_includes/getting-started/accessibility.html b/public-old/bootstrap/docs/_includes/getting-started/accessibility.html
similarity index 100%
rename from public/bootstrap/docs/_includes/getting-started/accessibility.html
rename to public-old/bootstrap/docs/_includes/getting-started/accessibility.html
diff --git a/public/bootstrap/docs/_includes/getting-started/browser-device-support.html b/public-old/bootstrap/docs/_includes/getting-started/browser-device-support.html
similarity index 100%
rename from public/bootstrap/docs/_includes/getting-started/browser-device-support.html
rename to public-old/bootstrap/docs/_includes/getting-started/browser-device-support.html
diff --git a/public/bootstrap/docs/_includes/getting-started/community.html b/public-old/bootstrap/docs/_includes/getting-started/community.html
similarity index 100%
rename from public/bootstrap/docs/_includes/getting-started/community.html
rename to public-old/bootstrap/docs/_includes/getting-started/community.html
diff --git a/public/bootstrap/docs/_includes/getting-started/disabling-responsiveness.html b/public-old/bootstrap/docs/_includes/getting-started/disabling-responsiveness.html
similarity index 100%
rename from public/bootstrap/docs/_includes/getting-started/disabling-responsiveness.html
rename to public-old/bootstrap/docs/_includes/getting-started/disabling-responsiveness.html
diff --git a/public/bootstrap/docs/_includes/getting-started/download.html b/public-old/bootstrap/docs/_includes/getting-started/download.html
similarity index 100%
rename from public/bootstrap/docs/_includes/getting-started/download.html
rename to public-old/bootstrap/docs/_includes/getting-started/download.html
diff --git a/public/bootstrap/docs/_includes/getting-started/examples.html b/public-old/bootstrap/docs/_includes/getting-started/examples.html
similarity index 100%
rename from public/bootstrap/docs/_includes/getting-started/examples.html
rename to public-old/bootstrap/docs/_includes/getting-started/examples.html
diff --git a/public/bootstrap/docs/_includes/getting-started/grunt.html b/public-old/bootstrap/docs/_includes/getting-started/grunt.html
similarity index 100%
rename from public/bootstrap/docs/_includes/getting-started/grunt.html
rename to public-old/bootstrap/docs/_includes/getting-started/grunt.html
diff --git a/public/bootstrap/docs/_includes/getting-started/license.html b/public-old/bootstrap/docs/_includes/getting-started/license.html
similarity index 100%
rename from public/bootstrap/docs/_includes/getting-started/license.html
rename to public-old/bootstrap/docs/_includes/getting-started/license.html
diff --git a/public/bootstrap/docs/_includes/getting-started/template.html b/public-old/bootstrap/docs/_includes/getting-started/template.html
similarity index 100%
rename from public/bootstrap/docs/_includes/getting-started/template.html
rename to public-old/bootstrap/docs/_includes/getting-started/template.html
diff --git a/public/bootstrap/docs/_includes/getting-started/third-party-support.html b/public-old/bootstrap/docs/_includes/getting-started/third-party-support.html
similarity index 100%
rename from public/bootstrap/docs/_includes/getting-started/third-party-support.html
rename to public-old/bootstrap/docs/_includes/getting-started/third-party-support.html
diff --git a/public/bootstrap/docs/_includes/getting-started/tools.html b/public-old/bootstrap/docs/_includes/getting-started/tools.html
similarity index 100%
rename from public/bootstrap/docs/_includes/getting-started/tools.html
rename to public-old/bootstrap/docs/_includes/getting-started/tools.html
diff --git a/public/bootstrap/docs/_includes/getting-started/translations.html b/public-old/bootstrap/docs/_includes/getting-started/translations.html
similarity index 100%
rename from public/bootstrap/docs/_includes/getting-started/translations.html
rename to public-old/bootstrap/docs/_includes/getting-started/translations.html
diff --git a/public/bootstrap/docs/_includes/getting-started/whats-included.html b/public-old/bootstrap/docs/_includes/getting-started/whats-included.html
similarity index 100%
rename from public/bootstrap/docs/_includes/getting-started/whats-included.html
rename to public-old/bootstrap/docs/_includes/getting-started/whats-included.html
diff --git a/public/bootstrap/docs/_includes/header.html b/public-old/bootstrap/docs/_includes/header.html
similarity index 100%
rename from public/bootstrap/docs/_includes/header.html
rename to public-old/bootstrap/docs/_includes/header.html
diff --git a/public/bootstrap/docs/_includes/js/affix.html b/public-old/bootstrap/docs/_includes/js/affix.html
similarity index 100%
rename from public/bootstrap/docs/_includes/js/affix.html
rename to public-old/bootstrap/docs/_includes/js/affix.html
diff --git a/public/bootstrap/docs/_includes/js/alerts.html b/public-old/bootstrap/docs/_includes/js/alerts.html
similarity index 100%
rename from public/bootstrap/docs/_includes/js/alerts.html
rename to public-old/bootstrap/docs/_includes/js/alerts.html
diff --git a/public/bootstrap/docs/_includes/js/buttons.html b/public-old/bootstrap/docs/_includes/js/buttons.html
similarity index 100%
rename from public/bootstrap/docs/_includes/js/buttons.html
rename to public-old/bootstrap/docs/_includes/js/buttons.html
diff --git a/public/bootstrap/docs/_includes/js/carousel.html b/public-old/bootstrap/docs/_includes/js/carousel.html
similarity index 100%
rename from public/bootstrap/docs/_includes/js/carousel.html
rename to public-old/bootstrap/docs/_includes/js/carousel.html
diff --git a/public/bootstrap/docs/_includes/js/collapse.html b/public-old/bootstrap/docs/_includes/js/collapse.html
similarity index 100%
rename from public/bootstrap/docs/_includes/js/collapse.html
rename to public-old/bootstrap/docs/_includes/js/collapse.html
diff --git a/public/bootstrap/docs/_includes/js/dropdowns.html b/public-old/bootstrap/docs/_includes/js/dropdowns.html
similarity index 100%
rename from public/bootstrap/docs/_includes/js/dropdowns.html
rename to public-old/bootstrap/docs/_includes/js/dropdowns.html
diff --git a/public/bootstrap/docs/_includes/js/modal.html b/public-old/bootstrap/docs/_includes/js/modal.html
similarity index 100%
rename from public/bootstrap/docs/_includes/js/modal.html
rename to public-old/bootstrap/docs/_includes/js/modal.html
diff --git a/public/bootstrap/docs/_includes/js/overview.html b/public-old/bootstrap/docs/_includes/js/overview.html
similarity index 100%
rename from public/bootstrap/docs/_includes/js/overview.html
rename to public-old/bootstrap/docs/_includes/js/overview.html
diff --git a/public/bootstrap/docs/_includes/js/popovers.html b/public-old/bootstrap/docs/_includes/js/popovers.html
similarity index 100%
rename from public/bootstrap/docs/_includes/js/popovers.html
rename to public-old/bootstrap/docs/_includes/js/popovers.html
diff --git a/public/bootstrap/docs/_includes/js/scrollspy.html b/public-old/bootstrap/docs/_includes/js/scrollspy.html
similarity index 100%
rename from public/bootstrap/docs/_includes/js/scrollspy.html
rename to public-old/bootstrap/docs/_includes/js/scrollspy.html
diff --git a/public/bootstrap/docs/_includes/js/tabs.html b/public-old/bootstrap/docs/_includes/js/tabs.html
similarity index 100%
rename from public/bootstrap/docs/_includes/js/tabs.html
rename to public-old/bootstrap/docs/_includes/js/tabs.html
diff --git a/public/bootstrap/docs/_includes/js/tooltips.html b/public-old/bootstrap/docs/_includes/js/tooltips.html
similarity index 100%
rename from public/bootstrap/docs/_includes/js/tooltips.html
rename to public-old/bootstrap/docs/_includes/js/tooltips.html
diff --git a/public/bootstrap/docs/_includes/js/transitions.html b/public-old/bootstrap/docs/_includes/js/transitions.html
similarity index 100%
rename from public/bootstrap/docs/_includes/js/transitions.html
rename to public-old/bootstrap/docs/_includes/js/transitions.html
diff --git a/public/bootstrap/docs/_includes/nav/about.html b/public-old/bootstrap/docs/_includes/nav/about.html
similarity index 100%
rename from public/bootstrap/docs/_includes/nav/about.html
rename to public-old/bootstrap/docs/_includes/nav/about.html
diff --git a/public/bootstrap/docs/_includes/nav/components.html b/public-old/bootstrap/docs/_includes/nav/components.html
similarity index 100%
rename from public/bootstrap/docs/_includes/nav/components.html
rename to public-old/bootstrap/docs/_includes/nav/components.html
diff --git a/public/bootstrap/docs/_includes/nav/css.html b/public-old/bootstrap/docs/_includes/nav/css.html
similarity index 100%
rename from public/bootstrap/docs/_includes/nav/css.html
rename to public-old/bootstrap/docs/_includes/nav/css.html
diff --git a/public/bootstrap/docs/_includes/nav/customize.html b/public-old/bootstrap/docs/_includes/nav/customize.html
similarity index 100%
rename from public/bootstrap/docs/_includes/nav/customize.html
rename to public-old/bootstrap/docs/_includes/nav/customize.html
diff --git a/public/bootstrap/docs/_includes/nav/getting-started.html b/public-old/bootstrap/docs/_includes/nav/getting-started.html
similarity index 100%
rename from public/bootstrap/docs/_includes/nav/getting-started.html
rename to public-old/bootstrap/docs/_includes/nav/getting-started.html
diff --git a/public/bootstrap/docs/_includes/nav/javascript.html b/public-old/bootstrap/docs/_includes/nav/javascript.html
similarity index 100%
rename from public/bootstrap/docs/_includes/nav/javascript.html
rename to public-old/bootstrap/docs/_includes/nav/javascript.html
diff --git a/public/bootstrap/docs/_includes/nav/main.html b/public-old/bootstrap/docs/_includes/nav/main.html
similarity index 100%
rename from public/bootstrap/docs/_includes/nav/main.html
rename to public-old/bootstrap/docs/_includes/nav/main.html
diff --git a/public/bootstrap/docs/_includes/nav/migration.html b/public-old/bootstrap/docs/_includes/nav/migration.html
similarity index 100%
rename from public/bootstrap/docs/_includes/nav/migration.html
rename to public-old/bootstrap/docs/_includes/nav/migration.html
diff --git a/public/bootstrap/docs/_layouts/default.html b/public-old/bootstrap/docs/_layouts/default.html
similarity index 100%
rename from public/bootstrap/docs/_layouts/default.html
rename to public-old/bootstrap/docs/_layouts/default.html
diff --git a/public/bootstrap/docs/_layouts/home.html b/public-old/bootstrap/docs/_layouts/home.html
similarity index 100%
rename from public/bootstrap/docs/_layouts/home.html
rename to public-old/bootstrap/docs/_layouts/home.html
diff --git a/public/bootstrap/docs/_plugins/bridge.rb b/public-old/bootstrap/docs/_plugins/bridge.rb
similarity index 100%
rename from public/bootstrap/docs/_plugins/bridge.rb
rename to public-old/bootstrap/docs/_plugins/bridge.rb
diff --git a/public/bootstrap/docs/_plugins/bugify.rb b/public-old/bootstrap/docs/_plugins/bugify.rb
similarity index 100%
rename from public/bootstrap/docs/_plugins/bugify.rb
rename to public-old/bootstrap/docs/_plugins/bugify.rb
diff --git a/public/bootstrap/docs/_pug/customizer-nav.pug b/public-old/bootstrap/docs/_pug/customizer-nav.pug
similarity index 100%
rename from public/bootstrap/docs/_pug/customizer-nav.pug
rename to public-old/bootstrap/docs/_pug/customizer-nav.pug
diff --git a/public/bootstrap/docs/_pug/customizer-variables.pug b/public-old/bootstrap/docs/_pug/customizer-variables.pug
similarity index 100%
rename from public/bootstrap/docs/_pug/customizer-variables.pug
rename to public-old/bootstrap/docs/_pug/customizer-variables.pug
diff --git a/public/bootstrap/docs/about.html b/public-old/bootstrap/docs/about.html
similarity index 100%
rename from public/bootstrap/docs/about.html
rename to public-old/bootstrap/docs/about.html
diff --git a/public/bootstrap/docs/apple-touch-icon.png b/public-old/bootstrap/docs/apple-touch-icon.png
similarity index 100%
rename from public/bootstrap/docs/apple-touch-icon.png
rename to public-old/bootstrap/docs/apple-touch-icon.png
diff --git a/public/bootstrap/docs/assets/brand/bootstrap-outline.svg b/public-old/bootstrap/docs/assets/brand/bootstrap-outline.svg
similarity index 100%
rename from public/bootstrap/docs/assets/brand/bootstrap-outline.svg
rename to public-old/bootstrap/docs/assets/brand/bootstrap-outline.svg
diff --git a/public/bootstrap/docs/assets/brand/bootstrap-punchout.svg b/public-old/bootstrap/docs/assets/brand/bootstrap-punchout.svg
similarity index 100%
rename from public/bootstrap/docs/assets/brand/bootstrap-punchout.svg
rename to public-old/bootstrap/docs/assets/brand/bootstrap-punchout.svg
diff --git a/public/bootstrap/docs/assets/brand/bootstrap-solid.svg b/public-old/bootstrap/docs/assets/brand/bootstrap-solid.svg
similarity index 100%
rename from public/bootstrap/docs/assets/brand/bootstrap-solid.svg
rename to public-old/bootstrap/docs/assets/brand/bootstrap-solid.svg
diff --git a/public/bootstrap/docs/assets/css/docs.min.css b/public-old/bootstrap/docs/assets/css/docs.min.css
similarity index 100%
rename from public/bootstrap/docs/assets/css/docs.min.css
rename to public-old/bootstrap/docs/assets/css/docs.min.css
diff --git a/public/bootstrap/docs/assets/css/docs.min.css.map b/public-old/bootstrap/docs/assets/css/docs.min.css.map
similarity index 100%
rename from public/bootstrap/docs/assets/css/docs.min.css.map
rename to public-old/bootstrap/docs/assets/css/docs.min.css.map
diff --git a/public/bootstrap/docs/assets/css/ie10-viewport-bug-workaround.css b/public-old/bootstrap/docs/assets/css/ie10-viewport-bug-workaround.css
similarity index 100%
rename from public/bootstrap/docs/assets/css/ie10-viewport-bug-workaround.css
rename to public-old/bootstrap/docs/assets/css/ie10-viewport-bug-workaround.css
diff --git a/public/bootstrap/docs/assets/css/src/docs.css b/public-old/bootstrap/docs/assets/css/src/docs.css
similarity index 100%
rename from public/bootstrap/docs/assets/css/src/docs.css
rename to public-old/bootstrap/docs/assets/css/src/docs.css
diff --git a/public/bootstrap/docs/assets/css/src/pygments-manni.css b/public-old/bootstrap/docs/assets/css/src/pygments-manni.css
similarity index 100%
rename from public/bootstrap/docs/assets/css/src/pygments-manni.css
rename to public-old/bootstrap/docs/assets/css/src/pygments-manni.css
diff --git a/public/bootstrap/docs/assets/flash/ZeroClipboard.swf b/public-old/bootstrap/docs/assets/flash/ZeroClipboard.swf
similarity index 100%
rename from public/bootstrap/docs/assets/flash/ZeroClipboard.swf
rename to public-old/bootstrap/docs/assets/flash/ZeroClipboard.swf
diff --git a/public/bootstrap/docs/assets/img/components.png b/public-old/bootstrap/docs/assets/img/components.png
similarity index 100%
rename from public/bootstrap/docs/assets/img/components.png
rename to public-old/bootstrap/docs/assets/img/components.png
diff --git a/public/bootstrap/docs/assets/img/devices.png b/public-old/bootstrap/docs/assets/img/devices.png
similarity index 100%
rename from public/bootstrap/docs/assets/img/devices.png
rename to public-old/bootstrap/docs/assets/img/devices.png
diff --git a/public/bootstrap/docs/assets/img/expo-lyft.jpg b/public-old/bootstrap/docs/assets/img/expo-lyft.jpg
similarity index 100%
rename from public/bootstrap/docs/assets/img/expo-lyft.jpg
rename to public-old/bootstrap/docs/assets/img/expo-lyft.jpg
diff --git a/public/bootstrap/docs/assets/img/expo-newsweek.jpg b/public-old/bootstrap/docs/assets/img/expo-newsweek.jpg
similarity index 100%
rename from public/bootstrap/docs/assets/img/expo-newsweek.jpg
rename to public-old/bootstrap/docs/assets/img/expo-newsweek.jpg
diff --git a/public/bootstrap/docs/assets/img/expo-riot.jpg b/public-old/bootstrap/docs/assets/img/expo-riot.jpg
similarity index 100%
rename from public/bootstrap/docs/assets/img/expo-riot.jpg
rename to public-old/bootstrap/docs/assets/img/expo-riot.jpg
diff --git a/public/bootstrap/docs/assets/img/expo-vogue.jpg b/public-old/bootstrap/docs/assets/img/expo-vogue.jpg
similarity index 100%
rename from public/bootstrap/docs/assets/img/expo-vogue.jpg
rename to public-old/bootstrap/docs/assets/img/expo-vogue.jpg
diff --git a/public/bootstrap/docs/assets/img/sass-less.png b/public-old/bootstrap/docs/assets/img/sass-less.png
similarity index 100%
rename from public/bootstrap/docs/assets/img/sass-less.png
rename to public-old/bootstrap/docs/assets/img/sass-less.png
diff --git a/public/bootstrap/docs/assets/js/customize.min.js b/public-old/bootstrap/docs/assets/js/customize.min.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/customize.min.js
rename to public-old/bootstrap/docs/assets/js/customize.min.js
diff --git a/public/bootstrap/docs/assets/js/docs.min.js b/public-old/bootstrap/docs/assets/js/docs.min.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/docs.min.js
rename to public-old/bootstrap/docs/assets/js/docs.min.js
diff --git a/public/bootstrap/docs/assets/js/ie-emulation-modes-warning.js b/public-old/bootstrap/docs/assets/js/ie-emulation-modes-warning.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/ie-emulation-modes-warning.js
rename to public-old/bootstrap/docs/assets/js/ie-emulation-modes-warning.js
diff --git a/public/bootstrap/docs/assets/js/ie10-viewport-bug-workaround.js b/public-old/bootstrap/docs/assets/js/ie10-viewport-bug-workaround.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/ie10-viewport-bug-workaround.js
rename to public-old/bootstrap/docs/assets/js/ie10-viewport-bug-workaround.js
diff --git a/public/bootstrap/docs/assets/js/ie8-responsive-file-warning.js b/public-old/bootstrap/docs/assets/js/ie8-responsive-file-warning.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/ie8-responsive-file-warning.js
rename to public-old/bootstrap/docs/assets/js/ie8-responsive-file-warning.js
diff --git a/public/bootstrap/docs/assets/js/raw-files.min.js b/public-old/bootstrap/docs/assets/js/raw-files.min.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/raw-files.min.js
rename to public-old/bootstrap/docs/assets/js/raw-files.min.js
diff --git a/public/bootstrap/docs/assets/js/src/application.js b/public-old/bootstrap/docs/assets/js/src/application.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/src/application.js
rename to public-old/bootstrap/docs/assets/js/src/application.js
diff --git a/public/bootstrap/docs/assets/js/src/customizer.js b/public-old/bootstrap/docs/assets/js/src/customizer.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/src/customizer.js
rename to public-old/bootstrap/docs/assets/js/src/customizer.js
diff --git a/public/bootstrap/docs/assets/js/vendor/Blob.js b/public-old/bootstrap/docs/assets/js/vendor/Blob.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/vendor/Blob.js
rename to public-old/bootstrap/docs/assets/js/vendor/Blob.js
diff --git a/public/bootstrap/docs/assets/js/vendor/FileSaver.js b/public-old/bootstrap/docs/assets/js/vendor/FileSaver.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/vendor/FileSaver.js
rename to public-old/bootstrap/docs/assets/js/vendor/FileSaver.js
diff --git a/public/bootstrap/docs/assets/js/vendor/ZeroClipboard.min.js b/public-old/bootstrap/docs/assets/js/vendor/ZeroClipboard.min.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/vendor/ZeroClipboard.min.js
rename to public-old/bootstrap/docs/assets/js/vendor/ZeroClipboard.min.js
diff --git a/public/bootstrap/docs/assets/js/vendor/anchor.min.js b/public-old/bootstrap/docs/assets/js/vendor/anchor.min.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/vendor/anchor.min.js
rename to public-old/bootstrap/docs/assets/js/vendor/anchor.min.js
diff --git a/public/bootstrap/docs/assets/js/vendor/autoprefixer.js b/public-old/bootstrap/docs/assets/js/vendor/autoprefixer.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/vendor/autoprefixer.js
rename to public-old/bootstrap/docs/assets/js/vendor/autoprefixer.js
diff --git a/public/bootstrap/docs/assets/js/vendor/holder.min.js b/public-old/bootstrap/docs/assets/js/vendor/holder.min.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/vendor/holder.min.js
rename to public-old/bootstrap/docs/assets/js/vendor/holder.min.js
diff --git a/public/bootstrap/docs/assets/js/vendor/jquery.min.js b/public-old/bootstrap/docs/assets/js/vendor/jquery.min.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/vendor/jquery.min.js
rename to public-old/bootstrap/docs/assets/js/vendor/jquery.min.js
diff --git a/public/bootstrap/docs/assets/js/vendor/jszip.min.js b/public-old/bootstrap/docs/assets/js/vendor/jszip.min.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/vendor/jszip.min.js
rename to public-old/bootstrap/docs/assets/js/vendor/jszip.min.js
diff --git a/public/bootstrap/docs/assets/js/vendor/less.min.js b/public-old/bootstrap/docs/assets/js/vendor/less.min.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/vendor/less.min.js
rename to public-old/bootstrap/docs/assets/js/vendor/less.min.js
diff --git a/public/bootstrap/docs/assets/js/vendor/uglify.min.js b/public-old/bootstrap/docs/assets/js/vendor/uglify.min.js
similarity index 100%
rename from public/bootstrap/docs/assets/js/vendor/uglify.min.js
rename to public-old/bootstrap/docs/assets/js/vendor/uglify.min.js
diff --git a/public/bootstrap/docs/browser-bugs.html b/public-old/bootstrap/docs/browser-bugs.html
similarity index 100%
rename from public/bootstrap/docs/browser-bugs.html
rename to public-old/bootstrap/docs/browser-bugs.html
diff --git a/public/bootstrap/docs/components.html b/public-old/bootstrap/docs/components.html
similarity index 100%
rename from public/bootstrap/docs/components.html
rename to public-old/bootstrap/docs/components.html
diff --git a/public/bootstrap/docs/css.html b/public-old/bootstrap/docs/css.html
similarity index 100%
rename from public/bootstrap/docs/css.html
rename to public-old/bootstrap/docs/css.html
diff --git a/public/bootstrap/docs/customize.html b/public-old/bootstrap/docs/customize.html
similarity index 100%
rename from public/bootstrap/docs/customize.html
rename to public-old/bootstrap/docs/customize.html
diff --git a/public/bootstrap/docs/dist/css/bootstrap-theme.css b/public-old/bootstrap/docs/dist/css/bootstrap-theme.css
similarity index 100%
rename from public/bootstrap/docs/dist/css/bootstrap-theme.css
rename to public-old/bootstrap/docs/dist/css/bootstrap-theme.css
diff --git a/public/bootstrap/docs/dist/css/bootstrap-theme.css.map b/public-old/bootstrap/docs/dist/css/bootstrap-theme.css.map
similarity index 100%
rename from public/bootstrap/docs/dist/css/bootstrap-theme.css.map
rename to public-old/bootstrap/docs/dist/css/bootstrap-theme.css.map
diff --git a/public/bootstrap/docs/dist/css/bootstrap-theme.min.css b/public-old/bootstrap/docs/dist/css/bootstrap-theme.min.css
similarity index 100%
rename from public/bootstrap/docs/dist/css/bootstrap-theme.min.css
rename to public-old/bootstrap/docs/dist/css/bootstrap-theme.min.css
diff --git a/public/bootstrap/docs/dist/css/bootstrap-theme.min.css.map b/public-old/bootstrap/docs/dist/css/bootstrap-theme.min.css.map
similarity index 100%
rename from public/bootstrap/docs/dist/css/bootstrap-theme.min.css.map
rename to public-old/bootstrap/docs/dist/css/bootstrap-theme.min.css.map
diff --git a/public/bootstrap/docs/dist/css/bootstrap.css b/public-old/bootstrap/docs/dist/css/bootstrap.css
similarity index 100%
rename from public/bootstrap/docs/dist/css/bootstrap.css
rename to public-old/bootstrap/docs/dist/css/bootstrap.css
diff --git a/public/bootstrap/docs/dist/css/bootstrap.css.map b/public-old/bootstrap/docs/dist/css/bootstrap.css.map
similarity index 100%
rename from public/bootstrap/docs/dist/css/bootstrap.css.map
rename to public-old/bootstrap/docs/dist/css/bootstrap.css.map
diff --git a/public/bootstrap/docs/dist/css/bootstrap.min.css b/public-old/bootstrap/docs/dist/css/bootstrap.min.css
similarity index 100%
rename from public/bootstrap/docs/dist/css/bootstrap.min.css
rename to public-old/bootstrap/docs/dist/css/bootstrap.min.css
diff --git a/public/bootstrap/docs/dist/css/bootstrap.min.css.map b/public-old/bootstrap/docs/dist/css/bootstrap.min.css.map
similarity index 100%
rename from public/bootstrap/docs/dist/css/bootstrap.min.css.map
rename to public-old/bootstrap/docs/dist/css/bootstrap.min.css.map
diff --git a/public/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.eot b/public-old/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.eot
similarity index 100%
rename from public/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.eot
rename to public-old/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.eot
diff --git a/public/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.svg b/public-old/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.svg
similarity index 100%
rename from public/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.svg
rename to public-old/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.svg
diff --git a/public/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.ttf b/public-old/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.ttf
similarity index 100%
rename from public/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.ttf
rename to public-old/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.ttf
diff --git a/public/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.woff b/public-old/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.woff
similarity index 100%
rename from public/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.woff
rename to public-old/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.woff
diff --git a/public/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.woff2 b/public-old/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.woff2
similarity index 100%
rename from public/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.woff2
rename to public-old/bootstrap/docs/dist/fonts/glyphicons-halflings-regular.woff2
diff --git a/public/bootstrap/docs/dist/js/bootstrap.js b/public-old/bootstrap/docs/dist/js/bootstrap.js
similarity index 100%
rename from public/bootstrap/docs/dist/js/bootstrap.js
rename to public-old/bootstrap/docs/dist/js/bootstrap.js
diff --git a/public/bootstrap/docs/dist/js/bootstrap.min.js b/public-old/bootstrap/docs/dist/js/bootstrap.min.js
similarity index 100%
rename from public/bootstrap/docs/dist/js/bootstrap.min.js
rename to public-old/bootstrap/docs/dist/js/bootstrap.min.js
diff --git a/public/bootstrap/docs/dist/js/npm.js b/public-old/bootstrap/docs/dist/js/npm.js
similarity index 100%
rename from public/bootstrap/docs/dist/js/npm.js
rename to public-old/bootstrap/docs/dist/js/npm.js
diff --git a/public/bootstrap/docs/examples/blog/blog.css b/public-old/bootstrap/docs/examples/blog/blog.css
similarity index 100%
rename from public/bootstrap/docs/examples/blog/blog.css
rename to public-old/bootstrap/docs/examples/blog/blog.css
diff --git a/public/bootstrap/docs/examples/blog/index.html b/public-old/bootstrap/docs/examples/blog/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/blog/index.html
rename to public-old/bootstrap/docs/examples/blog/index.html
diff --git a/public/bootstrap/docs/examples/carousel/carousel.css b/public-old/bootstrap/docs/examples/carousel/carousel.css
similarity index 100%
rename from public/bootstrap/docs/examples/carousel/carousel.css
rename to public-old/bootstrap/docs/examples/carousel/carousel.css
diff --git a/public/bootstrap/docs/examples/carousel/index.html b/public-old/bootstrap/docs/examples/carousel/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/carousel/index.html
rename to public-old/bootstrap/docs/examples/carousel/index.html
diff --git a/public/bootstrap/docs/examples/cover/cover.css b/public-old/bootstrap/docs/examples/cover/cover.css
similarity index 100%
rename from public/bootstrap/docs/examples/cover/cover.css
rename to public-old/bootstrap/docs/examples/cover/cover.css
diff --git a/public/bootstrap/docs/examples/cover/index.html b/public-old/bootstrap/docs/examples/cover/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/cover/index.html
rename to public-old/bootstrap/docs/examples/cover/index.html
diff --git a/public/bootstrap/docs/examples/grid/grid.css b/public-old/bootstrap/docs/examples/grid/grid.css
similarity index 100%
rename from public/bootstrap/docs/examples/grid/grid.css
rename to public-old/bootstrap/docs/examples/grid/grid.css
diff --git a/public/bootstrap/docs/examples/grid/index.html b/public-old/bootstrap/docs/examples/grid/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/grid/index.html
rename to public-old/bootstrap/docs/examples/grid/index.html
diff --git a/public/bootstrap/docs/examples/jumbotron-narrow/index.html b/public-old/bootstrap/docs/examples/jumbotron-narrow/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/jumbotron-narrow/index.html
rename to public-old/bootstrap/docs/examples/jumbotron-narrow/index.html
diff --git a/public/bootstrap/docs/examples/jumbotron-narrow/jumbotron-narrow.css b/public-old/bootstrap/docs/examples/jumbotron-narrow/jumbotron-narrow.css
similarity index 100%
rename from public/bootstrap/docs/examples/jumbotron-narrow/jumbotron-narrow.css
rename to public-old/bootstrap/docs/examples/jumbotron-narrow/jumbotron-narrow.css
diff --git a/public/bootstrap/docs/examples/jumbotron/index.html b/public-old/bootstrap/docs/examples/jumbotron/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/jumbotron/index.html
rename to public-old/bootstrap/docs/examples/jumbotron/index.html
diff --git a/public/bootstrap/docs/examples/jumbotron/jumbotron.css b/public-old/bootstrap/docs/examples/jumbotron/jumbotron.css
similarity index 100%
rename from public/bootstrap/docs/examples/jumbotron/jumbotron.css
rename to public-old/bootstrap/docs/examples/jumbotron/jumbotron.css
diff --git a/public/bootstrap/docs/examples/justified-nav/index.html b/public-old/bootstrap/docs/examples/justified-nav/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/justified-nav/index.html
rename to public-old/bootstrap/docs/examples/justified-nav/index.html
diff --git a/public/bootstrap/docs/examples/justified-nav/justified-nav.css b/public-old/bootstrap/docs/examples/justified-nav/justified-nav.css
similarity index 100%
rename from public/bootstrap/docs/examples/justified-nav/justified-nav.css
rename to public-old/bootstrap/docs/examples/justified-nav/justified-nav.css
diff --git a/public/bootstrap/docs/examples/navbar-fixed-top/index.html b/public-old/bootstrap/docs/examples/navbar-fixed-top/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/navbar-fixed-top/index.html
rename to public-old/bootstrap/docs/examples/navbar-fixed-top/index.html
diff --git a/public/bootstrap/docs/examples/navbar-fixed-top/navbar-fixed-top.css b/public-old/bootstrap/docs/examples/navbar-fixed-top/navbar-fixed-top.css
similarity index 100%
rename from public/bootstrap/docs/examples/navbar-fixed-top/navbar-fixed-top.css
rename to public-old/bootstrap/docs/examples/navbar-fixed-top/navbar-fixed-top.css
diff --git a/public/bootstrap/docs/examples/navbar-static-top/index.html b/public-old/bootstrap/docs/examples/navbar-static-top/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/navbar-static-top/index.html
rename to public-old/bootstrap/docs/examples/navbar-static-top/index.html
diff --git a/public/bootstrap/docs/examples/navbar-static-top/navbar-static-top.css b/public-old/bootstrap/docs/examples/navbar-static-top/navbar-static-top.css
similarity index 100%
rename from public/bootstrap/docs/examples/navbar-static-top/navbar-static-top.css
rename to public-old/bootstrap/docs/examples/navbar-static-top/navbar-static-top.css
diff --git a/public/bootstrap/docs/examples/navbar/index.html b/public-old/bootstrap/docs/examples/navbar/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/navbar/index.html
rename to public-old/bootstrap/docs/examples/navbar/index.html
diff --git a/public/bootstrap/docs/examples/navbar/navbar.css b/public-old/bootstrap/docs/examples/navbar/navbar.css
similarity index 100%
rename from public/bootstrap/docs/examples/navbar/navbar.css
rename to public-old/bootstrap/docs/examples/navbar/navbar.css
diff --git a/public/bootstrap/docs/examples/non-responsive/index.html b/public-old/bootstrap/docs/examples/non-responsive/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/non-responsive/index.html
rename to public-old/bootstrap/docs/examples/non-responsive/index.html
diff --git a/public/bootstrap/docs/examples/non-responsive/non-responsive.css b/public-old/bootstrap/docs/examples/non-responsive/non-responsive.css
similarity index 100%
rename from public/bootstrap/docs/examples/non-responsive/non-responsive.css
rename to public-old/bootstrap/docs/examples/non-responsive/non-responsive.css
diff --git a/public/bootstrap/docs/examples/offcanvas/index.html b/public-old/bootstrap/docs/examples/offcanvas/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/offcanvas/index.html
rename to public-old/bootstrap/docs/examples/offcanvas/index.html
diff --git a/public/bootstrap/docs/examples/offcanvas/offcanvas.css b/public-old/bootstrap/docs/examples/offcanvas/offcanvas.css
similarity index 100%
rename from public/bootstrap/docs/examples/offcanvas/offcanvas.css
rename to public-old/bootstrap/docs/examples/offcanvas/offcanvas.css
diff --git a/public/bootstrap/docs/examples/offcanvas/offcanvas.js b/public-old/bootstrap/docs/examples/offcanvas/offcanvas.js
similarity index 100%
rename from public/bootstrap/docs/examples/offcanvas/offcanvas.js
rename to public-old/bootstrap/docs/examples/offcanvas/offcanvas.js
diff --git a/public/bootstrap/docs/examples/screenshots/blog.jpg b/public-old/bootstrap/docs/examples/screenshots/blog.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/blog.jpg
rename to public-old/bootstrap/docs/examples/screenshots/blog.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/carousel.jpg b/public-old/bootstrap/docs/examples/screenshots/carousel.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/carousel.jpg
rename to public-old/bootstrap/docs/examples/screenshots/carousel.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/cover.jpg b/public-old/bootstrap/docs/examples/screenshots/cover.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/cover.jpg
rename to public-old/bootstrap/docs/examples/screenshots/cover.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/dashboard.jpg b/public-old/bootstrap/docs/examples/screenshots/dashboard.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/dashboard.jpg
rename to public-old/bootstrap/docs/examples/screenshots/dashboard.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/equal-height-columns.jpg b/public-old/bootstrap/docs/examples/screenshots/equal-height-columns.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/equal-height-columns.jpg
rename to public-old/bootstrap/docs/examples/screenshots/equal-height-columns.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/grid.jpg b/public-old/bootstrap/docs/examples/screenshots/grid.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/grid.jpg
rename to public-old/bootstrap/docs/examples/screenshots/grid.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/jumbotron-narrow.jpg b/public-old/bootstrap/docs/examples/screenshots/jumbotron-narrow.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/jumbotron-narrow.jpg
rename to public-old/bootstrap/docs/examples/screenshots/jumbotron-narrow.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/jumbotron.jpg b/public-old/bootstrap/docs/examples/screenshots/jumbotron.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/jumbotron.jpg
rename to public-old/bootstrap/docs/examples/screenshots/jumbotron.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/justified-nav.jpg b/public-old/bootstrap/docs/examples/screenshots/justified-nav.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/justified-nav.jpg
rename to public-old/bootstrap/docs/examples/screenshots/justified-nav.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/navbar-fixed.jpg b/public-old/bootstrap/docs/examples/screenshots/navbar-fixed.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/navbar-fixed.jpg
rename to public-old/bootstrap/docs/examples/screenshots/navbar-fixed.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/navbar-static.jpg b/public-old/bootstrap/docs/examples/screenshots/navbar-static.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/navbar-static.jpg
rename to public-old/bootstrap/docs/examples/screenshots/navbar-static.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/navbar.jpg b/public-old/bootstrap/docs/examples/screenshots/navbar.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/navbar.jpg
rename to public-old/bootstrap/docs/examples/screenshots/navbar.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/non-responsive.jpg b/public-old/bootstrap/docs/examples/screenshots/non-responsive.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/non-responsive.jpg
rename to public-old/bootstrap/docs/examples/screenshots/non-responsive.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/offcanvas.jpg b/public-old/bootstrap/docs/examples/screenshots/offcanvas.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/offcanvas.jpg
rename to public-old/bootstrap/docs/examples/screenshots/offcanvas.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/sign-in.jpg b/public-old/bootstrap/docs/examples/screenshots/sign-in.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/sign-in.jpg
rename to public-old/bootstrap/docs/examples/screenshots/sign-in.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/starter-template.jpg b/public-old/bootstrap/docs/examples/screenshots/starter-template.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/starter-template.jpg
rename to public-old/bootstrap/docs/examples/screenshots/starter-template.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/sticky-footer-navbar.jpg b/public-old/bootstrap/docs/examples/screenshots/sticky-footer-navbar.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/sticky-footer-navbar.jpg
rename to public-old/bootstrap/docs/examples/screenshots/sticky-footer-navbar.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/sticky-footer.jpg b/public-old/bootstrap/docs/examples/screenshots/sticky-footer.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/sticky-footer.jpg
rename to public-old/bootstrap/docs/examples/screenshots/sticky-footer.jpg
diff --git a/public/bootstrap/docs/examples/screenshots/theme.jpg b/public-old/bootstrap/docs/examples/screenshots/theme.jpg
similarity index 100%
rename from public/bootstrap/docs/examples/screenshots/theme.jpg
rename to public-old/bootstrap/docs/examples/screenshots/theme.jpg
diff --git a/public/bootstrap/docs/examples/signin/index.html b/public-old/bootstrap/docs/examples/signin/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/signin/index.html
rename to public-old/bootstrap/docs/examples/signin/index.html
diff --git a/public/bootstrap/docs/examples/signin/signin.css b/public-old/bootstrap/docs/examples/signin/signin.css
similarity index 100%
rename from public/bootstrap/docs/examples/signin/signin.css
rename to public-old/bootstrap/docs/examples/signin/signin.css
diff --git a/public/bootstrap/docs/examples/starter-template/index.html b/public-old/bootstrap/docs/examples/starter-template/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/starter-template/index.html
rename to public-old/bootstrap/docs/examples/starter-template/index.html
diff --git a/public/bootstrap/docs/examples/starter-template/starter-template.css b/public-old/bootstrap/docs/examples/starter-template/starter-template.css
similarity index 100%
rename from public/bootstrap/docs/examples/starter-template/starter-template.css
rename to public-old/bootstrap/docs/examples/starter-template/starter-template.css
diff --git a/public/bootstrap/docs/examples/sticky-footer-navbar/index.html b/public-old/bootstrap/docs/examples/sticky-footer-navbar/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/sticky-footer-navbar/index.html
rename to public-old/bootstrap/docs/examples/sticky-footer-navbar/index.html
diff --git a/public/bootstrap/docs/examples/sticky-footer-navbar/sticky-footer-navbar.css b/public-old/bootstrap/docs/examples/sticky-footer-navbar/sticky-footer-navbar.css
similarity index 100%
rename from public/bootstrap/docs/examples/sticky-footer-navbar/sticky-footer-navbar.css
rename to public-old/bootstrap/docs/examples/sticky-footer-navbar/sticky-footer-navbar.css
diff --git a/public/bootstrap/docs/examples/sticky-footer/index.html b/public-old/bootstrap/docs/examples/sticky-footer/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/sticky-footer/index.html
rename to public-old/bootstrap/docs/examples/sticky-footer/index.html
diff --git a/public/bootstrap/docs/examples/sticky-footer/sticky-footer.css b/public-old/bootstrap/docs/examples/sticky-footer/sticky-footer.css
similarity index 100%
rename from public/bootstrap/docs/examples/sticky-footer/sticky-footer.css
rename to public-old/bootstrap/docs/examples/sticky-footer/sticky-footer.css
diff --git a/public/bootstrap/docs/examples/theme/index.html b/public-old/bootstrap/docs/examples/theme/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/theme/index.html
rename to public-old/bootstrap/docs/examples/theme/index.html
diff --git a/public/bootstrap/docs/examples/theme/theme.css b/public-old/bootstrap/docs/examples/theme/theme.css
similarity index 100%
rename from public/bootstrap/docs/examples/theme/theme.css
rename to public-old/bootstrap/docs/examples/theme/theme.css
diff --git a/public/bootstrap/docs/examples/tooltip-viewport/index.html b/public-old/bootstrap/docs/examples/tooltip-viewport/index.html
similarity index 100%
rename from public/bootstrap/docs/examples/tooltip-viewport/index.html
rename to public-old/bootstrap/docs/examples/tooltip-viewport/index.html
diff --git a/public/bootstrap/docs/examples/tooltip-viewport/tooltip-viewport.css b/public-old/bootstrap/docs/examples/tooltip-viewport/tooltip-viewport.css
similarity index 100%
rename from public/bootstrap/docs/examples/tooltip-viewport/tooltip-viewport.css
rename to public-old/bootstrap/docs/examples/tooltip-viewport/tooltip-viewport.css
diff --git a/public/bootstrap/docs/examples/tooltip-viewport/tooltip-viewport.js b/public-old/bootstrap/docs/examples/tooltip-viewport/tooltip-viewport.js
similarity index 100%
rename from public/bootstrap/docs/examples/tooltip-viewport/tooltip-viewport.js
rename to public-old/bootstrap/docs/examples/tooltip-viewport/tooltip-viewport.js
diff --git a/public/bootstrap/docs/favicon.ico b/public-old/bootstrap/docs/favicon.ico
similarity index 100%
rename from public/bootstrap/docs/favicon.ico
rename to public-old/bootstrap/docs/favicon.ico
diff --git a/public/bootstrap/docs/getting-started.html b/public-old/bootstrap/docs/getting-started.html
similarity index 100%
rename from public/bootstrap/docs/getting-started.html
rename to public-old/bootstrap/docs/getting-started.html
diff --git a/public/bootstrap/docs/index.html b/public-old/bootstrap/docs/index.html
similarity index 100%
rename from public/bootstrap/docs/index.html
rename to public-old/bootstrap/docs/index.html
diff --git a/public/bootstrap/docs/javascript.html b/public-old/bootstrap/docs/javascript.html
similarity index 100%
rename from public/bootstrap/docs/javascript.html
rename to public-old/bootstrap/docs/javascript.html
diff --git a/public/bootstrap/docs/migration.html b/public-old/bootstrap/docs/migration.html
similarity index 100%
rename from public/bootstrap/docs/migration.html
rename to public-old/bootstrap/docs/migration.html
diff --git a/public/bootstrap/docs/robots.txt b/public-old/bootstrap/docs/robots.txt
similarity index 100%
rename from public/bootstrap/docs/robots.txt
rename to public-old/bootstrap/docs/robots.txt
diff --git a/public/bootstrap/fonts/glyphicons-halflings-regular.eot b/public-old/bootstrap/fonts/glyphicons-halflings-regular.eot
similarity index 100%
rename from public/bootstrap/fonts/glyphicons-halflings-regular.eot
rename to public-old/bootstrap/fonts/glyphicons-halflings-regular.eot
diff --git a/public/bootstrap/fonts/glyphicons-halflings-regular.svg b/public-old/bootstrap/fonts/glyphicons-halflings-regular.svg
similarity index 100%
rename from public/bootstrap/fonts/glyphicons-halflings-regular.svg
rename to public-old/bootstrap/fonts/glyphicons-halflings-regular.svg
diff --git a/public/bootstrap/fonts/glyphicons-halflings-regular.ttf b/public-old/bootstrap/fonts/glyphicons-halflings-regular.ttf
similarity index 100%
rename from public/bootstrap/fonts/glyphicons-halflings-regular.ttf
rename to public-old/bootstrap/fonts/glyphicons-halflings-regular.ttf
diff --git a/public/bootstrap/fonts/glyphicons-halflings-regular.woff b/public-old/bootstrap/fonts/glyphicons-halflings-regular.woff
similarity index 100%
rename from public/bootstrap/fonts/glyphicons-halflings-regular.woff
rename to public-old/bootstrap/fonts/glyphicons-halflings-regular.woff
diff --git a/public/bootstrap/fonts/glyphicons-halflings-regular.woff2 b/public-old/bootstrap/fonts/glyphicons-halflings-regular.woff2
similarity index 100%
rename from public/bootstrap/fonts/glyphicons-halflings-regular.woff2
rename to public-old/bootstrap/fonts/glyphicons-halflings-regular.woff2
diff --git a/public/bootstrap/grunt/.jshintrc b/public-old/bootstrap/grunt/.jshintrc
similarity index 100%
rename from public/bootstrap/grunt/.jshintrc
rename to public-old/bootstrap/grunt/.jshintrc
diff --git a/public/bootstrap/grunt/bs-commonjs-generator.js b/public-old/bootstrap/grunt/bs-commonjs-generator.js
similarity index 100%
rename from public/bootstrap/grunt/bs-commonjs-generator.js
rename to public-old/bootstrap/grunt/bs-commonjs-generator.js
diff --git a/public/bootstrap/grunt/bs-glyphicons-data-generator.js b/public-old/bootstrap/grunt/bs-glyphicons-data-generator.js
similarity index 100%
rename from public/bootstrap/grunt/bs-glyphicons-data-generator.js
rename to public-old/bootstrap/grunt/bs-glyphicons-data-generator.js
diff --git a/public/bootstrap/grunt/bs-lessdoc-parser.js b/public-old/bootstrap/grunt/bs-lessdoc-parser.js
similarity index 100%
rename from public/bootstrap/grunt/bs-lessdoc-parser.js
rename to public-old/bootstrap/grunt/bs-lessdoc-parser.js
diff --git a/public/bootstrap/grunt/bs-raw-files-generator.js b/public-old/bootstrap/grunt/bs-raw-files-generator.js
similarity index 100%
rename from public/bootstrap/grunt/bs-raw-files-generator.js
rename to public-old/bootstrap/grunt/bs-raw-files-generator.js
diff --git a/public/bootstrap/grunt/change-version.js b/public-old/bootstrap/grunt/change-version.js
similarity index 100%
rename from public/bootstrap/grunt/change-version.js
rename to public-old/bootstrap/grunt/change-version.js
diff --git a/public/bootstrap/grunt/configBridge.json b/public-old/bootstrap/grunt/configBridge.json
similarity index 100%
rename from public/bootstrap/grunt/configBridge.json
rename to public-old/bootstrap/grunt/configBridge.json
diff --git a/public/bootstrap/grunt/npm-shrinkwrap.json b/public-old/bootstrap/grunt/npm-shrinkwrap.json
similarity index 100%
rename from public/bootstrap/grunt/npm-shrinkwrap.json
rename to public-old/bootstrap/grunt/npm-shrinkwrap.json
diff --git a/public/bootstrap/grunt/sauce_browsers.yml b/public-old/bootstrap/grunt/sauce_browsers.yml
similarity index 100%
rename from public/bootstrap/grunt/sauce_browsers.yml
rename to public-old/bootstrap/grunt/sauce_browsers.yml
diff --git a/public/bootstrap/js/.jscsrc b/public-old/bootstrap/js/.jscsrc
similarity index 100%
rename from public/bootstrap/js/.jscsrc
rename to public-old/bootstrap/js/.jscsrc
diff --git a/public/bootstrap/js/.jshintrc b/public-old/bootstrap/js/.jshintrc
similarity index 100%
rename from public/bootstrap/js/.jshintrc
rename to public-old/bootstrap/js/.jshintrc
diff --git a/public/bootstrap/js/affix.js b/public-old/bootstrap/js/affix.js
similarity index 100%
rename from public/bootstrap/js/affix.js
rename to public-old/bootstrap/js/affix.js
diff --git a/public/bootstrap/js/alert.js b/public-old/bootstrap/js/alert.js
similarity index 100%
rename from public/bootstrap/js/alert.js
rename to public-old/bootstrap/js/alert.js
diff --git a/public/bootstrap/js/button.js b/public-old/bootstrap/js/button.js
similarity index 100%
rename from public/bootstrap/js/button.js
rename to public-old/bootstrap/js/button.js
diff --git a/public/bootstrap/js/carousel.js b/public-old/bootstrap/js/carousel.js
similarity index 100%
rename from public/bootstrap/js/carousel.js
rename to public-old/bootstrap/js/carousel.js
diff --git a/public/bootstrap/js/collapse.js b/public-old/bootstrap/js/collapse.js
similarity index 100%
rename from public/bootstrap/js/collapse.js
rename to public-old/bootstrap/js/collapse.js
diff --git a/public/bootstrap/js/dropdown.js b/public-old/bootstrap/js/dropdown.js
similarity index 100%
rename from public/bootstrap/js/dropdown.js
rename to public-old/bootstrap/js/dropdown.js
diff --git a/public/bootstrap/js/modal.js b/public-old/bootstrap/js/modal.js
similarity index 100%
rename from public/bootstrap/js/modal.js
rename to public-old/bootstrap/js/modal.js
diff --git a/public/bootstrap/js/popover.js b/public-old/bootstrap/js/popover.js
similarity index 100%
rename from public/bootstrap/js/popover.js
rename to public-old/bootstrap/js/popover.js
diff --git a/public/bootstrap/js/scrollspy.js b/public-old/bootstrap/js/scrollspy.js
similarity index 100%
rename from public/bootstrap/js/scrollspy.js
rename to public-old/bootstrap/js/scrollspy.js
diff --git a/public/bootstrap/js/tab.js b/public-old/bootstrap/js/tab.js
similarity index 100%
rename from public/bootstrap/js/tab.js
rename to public-old/bootstrap/js/tab.js
diff --git a/public/bootstrap/js/tests/README.md b/public-old/bootstrap/js/tests/README.md
similarity index 100%
rename from public/bootstrap/js/tests/README.md
rename to public-old/bootstrap/js/tests/README.md
diff --git a/public/bootstrap/js/tests/index.html b/public-old/bootstrap/js/tests/index.html
similarity index 100%
rename from public/bootstrap/js/tests/index.html
rename to public-old/bootstrap/js/tests/index.html
diff --git a/public/bootstrap/js/tests/unit/.jshintrc b/public-old/bootstrap/js/tests/unit/.jshintrc
similarity index 100%
rename from public/bootstrap/js/tests/unit/.jshintrc
rename to public-old/bootstrap/js/tests/unit/.jshintrc
diff --git a/public/bootstrap/js/tests/unit/affix.js b/public-old/bootstrap/js/tests/unit/affix.js
similarity index 100%
rename from public/bootstrap/js/tests/unit/affix.js
rename to public-old/bootstrap/js/tests/unit/affix.js
diff --git a/public/bootstrap/js/tests/unit/alert.js b/public-old/bootstrap/js/tests/unit/alert.js
similarity index 100%
rename from public/bootstrap/js/tests/unit/alert.js
rename to public-old/bootstrap/js/tests/unit/alert.js
diff --git a/public/bootstrap/js/tests/unit/button.js b/public-old/bootstrap/js/tests/unit/button.js
similarity index 100%
rename from public/bootstrap/js/tests/unit/button.js
rename to public-old/bootstrap/js/tests/unit/button.js
diff --git a/public/bootstrap/js/tests/unit/carousel.js b/public-old/bootstrap/js/tests/unit/carousel.js
similarity index 100%
rename from public/bootstrap/js/tests/unit/carousel.js
rename to public-old/bootstrap/js/tests/unit/carousel.js
diff --git a/public/bootstrap/js/tests/unit/collapse.js b/public-old/bootstrap/js/tests/unit/collapse.js
similarity index 100%
rename from public/bootstrap/js/tests/unit/collapse.js
rename to public-old/bootstrap/js/tests/unit/collapse.js
diff --git a/public/bootstrap/js/tests/unit/dropdown.js b/public-old/bootstrap/js/tests/unit/dropdown.js
similarity index 100%
rename from public/bootstrap/js/tests/unit/dropdown.js
rename to public-old/bootstrap/js/tests/unit/dropdown.js
diff --git a/public/bootstrap/js/tests/unit/modal.js b/public-old/bootstrap/js/tests/unit/modal.js
similarity index 100%
rename from public/bootstrap/js/tests/unit/modal.js
rename to public-old/bootstrap/js/tests/unit/modal.js
diff --git a/public/bootstrap/js/tests/unit/phantom.js b/public-old/bootstrap/js/tests/unit/phantom.js
similarity index 100%
rename from public/bootstrap/js/tests/unit/phantom.js
rename to public-old/bootstrap/js/tests/unit/phantom.js
diff --git a/public/bootstrap/js/tests/unit/popover.js b/public-old/bootstrap/js/tests/unit/popover.js
similarity index 100%
rename from public/bootstrap/js/tests/unit/popover.js
rename to public-old/bootstrap/js/tests/unit/popover.js
diff --git a/public/bootstrap/js/tests/unit/scrollspy.js b/public-old/bootstrap/js/tests/unit/scrollspy.js
similarity index 100%
rename from public/bootstrap/js/tests/unit/scrollspy.js
rename to public-old/bootstrap/js/tests/unit/scrollspy.js
diff --git a/public/bootstrap/js/tests/unit/tab.js b/public-old/bootstrap/js/tests/unit/tab.js
similarity index 100%
rename from public/bootstrap/js/tests/unit/tab.js
rename to public-old/bootstrap/js/tests/unit/tab.js
diff --git a/public/bootstrap/js/tests/unit/tooltip.js b/public-old/bootstrap/js/tests/unit/tooltip.js
similarity index 100%
rename from public/bootstrap/js/tests/unit/tooltip.js
rename to public-old/bootstrap/js/tests/unit/tooltip.js
diff --git a/public/bootstrap/js/tests/vendor/jquery.min.js b/public-old/bootstrap/js/tests/vendor/jquery.min.js
similarity index 100%
rename from public/bootstrap/js/tests/vendor/jquery.min.js
rename to public-old/bootstrap/js/tests/vendor/jquery.min.js
diff --git a/public/bootstrap/js/tests/vendor/qunit.css b/public-old/bootstrap/js/tests/vendor/qunit.css
similarity index 100%
rename from public/bootstrap/js/tests/vendor/qunit.css
rename to public-old/bootstrap/js/tests/vendor/qunit.css
diff --git a/public/bootstrap/js/tests/vendor/qunit.js b/public-old/bootstrap/js/tests/vendor/qunit.js
similarity index 100%
rename from public/bootstrap/js/tests/vendor/qunit.js
rename to public-old/bootstrap/js/tests/vendor/qunit.js
diff --git a/public/bootstrap/js/tests/visual/affix-with-sticky-footer.html b/public-old/bootstrap/js/tests/visual/affix-with-sticky-footer.html
similarity index 100%
rename from public/bootstrap/js/tests/visual/affix-with-sticky-footer.html
rename to public-old/bootstrap/js/tests/visual/affix-with-sticky-footer.html
diff --git a/public/bootstrap/js/tests/visual/affix.html b/public-old/bootstrap/js/tests/visual/affix.html
similarity index 100%
rename from public/bootstrap/js/tests/visual/affix.html
rename to public-old/bootstrap/js/tests/visual/affix.html
diff --git a/public/bootstrap/js/tests/visual/alert.html b/public-old/bootstrap/js/tests/visual/alert.html
similarity index 100%
rename from public/bootstrap/js/tests/visual/alert.html
rename to public-old/bootstrap/js/tests/visual/alert.html
diff --git a/public/bootstrap/js/tests/visual/button.html b/public-old/bootstrap/js/tests/visual/button.html
similarity index 100%
rename from public/bootstrap/js/tests/visual/button.html
rename to public-old/bootstrap/js/tests/visual/button.html
diff --git a/public/bootstrap/js/tests/visual/carousel.html b/public-old/bootstrap/js/tests/visual/carousel.html
similarity index 100%
rename from public/bootstrap/js/tests/visual/carousel.html
rename to public-old/bootstrap/js/tests/visual/carousel.html
diff --git a/public/bootstrap/js/tests/visual/collapse.html b/public-old/bootstrap/js/tests/visual/collapse.html
similarity index 100%
rename from public/bootstrap/js/tests/visual/collapse.html
rename to public-old/bootstrap/js/tests/visual/collapse.html
diff --git a/public/bootstrap/js/tests/visual/dropdown.html b/public-old/bootstrap/js/tests/visual/dropdown.html
similarity index 100%
rename from public/bootstrap/js/tests/visual/dropdown.html
rename to public-old/bootstrap/js/tests/visual/dropdown.html
diff --git a/public/bootstrap/js/tests/visual/modal.html b/public-old/bootstrap/js/tests/visual/modal.html
similarity index 100%
rename from public/bootstrap/js/tests/visual/modal.html
rename to public-old/bootstrap/js/tests/visual/modal.html
diff --git a/public/bootstrap/js/tests/visual/popover.html b/public-old/bootstrap/js/tests/visual/popover.html
similarity index 100%
rename from public/bootstrap/js/tests/visual/popover.html
rename to public-old/bootstrap/js/tests/visual/popover.html
diff --git a/public/bootstrap/js/tests/visual/scrollspy.html b/public-old/bootstrap/js/tests/visual/scrollspy.html
similarity index 100%
rename from public/bootstrap/js/tests/visual/scrollspy.html
rename to public-old/bootstrap/js/tests/visual/scrollspy.html
diff --git a/public/bootstrap/js/tests/visual/tab.html b/public-old/bootstrap/js/tests/visual/tab.html
similarity index 100%
rename from public/bootstrap/js/tests/visual/tab.html
rename to public-old/bootstrap/js/tests/visual/tab.html
diff --git a/public/bootstrap/js/tests/visual/tooltip.html b/public-old/bootstrap/js/tests/visual/tooltip.html
similarity index 100%
rename from public/bootstrap/js/tests/visual/tooltip.html
rename to public-old/bootstrap/js/tests/visual/tooltip.html
diff --git a/public/bootstrap/js/tooltip.js b/public-old/bootstrap/js/tooltip.js
similarity index 100%
rename from public/bootstrap/js/tooltip.js
rename to public-old/bootstrap/js/tooltip.js
diff --git a/public/bootstrap/js/transition.js b/public-old/bootstrap/js/transition.js
similarity index 100%
rename from public/bootstrap/js/transition.js
rename to public-old/bootstrap/js/transition.js
diff --git a/public/bootstrap/less/.csscomb.json b/public-old/bootstrap/less/.csscomb.json
similarity index 100%
rename from public/bootstrap/less/.csscomb.json
rename to public-old/bootstrap/less/.csscomb.json
diff --git a/public/bootstrap/less/.csslintrc b/public-old/bootstrap/less/.csslintrc
similarity index 100%
rename from public/bootstrap/less/.csslintrc
rename to public-old/bootstrap/less/.csslintrc
diff --git a/public/bootstrap/less/alerts.less b/public-old/bootstrap/less/alerts.less
similarity index 100%
rename from public/bootstrap/less/alerts.less
rename to public-old/bootstrap/less/alerts.less
diff --git a/public/bootstrap/less/badges.less b/public-old/bootstrap/less/badges.less
similarity index 100%
rename from public/bootstrap/less/badges.less
rename to public-old/bootstrap/less/badges.less
diff --git a/public/bootstrap/less/bootstrap.less b/public-old/bootstrap/less/bootstrap.less
similarity index 100%
rename from public/bootstrap/less/bootstrap.less
rename to public-old/bootstrap/less/bootstrap.less
diff --git a/public/bootstrap/less/breadcrumbs.less b/public-old/bootstrap/less/breadcrumbs.less
similarity index 100%
rename from public/bootstrap/less/breadcrumbs.less
rename to public-old/bootstrap/less/breadcrumbs.less
diff --git a/public/bootstrap/less/button-groups.less b/public-old/bootstrap/less/button-groups.less
similarity index 100%
rename from public/bootstrap/less/button-groups.less
rename to public-old/bootstrap/less/button-groups.less
diff --git a/public/bootstrap/less/buttons.less b/public-old/bootstrap/less/buttons.less
similarity index 100%
rename from public/bootstrap/less/buttons.less
rename to public-old/bootstrap/less/buttons.less
diff --git a/public/bootstrap/less/carousel.less b/public-old/bootstrap/less/carousel.less
similarity index 100%
rename from public/bootstrap/less/carousel.less
rename to public-old/bootstrap/less/carousel.less
diff --git a/public/bootstrap/less/close.less b/public-old/bootstrap/less/close.less
similarity index 100%
rename from public/bootstrap/less/close.less
rename to public-old/bootstrap/less/close.less
diff --git a/public/bootstrap/less/code.less b/public-old/bootstrap/less/code.less
similarity index 100%
rename from public/bootstrap/less/code.less
rename to public-old/bootstrap/less/code.less
diff --git a/public/bootstrap/less/component-animations.less b/public-old/bootstrap/less/component-animations.less
similarity index 100%
rename from public/bootstrap/less/component-animations.less
rename to public-old/bootstrap/less/component-animations.less
diff --git a/public/bootstrap/less/dropdowns.less b/public-old/bootstrap/less/dropdowns.less
similarity index 100%
rename from public/bootstrap/less/dropdowns.less
rename to public-old/bootstrap/less/dropdowns.less
diff --git a/public/bootstrap/less/forms.less b/public-old/bootstrap/less/forms.less
similarity index 100%
rename from public/bootstrap/less/forms.less
rename to public-old/bootstrap/less/forms.less
diff --git a/public/bootstrap/less/glyphicons.less b/public-old/bootstrap/less/glyphicons.less
similarity index 100%
rename from public/bootstrap/less/glyphicons.less
rename to public-old/bootstrap/less/glyphicons.less
diff --git a/public/bootstrap/less/grid.less b/public-old/bootstrap/less/grid.less
similarity index 100%
rename from public/bootstrap/less/grid.less
rename to public-old/bootstrap/less/grid.less
diff --git a/public/bootstrap/less/input-groups.less b/public-old/bootstrap/less/input-groups.less
similarity index 100%
rename from public/bootstrap/less/input-groups.less
rename to public-old/bootstrap/less/input-groups.less
diff --git a/public/bootstrap/less/jumbotron.less b/public-old/bootstrap/less/jumbotron.less
similarity index 100%
rename from public/bootstrap/less/jumbotron.less
rename to public-old/bootstrap/less/jumbotron.less
diff --git a/public/bootstrap/less/labels.less b/public-old/bootstrap/less/labels.less
similarity index 100%
rename from public/bootstrap/less/labels.less
rename to public-old/bootstrap/less/labels.less
diff --git a/public/bootstrap/less/list-group.less b/public-old/bootstrap/less/list-group.less
similarity index 100%
rename from public/bootstrap/less/list-group.less
rename to public-old/bootstrap/less/list-group.less
diff --git a/public/bootstrap/less/media.less b/public-old/bootstrap/less/media.less
similarity index 100%
rename from public/bootstrap/less/media.less
rename to public-old/bootstrap/less/media.less
diff --git a/public/bootstrap/less/mixins.less b/public-old/bootstrap/less/mixins.less
similarity index 100%
rename from public/bootstrap/less/mixins.less
rename to public-old/bootstrap/less/mixins.less
diff --git a/public/bootstrap/less/mixins/alerts.less b/public-old/bootstrap/less/mixins/alerts.less
similarity index 100%
rename from public/bootstrap/less/mixins/alerts.less
rename to public-old/bootstrap/less/mixins/alerts.less
diff --git a/public/bootstrap/less/mixins/background-variant.less b/public-old/bootstrap/less/mixins/background-variant.less
similarity index 100%
rename from public/bootstrap/less/mixins/background-variant.less
rename to public-old/bootstrap/less/mixins/background-variant.less
diff --git a/public/bootstrap/less/mixins/border-radius.less b/public-old/bootstrap/less/mixins/border-radius.less
similarity index 100%
rename from public/bootstrap/less/mixins/border-radius.less
rename to public-old/bootstrap/less/mixins/border-radius.less
diff --git a/public/bootstrap/less/mixins/buttons.less b/public-old/bootstrap/less/mixins/buttons.less
similarity index 100%
rename from public/bootstrap/less/mixins/buttons.less
rename to public-old/bootstrap/less/mixins/buttons.less
diff --git a/public/bootstrap/less/mixins/center-block.less b/public-old/bootstrap/less/mixins/center-block.less
similarity index 100%
rename from public/bootstrap/less/mixins/center-block.less
rename to public-old/bootstrap/less/mixins/center-block.less
diff --git a/public/bootstrap/less/mixins/clearfix.less b/public-old/bootstrap/less/mixins/clearfix.less
similarity index 100%
rename from public/bootstrap/less/mixins/clearfix.less
rename to public-old/bootstrap/less/mixins/clearfix.less
diff --git a/public/bootstrap/less/mixins/forms.less b/public-old/bootstrap/less/mixins/forms.less
similarity index 100%
rename from public/bootstrap/less/mixins/forms.less
rename to public-old/bootstrap/less/mixins/forms.less
diff --git a/public/bootstrap/less/mixins/gradients.less b/public-old/bootstrap/less/mixins/gradients.less
similarity index 100%
rename from public/bootstrap/less/mixins/gradients.less
rename to public-old/bootstrap/less/mixins/gradients.less
diff --git a/public/bootstrap/less/mixins/grid-framework.less b/public-old/bootstrap/less/mixins/grid-framework.less
similarity index 100%
rename from public/bootstrap/less/mixins/grid-framework.less
rename to public-old/bootstrap/less/mixins/grid-framework.less
diff --git a/public/bootstrap/less/mixins/grid.less b/public-old/bootstrap/less/mixins/grid.less
similarity index 100%
rename from public/bootstrap/less/mixins/grid.less
rename to public-old/bootstrap/less/mixins/grid.less
diff --git a/public/bootstrap/less/mixins/hide-text.less b/public-old/bootstrap/less/mixins/hide-text.less
similarity index 100%
rename from public/bootstrap/less/mixins/hide-text.less
rename to public-old/bootstrap/less/mixins/hide-text.less
diff --git a/public/bootstrap/less/mixins/image.less b/public-old/bootstrap/less/mixins/image.less
similarity index 100%
rename from public/bootstrap/less/mixins/image.less
rename to public-old/bootstrap/less/mixins/image.less
diff --git a/public/bootstrap/less/mixins/labels.less b/public-old/bootstrap/less/mixins/labels.less
similarity index 100%
rename from public/bootstrap/less/mixins/labels.less
rename to public-old/bootstrap/less/mixins/labels.less
diff --git a/public/bootstrap/less/mixins/list-group.less b/public-old/bootstrap/less/mixins/list-group.less
similarity index 100%
rename from public/bootstrap/less/mixins/list-group.less
rename to public-old/bootstrap/less/mixins/list-group.less
diff --git a/public/bootstrap/less/mixins/nav-divider.less b/public-old/bootstrap/less/mixins/nav-divider.less
similarity index 100%
rename from public/bootstrap/less/mixins/nav-divider.less
rename to public-old/bootstrap/less/mixins/nav-divider.less
diff --git a/public/bootstrap/less/mixins/nav-vertical-align.less b/public-old/bootstrap/less/mixins/nav-vertical-align.less
similarity index 100%
rename from public/bootstrap/less/mixins/nav-vertical-align.less
rename to public-old/bootstrap/less/mixins/nav-vertical-align.less
diff --git a/public/bootstrap/less/mixins/opacity.less b/public-old/bootstrap/less/mixins/opacity.less
similarity index 100%
rename from public/bootstrap/less/mixins/opacity.less
rename to public-old/bootstrap/less/mixins/opacity.less
diff --git a/public/bootstrap/less/mixins/pagination.less b/public-old/bootstrap/less/mixins/pagination.less
similarity index 100%
rename from public/bootstrap/less/mixins/pagination.less
rename to public-old/bootstrap/less/mixins/pagination.less
diff --git a/public/bootstrap/less/mixins/panels.less b/public-old/bootstrap/less/mixins/panels.less
similarity index 100%
rename from public/bootstrap/less/mixins/panels.less
rename to public-old/bootstrap/less/mixins/panels.less
diff --git a/public/bootstrap/less/mixins/progress-bar.less b/public-old/bootstrap/less/mixins/progress-bar.less
similarity index 100%
rename from public/bootstrap/less/mixins/progress-bar.less
rename to public-old/bootstrap/less/mixins/progress-bar.less
diff --git a/public/bootstrap/less/mixins/reset-filter.less b/public-old/bootstrap/less/mixins/reset-filter.less
similarity index 100%
rename from public/bootstrap/less/mixins/reset-filter.less
rename to public-old/bootstrap/less/mixins/reset-filter.less
diff --git a/public/bootstrap/less/mixins/reset-text.less b/public-old/bootstrap/less/mixins/reset-text.less
similarity index 100%
rename from public/bootstrap/less/mixins/reset-text.less
rename to public-old/bootstrap/less/mixins/reset-text.less
diff --git a/public/bootstrap/less/mixins/resize.less b/public-old/bootstrap/less/mixins/resize.less
similarity index 100%
rename from public/bootstrap/less/mixins/resize.less
rename to public-old/bootstrap/less/mixins/resize.less
diff --git a/public/bootstrap/less/mixins/responsive-visibility.less b/public-old/bootstrap/less/mixins/responsive-visibility.less
similarity index 100%
rename from public/bootstrap/less/mixins/responsive-visibility.less
rename to public-old/bootstrap/less/mixins/responsive-visibility.less
diff --git a/public/bootstrap/less/mixins/size.less b/public-old/bootstrap/less/mixins/size.less
similarity index 100%
rename from public/bootstrap/less/mixins/size.less
rename to public-old/bootstrap/less/mixins/size.less
diff --git a/public/bootstrap/less/mixins/tab-focus.less b/public-old/bootstrap/less/mixins/tab-focus.less
similarity index 100%
rename from public/bootstrap/less/mixins/tab-focus.less
rename to public-old/bootstrap/less/mixins/tab-focus.less
diff --git a/public/bootstrap/less/mixins/table-row.less b/public-old/bootstrap/less/mixins/table-row.less
similarity index 100%
rename from public/bootstrap/less/mixins/table-row.less
rename to public-old/bootstrap/less/mixins/table-row.less
diff --git a/public/bootstrap/less/mixins/text-emphasis.less b/public-old/bootstrap/less/mixins/text-emphasis.less
similarity index 100%
rename from public/bootstrap/less/mixins/text-emphasis.less
rename to public-old/bootstrap/less/mixins/text-emphasis.less
diff --git a/public/bootstrap/less/mixins/text-overflow.less b/public-old/bootstrap/less/mixins/text-overflow.less
similarity index 100%
rename from public/bootstrap/less/mixins/text-overflow.less
rename to public-old/bootstrap/less/mixins/text-overflow.less
diff --git a/public/bootstrap/less/mixins/vendor-prefixes.less b/public-old/bootstrap/less/mixins/vendor-prefixes.less
similarity index 100%
rename from public/bootstrap/less/mixins/vendor-prefixes.less
rename to public-old/bootstrap/less/mixins/vendor-prefixes.less
diff --git a/public/bootstrap/less/modals.less b/public-old/bootstrap/less/modals.less
similarity index 100%
rename from public/bootstrap/less/modals.less
rename to public-old/bootstrap/less/modals.less
diff --git a/public/bootstrap/less/navbar.less b/public-old/bootstrap/less/navbar.less
similarity index 100%
rename from public/bootstrap/less/navbar.less
rename to public-old/bootstrap/less/navbar.less
diff --git a/public/bootstrap/less/navs.less b/public-old/bootstrap/less/navs.less
similarity index 100%
rename from public/bootstrap/less/navs.less
rename to public-old/bootstrap/less/navs.less
diff --git a/public/bootstrap/less/normalize.less b/public-old/bootstrap/less/normalize.less
similarity index 100%
rename from public/bootstrap/less/normalize.less
rename to public-old/bootstrap/less/normalize.less
diff --git a/public/bootstrap/less/pager.less b/public-old/bootstrap/less/pager.less
similarity index 100%
rename from public/bootstrap/less/pager.less
rename to public-old/bootstrap/less/pager.less
diff --git a/public/bootstrap/less/pagination.less b/public-old/bootstrap/less/pagination.less
similarity index 100%
rename from public/bootstrap/less/pagination.less
rename to public-old/bootstrap/less/pagination.less
diff --git a/public/bootstrap/less/panels.less b/public-old/bootstrap/less/panels.less
similarity index 100%
rename from public/bootstrap/less/panels.less
rename to public-old/bootstrap/less/panels.less
diff --git a/public/bootstrap/less/popovers.less b/public-old/bootstrap/less/popovers.less
similarity index 100%
rename from public/bootstrap/less/popovers.less
rename to public-old/bootstrap/less/popovers.less
diff --git a/public/bootstrap/less/print.less b/public-old/bootstrap/less/print.less
similarity index 100%
rename from public/bootstrap/less/print.less
rename to public-old/bootstrap/less/print.less
diff --git a/public/bootstrap/less/progress-bars.less b/public-old/bootstrap/less/progress-bars.less
similarity index 100%
rename from public/bootstrap/less/progress-bars.less
rename to public-old/bootstrap/less/progress-bars.less
diff --git a/public/bootstrap/less/responsive-embed.less b/public-old/bootstrap/less/responsive-embed.less
similarity index 100%
rename from public/bootstrap/less/responsive-embed.less
rename to public-old/bootstrap/less/responsive-embed.less
diff --git a/public/bootstrap/less/responsive-utilities.less b/public-old/bootstrap/less/responsive-utilities.less
similarity index 100%
rename from public/bootstrap/less/responsive-utilities.less
rename to public-old/bootstrap/less/responsive-utilities.less
diff --git a/public/bootstrap/less/scaffolding.less b/public-old/bootstrap/less/scaffolding.less
similarity index 100%
rename from public/bootstrap/less/scaffolding.less
rename to public-old/bootstrap/less/scaffolding.less
diff --git a/public/bootstrap/less/tables.less b/public-old/bootstrap/less/tables.less
similarity index 100%
rename from public/bootstrap/less/tables.less
rename to public-old/bootstrap/less/tables.less
diff --git a/public/bootstrap/less/theme.less b/public-old/bootstrap/less/theme.less
similarity index 100%
rename from public/bootstrap/less/theme.less
rename to public-old/bootstrap/less/theme.less
diff --git a/public/bootstrap/less/thumbnails.less b/public-old/bootstrap/less/thumbnails.less
similarity index 100%
rename from public/bootstrap/less/thumbnails.less
rename to public-old/bootstrap/less/thumbnails.less
diff --git a/public/bootstrap/less/tooltip.less b/public-old/bootstrap/less/tooltip.less
similarity index 100%
rename from public/bootstrap/less/tooltip.less
rename to public-old/bootstrap/less/tooltip.less
diff --git a/public/bootstrap/less/type.less b/public-old/bootstrap/less/type.less
similarity index 100%
rename from public/bootstrap/less/type.less
rename to public-old/bootstrap/less/type.less
diff --git a/public/bootstrap/less/utilities.less b/public-old/bootstrap/less/utilities.less
similarity index 100%
rename from public/bootstrap/less/utilities.less
rename to public-old/bootstrap/less/utilities.less
diff --git a/public/bootstrap/less/variables.less b/public-old/bootstrap/less/variables.less
similarity index 100%
rename from public/bootstrap/less/variables.less
rename to public-old/bootstrap/less/variables.less
diff --git a/public/bootstrap/less/wells.less b/public-old/bootstrap/less/wells.less
similarity index 100%
rename from public/bootstrap/less/wells.less
rename to public-old/bootstrap/less/wells.less
diff --git a/public/bootstrap/nuget/MyGet.ps1 b/public-old/bootstrap/nuget/MyGet.ps1
similarity index 100%
rename from public/bootstrap/nuget/MyGet.ps1
rename to public-old/bootstrap/nuget/MyGet.ps1
diff --git a/public/bootstrap/nuget/bootstrap.less.nuspec b/public-old/bootstrap/nuget/bootstrap.less.nuspec
similarity index 100%
rename from public/bootstrap/nuget/bootstrap.less.nuspec
rename to public-old/bootstrap/nuget/bootstrap.less.nuspec
diff --git a/public/bootstrap/nuget/bootstrap.nuspec b/public-old/bootstrap/nuget/bootstrap.nuspec
similarity index 100%
rename from public/bootstrap/nuget/bootstrap.nuspec
rename to public-old/bootstrap/nuget/bootstrap.nuspec
diff --git a/public/bootstrap/package.js b/public-old/bootstrap/package.js
similarity index 100%
rename from public/bootstrap/package.js
rename to public-old/bootstrap/package.js
diff --git a/public/bootstrap/package.json b/public-old/bootstrap/package.json
similarity index 100%
rename from public/bootstrap/package.json
rename to public-old/bootstrap/package.json
diff --git a/public/cbsd.inc.php b/public-old/cbsd.inc.php
similarity index 100%
rename from public/cbsd.inc.php
rename to public-old/cbsd.inc.php
diff --git a/public/copyright.inc.php b/public-old/copyright.inc.php
similarity index 100%
rename from public/copyright.inc.php
rename to public-old/copyright.inc.php
diff --git a/public/crossdomain.xml b/public-old/crossdomain.xml
similarity index 100%
rename from public/crossdomain.xml
rename to public-old/crossdomain.xml
diff --git a/public/css/dashboard.css b/public-old/css/dashboard.css
similarity index 100%
rename from public/css/dashboard.css
rename to public-old/css/dashboard.css
diff --git a/public/db.inc.php b/public-old/db.inc.php
similarity index 100%
rename from public/db.inc.php
rename to public-old/db.inc.php
diff --git a/public/footer.inc.php b/public-old/footer.inc.php
similarity index 100%
rename from public/footer.inc.php
rename to public-old/footer.inc.php
diff --git a/public/fun.server.common.php b/public-old/fun.server.common.php
similarity index 100%
rename from public/fun.server.common.php
rename to public-old/fun.server.common.php
diff --git a/public/fun.server.php b/public-old/fun.server.php
similarity index 100%
rename from public/fun.server.php
rename to public-old/fun.server.php
diff --git a/public/head.inc.php b/public-old/head.inc.php
similarity index 100%
rename from public/head.inc.php
rename to public-old/head.inc.php
diff --git a/public/homepage/index.inc b/public-old/homepage/index.inc
similarity index 100%
rename from public/homepage/index.inc
rename to public-old/homepage/index.inc
diff --git a/public/i.php b/public-old/i.php
similarity index 100%
rename from public/i.php
rename to public-old/i.php
diff --git a/public/img/clone.png b/public-old/img/clone.png
similarity index 100%
rename from public/img/clone.png
rename to public-old/img/clone.png
diff --git a/public/img/export.png b/public-old/img/export.png
similarity index 100%
rename from public/img/export.png
rename to public-old/img/export.png
diff --git a/public/img/plus.png b/public-old/img/plus.png
similarity index 100%
rename from public/img/plus.png
rename to public-old/img/plus.png
diff --git a/public/img/rename.png b/public-old/img/rename.png
similarity index 100%
rename from public/img/rename.png
rename to public-old/img/rename.png
diff --git a/public-old/index.php b/public-old/index.php
new file mode 100644
index 00000000..6c7838af
--- /dev/null
+++ b/public-old/index.php
@@ -0,0 +1,28 @@
+printJavascript();
+?>
+
+
+
diff --git a/public/jail_marketplace/index.inc b/public-old/jail_marketplace/index.inc
similarity index 100%
rename from public/jail_marketplace/index.inc
rename to public-old/jail_marketplace/index.inc
diff --git a/public/jailscontainers/img_helper_cfg.php b/public-old/jailscontainers/img_helper_cfg.php
similarity index 100%
rename from public/jailscontainers/img_helper_cfg.php
rename to public-old/jailscontainers/img_helper_cfg.php
diff --git a/public/jailscontainers/imghelper.php b/public-old/jailscontainers/imghelper.php
similarity index 100%
rename from public/jailscontainers/imghelper.php
rename to public-old/jailscontainers/imghelper.php
diff --git a/public/jailscontainers/imghelper_menu.php b/public-old/jailscontainers/imghelper_menu.php
similarity index 100%
rename from public/jailscontainers/imghelper_menu.php
rename to public-old/jailscontainers/imghelper_menu.php
diff --git a/public/jailscontainers/index.inc b/public-old/jailscontainers/index.inc
similarity index 100%
rename from public/jailscontainers/index.inc
rename to public-old/jailscontainers/index.inc
diff --git a/public/jailscontainers/jail_menu.php b/public-old/jailscontainers/jail_menu.php
similarity index 100%
rename from public/jailscontainers/jail_menu.php
rename to public-old/jailscontainers/jail_menu.php
diff --git a/public/jailscontainers/jclone.inc b/public-old/jailscontainers/jclone.inc
similarity index 100%
rename from public/jailscontainers/jclone.inc
rename to public-old/jailscontainers/jclone.inc
diff --git a/public/jailscontainers/jconfig.inc b/public-old/jailscontainers/jconfig.inc
similarity index 100%
rename from public/jailscontainers/jconfig.inc
rename to public-old/jailscontainers/jconfig.inc
diff --git a/public/jailscontainers/jcreate.inc b/public-old/jailscontainers/jcreate.inc
similarity index 100%
rename from public/jailscontainers/jcreate.inc
rename to public-old/jailscontainers/jcreate.inc
diff --git a/public/jailscontainers/jrename.inc b/public-old/jailscontainers/jrename.inc
similarity index 100%
rename from public/jailscontainers/jrename.inc
rename to public-old/jailscontainers/jrename.inc
diff --git a/public/jailscontainers/jstatus.php b/public-old/jailscontainers/jstatus.php
similarity index 100%
rename from public/jailscontainers/jstatus.php
rename to public-old/jailscontainers/jstatus.php
diff --git a/public/jailscontainers/show_jails.php b/public-old/jailscontainers/show_jails.php
similarity index 100%
rename from public/jailscontainers/show_jails.php
rename to public-old/jailscontainers/show_jails.php
diff --git a/public/jailscontainers/srvlist.shtml b/public-old/jailscontainers/srvlist.shtml
similarity index 100%
rename from public/jailscontainers/srvlist.shtml
rename to public-old/jailscontainers/srvlist.shtml
diff --git a/public/jailtpl.jconf b/public-old/jailtpl.jconf
similarity index 100%
rename from public/jailtpl.jconf
rename to public-old/jailtpl.jconf
diff --git a/public/js/lang.js b/public-old/js/lang.js
similarity index 100%
rename from public/js/lang.js
rename to public-old/js/lang.js
diff --git a/public/js/lang/en.js b/public-old/js/lang/en.js
similarity index 100%
rename from public/js/lang/en.js
rename to public-old/js/lang/en.js
diff --git a/public/js/lang/ru.js b/public-old/js/lang/ru.js
similarity index 100%
rename from public/js/lang/ru.js
rename to public-old/js/lang/ru.js
diff --git a/public/js/misc.js b/public-old/js/misc.js
similarity index 100%
rename from public/js/misc.js
rename to public-old/js/misc.js
diff --git a/public-old/lang/en.php b/public-old/lang/en.php
new file mode 100644
index 00000000..801261eb
--- /dev/null
+++ b/public-old/lang/en.php
@@ -0,0 +1,5 @@
+'Помощь',
+ 'Import'=>'Импорт',
+ 'Modules'=>'Модули',
+ 'Helpers'=>'Хелперы',
+ 'Services'=>'Сервисы',
+ 'Users'=>'Пользователи',
+ 'Task log'=>'Лог задач',
+ 'Snapshots'=>'Снимки',
+ 'Module'=>'Модуль',
+ 'Projects list'=>'Список проектов',
+ 'Jails'=>'Клетки',
+ 'run jail'=>'запустить',
+ 'add new'=>'добавить',
+ 'run'=>'запустить',
+ 'stop'=>'остановить',
+ 'delete'=>'удалить',
+ 'clone'=>'клонировать',
+ 'export'=>'экспорт',
+ 'move'=>'переместить',
+ 'snapshot'=>'снимок',
+
+ 'Add new project'=>'Добавить новый проект',
+ 'Project Settings'=>'Настройки проекта',
+ 'Project name'=>'Имя проекта',
+ 'Description'=>'Описание',
+
+ 'Add new jail'=>'Добавить новую клетку',
+ 'Jail Settings'=>'Настройки клетки',
+ 'Jail name'=>'Имя клетки',
+ 'Hostname'=>'Хост',
+ 'IP address'=>'IP-адрес',
+ 'Jail profile'=>'Профиль клетки',
+
+ 'Add new module'=>'Добавить новый модуль',
+ 'Module install'=>'Установка модуля',
+
+ 'Edit jail'=>'Редактирование клетки',
+ 'Jail Settings'=>'Настройки клетки',
+ 'Autostart'=>'Автозапуск',
+ 'Autostart jail at system startup'=>'Автозапуск клетки при загрузке системы',
+ 'available on the jail is not running'=>'доступно при остановленной клетке',
+
+ 'User add'=>'Добавление пользователя',
+ 'User Settings'=>'Настройки пользователя',
+ 'User login'=>'Логин пользователя',
+ 'Full name'=>'Имя пользователя',
+ 'Password'=>'Пароль',
+ 'Repeat password'=>'Повтор пароля',
+
+ 'Exported jails list'=>'Список экспортированных клеток',
+ 'Import jails in project'=>'Импортировать клетку в проект',
+
+ 'Clone settings'=>'Настройки клонирования',
+ 'Settings for cloned jails'=>'Настройки для клонирования клетки',
+
+ 'Not running'=>'Не запущено',
+ 'Launched'=>'Запущено',
+ 'Creating'=>'Создаётся',
+ 'Starting'=>'Запускается',
+ 'Start'=>'Запустить',
+ 'Stopping'=>'Останавливается',
+ 'Stopped'=>'Остановлено',
+ 'Stop'=>'Остановить',
+ 'Saving'=>'Сохраняется',
+ 'Saved'=>'Сохранено',
+ 'Removing'=>'Удаляется',
+ 'Removed'=>'Удалено',
+ 'Remove'=>'Удалить',
+ 'Exporting'=>'Экспортируется',
+ 'Exported'=>'Экспортировано',
+ 'Importing'=>'Импортируется',
+ 'Imported'=>'Импортировано',
+ 'Cloning'=>'Клонируется',
+ 'Cloned'=>'Клонировано',
+ 'Installing'=>'Устанавливается',
+ 'Installed'=>'Установлено',
+ 'Error'=>'Ошибка',
+
+ 'Module info is unavailable'=>'Информация о модулях недоступна',
+ 'Console'=>'Консоль',
+ 'Version'=>'Версия',
+ 'Comment'=>'Комментарий',
+ 'Link'=>'Ссылка',
+ 'Size'=>'Размер',
+ 'Time'=>'Время',
+ 'Settings'=>'Настройки',
+ 'Profile'=>'Профиль',
+ 'Support'=>'Поддержка',
+ 'Search...'=>'Поиск...',
+ 'Loading form'=>'Загружаемая форма',
+
+ 'are not installed'=>'не установлен',
+ 'You need to'=>'Вам необходимо',
+ 'install the module'=>'установить модуль',
+);
diff --git a/public/left_menu.inc.php b/public-old/left_menu.inc.php
similarity index 100%
rename from public/left_menu.inc.php
rename to public-old/left_menu.inc.php
diff --git a/public/media/index.inc b/public-old/media/index.inc
similarity index 100%
rename from public/media/index.inc
rename to public-old/media/index.inc
diff --git a/public/media/media_add.inc b/public-old/media/media_add.inc
similarity index 100%
rename from public/media/media_add.inc
rename to public-old/media/media_add.inc
diff --git a/public/media/show_media.php b/public-old/media/show_media.php
similarity index 100%
rename from public/media/show_media.php
rename to public-old/media/show_media.php
diff --git a/public/nodes.inc.php b/public-old/nodes.inc.php
similarity index 100%
rename from public/nodes.inc.php
rename to public-old/nodes.inc.php
diff --git a/public/nodes/index.inc b/public-old/nodes/index.inc
similarity index 100%
rename from public/nodes/index.inc
rename to public-old/nodes/index.inc
diff --git a/public/nodes/node_add.inc b/public-old/nodes/node_add.inc
similarity index 100%
rename from public/nodes/node_add.inc
rename to public-old/nodes/node_add.inc
diff --git a/public/nodes/show_nodes.php b/public-old/nodes/show_nodes.php
similarity index 100%
rename from public/nodes/show_nodes.php
rename to public-old/nodes/show_nodes.php
diff --git a/public/novnc/.gitignore b/public-old/novnc/.gitignore
similarity index 100%
rename from public/novnc/.gitignore
rename to public-old/novnc/.gitignore
diff --git a/public/novnc/.gitmodules b/public-old/novnc/.gitmodules
similarity index 100%
rename from public/novnc/.gitmodules
rename to public-old/novnc/.gitmodules
diff --git a/public/novnc/.travis.yml b/public-old/novnc/.travis.yml
similarity index 100%
rename from public/novnc/.travis.yml
rename to public-old/novnc/.travis.yml
diff --git a/public/novnc/CONTRIBUTING.md b/public-old/novnc/CONTRIBUTING.md
similarity index 100%
rename from public/novnc/CONTRIBUTING.md
rename to public-old/novnc/CONTRIBUTING.md
diff --git a/public/novnc/LICENSE.txt b/public-old/novnc/LICENSE.txt
similarity index 100%
rename from public/novnc/LICENSE.txt
rename to public-old/novnc/LICENSE.txt
diff --git a/public/novnc/README.md b/public-old/novnc/README.md
similarity index 100%
rename from public/novnc/README.md
rename to public-old/novnc/README.md
diff --git a/public/novnc/docs/LICENSE.Apache-2.0 b/public-old/novnc/docs/LICENSE.Apache-2.0
similarity index 100%
rename from public/novnc/docs/LICENSE.Apache-2.0
rename to public-old/novnc/docs/LICENSE.Apache-2.0
diff --git a/public/novnc/docs/LICENSE.BSD-2-Clause b/public-old/novnc/docs/LICENSE.BSD-2-Clause
similarity index 100%
rename from public/novnc/docs/LICENSE.BSD-2-Clause
rename to public-old/novnc/docs/LICENSE.BSD-2-Clause
diff --git a/public/novnc/docs/LICENSE.BSD-3-Clause b/public-old/novnc/docs/LICENSE.BSD-3-Clause
similarity index 100%
rename from public/novnc/docs/LICENSE.BSD-3-Clause
rename to public-old/novnc/docs/LICENSE.BSD-3-Clause
diff --git a/public/novnc/docs/LICENSE.GPL-3 b/public-old/novnc/docs/LICENSE.GPL-3
similarity index 100%
rename from public/novnc/docs/LICENSE.GPL-3
rename to public-old/novnc/docs/LICENSE.GPL-3
diff --git a/public/novnc/docs/LICENSE.LGPL-3 b/public-old/novnc/docs/LICENSE.LGPL-3
similarity index 100%
rename from public/novnc/docs/LICENSE.LGPL-3
rename to public-old/novnc/docs/LICENSE.LGPL-3
diff --git a/public/novnc/docs/LICENSE.MPL-2.0 b/public-old/novnc/docs/LICENSE.MPL-2.0
similarity index 100%
rename from public/novnc/docs/LICENSE.MPL-2.0
rename to public-old/novnc/docs/LICENSE.MPL-2.0
diff --git a/public/novnc/docs/LICENSE.OFL-1.1 b/public-old/novnc/docs/LICENSE.OFL-1.1
similarity index 100%
rename from public/novnc/docs/LICENSE.OFL-1.1
rename to public-old/novnc/docs/LICENSE.OFL-1.1
diff --git a/public/novnc/docs/LICENSE.pako b/public-old/novnc/docs/LICENSE.pako
similarity index 100%
rename from public/novnc/docs/LICENSE.pako
rename to public-old/novnc/docs/LICENSE.pako
diff --git a/public/novnc/docs/LICENSE.zlib b/public-old/novnc/docs/LICENSE.zlib
similarity index 100%
rename from public/novnc/docs/LICENSE.zlib
rename to public-old/novnc/docs/LICENSE.zlib
diff --git a/public/novnc/docs/VERSION b/public-old/novnc/docs/VERSION
similarity index 100%
rename from public/novnc/docs/VERSION
rename to public-old/novnc/docs/VERSION
diff --git a/public/novnc/docs/flash_policy.txt b/public-old/novnc/docs/flash_policy.txt
similarity index 100%
rename from public/novnc/docs/flash_policy.txt
rename to public-old/novnc/docs/flash_policy.txt
diff --git a/public/novnc/docs/links b/public-old/novnc/docs/links
similarity index 100%
rename from public/novnc/docs/links
rename to public-old/novnc/docs/links
diff --git a/public/novnc/docs/notes b/public-old/novnc/docs/notes
similarity index 100%
rename from public/novnc/docs/notes
rename to public-old/novnc/docs/notes
diff --git a/public/novnc/docs/release.txt b/public-old/novnc/docs/release.txt
similarity index 100%
rename from public/novnc/docs/release.txt
rename to public-old/novnc/docs/release.txt
diff --git a/public/novnc/docs/rfb_notes b/public-old/novnc/docs/rfb_notes
similarity index 100%
rename from public/novnc/docs/rfb_notes
rename to public-old/novnc/docs/rfb_notes
diff --git a/public/novnc/docs/rfbproto-3.3.pdf b/public-old/novnc/docs/rfbproto-3.3.pdf
similarity index 100%
rename from public/novnc/docs/rfbproto-3.3.pdf
rename to public-old/novnc/docs/rfbproto-3.3.pdf
diff --git a/public/novnc/docs/rfbproto-3.7.pdf b/public-old/novnc/docs/rfbproto-3.7.pdf
similarity index 100%
rename from public/novnc/docs/rfbproto-3.7.pdf
rename to public-old/novnc/docs/rfbproto-3.7.pdf
diff --git a/public/novnc/docs/rfbproto-3.8.pdf b/public-old/novnc/docs/rfbproto-3.8.pdf
similarity index 100%
rename from public/novnc/docs/rfbproto-3.8.pdf
rename to public-old/novnc/docs/rfbproto-3.8.pdf
diff --git a/public/novnc/favicon.ico b/public-old/novnc/favicon.ico
similarity index 100%
rename from public/novnc/favicon.ico
rename to public-old/novnc/favicon.ico
diff --git a/public/novnc/images/alt.png b/public-old/novnc/images/alt.png
similarity index 100%
rename from public/novnc/images/alt.png
rename to public-old/novnc/images/alt.png
diff --git a/public/novnc/images/clipboard.png b/public-old/novnc/images/clipboard.png
similarity index 100%
rename from public/novnc/images/clipboard.png
rename to public-old/novnc/images/clipboard.png
diff --git a/public/novnc/images/connect.png b/public-old/novnc/images/connect.png
similarity index 100%
rename from public/novnc/images/connect.png
rename to public-old/novnc/images/connect.png
diff --git a/public/novnc/images/ctrl.png b/public-old/novnc/images/ctrl.png
similarity index 100%
rename from public/novnc/images/ctrl.png
rename to public-old/novnc/images/ctrl.png
diff --git a/public/novnc/images/ctrlaltdel.png b/public-old/novnc/images/ctrlaltdel.png
similarity index 100%
rename from public/novnc/images/ctrlaltdel.png
rename to public-old/novnc/images/ctrlaltdel.png
diff --git a/public/novnc/images/disconnect.png b/public-old/novnc/images/disconnect.png
similarity index 100%
rename from public/novnc/images/disconnect.png
rename to public-old/novnc/images/disconnect.png
diff --git a/public/novnc/images/drag.png b/public-old/novnc/images/drag.png
similarity index 100%
rename from public/novnc/images/drag.png
rename to public-old/novnc/images/drag.png
diff --git a/public/novnc/images/esc.png b/public-old/novnc/images/esc.png
similarity index 100%
rename from public/novnc/images/esc.png
rename to public-old/novnc/images/esc.png
diff --git a/public/novnc/images/favicon.ico b/public-old/novnc/images/favicon.ico
similarity index 100%
rename from public/novnc/images/favicon.ico
rename to public-old/novnc/images/favicon.ico
diff --git a/public/novnc/images/favicon.png b/public-old/novnc/images/favicon.png
similarity index 100%
rename from public/novnc/images/favicon.png
rename to public-old/novnc/images/favicon.png
diff --git a/public/novnc/images/fullscreen.png b/public-old/novnc/images/fullscreen.png
similarity index 100%
rename from public/novnc/images/fullscreen.png
rename to public-old/novnc/images/fullscreen.png
diff --git a/public/novnc/images/keyboard.png b/public-old/novnc/images/keyboard.png
similarity index 100%
rename from public/novnc/images/keyboard.png
rename to public-old/novnc/images/keyboard.png
diff --git a/public/novnc/images/mouse_left.png b/public-old/novnc/images/mouse_left.png
similarity index 100%
rename from public/novnc/images/mouse_left.png
rename to public-old/novnc/images/mouse_left.png
diff --git a/public/novnc/images/mouse_middle.png b/public-old/novnc/images/mouse_middle.png
similarity index 100%
rename from public/novnc/images/mouse_middle.png
rename to public-old/novnc/images/mouse_middle.png
diff --git a/public/novnc/images/mouse_none.png b/public-old/novnc/images/mouse_none.png
similarity index 100%
rename from public/novnc/images/mouse_none.png
rename to public-old/novnc/images/mouse_none.png
diff --git a/public/novnc/images/mouse_right.png b/public-old/novnc/images/mouse_right.png
similarity index 100%
rename from public/novnc/images/mouse_right.png
rename to public-old/novnc/images/mouse_right.png
diff --git a/public/novnc/images/power.png b/public-old/novnc/images/power.png
similarity index 100%
rename from public/novnc/images/power.png
rename to public-old/novnc/images/power.png
diff --git a/public/novnc/images/screen_320x460.png b/public-old/novnc/images/screen_320x460.png
similarity index 100%
rename from public/novnc/images/screen_320x460.png
rename to public-old/novnc/images/screen_320x460.png
diff --git a/public/novnc/images/screen_57x57.png b/public-old/novnc/images/screen_57x57.png
similarity index 100%
rename from public/novnc/images/screen_57x57.png
rename to public-old/novnc/images/screen_57x57.png
diff --git a/public/novnc/images/screen_700x700.png b/public-old/novnc/images/screen_700x700.png
similarity index 100%
rename from public/novnc/images/screen_700x700.png
rename to public-old/novnc/images/screen_700x700.png
diff --git a/public/novnc/images/settings.png b/public-old/novnc/images/settings.png
similarity index 100%
rename from public/novnc/images/settings.png
rename to public-old/novnc/images/settings.png
diff --git a/public/novnc/images/tab.png b/public-old/novnc/images/tab.png
similarity index 100%
rename from public/novnc/images/tab.png
rename to public-old/novnc/images/tab.png
diff --git a/public/novnc/images/toggleextrakeys.png b/public-old/novnc/images/toggleextrakeys.png
similarity index 100%
rename from public/novnc/images/toggleextrakeys.png
rename to public-old/novnc/images/toggleextrakeys.png
diff --git a/public/novnc/include/Orbitron700.ttf b/public-old/novnc/include/Orbitron700.ttf
similarity index 100%
rename from public/novnc/include/Orbitron700.ttf
rename to public-old/novnc/include/Orbitron700.ttf
diff --git a/public/novnc/include/Orbitron700.woff b/public-old/novnc/include/Orbitron700.woff
similarity index 100%
rename from public/novnc/include/Orbitron700.woff
rename to public-old/novnc/include/Orbitron700.woff
diff --git a/public/novnc/include/base.css b/public-old/novnc/include/base.css
similarity index 100%
rename from public/novnc/include/base.css
rename to public-old/novnc/include/base.css
diff --git a/public/novnc/include/base64.js b/public-old/novnc/include/base64.js
similarity index 100%
rename from public/novnc/include/base64.js
rename to public-old/novnc/include/base64.js
diff --git a/public/novnc/include/black.css b/public-old/novnc/include/black.css
similarity index 100%
rename from public/novnc/include/black.css
rename to public-old/novnc/include/black.css
diff --git a/public/novnc/include/blue.css b/public-old/novnc/include/blue.css
similarity index 100%
rename from public/novnc/include/blue.css
rename to public-old/novnc/include/blue.css
diff --git a/public/novnc/include/chrome-app/tcp-client.js b/public-old/novnc/include/chrome-app/tcp-client.js
similarity index 100%
rename from public/novnc/include/chrome-app/tcp-client.js
rename to public-old/novnc/include/chrome-app/tcp-client.js
diff --git a/public/novnc/include/des.js b/public-old/novnc/include/des.js
similarity index 100%
rename from public/novnc/include/des.js
rename to public-old/novnc/include/des.js
diff --git a/public/novnc/include/display.js b/public-old/novnc/include/display.js
similarity index 100%
rename from public/novnc/include/display.js
rename to public-old/novnc/include/display.js
diff --git a/public/novnc/include/inflator.js b/public-old/novnc/include/inflator.js
similarity index 100%
rename from public/novnc/include/inflator.js
rename to public-old/novnc/include/inflator.js
diff --git a/public/novnc/include/input.js b/public-old/novnc/include/input.js
similarity index 100%
rename from public/novnc/include/input.js
rename to public-old/novnc/include/input.js
diff --git a/public/novnc/include/keyboard.js b/public-old/novnc/include/keyboard.js
similarity index 100%
rename from public/novnc/include/keyboard.js
rename to public-old/novnc/include/keyboard.js
diff --git a/public/novnc/include/keysym.js b/public-old/novnc/include/keysym.js
similarity index 100%
rename from public/novnc/include/keysym.js
rename to public-old/novnc/include/keysym.js
diff --git a/public/novnc/include/keysymdef.js b/public-old/novnc/include/keysymdef.js
similarity index 100%
rename from public/novnc/include/keysymdef.js
rename to public-old/novnc/include/keysymdef.js
diff --git a/public/novnc/include/logo.js b/public-old/novnc/include/logo.js
similarity index 100%
rename from public/novnc/include/logo.js
rename to public-old/novnc/include/logo.js
diff --git a/public/novnc/include/playback.js b/public-old/novnc/include/playback.js
similarity index 100%
rename from public/novnc/include/playback.js
rename to public-old/novnc/include/playback.js
diff --git a/public/novnc/include/rfb.js b/public-old/novnc/include/rfb.js
similarity index 100%
rename from public/novnc/include/rfb.js
rename to public-old/novnc/include/rfb.js
diff --git a/public/novnc/include/ui.js b/public-old/novnc/include/ui.js
similarity index 100%
rename from public/novnc/include/ui.js
rename to public-old/novnc/include/ui.js
diff --git a/public/novnc/include/util.js b/public-old/novnc/include/util.js
similarity index 100%
rename from public/novnc/include/util.js
rename to public-old/novnc/include/util.js
diff --git a/public/novnc/include/websock.js b/public-old/novnc/include/websock.js
similarity index 100%
rename from public/novnc/include/websock.js
rename to public-old/novnc/include/websock.js
diff --git a/public/novnc/include/webutil.js b/public-old/novnc/include/webutil.js
similarity index 100%
rename from public/novnc/include/webutil.js
rename to public-old/novnc/include/webutil.js
diff --git a/public/novnc/include/xtscancodes.js b/public-old/novnc/include/xtscancodes.js
similarity index 100%
rename from public/novnc/include/xtscancodes.js
rename to public-old/novnc/include/xtscancodes.js
diff --git a/public/novnc/karma.conf.js b/public-old/novnc/karma.conf.js
similarity index 100%
rename from public/novnc/karma.conf.js
rename to public-old/novnc/karma.conf.js
diff --git a/public/novnc/package.json b/public-old/novnc/package.json
similarity index 100%
rename from public/novnc/package.json
rename to public-old/novnc/package.json
diff --git a/public/novnc/tests/arrays.html b/public-old/novnc/tests/arrays.html
similarity index 100%
rename from public/novnc/tests/arrays.html
rename to public-old/novnc/tests/arrays.html
diff --git a/public/novnc/tests/arrays.js b/public-old/novnc/tests/arrays.js
similarity index 100%
rename from public/novnc/tests/arrays.js
rename to public-old/novnc/tests/arrays.js
diff --git a/public/novnc/tests/assertions.js b/public-old/novnc/tests/assertions.js
similarity index 100%
rename from public/novnc/tests/assertions.js
rename to public-old/novnc/tests/assertions.js
diff --git a/public/novnc/tests/base64.html b/public-old/novnc/tests/base64.html
similarity index 100%
rename from public/novnc/tests/base64.html
rename to public-old/novnc/tests/base64.html
diff --git a/public/novnc/tests/base64.js b/public-old/novnc/tests/base64.js
similarity index 100%
rename from public/novnc/tests/base64.js
rename to public-old/novnc/tests/base64.js
diff --git a/public/novnc/tests/browser.js b/public-old/novnc/tests/browser.js
similarity index 100%
rename from public/novnc/tests/browser.js
rename to public-old/novnc/tests/browser.js
diff --git a/public/novnc/tests/canvas.html b/public-old/novnc/tests/canvas.html
similarity index 100%
rename from public/novnc/tests/canvas.html
rename to public-old/novnc/tests/canvas.html
diff --git a/public/novnc/tests/cursor.html b/public-old/novnc/tests/cursor.html
similarity index 100%
rename from public/novnc/tests/cursor.html
rename to public-old/novnc/tests/cursor.html
diff --git a/public/novnc/tests/face.png b/public-old/novnc/tests/face.png
similarity index 100%
rename from public/novnc/tests/face.png
rename to public-old/novnc/tests/face.png
diff --git a/public/novnc/tests/face.png.js b/public-old/novnc/tests/face.png.js
similarity index 100%
rename from public/novnc/tests/face.png.js
rename to public-old/novnc/tests/face.png.js
diff --git a/public/novnc/tests/fake.websocket.js b/public-old/novnc/tests/fake.websocket.js
similarity index 100%
rename from public/novnc/tests/fake.websocket.js
rename to public-old/novnc/tests/fake.websocket.js
diff --git a/public/novnc/tests/input.html b/public-old/novnc/tests/input.html
similarity index 100%
rename from public/novnc/tests/input.html
rename to public-old/novnc/tests/input.html
diff --git a/public/novnc/tests/keyboard-tests.html b/public-old/novnc/tests/keyboard-tests.html
similarity index 100%
rename from public/novnc/tests/keyboard-tests.html
rename to public-old/novnc/tests/keyboard-tests.html
diff --git a/public/novnc/tests/run_from_console.casper.js b/public-old/novnc/tests/run_from_console.casper.js
similarity index 100%
rename from public/novnc/tests/run_from_console.casper.js
rename to public-old/novnc/tests/run_from_console.casper.js
diff --git a/public/novnc/tests/run_from_console.js b/public-old/novnc/tests/run_from_console.js
similarity index 100%
rename from public/novnc/tests/run_from_console.js
rename to public-old/novnc/tests/run_from_console.js
diff --git a/public/novnc/tests/run_from_console.zombie.js b/public-old/novnc/tests/run_from_console.zombie.js
similarity index 100%
rename from public/novnc/tests/run_from_console.zombie.js
rename to public-old/novnc/tests/run_from_console.zombie.js
diff --git a/public/novnc/tests/stats.js b/public-old/novnc/tests/stats.js
similarity index 100%
rename from public/novnc/tests/stats.js
rename to public-old/novnc/tests/stats.js
diff --git a/public/novnc/tests/test.base64.js b/public-old/novnc/tests/test.base64.js
similarity index 100%
rename from public/novnc/tests/test.base64.js
rename to public-old/novnc/tests/test.base64.js
diff --git a/public/novnc/tests/test.display.js b/public-old/novnc/tests/test.display.js
similarity index 100%
rename from public/novnc/tests/test.display.js
rename to public-old/novnc/tests/test.display.js
diff --git a/public/novnc/tests/test.helper.js b/public-old/novnc/tests/test.helper.js
similarity index 100%
rename from public/novnc/tests/test.helper.js
rename to public-old/novnc/tests/test.helper.js
diff --git a/public/novnc/tests/test.keyboard.js b/public-old/novnc/tests/test.keyboard.js
similarity index 100%
rename from public/novnc/tests/test.keyboard.js
rename to public-old/novnc/tests/test.keyboard.js
diff --git a/public/novnc/tests/test.rfb.js b/public-old/novnc/tests/test.rfb.js
similarity index 100%
rename from public/novnc/tests/test.rfb.js
rename to public-old/novnc/tests/test.rfb.js
diff --git a/public/novnc/tests/test.util.js b/public-old/novnc/tests/test.util.js
similarity index 100%
rename from public/novnc/tests/test.util.js
rename to public-old/novnc/tests/test.util.js
diff --git a/public/novnc/tests/test.websock.js b/public-old/novnc/tests/test.websock.js
similarity index 100%
rename from public/novnc/tests/test.websock.js
rename to public-old/novnc/tests/test.websock.js
diff --git a/public/novnc/tests/viewport.css b/public-old/novnc/tests/viewport.css
similarity index 100%
rename from public/novnc/tests/viewport.css
rename to public-old/novnc/tests/viewport.css
diff --git a/public/novnc/tests/viewport.html b/public-old/novnc/tests/viewport.html
similarity index 100%
rename from public/novnc/tests/viewport.html
rename to public-old/novnc/tests/viewport.html
diff --git a/public/novnc/tests/vnc_perf.html b/public-old/novnc/tests/vnc_perf.html
similarity index 100%
rename from public/novnc/tests/vnc_perf.html
rename to public-old/novnc/tests/vnc_perf.html
diff --git a/public/novnc/tests/vnc_playback.html b/public-old/novnc/tests/vnc_playback.html
similarity index 100%
rename from public/novnc/tests/vnc_playback.html
rename to public-old/novnc/tests/vnc_playback.html
diff --git a/public/novnc/utils/README.md b/public-old/novnc/utils/README.md
similarity index 100%
rename from public/novnc/utils/README.md
rename to public-old/novnc/utils/README.md
diff --git a/public/novnc/utils/b64-to-binary.pl b/public-old/novnc/utils/b64-to-binary.pl
similarity index 100%
rename from public/novnc/utils/b64-to-binary.pl
rename to public-old/novnc/utils/b64-to-binary.pl
diff --git a/public/novnc/utils/img2js.py b/public-old/novnc/utils/img2js.py
similarity index 100%
rename from public/novnc/utils/img2js.py
rename to public-old/novnc/utils/img2js.py
diff --git a/public/novnc/utils/inflator.partial.js b/public-old/novnc/utils/inflator.partial.js
similarity index 100%
rename from public/novnc/utils/inflator.partial.js
rename to public-old/novnc/utils/inflator.partial.js
diff --git a/public/novnc/utils/json2graph.py b/public-old/novnc/utils/json2graph.py
similarity index 100%
rename from public/novnc/utils/json2graph.py
rename to public-old/novnc/utils/json2graph.py
diff --git a/public/novnc/utils/launch.sh b/public-old/novnc/utils/launch.sh
similarity index 100%
rename from public/novnc/utils/launch.sh
rename to public-old/novnc/utils/launch.sh
diff --git a/public/novnc/utils/parse.js b/public-old/novnc/utils/parse.js
similarity index 100%
rename from public/novnc/utils/parse.js
rename to public-old/novnc/utils/parse.js
diff --git a/public/novnc/utils/u2x11 b/public-old/novnc/utils/u2x11
similarity index 100%
rename from public/novnc/utils/u2x11
rename to public-old/novnc/utils/u2x11
diff --git a/public/novnc/vnc.html b/public-old/novnc/vnc.html
similarity index 100%
rename from public/novnc/vnc.html
rename to public-old/novnc/vnc.html
diff --git a/public/novnc/vnc_auto.html b/public-old/novnc/vnc_auto.html
similarity index 100%
rename from public/novnc/vnc_auto.html
rename to public-old/novnc/vnc_auto.html
diff --git a/public/overview/index.inc b/public-old/overview/index.inc
similarity index 100%
rename from public/overview/index.inc
rename to public-old/overview/index.inc
diff --git a/public/overview/overview.php b/public-old/overview/overview.php
similarity index 100%
rename from public/overview/overview.php
rename to public-old/overview/overview.php
diff --git a/public/repo/index.inc b/public-old/repo/index.inc
similarity index 100%
rename from public/repo/index.inc
rename to public-old/repo/index.inc
diff --git a/public/sources/index.inc b/public-old/sources/index.inc
similarity index 100%
rename from public/sources/index.inc
rename to public-old/sources/index.inc
diff --git a/public/sources/show_sources.php b/public-old/sources/show_sources.php
similarity index 100%
rename from public/sources/show_sources.php
rename to public-old/sources/show_sources.php
diff --git a/public/sources/srcup.php b/public-old/sources/srcup.php
similarity index 100%
rename from public/sources/srcup.php
rename to public-old/sources/srcup.php
diff --git a/public/tasklog/index.inc b/public-old/tasklog/index.inc
similarity index 100%
rename from public/tasklog/index.inc
rename to public-old/tasklog/index.inc
diff --git a/public/tasklog/show_tasklog.php b/public-old/tasklog/show_tasklog.php
similarity index 100%
rename from public/tasklog/show_tasklog.php
rename to public-old/tasklog/show_tasklog.php
diff --git a/public/tasklog/showtasklog.php b/public-old/tasklog/showtasklog.php
similarity index 100%
rename from public/tasklog/showtasklog.php
rename to public-old/tasklog/showtasklog.php
diff --git a/public/vmtpl.jconf b/public-old/vmtpl.jconf
similarity index 100%
rename from public/vmtpl.jconf
rename to public-old/vmtpl.jconf
diff --git a/public/vnc.html b/public-old/vnc.html
similarity index 100%
rename from public/vnc.html
rename to public-old/vnc.html
diff --git a/public/vpnet/index.inc b/public-old/vpnet/index.inc
similarity index 100%
rename from public/vpnet/index.inc
rename to public-old/vpnet/index.inc
diff --git a/public/vpnet/show_vpnet.php b/public-old/vpnet/show_vpnet.php
similarity index 100%
rename from public/vpnet/show_vpnet.php
rename to public-old/vpnet/show_vpnet.php
diff --git a/public/vpnet/vpnet_add.inc b/public-old/vpnet/vpnet_add.inc
similarity index 100%
rename from public/vpnet/vpnet_add.inc
rename to public-old/vpnet/vpnet_add.inc
diff --git a/public/xajax_core/plugin_layer/support/xajaxCallableObject.inc.php b/public-old/xajax_core/plugin_layer/support/xajaxCallableObject.inc.php
similarity index 100%
rename from public/xajax_core/plugin_layer/support/xajaxCallableObject.inc.php
rename to public-old/xajax_core/plugin_layer/support/xajaxCallableObject.inc.php
diff --git a/public/xajax_core/plugin_layer/support/xajaxEvent.inc.php b/public-old/xajax_core/plugin_layer/support/xajaxEvent.inc.php
similarity index 100%
rename from public/xajax_core/plugin_layer/support/xajaxEvent.inc.php
rename to public-old/xajax_core/plugin_layer/support/xajaxEvent.inc.php
diff --git a/public/xajax_core/plugin_layer/support/xajaxUserFunction.inc.php b/public-old/xajax_core/plugin_layer/support/xajaxUserFunction.inc.php
similarity index 100%
rename from public/xajax_core/plugin_layer/support/xajaxUserFunction.inc.php
rename to public-old/xajax_core/plugin_layer/support/xajaxUserFunction.inc.php
diff --git a/public/xajax_core/plugin_layer/xajaxCallableObjectPlugin.inc.php b/public-old/xajax_core/plugin_layer/xajaxCallableObjectPlugin.inc.php
similarity index 100%
rename from public/xajax_core/plugin_layer/xajaxCallableObjectPlugin.inc.php
rename to public-old/xajax_core/plugin_layer/xajaxCallableObjectPlugin.inc.php
diff --git a/public/xajax_core/plugin_layer/xajaxDefaultIncludePlugin.inc.php b/public-old/xajax_core/plugin_layer/xajaxDefaultIncludePlugin.inc.php
similarity index 100%
rename from public/xajax_core/plugin_layer/xajaxDefaultIncludePlugin.inc.php
rename to public-old/xajax_core/plugin_layer/xajaxDefaultIncludePlugin.inc.php
diff --git a/public/xajax_core/plugin_layer/xajaxEventPlugin.inc.php b/public-old/xajax_core/plugin_layer/xajaxEventPlugin.inc.php
similarity index 100%
rename from public/xajax_core/plugin_layer/xajaxEventPlugin.inc.php
rename to public-old/xajax_core/plugin_layer/xajaxEventPlugin.inc.php
diff --git a/public/xajax_core/plugin_layer/xajaxFunctionPlugin.inc.php b/public-old/xajax_core/plugin_layer/xajaxFunctionPlugin.inc.php
similarity index 100%
rename from public/xajax_core/plugin_layer/xajaxFunctionPlugin.inc.php
rename to public-old/xajax_core/plugin_layer/xajaxFunctionPlugin.inc.php
diff --git a/public/xajax_core/plugin_layer/xajaxScriptPlugin.inc.php b/public-old/xajax_core/plugin_layer/xajaxScriptPlugin.inc.php
similarity index 100%
rename from public/xajax_core/plugin_layer/xajaxScriptPlugin.inc.php
rename to public-old/xajax_core/plugin_layer/xajaxScriptPlugin.inc.php
diff --git a/public/xajax_core/xajax.inc.php b/public-old/xajax_core/xajax.inc.php
similarity index 100%
rename from public/xajax_core/xajax.inc.php
rename to public-old/xajax_core/xajax.inc.php
diff --git a/public/xajax_core/xajaxArgumentManager.inc.php b/public-old/xajax_core/xajaxArgumentManager.inc.php
similarity index 100%
rename from public/xajax_core/xajaxArgumentManager.inc.php
rename to public-old/xajax_core/xajaxArgumentManager.inc.php
diff --git a/public/xajax_core/xajaxCompress.inc.php b/public-old/xajax_core/xajaxCompress.inc.php
similarity index 100%
rename from public/xajax_core/xajaxCompress.inc.php
rename to public-old/xajax_core/xajaxCompress.inc.php
diff --git a/public/xajax_core/xajaxControl.inc.php b/public-old/xajax_core/xajaxControl.inc.php
similarity index 100%
rename from public/xajax_core/xajaxControl.inc.php
rename to public-old/xajax_core/xajaxControl.inc.php
diff --git a/public/xajax_core/xajaxLanguageManager.inc.php b/public-old/xajax_core/xajaxLanguageManager.inc.php
similarity index 100%
rename from public/xajax_core/xajaxLanguageManager.inc.php
rename to public-old/xajax_core/xajaxLanguageManager.inc.php
diff --git a/public/xajax_core/xajaxPlugin.inc.php b/public-old/xajax_core/xajaxPlugin.inc.php
similarity index 100%
rename from public/xajax_core/xajaxPlugin.inc.php
rename to public-old/xajax_core/xajaxPlugin.inc.php
diff --git a/public/xajax_core/xajaxPluginManager.inc.php b/public-old/xajax_core/xajaxPluginManager.inc.php
similarity index 100%
rename from public/xajax_core/xajaxPluginManager.inc.php
rename to public-old/xajax_core/xajaxPluginManager.inc.php
diff --git a/public/xajax_core/xajaxRequest.inc.php b/public-old/xajax_core/xajaxRequest.inc.php
similarity index 100%
rename from public/xajax_core/xajaxRequest.inc.php
rename to public-old/xajax_core/xajaxRequest.inc.php
diff --git a/public/xajax_core/xajaxResponse.inc.php b/public-old/xajax_core/xajaxResponse.inc.php
similarity index 100%
rename from public/xajax_core/xajaxResponse.inc.php
rename to public-old/xajax_core/xajaxResponse.inc.php
diff --git a/public/xajax_core/xajaxResponseManager.inc.php b/public-old/xajax_core/xajaxResponseManager.inc.php
similarity index 100%
rename from public/xajax_core/xajaxResponseManager.inc.php
rename to public-old/xajax_core/xajaxResponseManager.inc.php
diff --git a/public/xajax_core/xajax_lang_de.inc.php b/public-old/xajax_core/xajax_lang_de.inc.php
similarity index 100%
rename from public/xajax_core/xajax_lang_de.inc.php
rename to public-old/xajax_core/xajax_lang_de.inc.php
diff --git a/public/xajax_core/xajax_lang_nl.inc.php b/public-old/xajax_core/xajax_lang_nl.inc.php
similarity index 100%
rename from public/xajax_core/xajax_lang_nl.inc.php
rename to public-old/xajax_core/xajax_lang_nl.inc.php
diff --git a/public/xajax_js/JSON.js b/public-old/xajax_js/JSON.js
similarity index 100%
rename from public/xajax_js/JSON.js
rename to public-old/xajax_js/JSON.js
diff --git a/public/xajax_js/JSON_uncompressed.js b/public-old/xajax_js/JSON_uncompressed.js
similarity index 100%
rename from public/xajax_js/JSON_uncompressed.js
rename to public-old/xajax_js/JSON_uncompressed.js
diff --git a/public/xajax_js/xajax_core.js b/public-old/xajax_js/xajax_core.js
similarity index 100%
rename from public/xajax_js/xajax_core.js
rename to public-old/xajax_js/xajax_core.js
diff --git a/public/xajax_js/xajax_core_uncompressed.js b/public-old/xajax_js/xajax_core_uncompressed.js
similarity index 100%
rename from public/xajax_js/xajax_core_uncompressed.js
rename to public-old/xajax_js/xajax_core_uncompressed.js
diff --git a/public/xajax_js/xajax_debug.js b/public-old/xajax_js/xajax_debug.js
similarity index 100%
rename from public/xajax_js/xajax_debug.js
rename to public-old/xajax_js/xajax_debug.js
diff --git a/public/xajax_js/xajax_debug_uncompressed.js b/public-old/xajax_js/xajax_debug_uncompressed.js
similarity index 100%
rename from public/xajax_js/xajax_debug_uncompressed.js
rename to public-old/xajax_js/xajax_debug_uncompressed.js
diff --git a/public/xajax_js/xajax_lang_bg.js b/public-old/xajax_js/xajax_lang_bg.js
similarity index 100%
rename from public/xajax_js/xajax_lang_bg.js
rename to public-old/xajax_js/xajax_lang_bg.js
diff --git a/public/xajax_js/xajax_lang_bg_uncompressed.js b/public-old/xajax_js/xajax_lang_bg_uncompressed.js
similarity index 100%
rename from public/xajax_js/xajax_lang_bg_uncompressed.js
rename to public-old/xajax_js/xajax_lang_bg_uncompressed.js
diff --git a/public/xajax_js/xajax_lang_de.js b/public-old/xajax_js/xajax_lang_de.js
similarity index 100%
rename from public/xajax_js/xajax_lang_de.js
rename to public-old/xajax_js/xajax_lang_de.js
diff --git a/public/xajax_js/xajax_lang_de_uncompressed.js b/public-old/xajax_js/xajax_lang_de_uncompressed.js
similarity index 100%
rename from public/xajax_js/xajax_lang_de_uncompressed.js
rename to public-old/xajax_js/xajax_lang_de_uncompressed.js
diff --git a/public/xajax_js/xajax_lang_es.js b/public-old/xajax_js/xajax_lang_es.js
similarity index 100%
rename from public/xajax_js/xajax_lang_es.js
rename to public-old/xajax_js/xajax_lang_es.js
diff --git a/public/xajax_js/xajax_lang_es_uncompressed.js b/public-old/xajax_js/xajax_lang_es_uncompressed.js
similarity index 100%
rename from public/xajax_js/xajax_lang_es_uncompressed.js
rename to public-old/xajax_js/xajax_lang_es_uncompressed.js
diff --git a/public/xajax_js/xajax_lang_fr.js b/public-old/xajax_js/xajax_lang_fr.js
similarity index 100%
rename from public/xajax_js/xajax_lang_fr.js
rename to public-old/xajax_js/xajax_lang_fr.js
diff --git a/public/xajax_js/xajax_lang_fr_uncompressed.js b/public-old/xajax_js/xajax_lang_fr_uncompressed.js
similarity index 100%
rename from public/xajax_js/xajax_lang_fr_uncompressed.js
rename to public-old/xajax_js/xajax_lang_fr_uncompressed.js
diff --git a/public/xajax_js/xajax_lang_nl.js b/public-old/xajax_js/xajax_lang_nl.js
similarity index 100%
rename from public/xajax_js/xajax_lang_nl.js
rename to public-old/xajax_js/xajax_lang_nl.js
diff --git a/public/xajax_js/xajax_lang_nl_uncompressed.js b/public-old/xajax_js/xajax_lang_nl_uncompressed.js
similarity index 100%
rename from public/xajax_js/xajax_lang_nl_uncompressed.js
rename to public-old/xajax_js/xajax_lang_nl_uncompressed.js
diff --git a/public/xajax_js/xajax_lang_tr.js b/public-old/xajax_js/xajax_lang_tr.js
similarity index 100%
rename from public/xajax_js/xajax_lang_tr.js
rename to public-old/xajax_js/xajax_lang_tr.js
diff --git a/public/xajax_js/xajax_lang_tr_uncompressed.js b/public-old/xajax_js/xajax_lang_tr_uncompressed.js
similarity index 100%
rename from public/xajax_js/xajax_lang_tr_uncompressed.js
rename to public-old/xajax_js/xajax_lang_tr_uncompressed.js
diff --git a/public/xajax_js/xajax_verbose.js b/public-old/xajax_js/xajax_verbose.js
similarity index 100%
rename from public/xajax_js/xajax_verbose.js
rename to public-old/xajax_js/xajax_verbose.js
diff --git a/public/xajax_js/xajax_verbose_uncompressed.js b/public-old/xajax_js/xajax_verbose_uncompressed.js
similarity index 100%
rename from public/xajax_js/xajax_verbose_uncompressed.js
rename to public-old/xajax_js/xajax_verbose_uncompressed.js
diff --git a/public/xajax_plugins/response/comet/comet.inc.php b/public-old/xajax_plugins/response/comet/comet.inc.php
similarity index 100%
rename from public/xajax_plugins/response/comet/comet.inc.php
rename to public-old/xajax_plugins/response/comet/comet.inc.php
diff --git a/public/xajax_plugins/response/comet/comet.js b/public-old/xajax_plugins/response/comet/comet.js
similarity index 100%
rename from public/xajax_plugins/response/comet/comet.js
rename to public-old/xajax_plugins/response/comet/comet.js
diff --git a/public/xajax_plugins/response/comet/comet_uncompressed.js b/public-old/xajax_plugins/response/comet/comet_uncompressed.js
similarity index 100%
rename from public/xajax_plugins/response/comet/comet_uncompressed.js
rename to public-old/xajax_plugins/response/comet/comet_uncompressed.js
diff --git a/public/xajax_plugins/response/comet/comet_uncompressed.js.bak b/public-old/xajax_plugins/response/comet/comet_uncompressed.js.bak
similarity index 100%
rename from public/xajax_plugins/response/comet/comet_uncompressed.js.bak
rename to public-old/xajax_plugins/response/comet/comet_uncompressed.js.bak
diff --git a/public/xajax_plugins/response/comet/xajaxCometFunction.inc.php b/public-old/xajax_plugins/response/comet/xajaxCometFunction.inc.php
similarity index 100%
rename from public/xajax_plugins/response/comet/xajaxCometFunction.inc.php
rename to public-old/xajax_plugins/response/comet/xajaxCometFunction.inc.php
diff --git a/public/xajax_plugins/response/googleMap.inc.php b/public-old/xajax_plugins/response/googleMap.inc.php
similarity index 100%
rename from public/xajax_plugins/response/googleMap.inc.php
rename to public-old/xajax_plugins/response/googleMap.inc.php
diff --git a/public/xajax_plugins/response/swfupload/swfupload.inc.php b/public-old/xajax_plugins/response/swfupload/swfupload.inc.php
similarity index 100%
rename from public/xajax_plugins/response/swfupload/swfupload.inc.php
rename to public-old/xajax_plugins/response/swfupload/swfupload.inc.php
diff --git a/public/xajax_plugins/response/swfupload/swfupload.js b/public-old/xajax_plugins/response/swfupload/swfupload.js
similarity index 100%
rename from public/xajax_plugins/response/swfupload/swfupload.js
rename to public-old/xajax_plugins/response/swfupload/swfupload.js
diff --git a/public/xajax_plugins/response/swfupload/swfupload.swf b/public-old/xajax_plugins/response/swfupload/swfupload.swf
similarity index 100%
rename from public/xajax_plugins/response/swfupload/swfupload.swf
rename to public-old/xajax_plugins/response/swfupload/swfupload.swf
diff --git a/public/xajax_plugins/response/swfupload/swfupload.xajax.js b/public-old/xajax_plugins/response/swfupload/swfupload.xajax.js
similarity index 100%
rename from public/xajax_plugins/response/swfupload/swfupload.xajax.js
rename to public-old/xajax_plugins/response/swfupload/swfupload.xajax.js
diff --git a/public/xajax_plugins/response/swfupload/swfupload.xajax_uncompressed.js b/public-old/xajax_plugins/response/swfupload/swfupload.xajax_uncompressed.js
similarity index 100%
rename from public/xajax_plugins/response/swfupload/swfupload.xajax_uncompressed.js
rename to public-old/xajax_plugins/response/swfupload/swfupload.xajax_uncompressed.js
diff --git a/public/xajax_plugins/response/swfupload/swfupload_uncompressed.js b/public-old/xajax_plugins/response/swfupload/swfupload_uncompressed.js
similarity index 100%
rename from public/xajax_plugins/response/swfupload/swfupload_uncompressed.js
rename to public-old/xajax_plugins/response/swfupload/swfupload_uncompressed.js
diff --git a/public/xajax_plugins/response/tableUpdater.inc.php b/public-old/xajax_plugins/response/tableUpdater.inc.php
similarity index 100%
rename from public/xajax_plugins/response/tableUpdater.inc.php
rename to public-old/xajax_plugins/response/tableUpdater.inc.php
diff --git a/public/xajax_plugins/response/tableUpdater.js b/public-old/xajax_plugins/response/tableUpdater.js
similarity index 100%
rename from public/xajax_plugins/response/tableUpdater.js
rename to public-old/xajax_plugins/response/tableUpdater.js
diff --git a/public/css/cool.txt b/public/css/cool.txt
new file mode 100644
index 00000000..1092dbd2
--- /dev/null
+++ b/public/css/cool.txt
@@ -0,0 +1,8 @@
+Всякие интересные фишки
+
+Экран загрузки с прелоадером и раздвигающимися шторками:
+https://ihatetomatoes.net/create-custom-preloading-screen/
+
+Прелоадер
+http://jsfiddle.net/s9oax2pp/
+
diff --git a/public/css/reset.css b/public/css/reset.css
new file mode 100644
index 00000000..d2fea78e
--- /dev/null
+++ b/public/css/reset.css
@@ -0,0 +1,45 @@
+/* Eric Meyer's CSS Reset */
+html, body, div, span, applet, object, iframe,
+h1, h2, h3, h4, h5, h6, p, blockquote, pre,
+a, abbr, acronym, address, big, cite, code,
+del, dfn, em, img, ins, kbd, q, s, samp,
+small, strike, strong, sub, sup, tt, var,
+b, u, i, center,
+dl, dt, dd, ol, ul, li,
+fieldset, form, label, legend,
+table, caption, tbody, tfoot, thead, tr, th, td,
+article, aside, canvas, details, embed,
+figure, figcaption, footer, header, hgroup,
+menu, nav, output, ruby, section, summary,
+time, mark, audio, video {
+ margin: 0;
+ padding: 0;
+ border: 0;
+ font-size: 100%;
+ font: inherit;
+ vertical-align: baseline;
+}
+/* HTML5 display-role reset for older browsers */
+article, aside, details, figcaption, figure,
+footer, header, hgroup, menu, nav, section {
+ display: block;
+}
+body {
+ line-height: 1;
+}
+ol, ul {
+ list-style: none;
+}
+blockquote, q {
+ quotes: none;
+}
+blockquote:before, blockquote:after,
+q:before, q:after {
+ content: '';
+ content: none;
+}
+table {
+ border-collapse: collapse;
+ border-spacing: 0;
+}
+/* End of Eric Meyer's CSS Reset */
\ No newline at end of file
diff --git a/public/css/styles.css b/public/css/styles.css
new file mode 100644
index 00000000..b2856c1b
--- /dev/null
+++ b/public/css/styles.css
@@ -0,0 +1,251 @@
+/* http://www.drivermarket.net/2015/12/nokia-lumia-640-lte-usb-driver-for.html */
+html {
+ background:#ddd;
+ margin:0;
+ height:100%;
+ overflow:hidden;
+}
+body {
+ border:1px solid #222;
+ border-width:0 1px;
+ background:white;
+ margin:0 20px;
+ height:100%;
+ -webkit-box-shadow: 0px 0px 20px 5px rgba(0,0,0,0.65);
+ -moz-box-shadow: 0px 0px 20px 5px rgba(0,0,0,0.65);
+ box-shadow: 0px 0px 20px 5px rgba(0,0,0,0.65);
+
+}
+
+#content {
+ padding:10px 20px;
+}
+
+ul {margin:0;padding:0;}
+#nav {
+ background-image: url(/images/main-menu-bg.png);
+ background-repeat: repeat-x;
+ height: 52px;
+ border-bottom: 5px solid #0F83A0;
+ padding-left: 10px;
+}
+#nav ul {
+ height: 52px;
+ margin: 0;
+ padding: 0;
+ font-style: normal;
+ font-weight: normal;
+ font-size: 11px;
+ line-height: normal;
+ font-family: Verdana, Geneva, sans-serif;
+}
+#nav li {
+ position: relative;
+ display: inline-block;
+ float: left;
+ border: 1px solid #222;
+ border-width: 0 0 0 1px;
+ height: 47px;
+ margin-top: 5px;
+}
+#nav li.mhome {
+ border: 0;
+ margin-top: 0;
+ height: 52px;
+ width: 55px;
+}
+#nav li.mhome a {
+ height: 52px;
+ border-left: 0 none;
+ text-indent: -9999px;
+ background-color: #0F83A0;
+ background-image: url(/images/home.png);
+ background-repeat: no-repeat;
+ background-position: 50% 9px;
+}
+#nav li a {
+ display: block;
+ line-height: 45px;
+ height: 45px;
+ text-decoration: none;
+ color: #D5D5D5;
+ padding: 0 15px;
+ text-shadow: 0 1px 1px black;
+ border-left: 1px solid #383838;
+ text-transform:uppercase;
+}
+#nav #title {
+ float:right;
+ color:white;
+ margin:18px 18px 0 0;
+ font-size:120%;
+ font-style:italic;
+}
+
+ul.menu {
+ list-style-type:none;
+ margin:10px;
+ font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
+ font-size:90%;
+}
+ul.menu li {
+ padding:5px 10px;
+}
+ul.menu a {
+ color: #337ab7;
+ text-decoration: none;
+}
+ul.menu a.sel {
+ color:black;
+}
+
+#content a {
+ color:#337ab7;
+ text-decoration:underline;
+}
+#content a:hover {
+ text-decoration:none;
+}
+
+div#menu {
+ position: relative;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ width: 250px; /* Width of navigation frame */
+ height: 100%;
+ overflow: hidden; /* Disables scrollbars on the navigation frame. To enable scrollbars, change "hidden" to "scroll" */
+ background: #eee;
+ margin-bottom:-100px;
+}
+
+div#content {
+ position: absolute;
+ top: 74px;
+ left: 270px; /* Set this to the width of the navigation frame */
+ right: 23px;
+ bottom: 0;
+ overflow: auto;
+}
+
+
+
+.log {
+ position:absolute;
+ left:102%;
+ top:10%;
+ width:20%;
+ height:500px;
+ background:rgba(200,200,200,.8);
+ font-size:x-small;
+}
+
+
+
+/* Таблицы: http://html5book.ru/examples/demo-tables.html */
+
+table {
+ font-family: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif;
+ font-size: 14px;
+ border-collapse: collapse;
+ text-align: center;
+ margin:4px 0;
+}
+table.error tbody {
+ display:none;
+}
+table.error tbody.error {
+ display:table-row-group !important;
+}
+table.error tbody.error td {
+ color:black;
+ background-color:#ffe9e9 !important;
+ text-align:center;
+}
+table tbody.error {
+ display:none;
+}
+.tfill thead td, .tfill td:first-child {
+ background:#337ab7;
+ color:white;
+ padding:10px 20px;
+}
+thead td {
+ font-weight:bold;
+}
+.tfill thead td, td {
+ border-style: solid;
+ border-width: 0 1px 1px 0;
+ border-color: white;
+}
+.tfill td {
+ background: #D8E6F3;
+}
+thead td:first-child, td:first-child {
+ text-align: left;
+}
+
+.tsimple thead td {
+ border-bottom:3px solid #337ab7;
+ padding:10px 20px;
+}
+.tsimple tbody td {
+ padding:10px 20px;
+ border-bottom:1px solid #f0f0f0;
+}
+.tsimple tbody tr:nth-child(2n){
+ background-color: #fafafa;
+}
+.tsimple td.txtleft {
+ text-align:left;
+}
+.tsimple td.txtright {
+ text-align:right;
+}
+.tsimple .nth0 + .nth1 td, .tsimple .nth1 + .nth0 td {
+ border-top:2px solid #e0e0e0;
+}
+
+
+td.ops span.icon-cnt {
+ color:gray;
+ position:relative;
+ text-align:center;
+ text-shadow:2px 2px 2px rgba(0,0,0,0.2);
+
+/* display:inline-block;
+ background-color:#f7f7f7;
+ background-image:linear-gradient(top, #f7f7f7, #e7e7e7);
+ width:32px;
+ height:32px;
+ line-height:32px;
+ border-radius:50%;
+ box-shadow:0px 3px 8px #aaa, inset 0px 2px 3px #fff;
+ */}
+td.ops span.icon-cnt:hover .icon-play {
+ color:black;
+ cursor:pointer;
+}
+
+/* td.ops span.icon-play:before {
+ margin-left:.2em;
+}
+ */
+
+#content p {
+ margin:20px 0;
+}
+
+#content ul {
+ margin:10px 0 10px 20px;
+ list-style-type:disc;
+}
+#content ul li {
+ padding:4px 0;
+}
+
+#content h1 {
+ font-size:120%;
+ color:#337ab7;
+ margin:10px 0 20px 0;
+}
diff --git a/public/font/animation.css b/public/font/animation.css
new file mode 100644
index 00000000..ac5a9562
--- /dev/null
+++ b/public/font/animation.css
@@ -0,0 +1,85 @@
+/*
+ Animation example, for spinners
+*/
+.animate-spin {
+ -moz-animation: spin 2s infinite linear;
+ -o-animation: spin 2s infinite linear;
+ -webkit-animation: spin 2s infinite linear;
+ animation: spin 2s infinite linear;
+ display: inline-block;
+}
+@-moz-keyframes spin {
+ 0% {
+ -moz-transform: rotate(0deg);
+ -o-transform: rotate(0deg);
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+
+ 100% {
+ -moz-transform: rotate(359deg);
+ -o-transform: rotate(359deg);
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
+ }
+}
+@-webkit-keyframes spin {
+ 0% {
+ -moz-transform: rotate(0deg);
+ -o-transform: rotate(0deg);
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+
+ 100% {
+ -moz-transform: rotate(359deg);
+ -o-transform: rotate(359deg);
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
+ }
+}
+@-o-keyframes spin {
+ 0% {
+ -moz-transform: rotate(0deg);
+ -o-transform: rotate(0deg);
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+
+ 100% {
+ -moz-transform: rotate(359deg);
+ -o-transform: rotate(359deg);
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
+ }
+}
+@-ms-keyframes spin {
+ 0% {
+ -moz-transform: rotate(0deg);
+ -o-transform: rotate(0deg);
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+
+ 100% {
+ -moz-transform: rotate(359deg);
+ -o-transform: rotate(359deg);
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
+ }
+}
+@keyframes spin {
+ 0% {
+ -moz-transform: rotate(0deg);
+ -o-transform: rotate(0deg);
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+
+ 100% {
+ -moz-transform: rotate(359deg);
+ -o-transform: rotate(359deg);
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
+ }
+}
diff --git a/public/font/clonos-codes.css b/public/font/clonos-codes.css
new file mode 100644
index 00000000..364123c1
--- /dev/null
+++ b/public/font/clonos-codes.css
@@ -0,0 +1,58 @@
+
+.icon-plus:before { content: '\e800'; } /* '' */
+.icon-help-circled:before { content: '\e801'; } /* '' */
+.icon-info-circled:before { content: '\e802'; } /* '' */
+.icon-lock:before { content: '\e803'; } /* '' */
+.icon-lock-open:before { content: '\e804'; } /* '' */
+.icon-ok:before { content: '\e805'; } /* '' */
+.icon-forward:before { content: '\e806'; } /* '' */
+.icon-download:before { content: '\e807'; } /* '' */
+.icon-upload:before { content: '\e808'; } /* '' */
+.icon-comment:before { content: '\e809'; } /* '' */
+.icon-chat:before { content: '\e80a'; } /* '' */
+.icon-attention:before { content: '\e80b'; } /* '' */
+.icon-attention-circled:before { content: '\e80c'; } /* '' */
+.icon-location:before { content: '\e80d'; } /* '' */
+.icon-cog:before { content: '\e80e'; } /* '' */
+.icon-emo-cry:before { content: '\e80f'; } /* '' */
+.icon-cog-alt:before { content: '\e810'; } /* '' */
+.icon-wrench:before { content: '\e811'; } /* '' */
+.icon-play:before { content: '\e812'; } /* '' */
+.icon-pause:before { content: '\e813'; } /* '' */
+.icon-stop:before { content: '\e814'; } /* '' */
+.icon-home:before { content: '\e815'; } /* '' */
+.icon-off:before { content: '\e816'; } /* '' */
+.icon-user:before { content: '\e817'; } /* '' */
+.icon-users:before { content: '\e818'; } /* '' */
+.icon-pencil:before { content: '\e819'; } /* '' */
+.icon-floppy:before { content: '\e81a'; } /* '' */
+.icon-arrows-cw:before { content: '\e81b'; } /* '' */
+.icon-camera-alt:before { content: '\e81c'; } /* '' */
+.icon-gift:before { content: '\e81d'; } /* '' */
+.icon-retweet:before { content: '\e81e'; } /* '' */
+.icon-edit:before { content: '\e81f'; } /* '' */
+.icon-cancel:before { content: '\e820'; } /* '' */
+.icon-minus:before { content: '\e821'; } /* '' */
+.icon-export:before { content: '\e822'; } /* '' */
+.icon-spin4:before { content: '\e834'; } /* '' */
+.icon-spin6:before { content: '\e839'; } /* '' */
+.icon-docs:before { content: '\f0c5'; } /* '' */
+.icon-download-cloud:before { content: '\f0ed'; } /* '' */
+.icon-upload-cloud:before { content: '\f0ee'; } /* '' */
+.icon-spinner:before { content: '\f110'; } /* '' */
+.icon-reply:before { content: '\f112'; } /* '' */
+.icon-reply-all:before { content: '\f122'; } /* '' */
+.icon-info:before { content: '\f129'; } /* '' */
+.icon-pencil-squared:before { content: '\f14b'; } /* '' */
+.icon-export-alt:before { content: '\f14d'; } /* '' */
+.icon-youtube:before { content: '\f167'; } /* '' */
+.icon-dropbox:before { content: '\f16b'; } /* '' */
+.icon-cubes:before { content: '\f1b3'; } /* '' */
+.icon-database:before { content: '\f1c0'; } /* '' */
+.icon-trash:before { content: '\f1f8'; } /* '' */
+.icon-user-plus:before { content: '\f234'; } /* '' */
+.icon-user-times:before { content: '\f235'; } /* '' */
+.icon-expeditedssl:before { content: '\f23e'; } /* '' */
+.icon-shopping-basket:before { content: '\f291'; } /* '' */
+.icon-user-circle-o:before { content: '\f2be'; } /* '' */
+.icon-id-card-o:before { content: '\f2c3'; } /* '' */
\ No newline at end of file
diff --git a/public/font/clonos-embedded.css b/public/font/clonos-embedded.css
new file mode 100644
index 00000000..f5ae8bad
--- /dev/null
+++ b/public/font/clonos-embedded.css
@@ -0,0 +1,111 @@
+@font-face {
+ font-family: 'clonos';
+ src: url('../font/clonos.eot?10494417');
+ src: url('../font/clonos.eot?10494417#iefix') format('embedded-opentype'),
+ url('../font/clonos.svg?10494417#clonos') format('svg');
+ font-weight: normal;
+ font-style: normal;
+}
+@font-face {
+ font-family: 'clonos';
+ src: url('data:application/octet-stream;base64,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') format('woff'),
+ url('data:application/octet-stream;base64,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') format('truetype');
+}
+/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
+/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
+/*
+@media screen and (-webkit-min-device-pixel-ratio:0) {
+ @font-face {
+ font-family: 'clonos';
+ src: url('../font/clonos.svg?10494417#clonos') format('svg');
+ }
+}
+*/
+
+ [class^="icon-"]:before, [class*=" icon-"]:before {
+ font-family: "clonos";
+ font-style: normal;
+ font-weight: normal;
+ speak: none;
+
+ display: inline-block;
+ text-decoration: inherit;
+ width: 1em;
+ margin-right: .2em;
+ text-align: center;
+ /* opacity: .8; */
+
+ /* For safety - reset parent styles, that can break glyph codes*/
+ font-variant: normal;
+ text-transform: none;
+
+ /* fix buttons height, for twitter bootstrap */
+ line-height: 1em;
+
+ /* Animation center compensation - margins should be symmetric */
+ /* remove if not needed */
+ margin-left: .2em;
+
+ /* you can be more comfortable with increased icons size */
+ /* font-size: 120%; */
+
+ /* Uncomment for 3D effect */
+ /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
+}
+.icon-plus:before { content: '\e800'; } /* '' */
+.icon-help-circled:before { content: '\e801'; } /* '' */
+.icon-info-circled:before { content: '\e802'; } /* '' */
+.icon-lock:before { content: '\e803'; } /* '' */
+.icon-lock-open:before { content: '\e804'; } /* '' */
+.icon-ok:before { content: '\e805'; } /* '' */
+.icon-forward:before { content: '\e806'; } /* '' */
+.icon-download:before { content: '\e807'; } /* '' */
+.icon-upload:before { content: '\e808'; } /* '' */
+.icon-comment:before { content: '\e809'; } /* '' */
+.icon-chat:before { content: '\e80a'; } /* '' */
+.icon-attention:before { content: '\e80b'; } /* '' */
+.icon-attention-circled:before { content: '\e80c'; } /* '' */
+.icon-location:before { content: '\e80d'; } /* '' */
+.icon-cog:before { content: '\e80e'; } /* '' */
+.icon-emo-cry:before { content: '\e80f'; } /* '' */
+.icon-cog-alt:before { content: '\e810'; } /* '' */
+.icon-wrench:before { content: '\e811'; } /* '' */
+.icon-play:before { content: '\e812'; } /* '' */
+.icon-pause:before { content: '\e813'; } /* '' */
+.icon-stop:before { content: '\e814'; } /* '' */
+.icon-home:before { content: '\e815'; } /* '' */
+.icon-off:before { content: '\e816'; } /* '' */
+.icon-user:before { content: '\e817'; } /* '' */
+.icon-users:before { content: '\e818'; } /* '' */
+.icon-pencil:before { content: '\e819'; } /* '' */
+.icon-floppy:before { content: '\e81a'; } /* '' */
+.icon-arrows-cw:before { content: '\e81b'; } /* '' */
+.icon-camera-alt:before { content: '\e81c'; } /* '' */
+.icon-gift:before { content: '\e81d'; } /* '' */
+.icon-retweet:before { content: '\e81e'; } /* '' */
+.icon-edit:before { content: '\e81f'; } /* '' */
+.icon-cancel:before { content: '\e820'; } /* '' */
+.icon-minus:before { content: '\e821'; } /* '' */
+.icon-export:before { content: '\e822'; } /* '' */
+.icon-spin4:before { content: '\e834'; } /* '' */
+.icon-spin6:before { content: '\e839'; } /* '' */
+.icon-docs:before { content: '\f0c5'; } /* '' */
+.icon-download-cloud:before { content: '\f0ed'; } /* '' */
+.icon-upload-cloud:before { content: '\f0ee'; } /* '' */
+.icon-spinner:before { content: '\f110'; } /* '' */
+.icon-reply:before { content: '\f112'; } /* '' */
+.icon-reply-all:before { content: '\f122'; } /* '' */
+.icon-info:before { content: '\f129'; } /* '' */
+.icon-pencil-squared:before { content: '\f14b'; } /* '' */
+.icon-export-alt:before { content: '\f14d'; } /* '' */
+.icon-youtube:before { content: '\f167'; } /* '' */
+.icon-dropbox:before { content: '\f16b'; } /* '' */
+.icon-cubes:before { content: '\f1b3'; } /* '' */
+.icon-database:before { content: '\f1c0'; } /* '' */
+.icon-trash:before { content: '\f1f8'; } /* '' */
+.icon-user-plus:before { content: '\f234'; } /* '' */
+.icon-user-times:before { content: '\f235'; } /* '' */
+.icon-expeditedssl:before { content: '\f23e'; } /* '' */
+.icon-shopping-basket:before { content: '\f291'; } /* '' */
+.icon-user-circle-o:before { content: '\f2be'; } /* '' */
+.icon-id-card-o:before { content: '\f2c3'; } /* '' */
\ No newline at end of file
diff --git a/public/font/clonos-ie7-codes.css b/public/font/clonos-ie7-codes.css
new file mode 100644
index 00000000..686810c0
--- /dev/null
+++ b/public/font/clonos-ie7-codes.css
@@ -0,0 +1,58 @@
+
+.icon-plus { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-help-circled { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-info-circled { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-lock { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-lock-open { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-ok { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-forward { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-download { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-upload { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-comment { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-chat { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-attention { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-attention-circled { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-location { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-cog { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-emo-cry { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-cog-alt { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-wrench { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-play { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-pause { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-stop { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-home { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-off { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-user { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-users { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-pencil { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-floppy { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-arrows-cw { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-camera-alt { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-gift { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-retweet { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-edit { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-cancel { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-minus { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-export { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-spin4 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-spin6 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-docs { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-download-cloud { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-upload-cloud { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-spinner { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-reply { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-reply-all { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-info { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-pencil-squared { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-export-alt { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-youtube { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-dropbox { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-cubes { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-database { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-trash { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-user-plus { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-user-times { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-expeditedssl { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-shopping-basket { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-user-circle-o { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-id-card-o { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
\ No newline at end of file
diff --git a/public/font/clonos-ie7.css b/public/font/clonos-ie7.css
new file mode 100644
index 00000000..64deada3
--- /dev/null
+++ b/public/font/clonos-ie7.css
@@ -0,0 +1,69 @@
+[class^="icon-"], [class*=" icon-"] {
+ font-family: 'clonos';
+ font-style: normal;
+ font-weight: normal;
+
+ /* fix buttons height */
+ line-height: 1em;
+
+ /* you can be more comfortable with increased icons size */
+ /* font-size: 120%; */
+}
+
+.icon-plus { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-help-circled { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-info-circled { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-lock { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-lock-open { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-ok { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-forward { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-download { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-upload { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-comment { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-chat { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-attention { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-attention-circled { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-location { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-cog { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-emo-cry { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-cog-alt { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-wrench { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-play { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-pause { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-stop { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-home { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-off { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-user { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-users { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-pencil { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-floppy { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-arrows-cw { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-camera-alt { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-gift { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-retweet { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-edit { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-cancel { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-minus { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-export { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-spin4 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-spin6 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-docs { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-download-cloud { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-upload-cloud { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-spinner { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-reply { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-reply-all { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-info { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-pencil-squared { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-export-alt { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-youtube { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-dropbox { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-cubes { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-database { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-trash { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-user-plus { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-user-times { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-expeditedssl { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-shopping-basket { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-user-circle-o { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-id-card-o { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
\ No newline at end of file
diff --git a/public/font/clonos.css b/public/font/clonos.css
new file mode 100644
index 00000000..e871bbca
--- /dev/null
+++ b/public/font/clonos.css
@@ -0,0 +1,114 @@
+@font-face {
+ font-family: 'clonos';
+ src: url('/font/clonos.eot?85054221');
+ src: url('/font/clonos.eot?85054221#iefix') format('embedded-opentype'),
+ url('/font/clonos.woff2?85054221') format('woff2'),
+ url('/font/clonos.woff?85054221') format('woff'),
+ url('/font/clonos.ttf?85054221') format('truetype'),
+ url('/font/clonos.svg?85054221#clonos') format('svg');
+ font-weight: normal;
+ font-style: normal;
+}
+/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
+/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
+/*
+@media screen and (-webkit-min-device-pixel-ratio:0) {
+ @font-face {
+ font-family: 'clonos';
+ src: url('../font/clonos.svg?85054221#clonos') format('svg');
+ }
+}
+*/
+
+ [class^="icon-"]:before, [class*=" icon-"]:before {
+ font-family: "clonos";
+ font-style: normal;
+ font-weight: normal;
+ speak: none;
+
+ display: inline-block;
+ text-decoration: inherit;
+ width: 1em;
+ margin-right: .2em;
+ text-align: center;
+ /* opacity: .8; */
+
+ /* For safety - reset parent styles, that can break glyph codes*/
+ font-variant: normal;
+ text-transform: none;
+
+ /* fix buttons height, for twitter bootstrap */
+ line-height: 1em;
+
+ /* Animation center compensation - margins should be symmetric */
+ /* remove if not needed */
+ margin-left: .2em;
+
+ /* you can be more comfortable with increased icons size */
+ /* font-size: 120%; */
+
+ /* Font smoothing. That was taken from TWBS */
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+
+ /* Uncomment for 3D effect */
+ /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
+}
+
+.icon-plus:before { content: '\e800'; } /* '' */
+.icon-help-circled:before { content: '\e801'; } /* '' */
+.icon-info-circled:before { content: '\e802'; } /* '' */
+.icon-lock:before { content: '\e803'; } /* '' */
+.icon-lock-open:before { content: '\e804'; } /* '' */
+.icon-ok:before { content: '\e805'; } /* '' */
+.icon-forward:before { content: '\e806'; } /* '' */
+.icon-download:before { content: '\e807'; } /* '' */
+.icon-upload:before { content: '\e808'; } /* '' */
+.icon-comment:before { content: '\e809'; } /* '' */
+.icon-chat:before { content: '\e80a'; } /* '' */
+.icon-attention:before { content: '\e80b'; } /* '' */
+.icon-attention-circled:before { content: '\e80c'; } /* '' */
+.icon-location:before { content: '\e80d'; } /* '' */
+.icon-cog:before { content: '\e80e'; } /* '' */
+.icon-emo-cry:before { content: '\e80f'; } /* '' */
+.icon-cog-alt:before { content: '\e810'; } /* '' */
+.icon-wrench:before { content: '\e811'; } /* '' */
+.icon-play:before { content: '\e812'; } /* '' */
+.icon-pause:before { content: '\e813'; } /* '' */
+.icon-stop:before { content: '\e814'; } /* '' */
+.icon-home:before { content: '\e815'; } /* '' */
+.icon-off:before { content: '\e816'; } /* '' */
+.icon-user:before { content: '\e817'; } /* '' */
+.icon-users:before { content: '\e818'; } /* '' */
+.icon-pencil:before { content: '\e819'; } /* '' */
+.icon-floppy:before { content: '\e81a'; } /* '' */
+.icon-arrows-cw:before { content: '\e81b'; } /* '' */
+.icon-camera-alt:before { content: '\e81c'; } /* '' */
+.icon-gift:before { content: '\e81d'; } /* '' */
+.icon-retweet:before { content: '\e81e'; } /* '' */
+.icon-edit:before { content: '\e81f'; } /* '' */
+.icon-cancel:before { content: '\e820'; } /* '' */
+.icon-minus:before { content: '\e821'; } /* '' */
+.icon-export:before { content: '\e822'; } /* '' */
+.icon-spin4:before { content: '\e834'; } /* '' */
+.icon-spin6:before { content: '\e839'; } /* '' */
+.icon-docs:before { content: '\f0c5'; } /* '' */
+.icon-download-cloud:before { content: '\f0ed'; } /* '' */
+.icon-upload-cloud:before { content: '\f0ee'; } /* '' */
+.icon-spinner:before { content: '\f110'; } /* '' */
+.icon-reply:before { content: '\f112'; } /* '' */
+.icon-reply-all:before { content: '\f122'; } /* '' */
+.icon-info:before { content: '\f129'; } /* '' */
+.icon-pencil-squared:before { content: '\f14b'; } /* '' */
+.icon-export-alt:before { content: '\f14d'; } /* '' */
+.icon-youtube:before { content: '\f167'; } /* '' */
+.icon-dropbox:before { content: '\f16b'; } /* '' */
+.icon-cubes:before { content: '\f1b3'; } /* '' */
+.icon-database:before { content: '\f1c0'; } /* '' */
+.icon-trash:before { content: '\f1f8'; } /* '' */
+.icon-user-plus:before { content: '\f234'; } /* '' */
+.icon-user-times:before { content: '\f235'; } /* '' */
+.icon-expeditedssl:before { content: '\f23e'; } /* '' */
+.icon-shopping-basket:before { content: '\f291'; } /* '' */
+.icon-user-circle-o:before { content: '\f2be'; } /* '' */
+.icon-id-card-o:before { content: '\f2c3'; } /* '' */
\ No newline at end of file
diff --git a/public/font/clonos.eot b/public/font/clonos.eot
new file mode 100644
index 00000000..30e6c2fa
Binary files /dev/null and b/public/font/clonos.eot differ
diff --git a/public/font/clonos.svg b/public/font/clonos.svg
new file mode 100644
index 00000000..a64eac19
--- /dev/null
+++ b/public/font/clonos.svg
@@ -0,0 +1,124 @@
+
+
+
\ No newline at end of file
diff --git a/public/font/clonos.ttf b/public/font/clonos.ttf
new file mode 100644
index 00000000..f82838e2
Binary files /dev/null and b/public/font/clonos.ttf differ
diff --git a/public/font/clonos.woff b/public/font/clonos.woff
new file mode 100644
index 00000000..a14c975a
Binary files /dev/null and b/public/font/clonos.woff differ
diff --git a/public/font/clonos.woff2 b/public/font/clonos.woff2
new file mode 100644
index 00000000..f0760e86
Binary files /dev/null and b/public/font/clonos.woff2 differ
diff --git a/public/images/home.png b/public/images/home.png
new file mode 100644
index 00000000..09565091
Binary files /dev/null and b/public/images/home.png differ
diff --git a/public/images/main-menu-bg.png b/public/images/main-menu-bg.png
new file mode 100644
index 00000000..95f87917
Binary files /dev/null and b/public/images/main-menu-bg.png differ
diff --git a/public/index.php b/public/index.php
index 6c7838af..89583e65 100644
--- a/public/index.php
+++ b/public/index.php
@@ -1,28 +1,95 @@
-printJavascript();
-?>
-
-
-
+
+menu->first_key;
+ header('Location: /'.$key.'/',true);
+ exit;
+}
+
+error_reporting(E_ALL);
+?>
+
+
+ ClonOS — menu->title; ?>
+
+
+
+clonos.jsonLoad=true;'; ?>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
+ [HTTP_USER_AGENT] => Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36
+ [REMOTE_ADDR] => 79.173.124.136
+ [DOCUMENT_ROOT] => /usr/home/web/cp/clonos/public
+ [DOCUMENT_URI] => /index.php
+ [REQUEST_URI] => /overview/
+ [REQUEST_METHOD] => GET
+ [SCRIPT_FILENAME] => /usr/home/web/cp/clonos/public/index.php
+ [WORKDIR] => /usr/jails
+ [APPLICATION_ENV] => production
+*/
+if(file_exists($file_name)) include($file_name); else
+{
+ echo '
'.get_translate('File not found').'!
';
+}
+?>
+
+
+
+
\ No newline at end of file
diff --git a/public/js/jquery.js b/public/js/jquery.js
new file mode 100644
index 00000000..5c82cc00
--- /dev/null
+++ b/public/js/jquery.js
@@ -0,0 +1,4 @@
+/*! jQuery v2.2.4 | (c) jQuery Foundation | jquery.org/license */
+!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=a.document,e=c.slice,f=c.concat,g=c.push,h=c.indexOf,i={},j=i.toString,k=i.hasOwnProperty,l={},m="2.2.4",n=function(a,b){return new n.fn.init(a,b)},o=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,p=/^-ms-/,q=/-([\da-z])/gi,r=function(a,b){return b.toUpperCase()};n.fn=n.prototype={jquery:m,constructor:n,selector:"",length:0,toArray:function(){return e.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:e.call(this)},pushStack:function(a){var b=n.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a){return n.each(this,a)},map:function(a){return this.pushStack(n.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(e.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()},push:g,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){var b=a&&a.toString();return!n.isArray(a)&&b-parseFloat(b)+1>=0},isPlainObject:function(a){var b;if("object"!==n.type(a)||a.nodeType||n.isWindow(a))return!1;if(a.constructor&&!k.call(a,"constructor")&&!k.call(a.constructor.prototype||{},"isPrototypeOf"))return!1;for(b in a);return void 0===b||k.call(a,b)},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?i[j.call(a)]||"object":typeof a},globalEval:function(a){var b,c=eval;a=n.trim(a),a&&(1===a.indexOf("use strict")?(b=d.createElement("script"),b.text=a,d.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){var c,d=0;if(s(a)){for(c=a.length;c>d;d++)if(b.call(a[d],d,a[d])===!1)break}else for(d in a)if(b.call(a[d],d,a[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):g.call(c,a)),c},inArray:function(a,b,c){return null==b?-1:h.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,e,g=0,h=[];if(s(a))for(d=a.length;d>g;g++)e=b(a[g],g,c),null!=e&&h.push(e);else for(g in a)e=b(a[g],g,c),null!=e&&h.push(e);return f.apply([],h)},guid:1,proxy:function(a,b){var c,d,f;return"string"==typeof b&&(c=a[b],b=a,a=c),n.isFunction(a)?(d=e.call(arguments,2),f=function(){return a.apply(b||this,d.concat(e.call(arguments)))},f.guid=a.guid=a.guid||n.guid++,f):void 0},now:Date.now,support:l}),"function"==typeof Symbol&&(n.fn[Symbol.iterator]=c[Symbol.iterator]),n.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(a,b){i["[object "+b+"]"]=b.toLowerCase()});function s(a){var b=!!a&&"length"in a&&a.length,c=n.type(a);return"function"===c||n.isWindow(a)?!1:"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=ga(),z=ga(),A=ga(),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="\\["+L+"*("+M+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+M+"))|)"+L+"*\\]",O=":("+M+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+N+")*)|.*)\\)|)",P=new RegExp(L+"+","g"),Q=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),R=new RegExp("^"+L+"*,"+L+"*"),S=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),T=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),U=new RegExp(O),V=new RegExp("^"+M+"$"),W={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),TAG:new RegExp("^("+M+"|[*])"),ATTR:new RegExp("^"+N),PSEUDO:new RegExp("^"+O),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")},X=/^(?:input|select|textarea|button)$/i,Y=/^h\d$/i,Z=/^[^{]+\{\s*\[native \w/,$=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,_=/[+~]/,aa=/'|\\/g,ba=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),ca=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)},da=function(){m()};try{H.apply(E=I.call(v.childNodes),v.childNodes),E[v.childNodes.length].nodeType}catch(ea){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 fa(a,b,d,e){var f,h,j,k,l,o,r,s,w=b&&b.ownerDocument,x=b?b.nodeType:9;if(d=d||[],"string"!=typeof a||!a||1!==x&&9!==x&&11!==x)return d;if(!e&&((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,p)){if(11!==x&&(o=$.exec(a)))if(f=o[1]){if(9===x){if(!(j=b.getElementById(f)))return d;if(j.id===f)return d.push(j),d}else if(w&&(j=w.getElementById(f))&&t(b,j)&&j.id===f)return d.push(j),d}else{if(o[2])return H.apply(d,b.getElementsByTagName(a)),d;if((f=o[3])&&c.getElementsByClassName&&b.getElementsByClassName)return H.apply(d,b.getElementsByClassName(f)),d}if(c.qsa&&!A[a+" "]&&(!q||!q.test(a))){if(1!==x)w=b,s=a;else if("object"!==b.nodeName.toLowerCase()){(k=b.getAttribute("id"))?k=k.replace(aa,"\\$&"):b.setAttribute("id",k=u),r=g(a),h=r.length,l=V.test(k)?"#"+k:"[id='"+k+"']";while(h--)r[h]=l+" "+qa(r[h]);s=r.join(","),w=_.test(a)&&oa(b.parentNode)||b}if(s)try{return H.apply(d,w.querySelectorAll(s)),d}catch(y){}finally{k===u&&b.removeAttribute("id")}}}return i(a.replace(Q,"$1"),b,d,e)}function ga(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ha(a){return a[u]=!0,a}function ia(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function ja(a,b){var c=a.split("|"),e=c.length;while(e--)d.attrHandle[c[e]]=b}function ka(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 la(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function ma(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function na(a){return ha(function(b){return b=+b,ha(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 oa(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=fa.support={},f=fa.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=fa.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=n.documentElement,p=!f(n),(e=n.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",da,!1):e.attachEvent&&e.attachEvent("onunload",da)),c.attributes=ia(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ia(function(a){return a.appendChild(n.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=Z.test(n.getElementsByClassName),c.getById=ia(function(a){return o.appendChild(a).id=u,!n.getElementsByName||!n.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]:[]}},d.filter.ID=function(a){var b=a.replace(ba,ca);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(ba,ca);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"undefined"!=typeof b.getElementsByClassName&&p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=Z.test(n.querySelectorAll))&&(ia(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(".#.+[+~]")}),ia(function(a){var b=n.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=Z.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ia(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",O)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=Z.test(o.compareDocumentPosition),t=b||Z.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===n||a.ownerDocument===v&&t(v,a)?-1:b===n||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,g=[a],h=[b];if(!e||!f)return a===n?-1:b===n?1:e?-1:f?1:k?J(k,a)-J(k,b):0;if(e===f)return ka(a,b);c=a;while(c=c.parentNode)g.unshift(c);c=b;while(c=c.parentNode)h.unshift(c);while(g[d]===h[d])d++;return d?ka(g[d],h[d]):g[d]===v?-1:h[d]===v?1:0},n):n},fa.matches=function(a,b){return fa(a,null,null,b)},fa.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(T,"='$1']"),c.matchesSelector&&p&&!A[b+" "]&&(!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 fa(b,n,null,[a]).length>0},fa.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},fa.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},fa.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},fa.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=fa.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=fa.selectors={cacheLength:50,createPseudo:ha,match:W,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(ba,ca),a[3]=(a[3]||a[4]||a[5]||"").replace(ba,ca),"~="===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]||fa.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]&&fa.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return W.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&U.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(ba,ca).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=fa.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(P," ")+" ").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,t=!1;if(q){if(f){while(p){m=b;while(m=m[p])if(h?m.nodeName.toLowerCase()===r:1===m.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){m=q,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n&&j[2],m=n&&q.childNodes[n];while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if(1===m.nodeType&&++t&&m===b){k[a]=[w,n,t];break}}else if(s&&(m=b,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n),t===!1)while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if((h?m.nodeName.toLowerCase()===r:1===m.nodeType)&&++t&&(s&&(l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),k[a]=[w,t]),m===b))break;return t-=e,t===d||t%d===0&&t/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||fa.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ha(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:ha(function(a){var b=[],c=[],d=h(a.replace(Q,"$1"));return d[u]?ha(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:ha(function(a){return function(b){return fa(a,b).length>0}}),contains:ha(function(a){return a=a.replace(ba,ca),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ha(function(a){return V.test(a||"")||fa.error("unsupported lang: "+a),a=a.replace(ba,ca).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 Y.test(a.nodeName)},input:function(a){return X.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:na(function(){return[0]}),last:na(function(a,b){return[b-1]}),eq:na(function(a,b,c){return[0>c?c+b:c]}),even:na(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:na(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:na(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:na(function(a,b,c){for(var d=0>c?c+b:c;++db;b++)d+=a[b].value;return d}function ra(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,k=[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(j=b[u]||(b[u]={}),i=j[b.uniqueID]||(j[b.uniqueID]={}),(h=i[d])&&h[0]===w&&h[1]===f)return k[2]=h[2];if(i[d]=k,k[2]=a(b,c,g))return!0}}}function sa(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 ta(a,b,c){for(var d=0,e=b.length;e>d;d++)fa(a,b[d],c);return c}function ua(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 va(a,b,c,d,e,f){return d&&!d[u]&&(d=va(d)),e&&!e[u]&&(e=va(e,f)),ha(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||ta(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:ua(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=ua(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=ua(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):H.apply(g,r)})}function wa(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=ra(function(a){return a===b},h,!0),l=ra(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=[ra(sa(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 va(i>1&&sa(m),i>1&&qa(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(Q,"$1"),c,e>i&&wa(a.slice(i,e)),f>e&&wa(a=a.slice(e)),f>e&&qa(a))}m.push(c)}return sa(m)}function xa(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,o,q,r=0,s="0",t=f&&[],u=[],v=j,x=f||e&&d.find.TAG("*",k),y=w+=null==v?1:Math.random()||.1,z=x.length;for(k&&(j=g===n||g||k);s!==z&&null!=(l=x[s]);s++){if(e&&l){o=0,g||l.ownerDocument===n||(m(l),h=!p);while(q=a[o++])if(q(l,g||n,h)){i.push(l);break}k&&(w=y)}c&&((l=!q&&l)&&r--,f&&t.push(l))}if(r+=s,c&&s!==r){o=0;while(q=b[o++])q(t,u,g,h);if(f){if(r>0)while(s--)t[s]||u[s]||(u[s]=F.call(i));u=ua(u)}H.apply(i,u),k&&!f&&u.length>0&&r+b.length>1&&fa.uniqueSort(i)}return k&&(w=y,j=v),t};return c?ha(f):f}return h=fa.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=wa(b[c]),f[u]?d.push(f):e.push(f);f=A(a,xa(e,d)),f.selector=a}return f},i=fa.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(ba,ca),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=W.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(ba,ca),_.test(j[0].type)&&oa(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&qa(j),!a)return H.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,!b||_.test(a)&&oa(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ia(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),ia(function(a){return a.innerHTML="","#"===a.firstChild.getAttribute("href")})||ja("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ia(function(a){return a.innerHTML="",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||ja("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),ia(function(a){return null==a.getAttribute("disabled")})||ja(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}),fa}(a);n.find=t,n.expr=t.selectors,n.expr[":"]=n.expr.pseudos,n.uniqueSort=n.unique=t.uniqueSort,n.text=t.getText,n.isXMLDoc=t.isXML,n.contains=t.contains;var u=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},v=function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c},w=n.expr.match.needsContext,x=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,y=/^.[^:#\[\.,]*$/;function z(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(y.test(b))return n.filter(b,a,c);b=n.filter(b,a)}return n.grep(a,function(a){return h.call(b,a)>-1!==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(z(this,a||[],!1))},not:function(a){return this.pushStack(z(this,a||[],!0))},is:function(a){return!!z(this,"string"==typeof a&&w.test(a)?n(a):a||[],!1).length}});var A,B=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,C=n.fn.init=function(a,b,c){var e,f;if(!a)return this;if(c=c||A,"string"==typeof a){if(e="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:B.exec(a),!e||!e[1]&&b)return!b||b.jquery?(b||c).find(a):this.constructor(b).find(a);if(e[1]){if(b=b instanceof n?b[0]:b,n.merge(this,n.parseHTML(e[1],b&&b.nodeType?b.ownerDocument||b:d,!0)),x.test(e[1])&&n.isPlainObject(b))for(e in b)n.isFunction(this[e])?this[e](b[e]):this.attr(e,b[e]);return this}return f=d.getElementById(e[2]),f&&f.parentNode&&(this.length=1,this[0]=f),this.context=d,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):n.isFunction(a)?void 0!==c.ready?c.ready(a):a(n):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),n.makeArray(a,this))};C.prototype=n.fn,A=n(d);var D=/^(?:parents|prev(?:Until|All))/,E={children:!0,contents:!0,next:!0,prev:!0};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=w.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.uniqueSort(f):f)},index:function(a){return a?"string"==typeof a?h.call(n(a),this[0]):h.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.uniqueSort(n.merge(this.get(),n(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function F(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 u(a,"parentNode")},parentsUntil:function(a,b,c){return u(a,"parentNode",c)},next:function(a){return F(a,"nextSibling")},prev:function(a){return F(a,"previousSibling")},nextAll:function(a){return u(a,"nextSibling")},prevAll:function(a){return u(a,"previousSibling")},nextUntil:function(a,b,c){return u(a,"nextSibling",c)},prevUntil:function(a,b,c){return u(a,"previousSibling",c)},siblings:function(a){return v((a.parentNode||{}).firstChild,a)},children:function(a){return v(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&&(E[a]||n.uniqueSort(e),D.test(a)&&e.reverse()),this.pushStack(e)}});var G=/\S+/g;function H(a){var b={};return n.each(a.match(G)||[],function(a,c){b[c]=!0}),b}n.Callbacks=function(a){a="string"==typeof a?H(a):n.extend({},a);var b,c,d,e,f=[],g=[],h=-1,i=function(){for(e=a.once,d=b=!0;g.length;h=-1){c=g.shift();while(++h-1)f.splice(c,1),h>=c&&h--}),this},has:function(a){return a?n.inArray(a,f)>-1:f.length>0},empty:function(){return f&&(f=[]),this},disable:function(){return e=g=[],f=c="",this},disabled:function(){return!f},lock:function(){return e=g=[],c||(f=c=""),this},locked:function(){return!!e},fireWith:function(a,c){return e||(c=c||[],c=[a,c.slice?c.slice():c],g.push(c),b||i()),this},fire:function(){return j.fireWith(this,arguments),this},fired:function(){return!!d}};return j},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().progress(c.notify).done(c.resolve).fail(c.reject):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=e.call(arguments),d=c.length,f=1!==d||a&&n.isFunction(a.promise)?d:0,g=1===f?a:n.Deferred(),h=function(a,b,c){return function(d){b[a]=this,c[a]=arguments.length>1?e.call(arguments):d,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(d>1)for(i=new Array(d),j=new Array(d),k=new Array(d);d>b;b++)c[b]&&n.isFunction(c[b].promise)?c[b].promise().progress(h(b,j,i)).done(h(b,k,c)).fail(g.reject):--f;return f||g.resolveWith(k,c),g.promise()}});var I;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||(I.resolveWith(d,[n]),n.fn.triggerHandler&&(n(d).triggerHandler("ready"),n(d).off("ready"))))}});function J(){d.removeEventListener("DOMContentLoaded",J),a.removeEventListener("load",J),n.ready()}n.ready.promise=function(b){return I||(I=n.Deferred(),"complete"===d.readyState||"loading"!==d.readyState&&!d.documentElement.doScroll?a.setTimeout(n.ready):(d.addEventListener("DOMContentLoaded",J),a.addEventListener("load",J))),I.promise(b)},n.ready.promise();var K=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)K(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},L=function(a){return 1===a.nodeType||9===a.nodeType||!+a.nodeType};function M(){this.expando=n.expando+M.uid++}M.uid=1,M.prototype={register:function(a,b){var c=b||{};return a.nodeType?a[this.expando]=c:Object.defineProperty(a,this.expando,{value:c,writable:!0,configurable:!0}),a[this.expando]},cache:function(a){if(!L(a))return{};var b=a[this.expando];return b||(b={},L(a)&&(a.nodeType?a[this.expando]=b:Object.defineProperty(a,this.expando,{value:b,configurable:!0}))),b},set:function(a,b,c){var d,e=this.cache(a);if("string"==typeof b)e[b]=c;else for(d in b)e[d]=b[d];return e},get:function(a,b){return void 0===b?this.cache(a):a[this.expando]&&a[this.expando][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=a[this.expando];if(void 0!==f){if(void 0===b)this.register(a);else{n.isArray(b)?d=b.concat(b.map(n.camelCase)):(e=n.camelCase(b),b in f?d=[b,e]:(d=e,d=d in f?[d]:d.match(G)||[])),c=d.length;while(c--)delete f[d[c]]}(void 0===b||n.isEmptyObject(f))&&(a.nodeType?a[this.expando]=void 0:delete a[this.expando])}},hasData:function(a){var b=a[this.expando];return void 0!==b&&!n.isEmptyObject(b)}};var N=new M,O=new M,P=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Q=/[A-Z]/g;function R(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(Q,"-$&").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:P.test(c)?n.parseJSON(c):c;
+}catch(e){}O.set(a,b,c)}else c=void 0;return c}n.extend({hasData:function(a){return O.hasData(a)||N.hasData(a)},data:function(a,b,c){return O.access(a,b,c)},removeData:function(a,b){O.remove(a,b)},_data:function(a,b,c){return N.access(a,b,c)},_removeData:function(a,b){N.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=O.get(f),1===f.nodeType&&!N.get(f,"hasDataAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=n.camelCase(d.slice(5)),R(f,d,e[d])));N.set(f,"hasDataAttrs",!0)}return e}return"object"==typeof a?this.each(function(){O.set(this,a)}):K(this,function(b){var c,d;if(f&&void 0===b){if(c=O.get(f,a)||O.get(f,a.replace(Q,"-$&").toLowerCase()),void 0!==c)return c;if(d=n.camelCase(a),c=O.get(f,d),void 0!==c)return c;if(c=R(f,d,void 0),void 0!==c)return c}else d=n.camelCase(a),this.each(function(){var c=O.get(this,d);O.set(this,d,b),a.indexOf("-")>-1&&void 0!==c&&O.set(this,a,b)})},null,b,arguments.length>1,null,!0)},removeData:function(a){return this.each(function(){O.remove(this,a)})}}),n.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=N.get(a,b),c&&(!d||n.isArray(c)?d=N.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 N.get(a,c)||N.access(a,c,{empty:n.Callbacks("once memory").add(function(){N.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.length",""],thead:[1,""],col:[2,""],tr:[2,""],td:[3,""],_default:[0,"",""]};$.optgroup=$.option,$.tbody=$.tfoot=$.colgroup=$.caption=$.thead,$.th=$.td;function _(a,b){var c="undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName(b||"*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll(b||"*"):[];return void 0===b||b&&n.nodeName(a,b)?n.merge([a],c):c}function aa(a,b){for(var c=0,d=a.length;d>c;c++)N.set(a[c],"globalEval",!b||N.get(b[c],"globalEval"))}var ba=/<|?\w+;/;function ca(a,b,c,d,e){for(var f,g,h,i,j,k,l=b.createDocumentFragment(),m=[],o=0,p=a.length;p>o;o++)if(f=a[o],f||0===f)if("object"===n.type(f))n.merge(m,f.nodeType?[f]:f);else if(ba.test(f)){g=g||l.appendChild(b.createElement("div")),h=(Y.exec(f)||["",""])[1].toLowerCase(),i=$[h]||$._default,g.innerHTML=i[1]+n.htmlPrefilter(f)+i[2],k=i[0];while(k--)g=g.lastChild;n.merge(m,g.childNodes),g=l.firstChild,g.textContent=""}else m.push(b.createTextNode(f));l.textContent="",o=0;while(f=m[o++])if(d&&n.inArray(f,d)>-1)e&&e.push(f);else if(j=n.contains(f.ownerDocument,f),g=_(l.appendChild(f),"script"),j&&aa(g),c){k=0;while(f=g[k++])Z.test(f.type||"")&&c.push(f)}return l}!function(){var a=d.createDocumentFragment(),b=a.appendChild(d.createElement("div")),c=d.createElement("input");c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),b.appendChild(c),l.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,b.innerHTML="",l.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var da=/^key/,ea=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,fa=/^([^.]*)(?:\.(.+)|)/;function ga(){return!0}function ha(){return!1}function ia(){try{return d.activeElement}catch(a){}}function ja(a,b,c,d,e,f){var g,h;if("object"==typeof b){"string"!=typeof c&&(d=d||c,c=void 0);for(h in b)ja(a,h,c,d,b[h],f);return a}if(null==d&&null==e?(e=c,d=c=void 0):null==e&&("string"==typeof c?(e=d,d=void 0):(e=d,d=c,c=void 0)),e===!1)e=ha;else if(!e)return a;return 1===f&&(g=e,e=function(a){return n().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=n.guid++)),a.each(function(){n.event.add(this,b,e,d,c)})}n.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=N.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"undefined"!=typeof n&&n.event.triggered!==b.type?n.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(G)||[""],j=b.length;while(j--)h=fa.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)),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=N.hasData(a)&&N.get(a);if(r&&(i=r.events)){b=(b||"").match(G)||[""],j=b.length;while(j--)if(h=fa.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)&&N.remove(a,"handle events")}},dispatch:function(a){a=n.event.fix(a);var b,c,d,f,g,h=[],i=e.call(arguments),j=(N.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.rnamespace&&!a.rnamespace.test(g.namespace)||(a.handleObj=g,a.data=g.data,d=((n.event.special[g.origType]||{}).handle||g.handler).apply(f.elem,i),void 0!==d&&(a.result=d)===!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&&("click"!==a.type||isNaN(a.button)||a.button<1))for(;i!==this;i=i.parentNode||this)if(1===i.nodeType&&(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)>-1:n.find(e,this,null,[i]).length),d[e]&&d.push(f);d.length&&g.push({elem:i,handlers:d})}return h]*)\/>/gi,la=/