Merge branch 'master' of github.com:serghey-rodin/vesta
403
web/static-templates/backups.html
Normal file
|
@ -0,0 +1,403 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
|
||||
|
||||
<head>
|
||||
<title>Vesta | Backups</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta http-equiv="imagetoolbar" content="false" />
|
||||
|
||||
<link rel="stylesheet" media="all" type="text/css" href="css/reset2.css" />
|
||||
<link rel="stylesheet" media="all" type="text/css" href="css/vesta.css" />
|
||||
|
||||
<!--[if lt IE 8]>
|
||||
<link rel="stylesheet" type="text/css" href="css/ie.css" />
|
||||
<![endif]-->
|
||||
|
||||
<script type="text/javascript" src="js/custom-form-elements.js"></script>
|
||||
<script type="text/javascript" src="js/jquery-1.4.2.js"></script>
|
||||
<script type="text/javascript" src="js/backups-control.js"></script>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="page">
|
||||
<div class="outer">
|
||||
<div id="header">
|
||||
<div class="logo-box">
|
||||
<h1 class="logo"><a href="#">Vesta panel <span> </span></a></h1>
|
||||
</div>
|
||||
<ul class="settings">
|
||||
<li class="settings-item">
|
||||
<span class="logged-as">Fabricius Euphranor von Neoptolemos</span>
|
||||
<a class="item-title" href="#">Profile</a>
|
||||
</li>
|
||||
<li class="settings-item"><a class="item-title" href="#">Settings</a></li>
|
||||
<li class="settings-item"><a class="item-title" href="#">Exit</a></li>
|
||||
</ul>
|
||||
<ul class="extra-services">
|
||||
<li class="service-item active">
|
||||
<span class="item-title">Backups</span>
|
||||
<i class="item-devider"></i>
|
||||
</li>
|
||||
<li class="service-item">
|
||||
<span class="item-title">Stats</span>
|
||||
<i class="item-devider"></i>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="primary-nav-box">
|
||||
<ul class="primary-nav cc">
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="users-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Users</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">386 users</span>
|
||||
<span class="def">7 blocked</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="domains-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Web</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">580 domains</span>
|
||||
<span class="def">22 out of mem</span>
|
||||
<span class="def">3 waiting</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="mail-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Mail</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">320 domains</span>
|
||||
<span class="def">1209 mailboxes</span>
|
||||
<span class="def">25 full</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="db-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">DB</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">7 db</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section active">
|
||||
<div class="section-inner">
|
||||
<dl class="dns-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Dns</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">289 records</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="dnstpl-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">IP</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">7 templates</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section last-section">
|
||||
<div class="section-inner">
|
||||
<dl class="cron-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Cron</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">15 records</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="console">
|
||||
<div class="b-console">
|
||||
<div class="b-console-wrap">
|
||||
<form class="b-console-form cc" action="#" method="post">
|
||||
<fieldset>
|
||||
<input class="b-console-field" type="text" value="/"/>
|
||||
<input class="b-console-btn" type="submit" value="Go" />
|
||||
</fieldset>
|
||||
</form>
|
||||
</div>
|
||||
<div class="b-console-results"></div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- actions toolbar -->
|
||||
<div id="actions-toolbar" class="cc">
|
||||
<a class="add-btn" href="#"><i class="add-btn-icon"> </i>create backup</a>
|
||||
</div><!-- // actions toolbar -->
|
||||
<div id="content">
|
||||
<div class="content-inner">
|
||||
<div class="backups-list">
|
||||
<!-- row 1 -->
|
||||
<div class="row first-row backup-details-row">
|
||||
<div class="row-meta">
|
||||
<div class="ownership">
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">owner:</span>
|
||||
<span class="prop-value">vestavestavesta</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<span class="prop-box entry-created">
|
||||
<span class="backup-date">
|
||||
<span class="backup-day">15 Oct 2011</span>
|
||||
<span class="backup-time">00:31</span>
|
||||
</span>
|
||||
<span class="backup-weekday">Friday</span>
|
||||
</span>
|
||||
<span class="prop-box generation-time">
|
||||
<span class="prop-title">Generation time:</span>
|
||||
<span class="prop-value">78 min</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<span class="backup-size">
|
||||
<span class="backup-size-inner">159 Gb</span>
|
||||
</span>
|
||||
<a class="backup-url" href="#">download</a>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<div class="backup-actions">
|
||||
<a class="backup-actions-url restore-url" href="#">restore</a>
|
||||
<a class="backup-actions-url detailed-restore-url" href="#">
|
||||
<span class="detailed-restore-title">detailed</span>
|
||||
<span class="detailed-restore-ext">restore</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 1 -->
|
||||
|
||||
<!-- row 2 -->
|
||||
<div class="row backup-details-row">
|
||||
<div class="row-meta">
|
||||
<div class="ownership">
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">owner:</span>
|
||||
<span class="prop-value">vestavestavesta</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<span class="prop-box entry-created">
|
||||
<span class="backup-date">
|
||||
<span class="backup-day">14 Oct 2011</span>
|
||||
<span class="backup-time">00:17</span>
|
||||
</span>
|
||||
<span class="backup-weekday">Thursday</span>
|
||||
</span>
|
||||
<span class="prop-box generation-time">
|
||||
<span class="prop-title">Generation time:</span>
|
||||
<span class="prop-value">12 min</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<span class="backup-size">
|
||||
<span class="backup-size-inner">14 Gb</span>
|
||||
</span>
|
||||
<a class="backup-url" href="#">download</a>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<div class="backup-actions">
|
||||
<a class="backup-actions-url restore-url" href="#">restore</a>
|
||||
<a class="backup-actions-url detailed-restore-url" href="#">
|
||||
<span class="detailed-restore-title">detailed</span>
|
||||
<span class="detailed-restore-ext">restore</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 2 -->
|
||||
|
||||
<!-- row 3 -->
|
||||
<div class="row backup-details-row">
|
||||
<div class="row-meta">
|
||||
<div class="ownership">
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">owner:</span>
|
||||
<span class="prop-value">vestavestavesta</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<span class="prop-box entry-created">
|
||||
<span class="backup-date">
|
||||
<span class="backup-day">12 Oct 2011</span>
|
||||
<span class="backup-time">00:23</span>
|
||||
</span>
|
||||
<span class="backup-weekday">Sunday</span>
|
||||
</span>
|
||||
<span class="prop-box generation-time">
|
||||
<span class="prop-title">Generation time:</span>
|
||||
<span class="prop-value">47 min</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<span class="backup-size">
|
||||
<span class="backup-size-inner">637 Gb</span>
|
||||
</span>
|
||||
<a class="backup-url" href="#">download</a>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<div class="backup-actions">
|
||||
<a class="backup-actions-url restore-url" href="#">restore</a>
|
||||
<a class="backup-actions-url detailed-restore-url" href="#">
|
||||
<span class="detailed-restore-title">detailed</span>
|
||||
<span class="detailed-restore-ext">restore</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 3 -->
|
||||
|
||||
|
||||
<!-- form -->
|
||||
<div class="b-new-entry b-new-detailed-restore" style="margin-bottom:50px;">
|
||||
<div class="entry-header">Detailed restore</div>
|
||||
<div class="form-row cc">
|
||||
|
||||
<ul class="backup-tree">
|
||||
<li class="backup-tree-item unchecked">
|
||||
<span class="node-item expanded">ceres</span>
|
||||
<ul class="backup-sections sub-tree">
|
||||
<li class="backup-tree-item unchecked">
|
||||
<span class="node-item expanded">web</span>
|
||||
<ul class="sub-tree">
|
||||
<li class="backup-tree-item">
|
||||
<span class="node-item">readingwriting.com</span>
|
||||
</li>
|
||||
<li class="backup-tree-item checked">
|
||||
<span class="node-item">writing.com</span>
|
||||
</li>
|
||||
<li class="backup-tree-item checked">
|
||||
<span class="node-item checked">singing.com</span>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="backup-tree-item checked">
|
||||
<span class="node-item">db</span>
|
||||
</li>
|
||||
<li class="backup-tree-item checked">
|
||||
<span class="node-item">dns</span>
|
||||
</li>
|
||||
<li class="backup-tree-item checked">
|
||||
<span class="node-item">mail</span>
|
||||
</li>
|
||||
<li class="backup-tree-item checked">
|
||||
<span class="node-item">cron</span>
|
||||
</li>
|
||||
<li class="backup-tree-item checked">
|
||||
<span class="node-item">ip</span>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
<div class="form-row buttons-row cc">
|
||||
<input class="add-entry-btn" type="submit" value="restore" />
|
||||
<span class="cancel-btn">Cancel</span>
|
||||
<span class="delete-btn">Delete</span>
|
||||
</div>
|
||||
</div><!-- // form -->
|
||||
|
||||
<!-- row 3 -->
|
||||
<div class="row backup-details-row backup-details-row_highlighted">
|
||||
<div class="notes-wrap">
|
||||
<span class="restore-ico">Restore process</span> has been added to queue. It could take several hours.
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="ownership">
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">owner:</span>
|
||||
<span class="prop-value">vestavestavesta</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<span class="prop-box entry-created">
|
||||
<span class="backup-date">
|
||||
<span class="backup-day">12 Oct 2011</span>
|
||||
<span class="backup-time">00:23</span>
|
||||
</span>
|
||||
<span class="backup-weekday">Sunday</span>
|
||||
</span>
|
||||
<span class="prop-box generation-time">
|
||||
<span class="prop-title">Generation time:</span>
|
||||
<span class="prop-value">47 min</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<span class="backup-size">
|
||||
<span class="backup-size-inner">637 Gb</span>
|
||||
</span>
|
||||
<a class="backup-url" href="#">download</a>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<div class="backup-actions">
|
||||
<a class="backup-actions-url restore-url" href="#">restore</a>
|
||||
<a class="backup-actions-url detailed-restore-url" href="#">
|
||||
<span class="detailed-restore-title">detailed</span>
|
||||
<span class="detailed-restore-ext">restore</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 3 -->
|
||||
|
||||
</div><!-- // .backups-list -->
|
||||
</div>
|
||||
</div><!-- // #content -->
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
466
web/static-templates/cron.html
Normal file
|
@ -0,0 +1,466 @@
|
|||
<!doctype html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<title>Vesta | Cron</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta http-equiv="imagetoolbar" content="false" />
|
||||
|
||||
<link rel="stylesheet" media="all" type="text/css" href="css/reset2.css" />
|
||||
<link rel="stylesheet" media="all" type="text/css" href="css/vesta.css" />
|
||||
|
||||
<!--[if lt IE 8]>
|
||||
<link rel="stylesheet" type="text/css" href="css/ie.css" />
|
||||
<![endif]-->
|
||||
|
||||
<script type="text/javascript" src="js/custom-form-elements.js"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="page">
|
||||
<div class="outer">
|
||||
<div id="header">
|
||||
<div class="logo-box">
|
||||
<h1 class="logo"><a href="#">Vesta panel <span> </span></a></h1>
|
||||
</div>
|
||||
<ul class="settings">
|
||||
<li class="settings-item">
|
||||
<span class="logged-as">Fabricius Euphranor von Neoptolemos</span>
|
||||
<a class="item-title" href="#">Profile</a>
|
||||
</li>
|
||||
<li class="settings-item"><a class="item-title" href="#">Settings</a></li>
|
||||
<li class="logout"><a class="item-title" href="#"><span class="item-title-inner">Exit</span></a></li>
|
||||
</ul>
|
||||
<ul class="extra-services">
|
||||
<li class="service-item active">
|
||||
<span class="item-title">Backups</span>
|
||||
<i class="item-devider"></i>
|
||||
</li>
|
||||
<li class="service-item">
|
||||
<span class="item-title">Stats</span>
|
||||
<i class="item-devider"></i>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="primary-nav-box">
|
||||
<ul class="primary-nav cc">
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="users-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Users</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">386 users</span>
|
||||
<span class="def">7 blocked</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="domains-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Web Domain</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">580 domains</span>
|
||||
<span class="def">22 out of mem</span>
|
||||
<span class="def">3 waiting</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="mail-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Mail</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">320 domains</span>
|
||||
<span class="def">1209 mailboxes</span>
|
||||
<span class="def">25 full</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="db-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">DB</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">7 db</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="dns-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Dns</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">289 records</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="dnstpl-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">IP</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">7 templates</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section active last-section">
|
||||
<div class="section-inner">
|
||||
<dl class="cron-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Cron</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">15 records</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="console">
|
||||
<div class="b-console">
|
||||
<div class="b-console-wrap">
|
||||
<form class="b-console-form cc" action="#" method="post">
|
||||
<fieldset>
|
||||
<input class="b-console-field" type="text" value="/"/>
|
||||
<input class="b-console-btn" type="submit" value="Go" />
|
||||
</fieldset>
|
||||
</form>
|
||||
<!-- div class="b-console-statuses">
|
||||
<div class="b-console-status cc">
|
||||
<p class="b-console-status-message">domain <b>google.com</b> have been added <br />
|
||||
Cтиль менеджмента, на первый взгляд, методически оправдывает культурный побочный PR-эффект, осознавая социальную ответственность бизнеса. Исходя из структуры пирамиды Маслоу, рекламное сообщество экономит product placement, невзирая на действия конкурентов. Узнавание бренда слабо транслирует имидж, оптимизируя бюджеты.
|
||||
</p>
|
||||
<span class="b-console-status-action">cancel</span>
|
||||
<i class="b-console-status-arrow"> </i>
|
||||
</div>
|
||||
</div -->
|
||||
</div>
|
||||
<div class="b-console-results"></div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- actions toolbar -->
|
||||
<div id="actions-toolbar" class="cc">
|
||||
<a class="add-btn" href="#"><i class="add-btn-icon"> </i>add cron record</a>
|
||||
|
||||
<div class="row-filters cc">
|
||||
<div class="b-row-selector">
|
||||
<div class="checkbox-selector cc">
|
||||
<input class="styled" type="checkbox" value="" />
|
||||
<span class="selector-title">385 Selected</span>
|
||||
</div>
|
||||
<div class="context-actions">
|
||||
<div class="b-cust-sel b-cust-sel_inactive">
|
||||
<span class="title">Action</span>
|
||||
<div class="cust-sel-arrow"><i> </i></div>
|
||||
<div class="cust-sel-options">
|
||||
<div class="cust-sel-option ico_gray">Suspend</div>
|
||||
<div class="cust-sel-option ico_green">Unsuspend</div>
|
||||
<div class="cust-sel-option ico_red">Delete</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- visible only for admin -->
|
||||
<div class="domain-groups-selector">
|
||||
<div class="selector-wrap">
|
||||
<strong class="selector-title">Show:</strong>
|
||||
<span class="selected-groups">mine, vesta, Chronos, vasya (and 35 more)</span>
|
||||
</div>
|
||||
</div><!-- // visible only for admin -->
|
||||
</div>
|
||||
|
||||
</div><!-- // actions toolbar -->
|
||||
<div id="content">
|
||||
<div class="content-inner">
|
||||
<div class="cron-list">
|
||||
<!-- row 1 -->
|
||||
<div class="row first-row cron-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">active</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="cron-meta">
|
||||
<span class="prop-box cron-min">
|
||||
<span class="prop-title">min</span>
|
||||
<span class="prop-value">0</span>
|
||||
</span>
|
||||
<span class="prop-box cron-hour">
|
||||
<span class="prop-title">hour</span>
|
||||
<span class="prop-value">0,6,9 — 15,18</span>
|
||||
</span>
|
||||
<span class="prop-box cron-day">
|
||||
<span class="prop-title">day of Month</span>
|
||||
<span class="prop-value">*</span>
|
||||
</span>
|
||||
<span class="prop-box cron-month">
|
||||
<span class="prop-title">Month</span>
|
||||
<span class="prop-value">Jan, Feb, Mar</span>
|
||||
</span>
|
||||
<span class="prop-box cron-week">
|
||||
<span class="prop-title">day of Week</span>
|
||||
<span class="prop-value">1 — 5</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="cron-command-box">
|
||||
<strong class="cron-command-line">/usr/bin/top -n 1 -b -S</strong>
|
||||
</div>
|
||||
<div class="cron-reported-to">
|
||||
<span class="prop-box cron-report-box">
|
||||
<span class="prop-title">reported to:</span>
|
||||
<span class="prop-value">naumov.socolov@gmail.com,</span>
|
||||
<span class="prop-value">vasysualiy.pupkin@gmail.com,</span>
|
||||
<span class="prop-value">na-derevniu-dedushke@dachniy-poselok-za-mkadom.com,</span>
|
||||
<span class="prop-value">vasysualiy.pupkin@gmail.com</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 1 -->
|
||||
|
||||
<!-- row 2 -->
|
||||
<div class="row cron-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">active</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="cron-meta">
|
||||
<span class="prop-box cron-min">
|
||||
<span class="prop-title">min</span>
|
||||
<span class="prop-value">15</span>
|
||||
</span>
|
||||
<span class="prop-box cron-hour">
|
||||
<span class="prop-title">hour</span>
|
||||
<span class="prop-value">1,3,5 — 15,19,21,23</span>
|
||||
</span>
|
||||
<span class="prop-box cron-day">
|
||||
<span class="prop-title">day of Month</span>
|
||||
<span class="prop-value">1,3,5,7,9,11,13,15,17,19</span>
|
||||
</span>
|
||||
<span class="prop-box cron-month">
|
||||
<span class="prop-title">Month</span>
|
||||
<span class="prop-value">*</span>
|
||||
</span>
|
||||
<span class="prop-box cron-week">
|
||||
<span class="prop-title">day of Week</span>
|
||||
<span class="prop-value">2 — 7</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="cron-command-box">
|
||||
<strong class="cron-command-line">/home/myuser/bin/pinghosts.sh > /home/myuser/pinghosts.log</strong>
|
||||
</div>
|
||||
<div class="cron-reported-to">
|
||||
<span class="prop-box cron-report-box">
|
||||
<span class="prop-title">reported to:</span>
|
||||
<span class="prop-value">billy@microsoft.com</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 2 -->
|
||||
|
||||
<!-- row 3 -->
|
||||
<div class="row cron-details-row checked-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">active</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="cron-meta">
|
||||
<span class="prop-box cron-min">
|
||||
<span class="prop-title">min</span>
|
||||
<span class="prop-value">*</span>
|
||||
</span>
|
||||
<span class="prop-box cron-hour">
|
||||
<span class="prop-title">hour</span>
|
||||
<span class="prop-value">*</span>
|
||||
</span>
|
||||
<span class="prop-box cron-day">
|
||||
<span class="prop-title">day of Month</span>
|
||||
<span class="prop-value">*</span>
|
||||
</span>
|
||||
<span class="prop-box cron-month">
|
||||
<span class="prop-title">Month</span>
|
||||
<span class="prop-value">Jan, Mar, May, Jul, Sep, Nov</span>
|
||||
</span>
|
||||
<span class="prop-box cron-week">
|
||||
<span class="prop-title">day of Week</span>
|
||||
<span class="prop-value">2 — 7</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="cron-command-box">
|
||||
<strong class="cron-command-line">/home/myuser/bin/pinghosts.sh > /home/myuser/home/myuser/home/myuser/pinghosts.log</strong>
|
||||
</div>
|
||||
<div class="cron-reported-to">
|
||||
<span class="prop-box cron-report-box">
|
||||
<span class="prop-title">reported to:</span>
|
||||
<span class="prop-value">billy@microsoft.com</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 3 -->
|
||||
|
||||
<!-- row 4 -->
|
||||
<div class="row cron-details-row suspended-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-suspended-status"><span class="ip-status-text">suspended</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="cron-meta">
|
||||
<span class="prop-box cron-min">
|
||||
<span class="prop-title">min</span>
|
||||
<span class="prop-value">15</span>
|
||||
</span>
|
||||
<span class="prop-box cron-hour">
|
||||
<span class="prop-title">hour</span>
|
||||
<span class="prop-value">1,3,5 — 15,19,21,23</span>
|
||||
</span>
|
||||
<span class="prop-box cron-day">
|
||||
<span class="prop-title">day of Month</span>
|
||||
<span class="prop-value">1,3,5,7,9,11,13,15,17,19</span>
|
||||
</span>
|
||||
<span class="prop-box cron-month">
|
||||
<span class="prop-title">Month</span>
|
||||
<span class="prop-value">*</span>
|
||||
</span>
|
||||
<span class="prop-box cron-week">
|
||||
<span class="prop-title">day of Week</span>
|
||||
<span class="prop-value">2 — 7</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="cron-command-box">
|
||||
<strong class="cron-command-line">/home/myuser/bin/pinghosts.sh > /home/myuser/pinghosts.log</strong>
|
||||
</div>
|
||||
<div class="cron-reported-to">
|
||||
<span class="prop-box cron-report-box">
|
||||
<span class="prop-title">reported to:</span>
|
||||
<span class="prop-value">billy@microsoft.com</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 4 -->
|
||||
|
||||
|
||||
<!-- form -->
|
||||
<div class="b-new-entry b-new-entry_cron">
|
||||
<div class="entry-header">New cron</div>
|
||||
<div class="form-error">
|
||||
<div class="error-box">
|
||||
<span class="error-message">Wrong minute format. Need some <a class="help-tip-url" href="#">Help</a> ?</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row form-row-line run-at-box cc">
|
||||
<span class="row-header">run at:</span>
|
||||
<div class="field-box cron-minute-box">
|
||||
<label class="field-label" for="#">minute:<br />(0—59)</label>
|
||||
<div class="field-box-inner cc">
|
||||
<input class="text-field" type="text" value="" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="field-box cron-hour-box">
|
||||
<label class="field-label" for="#">hour:<br />(0—23)</label>
|
||||
<div class="field-box-inner cc">
|
||||
<input class="text-field" type="text" value="" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="field-box cron-day-box">
|
||||
<label class="field-label" for="#">day of Month:<br />(1—31)</label>
|
||||
<div class="field-box-inner cc">
|
||||
<input class="text-field" type="text" value="" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="field-box cron-month-box">
|
||||
<label class="field-label" for="#">Month:<br />(1—12)(Jan—Dec)</label>
|
||||
<div class="field-box-inner cc">
|
||||
<input class="text-field" type="text" value="" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="field-box cron-week-box">
|
||||
<label class="field-label" for="#">day of Week:<br />(1—7)(Sun—Sat)</label>
|
||||
<div class="field-box-inner cc">
|
||||
<input class="text-field" type="text" value="" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">command:</label>
|
||||
<textarea class="textarea"></textarea>
|
||||
</div>
|
||||
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">report to: <span class="remark">(devide by comma ",")</span></label>
|
||||
<textarea class="textarea"></textarea>
|
||||
</div>
|
||||
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">suspended:</label>
|
||||
<input class="styled" type="checkbox" value="" />
|
||||
</div>
|
||||
|
||||
<div class="form-row buttons-row cc">
|
||||
<input class="add-entry-btn" type="submit" value="add" />
|
||||
<span class="cancel-btn">Cancel</span>
|
||||
<span class="delete-btn">Delete</span>
|
||||
</div>
|
||||
</div><!-- // form -->
|
||||
</div><!-- // .domain-list -->
|
||||
</div>
|
||||
</div><!-- // #content -->
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
68
web/static-templates/css/popup.css
Normal file
|
@ -0,0 +1,68 @@
|
|||
/* Styles for popups */
|
||||
.d-popup{
|
||||
position:absolute;
|
||||
top:100px;
|
||||
left:0;
|
||||
z-index:100;
|
||||
background-color:#ccc;
|
||||
background:url(../i/info-popup-bg-2.png) repeat;
|
||||
|
||||
width:250px;
|
||||
|
||||
border-radius: 10px;
|
||||
-moz-border-radius: 10px;
|
||||
-webkit-border-radius: 10px;
|
||||
}
|
||||
.d-popup-inner{
|
||||
padding:20px;
|
||||
color:#fff;
|
||||
}
|
||||
.d-popup .close{
|
||||
position:absolute;
|
||||
top:10px;
|
||||
right:10px;
|
||||
|
||||
display:block;
|
||||
width:14px;
|
||||
height:14px;
|
||||
/*background:url(../i/info-popup-sprite.png) no-repeat;*/
|
||||
background:url(../i/info-popup-sprite-2011-12-14.png) no-repeat 0 -1px;
|
||||
cursor:pointer;
|
||||
font-size:0;
|
||||
line-height:0;
|
||||
text-indent:-9999px;
|
||||
}
|
||||
.d-popup span.close:hover{
|
||||
background-position:0 -17px;
|
||||
}
|
||||
.d-popup span.close:active{
|
||||
background-position:0 -33px;
|
||||
}
|
||||
|
||||
.d-popup-title{
|
||||
font-size:11px;
|
||||
text-transform:uppercase;
|
||||
text-align:center;
|
||||
color:#fffdd4;
|
||||
margin:0 0 9px;
|
||||
}
|
||||
.d-popup-items{
|
||||
font-size:12px;
|
||||
color:#fff;
|
||||
}
|
||||
.d-popup-items .item{
|
||||
margin:0 0 9px;
|
||||
}
|
||||
.d-popup-items a{
|
||||
color:#aaa;
|
||||
padding-right:5px;
|
||||
}
|
||||
.d-popup .prop-box{
|
||||
display:block;
|
||||
}
|
||||
.d-popup .prop-title{
|
||||
color:#bbb;
|
||||
}
|
||||
.d-popup .prop-value{
|
||||
color:#fff;
|
||||
}
|
205
web/static-templates/css/vesta-login-form.css
Normal file
|
@ -0,0 +1,205 @@
|
|||
/* Page specific styles */
|
||||
.page-auth{
|
||||
background:url(../i/auth/auth-bg.png) repeat;
|
||||
}
|
||||
.cc:after{
|
||||
content: ".";
|
||||
display: block;
|
||||
height: 0;
|
||||
clear: both;
|
||||
visibility: hidden;
|
||||
}
|
||||
*html .cc{
|
||||
zoom:1;
|
||||
}
|
||||
+html .cc{
|
||||
zoom:1;
|
||||
}
|
||||
.page-auth .b-auth-form{}
|
||||
|
||||
.page-auth .b-auth-form{
|
||||
width:525px;
|
||||
margin:7% auto 0;
|
||||
padding:20px 20px 0;
|
||||
background:url(../i/auth/form-bg.png) repeat;
|
||||
|
||||
-webkit-border-radius:15px;
|
||||
-moz-border-radius:15px;
|
||||
border-radius:15px;
|
||||
behavior: url(js/PIE.htc);
|
||||
font-family:Arial, Helvetica, sans-serif;
|
||||
}
|
||||
.page-auth .b-auth-form-wrap{
|
||||
position:relative;
|
||||
padding-top:30px;
|
||||
}
|
||||
.page-auth .vesta-logo{
|
||||
position:absolute;
|
||||
top:0;
|
||||
left:0;
|
||||
display:block;
|
||||
}
|
||||
.page-auth .b-client-title{
|
||||
margin:0 0 45px;
|
||||
padding-left:130px;
|
||||
font-size:35px;
|
||||
background:url(../i/auth/planet-1.png) no-repeat 95px 17px;
|
||||
color:#fff;
|
||||
}
|
||||
.client-title-wrap{
|
||||
position:relative;
|
||||
}
|
||||
.client-title-wrap .planets{
|
||||
display:block;
|
||||
width:91px;
|
||||
height:7px;
|
||||
position:absolute;
|
||||
top:45%;
|
||||
right:-100px;
|
||||
background:url(../i/auth/planet-2.png) no-repeat;
|
||||
}
|
||||
.page-auth .form-row{
|
||||
margin:0 0 15px;
|
||||
}
|
||||
.page-auth .last-row{
|
||||
padding:27px 90px 0 133px;
|
||||
}
|
||||
.page-auth .field-label{
|
||||
float:left;
|
||||
width:87px;
|
||||
padding-left:45px;
|
||||
color:#e3d785;
|
||||
font-size:12px;
|
||||
line-height:34px;
|
||||
font-family:Arial, Helvetica, sans-serif;
|
||||
text-transform:uppercase;
|
||||
letter-spacing:-.5px;
|
||||
}
|
||||
.page-auth .field-text{
|
||||
width:290px;
|
||||
padding:4px 5px;
|
||||
font-size:20px;
|
||||
border:2px solid #0c6c9c;
|
||||
background:#2d2c28;
|
||||
color:#fff;
|
||||
}
|
||||
.page-auth .field-text:focus{
|
||||
-moz-box-shadow:0 0 8px rgba(76, 147, 189, 0.7);
|
||||
-webkit-box-shadow:0 0 8px rgba(76, 147, 189, 0.7);
|
||||
border-color:rgba(76, 147, 189, 0.85) !important;
|
||||
}
|
||||
|
||||
.page-auth .b-remember{
|
||||
float:left;
|
||||
padding-top:5px;
|
||||
}
|
||||
.page-auth .remember-label{
|
||||
cursor:pointer;
|
||||
padding:2px 2px 2px 8px;
|
||||
color:#747975;
|
||||
font-size:12px;
|
||||
font-family:Arial, Helvetica, sans-serif;
|
||||
}
|
||||
span.ui-checkbox{
|
||||
display: block;
|
||||
float: left;
|
||||
width: 14px;
|
||||
height: 15px;
|
||||
/* background:url(icon_checkbox.png) 0 -40px no-repeat;*/
|
||||
background:url(../i/auth/checkboxes.png) no-repeat;
|
||||
}
|
||||
.ui-helper-hidden-accessible{
|
||||
display: none;
|
||||
}
|
||||
span.ui-checkbox-state-hover{
|
||||
background-position: 0 -15px;
|
||||
}
|
||||
span.ui-checkbox-state-checked,
|
||||
span.ui-checkbox-state-checked-hover{
|
||||
background-position: 0 -30px;
|
||||
}
|
||||
|
||||
.page-auth .sumbit-btn{
|
||||
float:right;
|
||||
overflow:visible;
|
||||
height:30px;
|
||||
padding:0 40px;
|
||||
-webkit-border-radius:9px;
|
||||
-moz-border-radius:9px;
|
||||
border-radius:9px;
|
||||
behavior: url(js/PIE.htc);
|
||||
|
||||
border:2px solid #292929;
|
||||
background-color:#b8be44;
|
||||
color:#ffffdf;
|
||||
font-size:13px;
|
||||
font-family:Arial, Helvetica, sans-serif;
|
||||
font-weight:bold;
|
||||
line-height:27px;
|
||||
text-transform:uppercase;
|
||||
cursor:pointer;
|
||||
}
|
||||
.page-auth .sumbit-btn:focus{
|
||||
position:relative;
|
||||
top:1px;
|
||||
}
|
||||
.page-auth .sumbit-btn:hover{
|
||||
background-color:#ffcc00;
|
||||
color:#483600;
|
||||
border-color:#000;
|
||||
}
|
||||
.page-auth .sumbit-btn:active{
|
||||
top:0;
|
||||
background-color:#483600;
|
||||
color:#ffcc00;
|
||||
border-color:#000;
|
||||
}
|
||||
|
||||
.page-auth .forgot-pwd{
|
||||
padding:60px 0 10px 137px;
|
||||
font-size:13px;
|
||||
}
|
||||
.page-auth .forgot-pwd-url{
|
||||
color:#6f7571;
|
||||
}
|
||||
.page-auth a.forgot-pwd-url:hover{
|
||||
color:#849e54;
|
||||
}
|
||||
.page-auth a.forgot-pwd-url:active{
|
||||
color:#edca38;
|
||||
}
|
||||
|
||||
.page-auth .error-box{
|
||||
border-top:1px dashed #f16d6b;
|
||||
padding:10px 0 0 131px;
|
||||
font-size:14px;
|
||||
font-weight:bold;
|
||||
color:#f16d6b;
|
||||
}
|
||||
|
||||
.page-auth .footnotes{
|
||||
margin:0 -20px;
|
||||
padding:15px 20px;
|
||||
font-size:14px;
|
||||
border-top:2px solid #34352f;
|
||||
color:#5a5e5d;
|
||||
}
|
||||
.page-auth .footnotes .additional-info{
|
||||
float:left;
|
||||
font-size:12px;
|
||||
font-family:Georgia, "Times New Roman", Times, serif;
|
||||
font-style:italic;
|
||||
}
|
||||
.page-auth .footnotes .questions-url{
|
||||
color:#5a5e5d;
|
||||
}
|
||||
.page-auth .footnotes a.questions-url:hover{
|
||||
color:#849e54;
|
||||
}
|
||||
.page-auth .footnotes a.questions-url:active{
|
||||
color:#edca38;
|
||||
}
|
||||
.page-auth .footnotes .imprint{
|
||||
float:right;
|
||||
font-style:normal;
|
||||
}
|
209
web/static-templates/css/vesta-login-form_new.css
Normal file
|
@ -0,0 +1,209 @@
|
|||
/* Page specific styles */
|
||||
.page-auth{
|
||||
background:url(../images/auth/auth-bg.png) repeat;
|
||||
}
|
||||
.cc:after{
|
||||
content: ".";
|
||||
display: block;
|
||||
height: 0;
|
||||
clear: both;
|
||||
visibility: hidden;
|
||||
}
|
||||
*html .cc{
|
||||
zoom:1;
|
||||
}
|
||||
+html .cc{
|
||||
zoom:1;
|
||||
}
|
||||
.page-auth .b-auth-form{}
|
||||
|
||||
.page-auth .b-auth-form{
|
||||
width:525px;
|
||||
margin:7% auto 0;
|
||||
padding:20px 20px 0;
|
||||
background:url(../images/auth/form-bg.png) repeat;
|
||||
|
||||
-webkit-border-radius:15px;
|
||||
-moz-border-radius:15px;
|
||||
border-radius:15px;
|
||||
behavior: url(js/PIE.htc);
|
||||
font-family:Arial, Helvetica, sans-serif;
|
||||
}
|
||||
.page-auth .b-auth-form-wrap{
|
||||
position:relative;
|
||||
padding-top:30px;
|
||||
}
|
||||
.page-auth .vesta-logo{
|
||||
position:absolute;
|
||||
top:0;
|
||||
left:0;
|
||||
display:block;
|
||||
}
|
||||
.page-auth .b-client-title{
|
||||
margin:0 0 45px;
|
||||
padding-left:130px;
|
||||
font-size:35px;
|
||||
background:url(../images/auth/planet-1.png) no-repeat 85px 27px;
|
||||
color:#fff;
|
||||
}
|
||||
.client-title-wrap{
|
||||
position:relative;
|
||||
text-transform: uppercase;
|
||||
font-size:24px;
|
||||
}
|
||||
.client-title-wrap .planets{
|
||||
display:block;
|
||||
width:91px;
|
||||
height:7px;
|
||||
position:absolute;
|
||||
top:40%;
|
||||
right:-121px;
|
||||
background:url(../images/auth/planet-2.png) no-repeat scroll 0 -1px;
|
||||
}
|
||||
.page-auth .form-row{
|
||||
margin:0 0 15px;
|
||||
}
|
||||
.page-auth .last-row{
|
||||
padding:27px 90px 0 133px;
|
||||
}
|
||||
.page-auth .field-label{
|
||||
float:left;
|
||||
width:87px;
|
||||
padding-left:45px;
|
||||
color:#e3d785;
|
||||
font-size:12px;
|
||||
line-height:34px;
|
||||
font-family:Arial, Helvetica, sans-serif;
|
||||
text-transform:uppercase;
|
||||
/*letter-spacing:-.5px;*/
|
||||
}
|
||||
.page-auth .field-text{
|
||||
width:290px;
|
||||
padding:4px 5px;
|
||||
font-size:20px;
|
||||
border:2px solid #0c6c9c;
|
||||
background:#2d2c28;
|
||||
color:#fff;
|
||||
}
|
||||
.page-auth .field-text:focus{
|
||||
-moz-box-shadow:0 0 8px rgba(76, 147, 189, 0.7);
|
||||
-webkit-box-shadow:0 0 8px rgba(76, 147, 189, 0.7);
|
||||
border-color:rgba(76, 147, 189, 0.85) !important;
|
||||
}
|
||||
|
||||
.page-auth .b-remember{
|
||||
float:left;
|
||||
padding-top:5px;
|
||||
}
|
||||
.page-auth .remember-label{
|
||||
cursor:pointer;
|
||||
padding:2px 2px 2px 8px;
|
||||
color:#747975;
|
||||
font-size:12px;
|
||||
font-family:Arial, Helvetica, sans-serif;
|
||||
}
|
||||
span.ui-checkbox{
|
||||
display: block;
|
||||
float: left;
|
||||
width: 14px;
|
||||
height: 15px;
|
||||
/* background:url(icon_checkbox.png) 0 -40px no-repeat;*/
|
||||
background:url(../images/auth/checkboxes.png) no-repeat;
|
||||
}
|
||||
.ui-helper-hidden-accessible{
|
||||
display: none;
|
||||
}
|
||||
span.ui-checkbox-state-hover{
|
||||
background-position: 0 -15px;
|
||||
}
|
||||
span.ui-checkbox-state-checked,
|
||||
span.ui-checkbox-state-checked-hover{
|
||||
background-position: 0 -30px;
|
||||
}
|
||||
|
||||
.page-auth .sumbit-btn{
|
||||
float:right;
|
||||
overflow:visible;
|
||||
height:30px;
|
||||
padding:0 40px;
|
||||
-webkit-border-radius:9px;
|
||||
-moz-border-radius:9px;
|
||||
border-radius:9px;
|
||||
behavior: url(js/PIE.htc);
|
||||
|
||||
border:2px solid #2C2C10;
|
||||
background-color:#BBBF45;
|
||||
color:#ffffdf;
|
||||
font-size:13px;
|
||||
font-family:Arial, Helvetica, sans-serif;
|
||||
font-weight:bold;
|
||||
line-height:27px;
|
||||
text-transform:uppercase;
|
||||
cursor:pointer;
|
||||
}
|
||||
.page-auth .sumbit-btn:focus{
|
||||
position:relative;
|
||||
top:1px;
|
||||
}
|
||||
.page-auth .sumbit-btn:hover{
|
||||
background-color:#ffcc00;
|
||||
color:#483600;
|
||||
border-color:#000;
|
||||
}
|
||||
.page-auth .sumbit-btn:active{
|
||||
top:0;
|
||||
background-color:#96A332;
|
||||
color:#FFFFFF;
|
||||
border-color:#2C2C10;
|
||||
}
|
||||
|
||||
.page-auth .forgot-pwd{
|
||||
padding:60px 0 10px 137px;
|
||||
font-size:13px;
|
||||
}
|
||||
.page-auth .forgot-pwd-url{
|
||||
color:#6f7571;
|
||||
}
|
||||
.page-auth a.forgot-pwd-url:hover{
|
||||
color:#849e54;
|
||||
}
|
||||
.page-auth a.forgot-pwd-url:active{
|
||||
color:#edca38;
|
||||
}
|
||||
|
||||
.page-auth .error-box{
|
||||
border-top:1px dashed #f16d6b;
|
||||
padding:10px 0 21px 131px;
|
||||
font-size:14px;
|
||||
font-weight:bold;
|
||||
color:#f16d6b;
|
||||
}
|
||||
|
||||
.page-auth .footnotes{
|
||||
margin:0 -20px;
|
||||
padding:15px 20px;
|
||||
font-size:14px;
|
||||
border-top:2px solid #34352f;
|
||||
color:#5a5e5d;
|
||||
}
|
||||
.page-auth .footnotes .additional-info{
|
||||
float:left;
|
||||
font-size:12px;
|
||||
font-family:Georgia, "Times New Roman", Times, serif;
|
||||
font-style:italic;
|
||||
}
|
||||
.page-auth .footnotes .questions-url{
|
||||
color:#5a5e5d;
|
||||
}
|
||||
.page-auth .footnotes a.questions-url:hover{
|
||||
color:#849e54;
|
||||
}
|
||||
.page-auth .footnotes a.questions-url:active{
|
||||
color:#edca38;
|
||||
}
|
||||
.page-auth .footnotes .imprint{
|
||||
float:right;
|
||||
font-style:normal;
|
||||
font-size:11px;
|
||||
padding-top:1px;
|
||||
}
|
700
web/static-templates/db.html
Normal file
|
@ -0,0 +1,700 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
|
||||
|
||||
<head>
|
||||
<title>Vesta | Databases</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta http-equiv="imagetoolbar" content="false" />
|
||||
|
||||
<link rel="stylesheet" media="all" type="text/css" href="css/reset2.css" />
|
||||
<link rel="stylesheet" media="all" type="text/css" href="css/vesta.css" />
|
||||
|
||||
<!--[if lt IE 8]>
|
||||
<link rel="stylesheet" type="text/css" href="css/ie.css" />
|
||||
<![endif]-->
|
||||
|
||||
<script type="text/javascript" src="js/custom-form-elements.js"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="page">
|
||||
<div class="outer">
|
||||
<div id="header">
|
||||
<div class="logo-box">
|
||||
<h1 class="logo"><a href="#">Vesta panel <span> </span></a></h1>
|
||||
</div>
|
||||
<ul class="settings">
|
||||
<li class="settings-item">
|
||||
<span class="logged-as">Fabricius Euphranor von Neoptolemos</span>
|
||||
<a class="item-title" href="#">Profile</a>
|
||||
</li>
|
||||
<li class="settings-item"><a class="item-title" href="#">Settings</a></li>
|
||||
<li class="logout"><a class="item-title" href="#"><span class="item-title-inner">Exit</span></a></li>
|
||||
</ul>
|
||||
<ul class="extra-services">
|
||||
<li class="service-item active">
|
||||
<span class="item-title">Backups</span>
|
||||
<i class="item-devider"></i>
|
||||
</li>
|
||||
<li class="service-item">
|
||||
<span class="item-title">Stats</span>
|
||||
<i class="item-devider"></i>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="primary-nav-box">
|
||||
<ul class="primary-nav cc">
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="users-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Users</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">386 users</span>
|
||||
<span class="def">7 blocked</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="domains-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Web Domain</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">580 domains</span>
|
||||
<span class="def">22 out of mem</span>
|
||||
<span class="def">3 waiting</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="mail-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Mail</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">320 domains</span>
|
||||
<span class="def">1209 mailboxes</span>
|
||||
<span class="def">25 full</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section active">
|
||||
<div class="section-inner">
|
||||
<dl class="db-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">DB</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">7 db</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="dns-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Dns</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">289 records</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="dnstpl-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">IP</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">7 templates</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section last-section">
|
||||
<div class="section-inner">
|
||||
<dl class="cron-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Cron</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">15 records</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="console">
|
||||
<div class="b-console">
|
||||
<div class="b-console-wrap">
|
||||
<form class="b-console-form cc" action="#" method="post">
|
||||
<fieldset>
|
||||
<input class="b-console-field" type="text" value="/"/>
|
||||
<input class="b-console-btn" type="submit" value="Go" />
|
||||
</fieldset>
|
||||
</form>
|
||||
<!-- div class="b-console-statuses">
|
||||
<div class="b-console-status cc">
|
||||
<p class="b-console-status-message">domain <b>google.com</b> have been added <br />
|
||||
Cтиль менеджмента, на первый взгляд, методически оправдывает культурный побочный PR-эффект, осознавая социальную ответственность бизнеса. Исходя из структуры пирамиды Маслоу, рекламное сообщество экономит product placement, невзирая на действия конкурентов. Узнавание бренда слабо транслирует имидж, оптимизируя бюджеты.
|
||||
</p>
|
||||
<span class="b-console-status-action">cancel</span>
|
||||
<i class="b-console-status-arrow"> </i>
|
||||
</div>
|
||||
</div -->
|
||||
</div>
|
||||
<div class="b-console-results"></div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- actions toolbar -->
|
||||
<div id="actions-toolbar" class="cc">
|
||||
<a class="add-btn" href="#"><i class="add-btn-icon"> </i>add database</a>
|
||||
<div class="row-filters cc">
|
||||
<div class="b-row-selector">
|
||||
<div class="checkbox-selector cc">
|
||||
<input class="styled" type="checkbox" value="" />
|
||||
<span class="selector-title">385 Selected</span>
|
||||
</div>
|
||||
<div class="context-actions">
|
||||
<div class="b-cust-sel b-cust-sel_inactive">
|
||||
<span class="title">Action</span>
|
||||
<div class="cust-sel-arrow"><i> </i></div>
|
||||
<div class="cust-sel-options">
|
||||
<div class="cust-sel-option ico_gray">Suspend</div>
|
||||
<div class="cust-sel-option ico_green">Unsuspend</div>
|
||||
<div class="cust-sel-option ico_red">Delete</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- visible only for admin -->
|
||||
<div class="domain-groups-selector">
|
||||
<div class="selector-wrap">
|
||||
<strong class="selector-title">Show:</strong>
|
||||
<span class="selected-groups">mine, vesta, Chronos, vasya (and 35 more)</span>
|
||||
</div>
|
||||
</div><!-- // visible only for admin -->
|
||||
</div>
|
||||
|
||||
<a class="db-manager" href="#">Php<em class="highlighted">pg</em>admin</a>
|
||||
<a class="db-manager" href="#">Php<em class="highlighted">my</em>admin</a>
|
||||
</div><!-- // actions toolbar -->
|
||||
<div id="content">
|
||||
<div class="content-inner">
|
||||
<div class="db-list">
|
||||
<div class="db-devider">
|
||||
<span class="db-devider-title">
|
||||
<span class="db-devider-outer">
|
||||
<span class="db-devider-inner">MySQL</span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
<!-- row 1 -->
|
||||
<div class="row first-row db-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="delete-entry"><span class="delete-entry-text">delete</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="ownership">
|
||||
<span class="prop-box">
|
||||
<span class="prop-value">Javier Henneman</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="entry-created">05.03.2011</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="db-name-box">
|
||||
<span class="db-name">Clinton Brazeal Super DB</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">naumov-socolov</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">socialmediaexaminer (read only)</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<span class="add-db-user">Add user</span>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="backup-db">backup</span>
|
||||
<!-- disk usage block -->
|
||||
<div class="b-usage-box disk-usage cc">
|
||||
<div class="usage-box">
|
||||
<div class="value-box">
|
||||
<span class="value">12</span>
|
||||
<div class="graph middle">
|
||||
<span class="bar" style="width:55%;"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="max-size">300 <span class="units">Mb</span></div>
|
||||
</div>
|
||||
</div><!-- // disk usage block -->
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 1 -->
|
||||
|
||||
<!-- row 2 -->
|
||||
<div class="row db-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="delete-entry"><span class="delete-entry-text">delete</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="ownership">
|
||||
<span class="prop-box">
|
||||
<span class="prop-value">Allan Cumberland</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="entry-created">06.03.2011</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="db-name-box">
|
||||
<span class="db-name">Example database name</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Lance Lafata</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Tania Maietta (read only)</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Tyrone Diangelo</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Elinor Boissonneault (read only)</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<span class="add-db-user">Add user</span>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="backup-db">backup</span>
|
||||
<!-- disk usage block -->
|
||||
<div class="b-usage-box disk-usage cc">
|
||||
<div class="usage-box">
|
||||
<div class="value-box">
|
||||
<span class="value">280</span>
|
||||
<div class="graph critical">
|
||||
<span class="bar" style="width:85%;"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="max-size">300 <span class="units">Mb</span></div>
|
||||
</div>
|
||||
</div><!-- // disk usage block -->
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 2 -->
|
||||
|
||||
<!-- row 3 -->
|
||||
<div class="row db-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="delete-entry"><span class="delete-entry-text">delete</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="ownership">
|
||||
<span class="prop-box">
|
||||
<span class="prop-value">Dick Costolo</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="entry-created">11.05.2011</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="db-name-box">
|
||||
<span class="db-name">Twitter User Object</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Evan Williams</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Jack Dorsey</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Biz Stone</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Abdur Chowdhury</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Jason Goldman</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Sean Garrett</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Greg Pass (read only)</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<span class="add-db-user">Add user</span>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="backup-db">backup</span>
|
||||
<!-- disk usage block -->
|
||||
<div class="b-usage-box disk-usage cc">
|
||||
<div class="usage-box">
|
||||
<div class="value-box">
|
||||
<span class="value">280</span>
|
||||
<div class="graph critical">
|
||||
<span class="bar" style="width:85%;"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="max-size">300 <span class="units">Mb</span></div>
|
||||
</div>
|
||||
</div><!-- // disk usage block -->
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 3 -->
|
||||
|
||||
<div class="db-devider">
|
||||
<span class="db-devider-title">
|
||||
<span class="db-devider-outer">
|
||||
<span class="db-devider-inner">Postgres</span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<!-- row 1 -->
|
||||
<div class="row first-row db-details-row checked-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="delete-entry"><span class="delete-entry-text">delete</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="ownership">
|
||||
<span class="prop-box">
|
||||
<span class="prop-value">Richard Yoo</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="entry-created">05.03.2011</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="db-name-box">
|
||||
<span class="db-name">Edgebuzz</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Pat Condon</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Graham Weston (read only)</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Mark Roenigk</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Bruce Knooihuizen (read only)</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">John Engates</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Lanham Napier</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<span class="add-db-user">Add user</span>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="backup-db">backup</span>
|
||||
<!-- disk usage block -->
|
||||
<div class="b-usage-box disk-usage cc">
|
||||
<div class="usage-box">
|
||||
<div class="value-box">
|
||||
<span class="value">12</span>
|
||||
<div class="graph middle">
|
||||
<span class="bar" style="width:55%;"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="max-size">300 <span class="units">Mb</span></div>
|
||||
</div>
|
||||
</div><!-- // disk usage block -->
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 1 -->
|
||||
|
||||
<!-- row 2 -->
|
||||
<div class="row db-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="delete-entry"><span class="delete-entry-text">delete</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="ownership">
|
||||
<span class="prop-box">
|
||||
<span class="prop-value">General Hugh Shelton</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="entry-created">05.03.2011</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="db-name-box">
|
||||
<span class="db-name">Bubbledog</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Jim Whitehurst</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Naren Gupta (read only)</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Jeff Clarke</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Micheline Chau (read only)</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Jeff Clarke</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<span class="add-db-user">Add user</span>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="backup-db">backup</span>
|
||||
<!-- disk usage block -->
|
||||
<div class="b-usage-box disk-usage cc">
|
||||
<div class="usage-box">
|
||||
<div class="value-box">
|
||||
<span class="value">45</span>
|
||||
<div class="graph middle">
|
||||
<span class="bar" style="width:35%;"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="max-size">300 <span class="units">Mb</span></div>
|
||||
</div>
|
||||
</div><!-- // disk usage block -->
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 2 -->
|
||||
|
||||
<!-- row 3 -->
|
||||
<div class="row db-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="delete-entry"><span class="delete-entry-text">delete</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="ownership">
|
||||
<span class="prop-box">
|
||||
<span class="prop-value">Mark Shuttleworth</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="entry-created">05.03.2011</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="db-name-box">
|
||||
<span class="db-name">Feednation</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Jason Fried</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">David Heinemeier Hansson</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<div class="db-user-box cc">
|
||||
<span class="db-user-wrap">
|
||||
<span class="db-user">Stephen Campbell</span>
|
||||
</span>
|
||||
<span class="change-pwd">change password</span>
|
||||
</div>
|
||||
<span class="add-db-user">Add user</span>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="backup-db">backup</span>
|
||||
<!-- disk usage block -->
|
||||
<div class="b-usage-box disk-usage cc">
|
||||
<div class="usage-box">
|
||||
<div class="value-box">
|
||||
<span class="value">12</span>
|
||||
<div class="graph low">
|
||||
<span class="bar" style="width:15%;"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="max-size">300 <span class="units">Mb</span></div>
|
||||
</div>
|
||||
</div><!-- // disk usage block -->
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 3 -->
|
||||
|
||||
<!-- form -->
|
||||
<div class="b-new-entry b-new-entry_db">
|
||||
<div class="entry-header">New database</div>
|
||||
<div class="form-error">
|
||||
<div class="error-box">
|
||||
<span class="error-message">Database named "ReadWriteWeb" already exists.</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">db type:</label>
|
||||
<select class="styled" name="db-type">
|
||||
<option value="1" selected="selected">MySQL</option>
|
||||
<option value="2">Postgres</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#"><span class="mandatory">db name:</span></label>
|
||||
<input class="text-field rule-required" type="text" value="ReadWriteWeb" />
|
||||
</div>
|
||||
<div class="db-credentials">
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#"><span class="mandatory">username</span></label>
|
||||
<input class="text-field rule-required" type="text" value="" />
|
||||
</div>
|
||||
<div class="form-row pwd-box cc">
|
||||
<label class="field-label" for="#">password:</label>
|
||||
<input class="text-field disabled" type="text" value="g179x2vpvfamn7v" />
|
||||
<span class="generate-pwd">Generate</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">db host:</label>
|
||||
<select class="styled" name="db-host">
|
||||
<option value="1">user</option>
|
||||
<option value="2" selected="selected">smashingmagazine.com</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">suspended:</label>
|
||||
<input class="styled" type="checkbox" value="" />
|
||||
</div>
|
||||
|
||||
<div class="form-row buttons-row cc">
|
||||
<input class="add-entry-btn" type="submit" value="add" />
|
||||
<span class="cancel-btn">Cancel</span>
|
||||
<span class="delete-btn">Delete</span>
|
||||
</div>
|
||||
</div><!-- // form -->
|
||||
</div><!-- // .domain-list -->
|
||||
</div>
|
||||
</div><!-- // #content -->
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
|
@ -1,450 +1,504 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
|
||||
|
||||
<head>
|
||||
<title>Vesta | DNS</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta http-equiv="imagetoolbar" content="false" />
|
||||
|
||||
<link rel="stylesheet" media="all" type="text/css" href="css/reset2.css" />
|
||||
<link rel="stylesheet" media="all" type="text/css" href="css/vesta.css" />
|
||||
|
||||
<!--[if lt IE 8]>
|
||||
<link rel="stylesheet" type="text/css" href="css/ie.css" />
|
||||
<![endif]-->
|
||||
|
||||
<script type="text/javascript" src="js/custom-form-elements.js"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="page">
|
||||
<div class="outer">
|
||||
<div id="header">
|
||||
<div class="logo-box">
|
||||
<h1 class="logo"><a href="#">Vesta panel <span> </span></a></h1>
|
||||
</div>
|
||||
<ul class="settings">
|
||||
<li><a href="#">settings</a></li>
|
||||
<li><a href="#">exit</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="primary-nav-box">
|
||||
<ul class="primary-nav cc">
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="users-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Users</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">386 users</span>
|
||||
<span class="def">7 blocked</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="domains-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Web Domain</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">580 domains</span>
|
||||
<span class="def">22 out of mem</span>
|
||||
<span class="def">3 waiting</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="mail-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Mail</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">320 domains</span>
|
||||
<span class="def">1209 mailboxes</span>
|
||||
<span class="def">25 full</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="db-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">DB</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">7 db</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</li>
|
||||
<li class="section active">
|
||||
<div class="section-inner">
|
||||
<dl class="dns-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Dns</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">289 records</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="dnstpl-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">IP</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">7 templates</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</li>
|
||||
<li class="section last-section">
|
||||
<div class="section-inner">
|
||||
<dl class="cron-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Cron</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">15 records</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="console">
|
||||
<div class="b-console">
|
||||
<div class="b-console-wrap">
|
||||
<form class="b-console-form cc" action="#" method="post">
|
||||
<fieldset>
|
||||
<input class="b-console-field" type="text" value="/"/>
|
||||
<input class="b-console-btn" type="submit" value="Go" />
|
||||
</fieldset>
|
||||
</form>
|
||||
<!-- div class="b-console-statuses">
|
||||
<div class="b-console-status cc">
|
||||
<p class="b-console-status-message">domain <b>google.com</b> have been added <br />
|
||||
Cтиль менеджмента, на первый взгляд, методически оправдывает культурный побочный PR-эффект, осознавая социальную ответственность бизнеса. Исходя из структуры пирамиды Маслоу, рекламное сообщество экономит product placement, невзирая на действия конкурентов. Узнавание бренда слабо транслирует имидж, оптимизируя бюджеты.
|
||||
</p>
|
||||
<span class="b-console-status-action">cancel</span>
|
||||
<i class="b-console-status-arrow"> </i>
|
||||
</div>
|
||||
</div -->
|
||||
</div>
|
||||
<div class="b-console-results"></div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- actions toolbar -->
|
||||
<div id="actions-toolbar" class="cc">
|
||||
<a class="add-btn" href="#"><i class="add-btn-icon"> </i>add dns</a>
|
||||
<span class="select-all">select all</span>
|
||||
<span class="clear-selected">Delete selected</span>
|
||||
</div><!-- // actions toolbar -->
|
||||
<div id="content">
|
||||
<!-- additional info block -->
|
||||
<div class="b-ext-info-wrap b-ext-info-wrap_collapsed">
|
||||
<div class="b-ext-info">
|
||||
<p>Механическая природа пододвигается под устойчивый силовой трёхосный гироскопический стабилизатор, что увязывается со структурно-тектонической обстановкой, гидродинамическими условиями и литолого-минералогическим составом пород. Фосфоритообразование методически опускает уходящий огненный пояс, исходя из суммы моментов. Инерциальная навигация, в соответствии с основным законом динамики, представляет собой тальк, пользуясь последними системами уравнений. Имея такие данные, можно сделать существенный вывод о том, что маховик неустойчив.</p>
|
||||
</div>
|
||||
<div class="b-ext-info-btn"></div>
|
||||
</div><!-- // additional info block -->
|
||||
<div class="content-inner">
|
||||
<div class="dns-list">
|
||||
<!-- row 1 -->
|
||||
<div class="row first-row dns-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">enabled</span></span>
|
||||
<span class="delete-entry"><span class="delete-entry-text">delete</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="names">
|
||||
<strong class="domain-name primary">naumov-socolov.co.uk</strong>
|
||||
</div>
|
||||
<div class="show-records">Show records</div>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<div class="ip-adr-box">
|
||||
<span class="ip-adr">192<span class="dot">.</span>52<span class="dot">.</span>107<span class="dot">.</span>26</span>
|
||||
<span class="prop-box template-box">
|
||||
<span class="prop-title">template:</span>
|
||||
<span class="prop-value">default</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="prop-box ttl-box">
|
||||
<span class="prop-title">ttl:</span>
|
||||
<span class="prop-value">7200</span>
|
||||
</span>
|
||||
<span class="prop-box soa-box">
|
||||
<span class="prop-title">soa:</span>
|
||||
<span class="prop-value">n1.readwriteweb.com</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 1 -->
|
||||
|
||||
<!-- row 2 -->
|
||||
<div class="row dns-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">enabled</span></span>
|
||||
<span class="delete-entry"><span class="delete-entry-text">delete</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="names">
|
||||
<strong class="domain-name primary">naumov-socolov.co.uk</strong>
|
||||
</div>
|
||||
<div class="show-records">Show records</div>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<div class="ip-adr-box">
|
||||
<span class="ip-adr">192<span class="dot">.</span>52<span class="dot">.</span>107<span class="dot">.</span>26</span>
|
||||
<span class="prop-box template-box">
|
||||
<span class="prop-title">template:</span>
|
||||
<span class="prop-value">default</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="prop-box ttl-box">
|
||||
<span class="prop-title">ttl:</span>
|
||||
<span class="prop-value">7200</span>
|
||||
</span>
|
||||
<span class="prop-box soa-box">
|
||||
<span class="prop-title">soa:</span>
|
||||
<span class="prop-value">n1.readwriteweb.com</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 2 -->
|
||||
|
||||
<!-- row 3 -->
|
||||
<div class="row dns-details-row checked-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">enabled</span></span>
|
||||
<span class="delete-entry"><span class="delete-entry-text">delete</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="names">
|
||||
<strong class="domain-name primary">naumov-socolov.co.uk</strong>
|
||||
</div>
|
||||
<div class="show-records">Show records</div>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<div class="ip-adr-box">
|
||||
<span class="ip-adr">192<span class="dot">.</span>52<span class="dot">.</span>107<span class="dot">.</span>26</span>
|
||||
<span class="prop-box template-box">
|
||||
<span class="prop-title">template:</span>
|
||||
<span class="prop-value">default</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="prop-box ttl-box">
|
||||
<span class="prop-title">ttl:</span>
|
||||
<span class="prop-value">7200</span>
|
||||
</span>
|
||||
<span class="prop-box soa-box">
|
||||
<span class="prop-title">soa:</span>
|
||||
<span class="prop-value">n1.readwriteweb.com</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 3 -->
|
||||
|
||||
<!-- row 4 -->
|
||||
<div class="row dns-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">enabled</span></span>
|
||||
<span class="delete-entry"><span class="delete-entry-text">delete</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="names">
|
||||
<strong class="domain-name primary">naumov-socolov.co.uk</strong>
|
||||
</div>
|
||||
<div class="show-records hidden">Show records</div>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<div class="ip-adr-box">
|
||||
<span class="ip-adr">192<span class="dot">.</span>52<span class="dot">.</span>107<span class="dot">.</span>26</span>
|
||||
<span class="prop-box template-box">
|
||||
<span class="prop-title">template:</span>
|
||||
<span class="prop-value">default</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="prop-box ttl-box">
|
||||
<span class="prop-title">ttl:</span>
|
||||
<span class="prop-value">7200</span>
|
||||
</span>
|
||||
<span class="prop-box soa-box">
|
||||
<span class="prop-title">soa:</span>
|
||||
<span class="prop-value">n1.readwriteweb.com</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 4 -->
|
||||
|
||||
<!-- show/edit dns records contextual form -->
|
||||
<div class="b-new-entry b-records-list">
|
||||
<div class="entry-header">
|
||||
<div class="hide-records">Hide records</div>
|
||||
</div>
|
||||
<div class="form-error">
|
||||
<div class="error-box">
|
||||
<span class="error-message">Wrong record format. Need some <a class="help-tip-url" href="#">Help</a> ?</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row add-box cc">
|
||||
<a class="add-btn" href="#"><i class="add-btn-icon"> </i>add dns record</a>
|
||||
</div>
|
||||
|
||||
<div class="form-row form-row-line cc">
|
||||
<div class="field-box dns-record-box">
|
||||
<label class="field-label" for="#">record:</label>
|
||||
<div class="field-box-inner cc">
|
||||
<input class="text-field" type="text" value="" />
|
||||
<div class="field-devider">in</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="field-box dns-type-box">
|
||||
<label class="field-label" for="#">type:</label>
|
||||
<select class="styled" name="dns-type-1">
|
||||
<option value="1" selected="selected">A</option>
|
||||
<option value="2">B</option>
|
||||
<option value="3">C</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="field-box dns-value-box">
|
||||
<label class="field-label" for="#">value:</label>
|
||||
<input class="text-field" type="text" value="" />
|
||||
</div>
|
||||
<div class="delete-record"></div>
|
||||
</div>
|
||||
|
||||
<div class="form-row form-row-line cc">
|
||||
<div class="field-box dns-record-box">
|
||||
<input class="text-field" type="text" value="" />
|
||||
</div>
|
||||
<div class="field-devider">in</div>
|
||||
<div class="field-box dns-type-box">
|
||||
<select class="styled" name="dns-type-2">
|
||||
<option value="1" selected="selected">A</option>
|
||||
<option value="2">B</option>
|
||||
<option value="3">C</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="field-box dns-value-box">
|
||||
<input class="text-field" type="text" value="" />
|
||||
</div>
|
||||
<div class="delete-record"></div>
|
||||
</div>
|
||||
|
||||
<div class="form-row form-row-line cc">
|
||||
<div class="field-box dns-record-box">
|
||||
<input class="text-field" type="text" value="" />
|
||||
</div>
|
||||
<div class="field-devider">in</div>
|
||||
<div class="field-box dns-type-box">
|
||||
<select class="styled" name="dns-type-3">
|
||||
<option value="1" selected="selected">A</option>
|
||||
<option value="2">B</option>
|
||||
<option value="3">C</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="field-box dns-value-box">
|
||||
<input class="text-field" type="text" value="" />
|
||||
</div>
|
||||
<div class="delete-record"></div>
|
||||
</div>
|
||||
|
||||
<div class="form-row buttons-row cc">
|
||||
<input class="add-entry-btn" type="submit" value="save" />
|
||||
<span class="cancel-btn">Cancel</span>
|
||||
<span class="help-btn">Help</span>
|
||||
</div>
|
||||
</div><!-- // form -->
|
||||
|
||||
<!-- form -->
|
||||
<div class="b-new-entry b-new-entry_dns" style="margin-top:25px;">
|
||||
<div class="entry-header">New dns</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">domain:</label>
|
||||
<input class="text-field" type="text" value="www.digital-photography-school.com" />
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">ip address:</label>
|
||||
<div class="autocomplete-box">
|
||||
<input class="text-field" type="text" value="192.168.64.19" />
|
||||
<i class="arrow"> </i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row dns-template-box cc">
|
||||
<label class="field-label" for="#">template:</label>
|
||||
<select class="styled" name="template">
|
||||
<option value="1" selected="selected">default</option>
|
||||
<option value="2">custom</option>
|
||||
<option value="3">advanced</option>
|
||||
</select>
|
||||
<span class="context-settings">View template settings</span>
|
||||
</div>
|
||||
|
||||
<div class="form-row buttons-row cc">
|
||||
<input class="add-entry-btn" type="submit" value="add" />
|
||||
<span class="cancel-btn">Cancel</span>
|
||||
<span class="help-btn">Help</span>
|
||||
</div>
|
||||
</div><!-- // form -->
|
||||
</div><!-- // .domain-list -->
|
||||
</div>
|
||||
</div><!-- // #content -->
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
|
||||
|
||||
<head>
|
||||
<title>Vesta | DNS</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta http-equiv="imagetoolbar" content="false" />
|
||||
|
||||
<link rel="stylesheet" media="all" type="text/css" href="css/reset2.css" />
|
||||
<link rel="stylesheet" media="all" type="text/css" href="css/vesta.css" />
|
||||
|
||||
<!--[if lt IE 8]>
|
||||
<link rel="stylesheet" type="text/css" href="css/ie.css" />
|
||||
<![endif]-->
|
||||
|
||||
<script type="text/javascript" src="js/custom-form-elements.js"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="page">
|
||||
<div class="outer">
|
||||
<div id="header">
|
||||
<div class="logo-box">
|
||||
<h1 class="logo"><a href="#">Vesta panel <span> </span></a></h1>
|
||||
</div>
|
||||
<ul class="settings">
|
||||
<li class="settings-item">
|
||||
<span class="logged-as">Fabricius Euphranor von Neoptolemos</span>
|
||||
<a class="item-title" href="#">Profile</a>
|
||||
</li>
|
||||
<li class="settings-item"><a class="item-title" href="#">Settings</a></li>
|
||||
<li class="logout"><a class="item-title" href="#"><span class="item-title-inner">Exit</span></a></li>
|
||||
</ul>
|
||||
<ul class="extra-services">
|
||||
<li class="service-item active">
|
||||
<span class="item-title">Backups</span>
|
||||
<i class="item-devider"></i>
|
||||
</li>
|
||||
<li class="service-item">
|
||||
<span class="item-title">Stats</span>
|
||||
<i class="item-devider"></i>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="primary-nav-box">
|
||||
<ul class="primary-nav cc">
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="users-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Users</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">386 users</span>
|
||||
<span class="def">7 blocked</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="domains-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Web Domain</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">580 domains</span>
|
||||
<span class="def">22 out of mem</span>
|
||||
<span class="def">3 waiting</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="mail-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Mail</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">320 domains</span>
|
||||
<span class="def">1209 mailboxes</span>
|
||||
<span class="def">25 full</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="db-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">DB</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">7 db</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section active">
|
||||
<div class="section-inner">
|
||||
<dl class="dns-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Dns</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">289 records</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="dnstpl-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">IP</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">7 templates</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section last-section">
|
||||
<div class="section-inner">
|
||||
<dl class="cron-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Cron</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">15 records</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="console">
|
||||
<div class="b-console">
|
||||
<div class="b-console-wrap">
|
||||
<form class="b-console-form cc" action="#" method="post">
|
||||
<fieldset>
|
||||
<input class="b-console-field" type="text" value="/"/>
|
||||
<input class="b-console-btn" type="submit" value="Go" />
|
||||
</fieldset>
|
||||
</form>
|
||||
<!-- div class="b-console-statuses">
|
||||
<div class="b-console-status cc">
|
||||
<p class="b-console-status-message">domain <b>google.com</b> have been added <br />
|
||||
Cтиль менеджмента, на первый взгляд, методически оправдывает культурный побочный PR-эффект, осознавая социальную ответственность бизнеса. Исходя из структуры пирамиды Маслоу, рекламное сообщество экономит product placement, невзирая на действия конкурентов. Узнавание бренда слабо транслирует имидж, оптимизируя бюджеты.
|
||||
</p>
|
||||
<span class="b-console-status-action">cancel</span>
|
||||
<i class="b-console-status-arrow"> </i>
|
||||
</div>
|
||||
</div -->
|
||||
</div>
|
||||
<div class="b-console-results"></div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- actions toolbar -->
|
||||
<div id="actions-toolbar" class="cc">
|
||||
<a class="add-btn" href="#"><i class="add-btn-icon"> </i>add dns</a>
|
||||
|
||||
<div class="row-filters cc">
|
||||
<div class="b-row-selector">
|
||||
<div class="checkbox-selector cc">
|
||||
<input class="styled" type="checkbox" value="" />
|
||||
<span class="selector-title">385 Selected</span>
|
||||
</div>
|
||||
<div class="context-actions">
|
||||
<div class="b-cust-sel b-cust-sel_inactive">
|
||||
<span class="title">Action</span>
|
||||
<div class="cust-sel-arrow"><i> </i></div>
|
||||
<div class="cust-sel-options">
|
||||
<div class="cust-sel-option ico_gray">Suspend</div>
|
||||
<div class="cust-sel-option ico_green">Unsuspend</div>
|
||||
<div class="cust-sel-option ico_red">Delete</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- visible only for admin -->
|
||||
<div class="domain-groups-selector">
|
||||
<div class="selector-wrap">
|
||||
<strong class="selector-title">Show:</strong>
|
||||
<span class="selected-groups">mine, vesta, Chronos, vasya (and 35 more)</span>
|
||||
</div>
|
||||
</div><!-- // visible only for admin -->
|
||||
</div>
|
||||
|
||||
</div><!-- // actions toolbar -->
|
||||
<div id="content">
|
||||
<div class="content-inner">
|
||||
<div class="dns-list">
|
||||
<!-- row 1 -->
|
||||
<div class="row first-row dns-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">active</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="names">
|
||||
<strong class="domain-name primary">naumov-socolov.co.uk</strong>
|
||||
</div>
|
||||
<div class="show-records">Show records</div>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<div class="ip-adr-box">
|
||||
<span class="ip-adr">192<span class="dot">.</span>52<span class="dot">.</span>107<span class="dot">.</span>26</span>
|
||||
<span class="prop-box template-box">
|
||||
<span class="prop-title">template:</span>
|
||||
<span class="prop-value">default</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="prop-box ttl-box">
|
||||
<span class="prop-title">ttl:</span>
|
||||
<span class="prop-value">7200</span>
|
||||
</span>
|
||||
<span class="prop-box soa-box">
|
||||
<span class="prop-title">soa:</span>
|
||||
<span class="prop-value">n1.readwriteweb.com</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 1 -->
|
||||
|
||||
<!-- row 2 -->
|
||||
<div class="row dns-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">active</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="names">
|
||||
<strong class="domain-name primary">naumov-socolov.co.uk</strong>
|
||||
</div>
|
||||
<div class="show-records">Show records</div>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<div class="ip-adr-box">
|
||||
<span class="ip-adr">192<span class="dot">.</span>52<span class="dot">.</span>107<span class="dot">.</span>26</span>
|
||||
<span class="prop-box template-box">
|
||||
<span class="prop-title">template:</span>
|
||||
<span class="prop-value">default</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="prop-box ttl-box">
|
||||
<span class="prop-title">ttl:</span>
|
||||
<span class="prop-value">7200</span>
|
||||
</span>
|
||||
<span class="prop-box soa-box">
|
||||
<span class="prop-title">soa:</span>
|
||||
<span class="prop-value">n1.readwriteweb.com</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 2 -->
|
||||
|
||||
<!-- row 3 -->
|
||||
<div class="row dns-details-row checked-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">active</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="names">
|
||||
<strong class="domain-name primary">naumov-socolov.co.uk</strong>
|
||||
</div>
|
||||
<div class="show-records">Show records</div>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<div class="ip-adr-box">
|
||||
<span class="ip-adr">192<span class="dot">.</span>52<span class="dot">.</span>107<span class="dot">.</span>26</span>
|
||||
<span class="prop-box template-box">
|
||||
<span class="prop-title">template:</span>
|
||||
<span class="prop-value">default</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="prop-box ttl-box">
|
||||
<span class="prop-title">ttl:</span>
|
||||
<span class="prop-value">7200</span>
|
||||
</span>
|
||||
<span class="prop-box soa-box">
|
||||
<span class="prop-title">soa:</span>
|
||||
<span class="prop-value">n1.readwriteweb.com</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 3 -->
|
||||
|
||||
<!-- row 4 -->
|
||||
<div class="row dns-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this check-control"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">active</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="names">
|
||||
<strong class="domain-name primary">naumov-socolov.co.uk</strong>
|
||||
</div>
|
||||
<div class="show-records hidden">Show records</div>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<div class="ip-adr-box">
|
||||
<span class="ip-adr">192<span class="dot">.</span>52<span class="dot">.</span>107<span class="dot">.</span>26</span>
|
||||
<span class="prop-box template-box">
|
||||
<span class="prop-title">template:</span>
|
||||
<span class="prop-value">default</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="prop-box ttl-box">
|
||||
<span class="prop-title">ttl:</span>
|
||||
<span class="prop-value">7200</span>
|
||||
</span>
|
||||
<span class="prop-box soa-box">
|
||||
<span class="prop-title">soa:</span>
|
||||
<span class="prop-value">n1.readwriteweb.com</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 4 -->
|
||||
|
||||
<!-- show/edit dns records contextual form -->
|
||||
<div class="b-new-entry b-records-list">
|
||||
<div class="entry-header">
|
||||
<div class="hide-records">Hide records</div>
|
||||
</div>
|
||||
<div class="form-error">
|
||||
<div class="error-box">
|
||||
<span class="error-message">Wrong record format. Need some <a class="help-tip-url" href="#">Help</a> ?</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row add-box cc">
|
||||
<a class="add-btn" href="#"><i class="add-btn-icon"> </i>add dns record</a>
|
||||
</div>
|
||||
|
||||
<div class="form-row form-row-line cc">
|
||||
<div class="field-box dns-record-box">
|
||||
<label class="field-label" for="#">record:</label>
|
||||
<div class="field-box-inner cc">
|
||||
<input class="text-field" type="text" value="" />
|
||||
<div class="field-devider">in</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="field-box dns-type-box">
|
||||
<label class="field-label" for="#">type:</label>
|
||||
<select class="styled" name="dns-type-1">
|
||||
<option value="1" selected="selected">A</option>
|
||||
<option value="2">B</option>
|
||||
<option value="3">C</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="field-box dns-value-box">
|
||||
<label class="field-label" for="#">value:</label>
|
||||
<input class="text-field" type="text" value="" />
|
||||
</div>
|
||||
<div class="delete-record"></div>
|
||||
</div>
|
||||
|
||||
<div class="form-row form-row-line cc">
|
||||
<div class="field-box dns-record-box">
|
||||
<input class="text-field" type="text" value="" />
|
||||
</div>
|
||||
<div class="field-devider">in</div>
|
||||
<div class="field-box dns-type-box">
|
||||
<select class="styled" name="dns-type-2">
|
||||
<option value="1" selected="selected">A</option>
|
||||
<option value="2">B</option>
|
||||
<option value="3">C</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="field-box dns-value-box">
|
||||
<input class="text-field" type="text" value="" />
|
||||
</div>
|
||||
<div class="delete-record"></div>
|
||||
</div>
|
||||
|
||||
<div class="form-row form-row-line cc">
|
||||
<div class="field-box dns-record-box">
|
||||
<input class="text-field" type="text" value="" />
|
||||
</div>
|
||||
<div class="field-devider">in</div>
|
||||
<div class="field-box dns-type-box">
|
||||
<select class="styled" name="dns-type-3">
|
||||
<option value="1" selected="selected">A</option>
|
||||
<option value="2">B</option>
|
||||
<option value="3">C</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="field-box dns-value-box">
|
||||
<input class="text-field" type="text" value="" />
|
||||
</div>
|
||||
<div class="delete-record"></div>
|
||||
</div>
|
||||
|
||||
<div class="form-row buttons-row cc">
|
||||
<input class="add-entry-btn" type="submit" value="save" />
|
||||
<span class="cancel-btn">Cancel</span>
|
||||
<span class="delete-btn">Delete</span>
|
||||
</div>
|
||||
</div><!-- // form -->
|
||||
|
||||
<!-- form -->
|
||||
<div class="b-new-entry b-new-entry_dns">
|
||||
<div class="entry-header">New dns</div>
|
||||
<div class="form-error">
|
||||
<div class="error-box">
|
||||
<span class="error-message">Wrong record format. Need some <a class="help-tip-url" href="#">Help</a> ?</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">domain:</label>
|
||||
<input class="text-field" type="text" value="www.digital-photography-school.com" />
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">ip address:</label>
|
||||
<div class="autocomplete-box">
|
||||
<input class="text-field" type="text" value="192.168.64.19" />
|
||||
<i class="arrow"> </i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row dns-template-box cc">
|
||||
<label class="field-label" for="#">template:</label>
|
||||
<select class="styled" name="template">
|
||||
<option value="1" selected="selected">default</option>
|
||||
<option value="2">custom</option>
|
||||
<option value="3">advanced</option>
|
||||
</select>
|
||||
<span class="context-settings">View template settings</span>
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">ttl:</label>
|
||||
<input class="text-field ttl-field" type="text" value="" />
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">soa:</label>
|
||||
<input class="text-field" type="text" value="www.digital-photography-school.com" />
|
||||
</div>
|
||||
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">suspended:</label>
|
||||
<input class="styled" type="checkbox" value="" />
|
||||
</div>
|
||||
|
||||
<div class="form-row buttons-row cc">
|
||||
<input class="add-entry-btn" type="submit" value="add" />
|
||||
<span class="cancel-btn">Cancel</span>
|
||||
<span class="delete-btn">Delete</span>
|
||||
</div>
|
||||
</div><!-- // form -->
|
||||
</div><!-- // .domain-list -->
|
||||
</div>
|
||||
</div><!-- // #content -->
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
BIN
web/static-templates/i/_asterisk.gif
Normal file
After Width: | Height: | Size: 58 B |
BIN
web/static-templates/i/asterisk1.png
Normal file
After Width: | Height: | Size: 1 KiB |
BIN
web/static-templates/i/asterisk2.png
Normal file
After Width: | Height: | Size: 958 B |
BIN
web/static-templates/i/auth/auth-bg.png
Normal file
After Width: | Height: | Size: 948 B |
BIN
web/static-templates/i/auth/checkboxes.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
web/static-templates/i/auth/form-bg.png
Normal file
After Width: | Height: | Size: 933 B |
BIN
web/static-templates/i/auth/logo.png
Normal file
After Width: | Height: | Size: 2.7 KiB |
BIN
web/static-templates/i/auth/planet-1.png
Normal file
After Width: | Height: | Size: 1 KiB |
BIN
web/static-templates/i/auth/planet-2.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
web/static-templates/i/autocomplete-field-arrows-sprite.png
Normal file
After Width: | Height: | Size: 249 B |
BIN
web/static-templates/i/backup-checkbox-checked.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
web/static-templates/i/backup-checkbox-unchecked.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
web/static-templates/i/backup-checkbox.png
Normal file
After Width: | Height: | Size: 1,015 B |
BIN
web/static-templates/i/backup-checkboxes.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
web/static-templates/i/backup-collapsed-ico.png
Normal file
After Width: | Height: | Size: 1 KiB |
BIN
web/static-templates/i/backup-expand-ico.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
web/static-templates/i/backup-ico.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
web/static-templates/i/backup-restore-ico.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
web/static-templates/i/bar-value-mark.png
Normal file
After Width: | Height: | Size: 941 B |
BIN
web/static-templates/i/check-row-sprite-2011-12-18.png
Normal file
After Width: | Height: | Size: 377 B |
BIN
web/static-templates/i/check-row-sprite_.png
Normal file
After Width: | Height: | Size: 377 B |
BIN
web/static-templates/i/checkbox-1.png
Normal file
After Width: | Height: | Size: 536 B |
BIN
web/static-templates/i/checkboxes-2011-12-18.png
Normal file
After Width: | Height: | Size: 5.7 KiB |
BIN
web/static-templates/i/chekbox-selector.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
web/static-templates/i/chosen-sprite.png
Normal file
After Width: | Height: | Size: 396 B |
BIN
web/static-templates/i/cust-option-bullets.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
web/static-templates/i/custom-arrow.png
Normal file
After Width: | Height: | Size: 1 KiB |
BIN
web/static-templates/i/delete-ico-active.png
Normal file
After Width: | Height: | Size: 175 B |
BIN
web/static-templates/i/fav.ico
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
web/static-templates/i/form-checkboxes.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 288 B After Width: | Height: | Size: 1.1 KiB |
BIN
web/static-templates/i/form-group-collapsed_.png
Normal file
After Width: | Height: | Size: 288 B |
BIN
web/static-templates/i/green-bracket-l-highlighted.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
web/static-templates/i/green-bracket-l.png
Normal file
After Width: | Height: | Size: 966 B |
BIN
web/static-templates/i/green-bracket-r-highlighted.png
Normal file
After Width: | Height: | Size: 1 KiB |
BIN
web/static-templates/i/green-bracket-r.png
Normal file
After Width: | Height: | Size: 968 B |
BIN
web/static-templates/i/group-value-bullet.png
Normal file
After Width: | Height: | Size: 961 B |
BIN
web/static-templates/i/group-values-collapsed.png
Normal file
After Width: | Height: | Size: 1,007 B |
BIN
web/static-templates/i/info-popup-bg-1.png
Normal file
After Width: | Height: | Size: 933 B |
BIN
web/static-templates/i/info-popup-bg-2.png
Normal file
After Width: | Height: | Size: 933 B |
BIN
web/static-templates/i/info-popup-bg.png
Normal file
After Width: | Height: | Size: 933 B |
BIN
web/static-templates/i/info-popup-sprite-2011-12-14.png
Normal file
After Width: | Height: | Size: 641 B |
BIN
web/static-templates/i/info-popup-sprite.png
Normal file
After Width: | Height: | Size: 2.2 KiB |
BIN
web/static-templates/i/old-add-entry-plus.gif
Normal file
After Width: | Height: | Size: 332 B |
BIN
web/static-templates/i/overrun-border.png
Normal file
After Width: | Height: | Size: 938 B |
BIN
web/static-templates/i/plus-sprite.png
Normal file
After Width: | Height: | Size: 1,021 B |
BIN
web/static-templates/i/plus-sprite1.png
Normal file
After Width: | Height: | Size: 1,019 B |
BIN
web/static-templates/i/primary-plus.gif
Normal file
After Width: | Height: | Size: 346 B |
BIN
web/static-templates/i/primary-plus_active.png
Normal file
After Width: | Height: | Size: 2.8 KiB |
BIN
web/static-templates/i/section-status-sprite-6.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
web/static-templates/i/select-arrow-2011-12-18.png
Normal file
After Width: | Height: | Size: 1,016 B |
BIN
web/static-templates/i/stats-brace.png
Normal file
After Width: | Height: | Size: 965 B |
BIN
web/static-templates/i/stats-curve-grey.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
web/static-templates/i/stats-curve.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
web/static-templates/i/thin-grey-line-3.gif
Normal file
After Width: | Height: | Size: 893 B |
BIN
web/static-templates/i/thin-grey-line-4.gif
Normal file
After Width: | Height: | Size: 814 B |
BIN
web/static-templates/i/vesta-italic-logo.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
web/static-templates/i/vesta-logo-2011-11-16.png
Normal file
After Width: | Height: | Size: 3.9 KiB |
BIN
web/static-templates/i/vesta-logo-2011-11-25.png
Normal file
After Width: | Height: | Size: 2.7 KiB |
BIN
web/static-templates/i/vesta-logo-2011-12-14.png
Normal file
After Width: | Height: | Size: 5 KiB |
|
@ -1,435 +1,472 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
|
||||
|
||||
<head>
|
||||
<title>Vesta | IP</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta http-equiv="imagetoolbar" content="false" />
|
||||
|
||||
<link rel="stylesheet" media="all" type="text/css" href="css/reset2.css" />
|
||||
<link rel="stylesheet" media="all" type="text/css" href="css/vesta.css" />
|
||||
|
||||
<!--[if lt IE 8]>
|
||||
<link rel="stylesheet" type="text/css" href="css/ie.css" />
|
||||
<![endif]-->
|
||||
|
||||
<script type="text/javascript" src="js/custom-form-elements.js"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="page">
|
||||
<div class="outer">
|
||||
<div id="header">
|
||||
<div class="logo-box">
|
||||
<h1 class="logo"><a href="#">Vesta panel <span> </span></a></h1>
|
||||
</div>
|
||||
<ul class="settings">
|
||||
<li><a href="#">settings</a></li>
|
||||
<li><a href="#">exit</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="primary-nav-box">
|
||||
<ul class="primary-nav cc">
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="users-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Users</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">386 users</span>
|
||||
<span class="def">7 blocked</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="domains-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Web Domain</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">580 domains</span>
|
||||
<span class="def">22 out of mem</span>
|
||||
<span class="def">3 waiting</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="mail-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Mail</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">320 domains</span>
|
||||
<span class="def">1209 mailboxes</span>
|
||||
<span class="def">25 full</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="db-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">DB</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">7 db</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</li>
|
||||
<li class="section active">
|
||||
<div class="section-inner">
|
||||
<dl class="dns-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Dns</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">289 records</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="dnstpl-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">IP</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">7 templates</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</li>
|
||||
<li class="section last-section">
|
||||
<div class="section-inner">
|
||||
<dl class="cron-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Cron</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">15 records</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="console">
|
||||
<div class="b-console">
|
||||
<div class="b-console-wrap">
|
||||
<form class="b-console-form cc" action="#" method="post">
|
||||
<fieldset>
|
||||
<input class="b-console-field" type="text" value="/"/>
|
||||
<input class="b-console-btn" type="submit" value="Go" />
|
||||
</fieldset>
|
||||
</form>
|
||||
<!-- div class="b-console-statuses">
|
||||
<div class="b-console-status cc">
|
||||
<p class="b-console-status-message">domain <b>google.com</b> have been added <br />
|
||||
Cтиль менеджмента, на первый взгляд, методически оправдывает культурный побочный PR-эффект, осознавая социальную ответственность бизнеса. Исходя из структуры пирамиды Маслоу, рекламное сообщество экономит product placement, невзирая на действия конкурентов. Узнавание бренда слабо транслирует имидж, оптимизируя бюджеты.
|
||||
</p>
|
||||
<span class="b-console-status-action">cancel</span>
|
||||
<i class="b-console-status-arrow"> </i>
|
||||
</div>
|
||||
</div -->
|
||||
</div>
|
||||
<div class="b-console-results"></div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- actions toolbar -->
|
||||
<div id="actions-toolbar" class="cc">
|
||||
<a class="add-btn" href="#"><i class="add-btn-icon"> </i>add ip address</a>
|
||||
<span class="select-all">select all</span>
|
||||
<span class="clear-selected">Delete selected</span>
|
||||
</div><!-- // actions toolbar -->
|
||||
<div id="content">
|
||||
<!-- additional info block -->
|
||||
<div class="b-ext-info-wrap b-ext-info-wrap_collapsed">
|
||||
<div class="b-ext-info">
|
||||
<p>Механическая природа пододвигается под устойчивый силовой трёхосный гироскопический стабилизатор, что увязывается со структурно-тектонической обстановкой, гидродинамическими условиями и литолого-минералогическим составом пород. Фосфоритообразование методически опускает уходящий огненный пояс, исходя из суммы моментов. Инерциальная навигация, в соответствии с основным законом динамики, представляет собой тальк, пользуясь последними системами уравнений. Имея такие данные, можно сделать существенный вывод о том, что маховик неустойчив.</p>
|
||||
</div>
|
||||
<div class="b-ext-info-btn"></div>
|
||||
</div><!-- // additional info block -->
|
||||
<div class="content-inner">
|
||||
<div class="ip-list">
|
||||
<!-- row 1 -->
|
||||
<div class="row first-row ip-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">enabled</span></span>
|
||||
<span class="delete-entry"><span class="delete-entry-text">delete</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="ip-adr-box">
|
||||
<span class="ip-adr">192<span class="dot">.</span>52<span class="dot">.</span>107<span class="dot">.</span>26</span>
|
||||
</div>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">netmask:</span>
|
||||
<span class="prop-value">255.255.255.0</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">interface:</span>
|
||||
<span class="prop-value">eth1</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">name:</span>
|
||||
<span class="prop-value">shared1.hosting-with-very-long-name.co.uk</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<span class="prop-box owner-box">
|
||||
<span class="prop-title">owner:</span>
|
||||
<span class="prop-value">shared1.hosting-with-very-long-name.co.uk</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">status:</span>
|
||||
<span class="prop-value">shared</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">sys users:</span>
|
||||
<span class="prop-value">9 999</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">web domains:</span>
|
||||
<span class="prop-value">2 346</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 1 -->
|
||||
|
||||
<!-- row 2 -->
|
||||
<div class="row ip-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">enabled</span></span>
|
||||
<span class="delete-entry"><span class="delete-entry-text">delete</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="ip-adr-box">
|
||||
<span class="ip-adr">192<span class="dot">.</span>52<span class="dot">.</span>107<span class="dot">.</span>26</span>
|
||||
</div>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">netmask:</span>
|
||||
<span class="prop-value">255.255.255.0</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">interface:</span>
|
||||
<span class="prop-value">eth1</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">name:</span>
|
||||
<span class="prop-value">shared1.hosting-with-very-long-name.co.uk</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<span class="prop-box owner-box">
|
||||
<span class="prop-title">owner:</span>
|
||||
<span class="prop-value">shared1.hosting-with-very-long-name.co.uk</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">status:</span>
|
||||
<span class="prop-value">shared</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">sys users:</span>
|
||||
<span class="prop-value">9 999</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">web domains:</span>
|
||||
<span class="prop-value">2 346</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 2 -->
|
||||
|
||||
<!-- row 3 -->
|
||||
<div class="row ip-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">enabled</span></span>
|
||||
<span class="delete-entry"><span class="delete-entry-text">delete</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="ip-adr-box">
|
||||
<span class="ip-adr">192<span class="dot">.</span>52<span class="dot">.</span>107<span class="dot">.</span>26</span>
|
||||
</div>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">netmask:</span>
|
||||
<span class="prop-value">255.255.255.0</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">interface:</span>
|
||||
<span class="prop-value">eth1</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">name:</span>
|
||||
<span class="prop-value">shared1.hosting-with-very-long-name.co.uk</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<span class="prop-box owner-box">
|
||||
<span class="prop-title">owner:</span>
|
||||
<span class="prop-value">shared1.hosting-with-very-long-name.co.uk</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">status:</span>
|
||||
<span class="prop-value">shared</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">sys users:</span>
|
||||
<span class="prop-value">9 999</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">web domains:</span>
|
||||
<span class="prop-value">2 346</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 3 -->
|
||||
|
||||
<!-- row 4, suspended status -->
|
||||
<div class="row ip-details-row ip-details-suspended">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-suspended-status"><span class="ip-status-text">suspended</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="ip-adr-box">
|
||||
<span class="ip-adr">192<span class="dot">.</span>52<span class="dot">.</span>107<span class="dot">.</span>26</span>
|
||||
</div>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">netmask:</span>
|
||||
<span class="prop-value">255.255.255.0</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">interface:</span>
|
||||
<span class="prop-value">eth1</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">name:</span>
|
||||
<span class="prop-value">shared1.hosting-with-very-long-name.co.uk</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<span class="prop-box owner-box">
|
||||
<span class="prop-title">owner:</span>
|
||||
<span class="prop-value">shared1.hosting-with-very-long-name.co.uk</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">status:</span>
|
||||
<span class="prop-value">shared</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">sys users:</span>
|
||||
<span class="prop-value">9 999</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">web domains:</span>
|
||||
<span class="prop-value">2 346</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 4 -->
|
||||
|
||||
|
||||
<!-- form -->
|
||||
<div class="b-new-entry b-new-entry_ip">
|
||||
<div class="entry-header">New ip address</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">ip address:</label>
|
||||
<input class="text-field" type="text" value="192.168.64.19" />
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">owner:</label>
|
||||
<select class="styled" name="ownership">
|
||||
<option value="1" selected="selected">vesta</option>
|
||||
<option value="2">new mexico</option>
|
||||
<option value="3">land of magic</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">status:</label>
|
||||
<select class="styled">
|
||||
<option value="1" selected="selected">shared</option>
|
||||
<option value="2">suspended</option>
|
||||
<option value="3">other</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">name:</label>
|
||||
<input class="text-field" type="text" value="super-puper-hoster.long-name.co.uk" />
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">interface:</label>
|
||||
<select class="styled">
|
||||
<option value="1" selected="selected">eth1</option>
|
||||
<option value="2">eth2</option>
|
||||
<option value="3">eth3</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">netmask:</label>
|
||||
<div class="autocomplete-box">
|
||||
<input class="text-field" type="text" value="" />
|
||||
<i class="arrow"> </i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row buttons-row cc">
|
||||
<input class="add-entry-btn" type="submit" value="add" />
|
||||
<span class="cancel-btn">Cancel</span>
|
||||
<span class="help-btn">Help</span>
|
||||
</div>
|
||||
</div><!-- // form -->
|
||||
</div><!-- // .ip-list -->
|
||||
</div>
|
||||
</div><!-- // #content -->
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
|
||||
|
||||
<head>
|
||||
<title>Vesta | IP</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta http-equiv="imagetoolbar" content="false" />
|
||||
|
||||
<link rel="stylesheet" media="all" type="text/css" href="css/reset2.css" />
|
||||
<link rel="stylesheet" media="all" type="text/css" href="css/vesta.css" />
|
||||
|
||||
<!--[if lt IE 8]>
|
||||
<link rel="stylesheet" type="text/css" href="css/ie.css" />
|
||||
<![endif]-->
|
||||
|
||||
<script type="text/javascript" src="js/custom-form-elements.js"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="page">
|
||||
<div class="outer">
|
||||
<div id="header">
|
||||
<div class="logo-box">
|
||||
<h1 class="logo"><a href="#">Vesta panel <span> </span></a></h1>
|
||||
</div>
|
||||
<ul class="settings">
|
||||
<li class="settings-item">
|
||||
<span class="logged-as">Fabricius Euphranor von Neoptolemos</span>
|
||||
<a class="item-title" href="#">Profile</a>
|
||||
</li>
|
||||
<li class="settings-item"><a class="item-title" href="#">Settings</a></li>
|
||||
<li class="logout"><a class="item-title" href="#"><span class="item-title-inner">Exit</span></a></li>
|
||||
</ul>
|
||||
<ul class="extra-services">
|
||||
<li class="service-item active">
|
||||
<span class="item-title">Backups</span>
|
||||
<i class="item-devider"></i>
|
||||
</li>
|
||||
<li class="service-item">
|
||||
<span class="item-title">Stats</span>
|
||||
<i class="item-devider"></i>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="primary-nav-box">
|
||||
<ul class="primary-nav cc">
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="users-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Users</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">386 users</span>
|
||||
<span class="def">7 blocked</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="domains-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Web Domain</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">580 domains</span>
|
||||
<span class="def">22 out of mem</span>
|
||||
<span class="def">3 waiting</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="mail-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Mail</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">320 domains</span>
|
||||
<span class="def">1209 mailboxes</span>
|
||||
<span class="def">25 full</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="db-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">DB</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">7 db</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section active">
|
||||
<div class="section-inner">
|
||||
<dl class="dns-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Dns</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">289 records</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section">
|
||||
<div class="section-inner">
|
||||
<dl class="dnstpl-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">IP</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">7 templates</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
<li class="section last-section">
|
||||
<div class="section-inner">
|
||||
<dl class="cron-nav-item">
|
||||
<dt class="section-title cc">
|
||||
<span class="to-section">Cron</span>
|
||||
<i class="add-entry"> </i>
|
||||
</dt>
|
||||
<dd class="section-contains">
|
||||
<span class="def">15 records</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<i class="section-devider"></i>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="console">
|
||||
<div class="b-console">
|
||||
<div class="b-console-wrap">
|
||||
<form class="b-console-form cc" action="#" method="post">
|
||||
<fieldset>
|
||||
<input class="b-console-field" type="text" value="/"/>
|
||||
<input class="b-console-btn" type="submit" value="Go" />
|
||||
</fieldset>
|
||||
</form>
|
||||
<!-- div class="b-console-statuses">
|
||||
<div class="b-console-status cc">
|
||||
<p class="b-console-status-message">domain <b>google.com</b> have been added <br />
|
||||
Cтиль менеджмента, на первый взгляд, методически оправдывает культурный побочный PR-эффект, осознавая социальную ответственность бизнеса. Исходя из структуры пирамиды Маслоу, рекламное сообщество экономит product placement, невзирая на действия конкурентов. Узнавание бренда слабо транслирует имидж, оптимизируя бюджеты.
|
||||
</p>
|
||||
<span class="b-console-status-action">cancel</span>
|
||||
<i class="b-console-status-arrow"> </i>
|
||||
</div>
|
||||
</div -->
|
||||
</div>
|
||||
<div class="b-console-results"></div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- actions toolbar -->
|
||||
<div id="actions-toolbar" class="cc">
|
||||
<a class="add-btn" href="#"><i class="add-btn-icon"> </i>add ip address</a>
|
||||
|
||||
<div class="row-filters cc">
|
||||
<div class="b-row-selector">
|
||||
<div class="checkbox-selector cc">
|
||||
<input class="styled" type="checkbox" value="" />
|
||||
<span class="selector-title">385 Selected</span>
|
||||
</div>
|
||||
<div class="context-actions">
|
||||
<div class="b-cust-sel b-cust-sel_inactive">
|
||||
<span class="title">Action</span>
|
||||
<div class="cust-sel-arrow"><i> </i></div>
|
||||
<div class="cust-sel-options">
|
||||
<div class="cust-sel-option ico_gray">Suspend</div>
|
||||
<div class="cust-sel-option ico_green">Unsuspend</div>
|
||||
<div class="cust-sel-option ico_red">Delete</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- visible only for admin -->
|
||||
<div class="domain-groups-selector">
|
||||
<div class="selector-wrap">
|
||||
<strong class="selector-title">Show:</strong>
|
||||
<span class="selected-groups">mine, vesta, Chronos, vasya (and 35 more)</span>
|
||||
</div>
|
||||
</div><!-- // visible only for admin -->
|
||||
</div>
|
||||
|
||||
</div><!-- // actions toolbar -->
|
||||
<div id="content">
|
||||
<div class="content-inner">
|
||||
<div class="ip-list">
|
||||
<!-- row 1 -->
|
||||
<div class="row first-row ip-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">active</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="ip-adr-box">
|
||||
<span class="ip-adr">192<span class="dot">.</span>52<span class="dot">.</span>107<span class="dot">.</span>26</span>
|
||||
</div>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">netmask:</span>
|
||||
<span class="prop-value">255.255.255.0</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">interface:</span>
|
||||
<span class="prop-value">eth1</span>
|
||||
</span>
|
||||
<span class="prop-box ip-name-box">
|
||||
<span class="prop-title">name:</span>
|
||||
<span class="prop-value">shared1.hosting-with-very-long-name.co.uk</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<span class="prop-box owner-box">
|
||||
<span class="prop-title">owner:</span>
|
||||
<span class="prop-value">shared1.hosting-with-very-long-name.co.uk</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">status:</span>
|
||||
<span class="prop-value">shared</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">sys users:</span>
|
||||
<span class="prop-value">9 999</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">web domains:</span>
|
||||
<span class="prop-value">2 346</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 1 -->
|
||||
|
||||
<!-- row 2 -->
|
||||
<div class="row ip-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">active</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="ip-adr-box">
|
||||
<span class="ip-adr">192<span class="dot">.</span>52<span class="dot">.</span>107<span class="dot">.</span>26</span>
|
||||
</div>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">netmask:</span>
|
||||
<span class="prop-value">255.255.255.0</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">interface:</span>
|
||||
<span class="prop-value">eth1</span>
|
||||
</span>
|
||||
<span class="prop-box ip-name-box">
|
||||
<span class="prop-title">name:</span>
|
||||
<span class="prop-value">shared1.hosting-with-very-long-name.co.uk</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<span class="prop-box owner-box">
|
||||
<span class="prop-title">owner:</span>
|
||||
<span class="prop-value">shared1.hosting-with-very-long-name.co.uk</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">status:</span>
|
||||
<span class="prop-value">shared</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">sys users:</span>
|
||||
<span class="prop-value">9 999</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">web domains:</span>
|
||||
<span class="prop-value">2 346</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 2 -->
|
||||
|
||||
<!-- row 3 -->
|
||||
<div class="row ip-details-row">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-enabled-status"><span class="ip-status-text">active</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="ip-adr-box">
|
||||
<span class="ip-adr">192<span class="dot">.</span>52<span class="dot">.</span>107<span class="dot">.</span>26</span>
|
||||
</div>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">netmask:</span>
|
||||
<span class="prop-value">255.255.255.0</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">interface:</span>
|
||||
<span class="prop-value">eth1</span>
|
||||
</span>
|
||||
<span class="prop-box ip-name-box">
|
||||
<span class="prop-title">name:</span>
|
||||
<span class="prop-value">shared1.hosting-with-very-long-name.co.uk</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<span class="prop-box owner-box">
|
||||
<span class="prop-title">owner:</span>
|
||||
<span class="prop-value">shared1.hosting-with-very-long-name.co.uk</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">status:</span>
|
||||
<span class="prop-value">shared</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">sys users:</span>
|
||||
<span class="prop-value">9 999</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">web domains:</span>
|
||||
<span class="prop-value">2 346</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 3 -->
|
||||
|
||||
<!-- row 4, suspended status -->
|
||||
<div class="row ip-details-row ip-details-suspended">
|
||||
<div class="row-actions-box cc">
|
||||
<div class="check-this"></div>
|
||||
<div class="row-operations">
|
||||
<span class="ip-status-info ip-suspended-status"><span class="ip-status-text">suspended</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-meta">
|
||||
<div class="entry-created">12.11.2010</div>
|
||||
</div>
|
||||
<div class="row-details cc">
|
||||
<div class="props-main">
|
||||
<div class="ip-adr-box">
|
||||
<span class="ip-adr">192<span class="dot">.</span>52<span class="dot">.</span>107<span class="dot">.</span>26</span>
|
||||
</div>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">netmask:</span>
|
||||
<span class="prop-value">255.255.255.0</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">interface:</span>
|
||||
<span class="prop-value">eth1</span>
|
||||
</span>
|
||||
<span class="prop-box ip-name-box">
|
||||
<span class="prop-title">name:</span>
|
||||
<span class="prop-value">shared1.hosting-with-very-long-name.co.uk</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-additional">
|
||||
<span class="prop-box owner-box">
|
||||
<span class="prop-title">owner:</span>
|
||||
<span class="prop-value">shared1.hosting-with-very-long-name.co.uk</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">status:</span>
|
||||
<span class="prop-value">shared</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="props-ext">
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">sys users:</span>
|
||||
<span class="prop-value">9 999</span>
|
||||
</span>
|
||||
<span class="prop-box">
|
||||
<span class="prop-title">web domains:</span>
|
||||
<span class="prop-value">2 346</span>
|
||||
</span>
|
||||
</div>
|
||||
</div><!-- // .row-details -->
|
||||
</div><!-- // .row 4 -->
|
||||
|
||||
|
||||
<!-- form -->
|
||||
<div class="b-new-entry b-new-entry_ip">
|
||||
<div class="entry-header">New ip address</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">ip address:</label>
|
||||
<input class="text-field" type="text" value="192.168.64.19" />
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">owner:</label>
|
||||
<select class="styled" name="ownership">
|
||||
<option value="1" selected="selected">vesta</option>
|
||||
<option value="2">new mexico</option>
|
||||
<option value="3">land of magic</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">status:</label>
|
||||
<select class="styled">
|
||||
<option value="1" selected="selected">shared</option>
|
||||
<option value="2">suspended</option>
|
||||
<option value="3">other</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">name:</label>
|
||||
<input class="text-field" type="text" value="super-puper-hoster.long-name.co.uk" />
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">interface:</label>
|
||||
<select class="styled">
|
||||
<option value="1" selected="selected">eth1</option>
|
||||
<option value="2">eth2</option>
|
||||
<option value="3">eth3</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="#">netmask:</label>
|
||||
<div class="autocomplete-box disabled-box">
|
||||
<input class="text-field" type="text" value="" disabled="disabled" />
|
||||
<i class="arrow"> </i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row buttons-row cc">
|
||||
<input class="add-entry-btn" type="submit" value="add" />
|
||||
<span class="cancel-btn">Cancel</span>
|
||||
<span class="delete-btn">Delete</span>
|
||||
</div>
|
||||
</div><!-- // form -->
|
||||
</div><!-- // .ip-list -->
|
||||
</div>
|
||||
</div><!-- // #content -->
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
81
web/static-templates/js/PIE.htc
Normal file
|
@ -0,0 +1,81 @@
|
|||
<!--
|
||||
PIE: CSS3 rendering for IE
|
||||
Version 1.0beta4
|
||||
http://css3pie.com
|
||||
Dual-licensed for use under the Apache License Version 2.0 or the General Public License (GPL) Version 2.
|
||||
-->
|
||||
<PUBLIC:COMPONENT lightWeight="true">
|
||||
<PUBLIC:ATTACH EVENT="oncontentready" FOR="element" ONEVENT="init()" />
|
||||
<PUBLIC:ATTACH EVENT="ondocumentready" FOR="element" ONEVENT="init()" />
|
||||
<PUBLIC:ATTACH EVENT="ondetach" FOR="element" ONEVENT="cleanup()" />
|
||||
|
||||
<script type="text/javascript">
|
||||
var doc = element.document;var g=window.PIE;
|
||||
if(!g){g=window.PIE={F:"-pie-",Sa:"Pie",Pa:"pie_",Jb:{TD:1,TH:1}};try{doc.execCommand("BackgroundImageCache",false,true)}catch(L){}g.J=function(){for(var a=4,b=doc.createElement("div"),c=b.getElementsByTagName("i");b.innerHTML="<!--[if gt IE "+ ++a+"]><i></i><![endif]--\>",c[0];);return a}();if(g.J===6)g.F=g.F.replace(/^-/,"");g.Ab=doc.documentMode||g.J;(function(){var a,b=0,c={};g.p={Ga:function(e){if(!a){a=doc.createDocumentFragment();a.namespaces.add("css3vml","urn:schemas-microsoft-com:vml")}return a.createElement("css3vml:"+e)},
|
||||
ta:function(e){return e&&e._pieId||(e._pieId=++b)},fb:function(e){var f,h,j,d,i=arguments;f=1;for(h=i.length;f<h;f++){d=i[f];for(j in d)if(d.hasOwnProperty(j))e[j]=d[j]}return e},Pb:function(e,f,h){var j=c[e],d,i;if(j)Object.prototype.toString.call(j)==="[object Array]"?j.push([f,h]):f.call(h,j);else{i=c[e]=[[f,h]];d=new Image;d.onload=function(){j=c[e]={i:d.width,f:d.height};for(var k=0,m=i.length;k<m;k++)i[k][0].call(i[k][1],j);d.onload=null};d.src=e}}}})();g.ia=function(){this.hb=[];this.Db={}};
|
||||
g.ia.prototype={aa:function(a){var b=g.p.ta(a),c=this.Db,e=this.hb;if(!(b in c)){c[b]=e.length;e.push(a)}},Ma:function(a){a=g.p.ta(a);var b=this.Db;if(a&&a in b){delete this.hb[b[a]];delete b[a]}},Ia:function(){for(var a=this.hb,b=a.length;b--;)a[b]&&a[b]()}};g.ya=new g.ia;g.ya.Tc=function(){var a=this;if(!a.Uc){setInterval(function(){a.Ia()},250);a.Uc=1}};g.G=new g.ia;window.attachEvent("onbeforeunload",function(){g.G.Ia()});g.G.Ea=function(a,b,c){a.attachEvent(b,c);this.aa(function(){a.detachEvent(b,
|
||||
c)})};(function(){function a(){g.za.Ia()}g.za=new g.ia;g.G.Ea(window,"onresize",a)})();(function(){function a(){g.Ra.Ia()}g.Ra=new g.ia;g.G.Ea(window,"onscroll",a);g.za.aa(a)})();(function(){function a(){c=g.Qa.wc()}function b(){if(c){for(var e=0,f=c.length;e<f;e++)g.attach(c[e]);c=0}}var c;g.G.Ea(window,"onbeforeprint",a);g.G.Ea(window,"onafterprint",b)})();g.hd=function(){function a(i){this.V=i}var b=doc.createElement("length-calc"),c=doc.documentElement,e=b.style,f={},h=["mm","cm","in","pt","pc"],
|
||||
j=h.length,d={};e.position="absolute";e.top=e.left="-9999px";for(c.appendChild(b);j--;){b.style.width="100"+h[j];f[h[j]]=b.offsetWidth/100}c.removeChild(b);a.prototype={ib:/(px|em|ex|mm|cm|in|pt|pc|%)$/,vb:function(){var i=this.Lc;if(i===void 0)i=this.Lc=parseFloat(this.V);return i},ab:function(){var i=this.ad;if(!i)i=this.ad=(i=this.V.match(this.ib))&&i[0]||"px";return i},a:function(i,k){var m=this.vb(),l=this.ab();switch(l){case "px":return m;case "%":return m*(typeof k==="function"?k():k)/100;
|
||||
case "em":return m*this.tb(i);case "ex":return m*this.tb(i)/2;default:return m*f[l]}},tb:function(i){var k=i.currentStyle.fontSize;if(k.indexOf("px")>0)return parseFloat(k);else{b.style.width="1em";i.appendChild(b);k=b.offsetWidth;b.parentNode===i&&i.removeChild(b);return k}}};g.k=function(i){return d[i]||(d[i]=new a(i))};return a}();g.Na=function(){function a(f){this.U=f}var b=g.k("50%"),c={top:1,center:1,bottom:1},e={left:1,center:1,right:1};a.prototype={Dc:function(){if(!this.sb){var f=this.U,
|
||||
h=f.length,j=g.u,d=j.ja,i=g.k("0");d=d.fa;i=["left",i,"top",i];if(h===1){f.push(new j.Ta(d,"center"));h++}if(h===2){d&(f[0].h|f[1].h)&&f[0].d in c&&f[1].d in e&&f.push(f.shift());if(f[0].h&d)if(f[0].d==="center")i[1]=b;else i[0]=f[0].d;else if(f[0].Y())i[1]=g.k(f[0].d);if(f[1].h&d)if(f[1].d==="center")i[3]=b;else i[2]=f[1].d;else if(f[1].Y())i[3]=g.k(f[1].d)}this.sb=i}return this.sb},coords:function(f,h,j){var d=this.Dc(),i=d[1].a(f,h);f=d[3].a(f,j);return{x:d[0]==="right"?h-i:i,y:d[2]==="bottom"?
|
||||
j-f:f}}};return a}();g.Rb=function(){function a(b){this.V=b}a.prototype={ib:/[a-z]+$/i,ab:function(){return this.lc||(this.lc=this.V.match(this.ib)[0].toLowerCase())},vc:function(){var b=this.fc,c;if(b===undefined){b=this.ab();c=parseFloat(this.V,10);b=this.fc=b==="deg"?c:b==="rad"?c/Math.PI*180:b==="grad"?c/400*360:b==="turn"?c*360:0}return b}};return a}();g.$b=function(){function a(c){this.V=c}var b={};a.Sc=/\s*rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d+|\d*\.\d+)\s*\)\s*/;a.gb=
|
||||
{aliceblue:"F0F8FF",antiquewhite:"FAEBD7",aqua:"0FF",aquamarine:"7FFFD4",azure:"F0FFFF",beige:"F5F5DC",bisque:"FFE4C4",black:"000",blanchedalmond:"FFEBCD",blue:"00F",blueviolet:"8A2BE2",brown:"A52A2A",burlywood:"DEB887",cadetblue:"5F9EA0",chartreuse:"7FFF00",chocolate:"D2691E",coral:"FF7F50",cornflowerblue:"6495ED",cornsilk:"FFF8DC",crimson:"DC143C",cyan:"0FF",darkblue:"00008B",darkcyan:"008B8B",darkgoldenrod:"B8860B",darkgray:"A9A9A9",darkgreen:"006400",darkkhaki:"BDB76B",darkmagenta:"8B008B",darkolivegreen:"556B2F",
|
||||
darkorange:"FF8C00",darkorchid:"9932CC",darkred:"8B0000",darksalmon:"E9967A",darkseagreen:"8FBC8F",darkslateblue:"483D8B",darkslategray:"2F4F4F",darkturquoise:"00CED1",darkviolet:"9400D3",deeppink:"FF1493",deepskyblue:"00BFFF",dimgray:"696969",dodgerblue:"1E90FF",firebrick:"B22222",floralwhite:"FFFAF0",forestgreen:"228B22",fuchsia:"F0F",gainsboro:"DCDCDC",ghostwhite:"F8F8FF",gold:"FFD700",goldenrod:"DAA520",gray:"808080",green:"008000",greenyellow:"ADFF2F",honeydew:"F0FFF0",hotpink:"FF69B4",indianred:"CD5C5C",
|
||||
indigo:"4B0082",ivory:"FFFFF0",khaki:"F0E68C",lavender:"E6E6FA",lavenderblush:"FFF0F5",lawngreen:"7CFC00",lemonchiffon:"FFFACD",lightblue:"ADD8E6",lightcoral:"F08080",lightcyan:"E0FFFF",lightgoldenrodyellow:"FAFAD2",lightgreen:"90EE90",lightgrey:"D3D3D3",lightpink:"FFB6C1",lightsalmon:"FFA07A",lightseagreen:"20B2AA",lightskyblue:"87CEFA",lightslategray:"789",lightsteelblue:"B0C4DE",lightyellow:"FFFFE0",lime:"0F0",limegreen:"32CD32",linen:"FAF0E6",magenta:"F0F",maroon:"800000",mediumauqamarine:"66CDAA",
|
||||
mediumblue:"0000CD",mediumorchid:"BA55D3",mediumpurple:"9370D8",mediumseagreen:"3CB371",mediumslateblue:"7B68EE",mediumspringgreen:"00FA9A",mediumturquoise:"48D1CC",mediumvioletred:"C71585",midnightblue:"191970",mintcream:"F5FFFA",mistyrose:"FFE4E1",moccasin:"FFE4B5",navajowhite:"FFDEAD",navy:"000080",oldlace:"FDF5E6",olive:"808000",olivedrab:"688E23",orange:"FFA500",orangered:"FF4500",orchid:"DA70D6",palegoldenrod:"EEE8AA",palegreen:"98FB98",paleturquoise:"AFEEEE",palevioletred:"D87093",papayawhip:"FFEFD5",
|
||||
peachpuff:"FFDAB9",peru:"CD853F",pink:"FFC0CB",plum:"DDA0DD",powderblue:"B0E0E6",purple:"800080",red:"F00",rosybrown:"BC8F8F",royalblue:"4169E1",saddlebrown:"8B4513",salmon:"FA8072",sandybrown:"F4A460",seagreen:"2E8B57",seashell:"FFF5EE",sienna:"A0522D",silver:"C0C0C0",skyblue:"87CEEB",slateblue:"6A5ACD",slategray:"708090",snow:"FFFAFA",springgreen:"00FF7F",steelblue:"4682B4",tan:"D2B48C",teal:"008080",thistle:"D8BFD8",tomato:"FF6347",turquoise:"40E0D0",violet:"EE82EE",wheat:"F5DEB3",white:"FFF",
|
||||
whitesmoke:"F5F5F5",yellow:"FF0",yellowgreen:"9ACD32"};a.prototype={parse:function(){if(!this.Ca){var c=this.V,e;if(e=c.match(a.Sc)){this.Ca="rgb("+e[1]+","+e[2]+","+e[3]+")";this.qb=parseFloat(e[4])}else{if((e=c.toLowerCase())in a.gb)c="#"+a.gb[e];this.Ca=c;this.qb=c==="transparent"?0:1}}},O:function(c){this.parse();return this.Ca==="currentColor"?c.currentStyle.color:this.Ca},la:function(){this.parse();return this.qb}};g.pa=function(c){return b[c]||(b[c]=new a(c))};return a}();g.u=function(){function a(c){this.Ha=
|
||||
c;this.ch=0;this.U=[];this.wa=0}var b=a.ja={xa:1,ob:2,ea:4,ac:8,pb:16,fa:32,A:64,ga:128,ha:256,Aa:512,dc:1024,URL:2048};a.Ta=function(c,e){this.h=c;this.d=e};a.Ta.prototype={db:function(){return this.h&b.A||this.h&b.ga&&this.d==="0"},Y:function(){return this.db()||this.h&b.Aa}};a.prototype={dd:/\s/,Mc:/^[\+\-]?(\d*\.)?\d+/,url:/^url\(\s*("([^"]*)"|'([^']*)'|([!#$%&*-~]*))\s*\)/i,zb:/^\-?[_a-z][\w-]*/i,Yc:/^("([^"]*)"|'([^']*)')/,Fc:/^#([\da-f]{6}|[\da-f]{3})/i,bd:{px:b.A,em:b.A,ex:b.A,mm:b.A,cm:b.A,
|
||||
"in":b.A,pt:b.A,pc:b.A,deg:b.xa,rad:b.xa,grad:b.xa},sc:{rgb:1,rgba:1,hsl:1,hsla:1},next:function(c){function e(t,n){t=new a.Ta(t,n);if(!c){k.U.push(t);k.wa++}return t}function f(){k.wa++;return null}var h,j,d,i,k=this;if(this.wa<this.U.length)return this.U[this.wa++];for(;this.dd.test(this.Ha.charAt(this.ch));)this.ch++;if(this.ch>=this.Ha.length)return f();j=this.ch;h=this.Ha.substring(this.ch);d=h.charAt(0);switch(d){case "#":if(i=h.match(this.Fc)){this.ch+=i[0].length;return e(b.ea,i[0])}break;
|
||||
case '"':case "'":if(i=h.match(this.Yc)){this.ch+=i[0].length;return e(b.dc,i[2]||i[3]||"")}break;case "/":case ",":this.ch++;return e(b.ha,d);case "u":if(i=h.match(this.url)){this.ch+=i[0].length;return e(b.URL,i[2]||i[3]||i[4]||"")}}if(i=h.match(this.Mc)){d=i[0];this.ch+=d.length;if(h.charAt(d.length)==="%"){this.ch++;return e(b.Aa,d+"%")}if(i=h.substring(d.length).match(this.zb)){d+=i[0];this.ch+=i[0].length;return e(this.bd[i[0].toLowerCase()]||b.ac,d)}return e(b.ga,d)}if(i=h.match(this.zb)){d=
|
||||
i[0];this.ch+=d.length;if(d.toLowerCase()in g.$b.gb||d==="currentColor")return e(b.ea,d);if(h.charAt(d.length)==="("){this.ch++;if(d.toLowerCase()in this.sc){h=function(t){return t&&t.h&b.ga};i=function(t){return t&&t.h&(b.ga|b.Aa)};var m=function(t,n){return t&&t.d===n},l=function(){return k.next(1)};if((d.charAt(0)==="r"?i(l()):h(l()))&&m(l(),",")&&i(l())&&m(l(),",")&&i(l())&&(d==="rgb"||d==="hsa"||m(l(),",")&&h(l()))&&m(l(),")"))return e(b.ea,this.Ha.substring(j,this.ch));return f()}return e(b.pb,
|
||||
d)}return e(b.fa,d)}this.ch++;return e(b.ob,d)},z:function(){return this.U[this.wa-- -2]},all:function(){for(;this.next(););return this.U},da:function(c,e){for(var f=[],h,j;h=this.next();){if(c(h)){j=true;this.z();break}f.push(h)}return e&&!j?null:f}};return a}();var M=function(a){this.e=a};M.prototype={K:0,Qc:function(){var a=this.Ua,b;return!a||(b=this.o())&&(a.x!==b.x||a.y!==b.y)},Vc:function(){var a=this.Ua,b;return!a||(b=this.o())&&(a.i!==b.i||a.f!==b.f)},ub:function(){var a=this.e.getBoundingClientRect();
|
||||
return{x:a.left,y:a.top,i:a.right-a.left,f:a.bottom-a.top}},o:function(){return this.K?this.Da||(this.Da=this.ub()):this.ub()},Ec:function(){return!!this.Ua},Ja:function(){++this.K},La:function(){if(!--this.K){if(this.Da)this.Ua=this.Da;this.Da=null}}};(function(){function a(b){var c=g.p.ta(b);return function(){if(this.K){var e=this.rb||(this.rb={});return c in e?e[c]:(e[c]=b.call(this))}else return b.call(this)}}g.s={K:0,$:function(b){function c(e){this.e=e}g.p.fb(c.prototype,g.s,b);c.kc={};return c},
|
||||
m:function(){var b=this.qa(),c=this.constructor.kc;return b?b in c?c[b]:(c[b]=this.ba(b)):null},qa:a(function(){var b=this.e,c=this.constructor,e=b.style;b=b.currentStyle;var f=this.na,h=this.va,j=c.ic||(c.ic=g.F+f);c=c.jc||(c.jc=g.Sa+h.charAt(0).toUpperCase()+h.substring(1));return e[c]||b.getAttribute(j)||e[h]||b.getAttribute(f)}),g:a(function(){return!!this.m()}),D:a(function(){var b=this.qa(),c=b!==this.gc;this.gc=b;return c}),ma:a,Ja:function(){++this.K},La:function(){--this.K||delete this.rb}}})();
|
||||
g.Tb=g.s.$({na:g.F+"background",va:g.Sa+"Background",nc:{scroll:1,fixed:1,local:1},Ka:{"repeat-x":1,"repeat-y":1,repeat:1,"no-repeat":1},Nc:{"padding-box":1,"border-box":1,"content-box":1},rc:{"padding-box":1,"border-box":1},Rc:{top:1,right:1,bottom:1,left:1,center:1},Wc:{contain:1,cover:1},ba:function(a){function b(u){return u.Y()||u.h&i&&u.d in t}function c(u){return u.Y()&&g.k(u.d)||u.d==="auto"&&"auto"}var e=this.e.currentStyle,f,h,j=g.u.ja,d=j.ha,i=j.fa,k=j.ea,m,l,t=this.Rc,n,p,s=null;if(this.$a()){a=
|
||||
new g.u(a);s={M:[]};for(h={};f=a.next();){m=f.h;l=f.d;if(!h.P&&m&j.pb&&l==="linear-gradient"){n={ca:[],P:l};for(p={};f=a.next();){m=f.h;l=f.d;if(m&j.ob&&l===")"){p.color&&n.ca.push(p);n.ca.length>1&&g.p.fb(h,n);break}if(m&k){if(n.Xa||n.bb){f=a.z();if(f.h!==d)break;a.next()}p={color:g.pa(l)};f=a.next();if(f.Y())p.Fb=g.k(f.d);else a.z()}else if(m&j.xa&&!n.Xa&&!p.color&&!n.ca.length)n.Xa=new g.Rb(f.d);else if(b(f)&&!n.bb&&!p.color&&!n.ca.length){a.z();n.bb=new g.Na(a.da(function(u){return!b(u)},false))}else if(m&
|
||||
d&&l===","){if(p.color){n.ca.push(p);p={}}}else break}}else if(!h.P&&m&j.URL){h.Cb=l;h.P="image"}else if(b(f)&&!h.size){a.z();h.Ya=new g.Na(a.da(function(u){return!b(u)},false))}else if(m&i)if(l in this.Ka)h.Bb=l;else if(l in this.Nc){h.kd=l;if(l in this.rc)h.clip=l}else{if(l in this.nc)h.jd=l}else if(m&k&&!s.color)s.color=g.pa(l);else if(m&d)if(l==="/"){f=a.next();m=f.h;l=f.d;if(m&i&&l in this.Wc)h.size=l;else if(l=c(f))h.size={i:l,f:c(a.next())||a.z()&&l}}else{if(l===","&&h.P){s.M.push(h);h={}}}else return null}h.P&&
|
||||
s.M.push(h)}else this.Nb(function(){var u=e.backgroundPositionX,w=e.backgroundPositionY,r=e.backgroundImage,o=e.backgroundColor;s={};if(o!=="transparent")s.color=g.pa(o);if(r!=="none")s.M=[{P:"image",Cb:(new g.u(r)).next().d,Bb:e.backgroundRepeat,Ya:new g.Na((new g.u(u+" "+w)).all())}]});return s&&(s.color||s.M&&s.M[0])?s:null},Nb:function(a){var b=this.e.runtimeStyle,c=b.backgroundImage,e=b.backgroundColor;if(c)b.backgroundImage="";if(e)b.backgroundColor="";a=a.call(this);if(c)b.backgroundImage=
|
||||
c;if(e)b.backgroundColor=e;return a},qa:g.s.ma(function(){return this.$a()||this.Nb(function(){var a=this.e.currentStyle;return a.backgroundColor+" "+a.backgroundImage+" "+a.backgroundRepeat+" "+a.backgroundPositionX+" "+a.backgroundPositionY})}),$a:g.s.ma(function(){var a=this.e;return a.style[this.va]||a.currentStyle.getAttribute(this.na)}),Eb:function(){var a=0;if(g.J<7){a=this.e;a=""+(a.style[g.Sa+"PngFix"]||a.currentStyle.getAttribute(g.F+"png-fix"))==="true"}return a},g:g.s.ma(function(){return(this.$a()||
|
||||
this.Eb())&&!!this.m()})});g.Xb=g.s.$({Ib:["Top","Right","Bottom","Left"],Kc:{thin:"1px",medium:"3px",thick:"5px"},ba:function(){var a={},b={},c={},e=false,f=true,h=true,j=true;this.Ob(function(){for(var d=this.e.currentStyle,i=0,k,m,l,t,n,p,s;i<4;i++){l=this.Ib[i];s=l.charAt(0).toLowerCase();k=b[s]=d["border"+l+"Style"];m=d["border"+l+"Color"];l=d["border"+l+"Width"];if(i>0){if(k!==t)h=false;if(m!==n)f=false;if(l!==p)j=false}t=k;n=m;p=l;c[s]=g.pa(m);l=a[s]=g.k(b[s]==="none"?"0":this.Kc[l]||l);if(l.a(this.e)>
|
||||
0)e=true}});return e?{nb:a,Zc:b,tc:c,ed:j,uc:f,$c:h}:null},qa:g.s.ma(function(){var a=this.e,b=a.currentStyle,c;a.tagName in g.Jb&&a.offsetParent.currentStyle.borderCollapse==="collapse"||this.Ob(function(){c=b.borderWidth+"|"+b.borderStyle+"|"+b.borderColor});return c}),Ob:function(a){var b=this.e.runtimeStyle,c=b.borderWidth,e=b.borderColor;if(c)b.borderWidth="";if(e)b.borderColor="";a=a.call(this);if(c)b.borderWidth=c;if(e)b.borderColor=e;return a}});(function(){g.Oa=g.s.$({na:"border-radius",
|
||||
va:"borderRadius",ba:function(b){var c=null,e,f,h,j,d=false;if(b){f=new g.u(b);var i=function(){for(var k=[],m;(h=f.next())&&h.Y();){j=g.k(h.d);m=j.vb();if(m<0)return null;if(m>0)d=true;k.push(j)}return k.length>0&&k.length<5?{tl:k[0],tr:k[1]||k[0],br:k[2]||k[0],bl:k[3]||k[1]||k[0]}:null};if(b=i()){if(h){if(h.h&g.u.ja.ha&&h.d==="/")e=i()}else e=b;if(d&&b&&e)c={x:b,y:e}}}return c}});var a=g.k("0");a={tl:a,tr:a,br:a,bl:a};g.Oa.Qb={x:a,y:a}})();g.Vb=g.s.$({na:"border-image",va:"borderImage",Ka:{stretch:1,
|
||||
round:1,repeat:1,space:1},ba:function(a){var b=null,c,e,f,h,j,d,i=0,k,m=g.u.ja,l=m.fa,t=m.ga,n=m.A,p=m.Aa;if(a){c=new g.u(a);b={};for(var s=function(r){return r&&r.h&m.ha&&r.d==="/"},u=function(r){return r&&r.h&l&&r.d==="fill"},w=function(){h=c.da(function(r){return!(r.h&(t|p))});if(u(c.next())&&!b.fill)b.fill=true;else c.z();if(s(c.next())){i++;j=c.da(function(){return!(e.h&(t|p|n))&&!(e.h&l&&e.d==="auto")});if(s(c.next())){i++;d=c.da(function(){return!(e.h&(t|n))})}}else c.z()};e=c.next();){a=e.h;
|
||||
f=e.d;if(a&(t|p)&&!h){c.z();w()}else if(u(e)&&!b.fill){b.fill=true;w()}else if(a&l&&this.Ka[f]&&!b.repeat){b.repeat={f:f};if(e=c.next())if(e.h&l&&this.Ka[e.d])b.repeat.kb=e.d;else c.z()}else if(a&m.URL&&!b.src)b.src=f;else return null}if(!b.src||!h||h.length<1||h.length>4||j&&j.length>4||i===1&&j.length<1||d&&d.length>4||i===2&&d.length<1)return null;if(!b.repeat)b.repeat={f:"stretch"};if(!b.repeat.kb)b.repeat.kb=b.repeat.f;a=function(r,o){return{T:o(r[0]),S:o(r[1]||r[0]),L:o(r[2]||r[0]),Q:o(r[3]||
|
||||
r[1]||r[0])}};b.slice=a(h,function(r){return g.k(r.h&t?r.d+"px":r.d)});b.width=j&&j.length>0?a(j,function(r){return r.h&(n|p)?g.k(r.d):r.d}):(k=this.e.currentStyle)&&{T:g.k(k.borderTopWidth),S:g.k(k.borderRightWidth),L:g.k(k.borderBottomWidth),Q:g.k(k.borderLeftWidth)};b.ua=a(d||[0],function(r){return r.h&n?g.k(r.d):r.d})}return b}});g.Zb=g.s.$({na:"box-shadow",va:"boxShadow",ba:function(a){var b,c=g.k,e=g.u.ja,f;if(a){f=new g.u(a);b={ua:[],cb:[]};for(a=function(){for(var h,j,d,i,k,m;h=f.next();){d=
|
||||
h.d;j=h.h;if(j&e.ha&&d===",")break;else if(h.db()&&!k){f.z();k=f.da(function(l){return!l.db()})}else if(j&e.ea&&!i)i=d;else if(j&e.fa&&d==="inset"&&!m)m=true;else return false}h=k&&k.length;if(h>1&&h<5){(m?b.cb:b.ua).push({fd:c(k[0].d),gd:c(k[1].d),blur:c(k[2]?k[2].d:"0"),Xc:c(k[3]?k[3].d:"0"),color:g.pa(i||"currentColor")});return true}return false};a(););}return b&&(b.cb.length||b.ua.length)?b:null}});g.ec=g.s.$({qa:g.s.ma(function(){var a=this.e.currentStyle;return a.visibility+"|"+a.display}),
|
||||
ba:function(){var a=this.e,b=a.runtimeStyle;a=a.currentStyle;var c=b.visibility,e;b.visibility="";e=a.visibility;b.visibility=c;return{cd:e!=="hidden",xc:a.display!=="none"}},g:function(){return false}});g.B={Z:function(a){function b(c,e,f,h){this.e=c;this.q=e;this.j=f;this.parent=h}g.p.fb(b.prototype,g.B,a);return b},eb:false,R:function(){return false},Kb:function(){this.n();this.g()&&this.X()},jb:function(){this.eb=true},Lb:function(){this.g()?this.X():this.n()},Wa:function(a,b){this.Hb(a);for(var c=
|
||||
this.ka||(this.ka=[]),e=a+1,f=c.length,h;e<f;e++)if(h=c[e])break;c[a]=b;this.w().insertBefore(b,h||null)},ra:function(a){var b=this.ka;return b&&b[a]||null},Hb:function(a){var b=this.ra(a),c=this.Ba;if(b&&c){c.removeChild(b);this.ka[a]=null}},sa:function(a,b,c,e){var f=this.Va||(this.Va={}),h=f[a];if(!h){h=f[a]=g.p.Ga("shape");if(b)h.appendChild(h[b]=g.p.Ga(b));if(e){c=this.ra(e);if(!c){this.Wa(e,doc.createElement("group"+e));c=this.ra(e)}}c.appendChild(h);a=h.style;a.position="absolute";a.left=a.top=
|
||||
0;a.behavior="url(#default#VML)"}return h},Za:function(a){var b=this.Va,c=b&&b[a];if(c){c.parentNode.removeChild(c);delete b[a]}return!!c},xb:function(a){var b=this.e,c=this.q.o(),e=c.i,f=c.f,h,j,d,i,k,m;c=a.x.tl.a(b,e);h=a.y.tl.a(b,f);j=a.x.tr.a(b,e);d=a.y.tr.a(b,f);i=a.x.br.a(b,e);k=a.y.br.a(b,f);m=a.x.bl.a(b,e);a=a.y.bl.a(b,f);e=Math.min(e/(c+j),f/(d+k),e/(m+i),f/(h+a));if(e<1){c*=e;h*=e;j*=e;d*=e;i*=e;k*=e;m*=e;a*=e}return{x:{tl:c,tr:j,br:i,bl:m},y:{tl:h,tr:d,br:k,bl:a}}},oa:function(a,b,c){b=
|
||||
b||1;var e,f,h=this.q.o();f=h.i*b;h=h.f*b;var j=this.j.v,d=Math.floor,i=Math.ceil,k=a?a.T*b:0,m=a?a.S*b:0,l=a?a.L*b:0;a=a?a.Q*b:0;var t,n,p,s,u;if(c||j.g()){e=this.xb(c||j.m());c=e.x.tl*b;j=e.y.tl*b;t=e.x.tr*b;n=e.y.tr*b;p=e.x.br*b;s=e.y.br*b;u=e.x.bl*b;b=e.y.bl*b;f="m"+d(a)+","+d(j)+"qy"+d(c)+","+d(k)+"l"+i(f-t)+","+d(k)+"qx"+i(f-m)+","+d(n)+"l"+i(f-m)+","+i(h-s)+"qy"+i(f-p)+","+i(h-l)+"l"+d(u)+","+i(h-l)+"qx"+d(a)+","+i(h-b)+" x e"}else f="m"+d(a)+","+d(k)+"l"+i(f-m)+","+d(k)+"l"+i(f-m)+","+i(h-
|
||||
l)+"l"+d(a)+","+i(h-l)+"xe";return f},w:function(){var a=this.parent.ra(this.C),b;if(!a){a=doc.createElement(this.Fa);b=a.style;b.position="absolute";b.top=b.left=0;this.parent.Wa(this.C,a)}return a},n:function(){this.parent.Hb(this.C);delete this.Va;delete this.ka}};g.cc=g.B.Z({g:function(){var a=this.oc;for(var b in a)if(a.hasOwnProperty(b)&&a[b].g())return true;return false},R:function(){return this.j.lb.D()},jb:function(){if(this.g()){var a=this.wb(),b=a,c;a=a.currentStyle;var e=a.position,f=
|
||||
this.w().style,h=0,j=0;j=this.q.o();if(e==="fixed"&&g.J>6){h=j.x;j=j.y;b=e}else{do b=b.offsetParent;while(b&&b.currentStyle.position==="static");if(b){c=b.getBoundingClientRect();b=b.currentStyle;h=j.x-c.left-(parseFloat(b.borderLeftWidth)||0);j=j.y-c.top-(parseFloat(b.borderTopWidth)||0)}else{b=doc.documentElement;h=j.x+b.scrollLeft-b.clientLeft;j=j.y+b.scrollTop-b.clientTop}b="absolute"}f.position=b;f.left=h;f.top=j;f.zIndex=e==="static"?-1:a.zIndex;this.eb=true}},Lb:function(){},Mb:function(){var a=
|
||||
this.j.lb.m();this.w().style.display=a.cd&&a.xc?"":"none"},Kb:function(){this.g()?this.Mb():this.n()},wb:function(){var a=this.e;return a.tagName in g.Jb?a.offsetParent:a},w:function(){var a=this.Ba,b;if(!a){b=this.wb();a=this.Ba=doc.createElement("css3-container");a.style.direction="ltr";this.Mb();b.parentNode.insertBefore(a,b)}return a},n:function(){var a=this.Ba,b;if(a&&(b=a.parentNode))b.removeChild(a);delete this.Ba;delete this.ka}});g.Sb=g.B.Z({C:2,Fa:"background",R:function(){var a=this.j;
|
||||
return a.H.D()||a.v.D()},g:function(){var a=this.j;return a.N.g()||a.v.g()||a.H.g()||a.W.g()&&a.W.m().cb},X:function(){var a=this.q.o();if(a.i&&a.f){this.yc();this.zc()}},yc:function(){var a=this.j.H.m(),b=this.q.o(),c=this.e,e=a&&a.color,f,h;if(e&&e.la()>0){this.yb();a=this.sa("bgColor","fill",this.w(),1);f=b.i;b=b.f;a.stroked=false;a.coordsize=f*2+","+b*2;a.coordorigin="1,1";a.path=this.oa(null,2);h=a.style;h.width=f;h.height=b;a.fill.color=e.O(c);c=e.la();if(c<1)a.fill.opacity=c}else this.Za("bgColor")},
|
||||
zc:function(){var a=this.j.H.m(),b=this.q.o();a=a&&a.M;var c,e,f,h,j;if(a){this.yb();e=b.i;f=b.f;for(j=a.length;j--;){b=a[j];c=this.sa("bgImage"+j,"fill",this.w(),2);c.stroked=false;c.fill.type="tile";c.fillcolor="none";c.coordsize=e*2+","+f*2;c.coordorigin="1,1";c.path=this.oa(0,2);h=c.style;h.width=e;h.height=f;if(b.P==="linear-gradient")this.mc(c,b);else{c.fill.src=b.Cb;this.Pc(c,j)}}}for(j=a?a.length:0;this.Za("bgImage"+j++););},Pc:function(a,b){g.p.Pb(a.fill.src,function(c){var e=a.fill,f=this.e,
|
||||
h=this.q.o(),j=h.i;h=h.f;var d=this.j,i=d.I.m(),k=i&&i.nb;i=k?k.t.a(f):0;var m=k?k.r.a(f):0,l=k?k.b.a(f):0;k=k?k.l.a(f):0;d=d.H.m().M[b];f=d.Ya?d.Ya.coords(f,j-c.i-k-m,h-c.f-i-l):{x:0,y:0};d=d.Bb;l=m=0;var t=j+1,n=h+1,p=g.J===8?0:1;k=Math.round(f.x)+k+0.5;i=Math.round(f.y)+i+0.5;e.position=k/j+","+i/h;if(d&&d!=="repeat"){if(d==="repeat-x"||d==="no-repeat"){m=i+1;n=i+c.f+p}if(d==="repeat-y"||d==="no-repeat"){l=k+1;t=k+c.i+p}a.style.clip="rect("+m+"px,"+t+"px,"+n+"px,"+l+"px)"}},this)},mc:function(a,
|
||||
b){function c(B,C,z,F,H){if(z===0||z===180)return[F,C];else if(z===90||z===270)return[B,H];else{z=Math.tan(-z*t/180);B=z*B-C;C=-1/z;F=C*F-H;H=C-z;return[(F-B)/H,(z*F-C*B)/H]}}function e(){w=m>=90&&m<270?i:0;r=m<180?k:0;o=i-w;x=k-r}function f(){for(;m<0;)m+=360;m%=360}function h(B,C){var z=C[0]-B[0];B=C[1]-B[1];return Math.abs(z===0?B:B===0?z:Math.sqrt(z*z+B*B))}var j=this.e,d=this.q.o(),i=d.i,k=d.f;a=a.fill;var m=b.Xa,l=b.bb;b=b.ca;d=b.length;var t=Math.PI,n,p,s,u,w,r,o,x,q,y,A,D;if(l){l=l.coords(j,
|
||||
i,k);n=l.x;p=l.y}if(m){m=m.vc();f();e();if(!l){n=w;p=r}l=c(n,p,m,o,x);s=l[0];u=l[1]}else if(l){s=i-n;u=k-p}else{n=p=s=0;u=k}l=s-n;q=u-p;if(m===void 0){m=!l?q<0?90:270:!q?l<0?180:0:-Math.atan2(q,l)/t*180;f();e()}l=m%90?Math.atan2(l*i/k,q)/t*180:m+90;l+=180;l%=360;y=h([n,p],[s,u]);s=h([w,r],c(w,r,m,o,x));u=[];p=h([n,p],c(n,p,m,w,r))/s*100;n=[];for(q=0;q<d;q++)n.push(b[q].Fb?b[q].Fb.a(j,y):q===0?0:q===d-1?y:null);for(q=1;q<d;q++){if(n[q]===null){A=n[q-1];y=q;do D=n[++y];while(D===null);n[q]=A+(D-A)/
|
||||
(y-q+1)}n[q]=Math.max(n[q],n[q-1])}for(q=0;q<d;q++)u.push(p+n[q]/s*100+"% "+b[q].color.O(j));a.angle=l;a.type="gradient";a.method="sigma";a.color=b[0].color.O(j);a.color2=b[d-1].color.O(j);a.colors.value=u.join(",")},yb:function(){var a=this.e.runtimeStyle;a.backgroundImage="url(about:blank)";a.backgroundColor="transparent"},n:function(){g.B.n.call(this);var a=this.e.runtimeStyle;a.backgroundImage=a.backgroundColor=""}});g.Wb=g.B.Z({C:4,Fa:"border",qc:{TABLE:1,INPUT:1,TEXTAREA:1,SELECT:1,OPTION:1,
|
||||
IMG:1,HR:1,FIELDSET:1},Jc:{submit:1,button:1,reset:1},R:function(){var a=this.j;return a.I.D()||a.v.D()},g:function(){var a=this.j;return(a.N.g()||a.v.g()||a.H.g())&&a.I.g()},X:function(){var a=this.e,b=this.j.I.m(),c=this.q.o(),e=c.i;c=c.f;var f,h,j,d,i;if(b){this.Hc();b=this.Bc(2);d=0;for(i=b.length;d<i;d++){j=b[d];f=this.sa("borderPiece"+d,j.stroke?"stroke":"fill",this.w());f.coordsize=e*2+","+c*2;f.coordorigin="1,1";f.path=j.path;h=f.style;h.width=e;h.height=c;f.filled=!!j.fill;f.stroked=!!j.stroke;
|
||||
if(j.stroke){f=f.stroke;f.weight=j.mb+"px";f.color=j.color.O(a);f.dashstyle=j.stroke==="dashed"?"2 2":j.stroke==="dotted"?"1 1":"solid";f.linestyle=j.stroke==="double"&&j.mb>2?"ThinThin":"Single"}else f.fill.color=j.fill.O(a)}for(;this.Za("borderPiece"+d++););}},Hc:function(){var a=this.e,b=a.currentStyle,c=a.runtimeStyle,e=a.tagName,f=g.J===6,h;if(f&&e in this.qc||e==="BUTTON"||e==="INPUT"&&a.type in this.Jc){c.borderWidth="";e=this.j.I.Ib;for(h=e.length;h--;){f=e[h];c["padding"+f]="";c["padding"+
|
||||
f]=g.k(b["padding"+f]).a(a)+g.k(b["border"+f+"Width"]).a(a)+(!g.J===8&&h%2?1:0)}c.borderWidth=0}else if(f){if(a.childNodes.length!==1||a.firstChild.tagName!=="ie6-mask"){b=doc.createElement("ie6-mask");e=b.style;e.visibility="visible";for(e.zoom=1;e=a.firstChild;)b.appendChild(e);a.appendChild(b);c.visibility="hidden"}}else c.borderColor="transparent"},Bc:function(a){var b=this.e,c,e,f,h=this.j.I,j=[],d,i,k,m,l=Math.round,t,n,p;if(h.g()){c=h.m();h=c.nb;n=c.Zc;p=c.tc;if(c.ed&&c.$c&&c.uc){if(p.t.la()>
|
||||
0){c=h.t.a(b);k=c/2;j.push({path:this.oa({T:k,S:k,L:k,Q:k},a),stroke:n.t,color:p.t,mb:c})}}else{a=a||1;c=this.q.o();e=c.i;f=c.f;c=l(h.t.a(b));k=l(h.r.a(b));m=l(h.b.a(b));b=l(h.l.a(b));var s={t:c,r:k,b:m,l:b};b=this.j.v;if(b.g())t=this.xb(b.m());d=Math.floor;i=Math.ceil;var u=function(o,x){return t?t[o][x]:0},w=function(o,x,q,y,A,D){var B=u("x",o),C=u("y",o),z=o.charAt(1)==="r";o=o.charAt(0)==="b";return B>0&&C>0?(D?"al":"ae")+(z?i(e-B):d(B))*a+","+(o?i(f-C):d(C))*a+","+(d(B)-x)*a+","+(d(C)-q)*a+","+
|
||||
y*65535+","+2949075*(A?1:-1):(D?"m":"l")+(z?e-x:x)*a+","+(o?f-q:q)*a},r=function(o,x,q,y){var A=o==="t"?d(u("x","tl"))*a+","+i(x)*a:o==="r"?i(e-x)*a+","+d(u("y","tr"))*a:o==="b"?i(e-u("x","br"))*a+","+d(f-x)*a:d(x)*a+","+i(f-u("y","bl"))*a;o=o==="t"?i(e-u("x","tr"))*a+","+i(x)*a:o==="r"?i(e-x)*a+","+i(f-u("y","br"))*a:o==="b"?d(u("x","bl"))*a+","+d(f-x)*a:d(x)*a+","+d(u("y","tl"))*a;return q?(y?"m"+o:"")+"l"+A:(y?"m"+A:"")+"l"+o};b=function(o,x,q,y,A,D){var B=o==="l"||o==="r",C=s[o],z,F;if(C>0&&n[o]!==
|
||||
"none"&&p[o].la()>0){z=s[B?o:x];x=s[B?x:o];F=s[B?o:q];q=s[B?q:o];if(n[o]==="dashed"||n[o]==="dotted"){j.push({path:w(y,z,x,D+45,0,1)+w(y,0,0,D,1,0),fill:p[o]});j.push({path:r(o,C/2,0,1),stroke:n[o],mb:C,color:p[o]});j.push({path:w(A,F,q,D,0,1)+w(A,0,0,D-45,1,0),fill:p[o]})}else j.push({path:w(y,z,x,D+45,0,1)+r(o,C,0,0)+w(A,F,q,D,0,0)+(n[o]==="double"&&C>2?w(A,F-d(F/3),q-d(q/3),D-45,1,0)+r(o,i(C/3*2),1,0)+w(y,z-d(z/3),x-d(x/3),D,1,0)+"x "+w(y,d(z/3),d(x/3),D+45,0,1)+r(o,d(C/3),1,0)+w(A,d(F/3),d(q/
|
||||
3),D,0,0):"")+w(A,0,0,D-45,1,0)+r(o,0,1,0)+w(y,0,0,D,1,0),fill:p[o]})}};b("t","l","r","tl","tr",90);b("r","t","b","tr","br",0);b("b","r","l","br","bl",-90);b("l","b","t","bl","tl",-180)}}return j},n:function(){g.B.n.call(this);this.e.runtimeStyle.borderColor=""}});g.Ub=g.B.Z({C:5,Oc:["t","tr","r","br","b","bl","l","tl","c"],R:function(){return this.j.N.D()},g:function(){return this.j.N.g()},X:function(){this.w();var a=this.j.N.m(),b=this.q.o(),c=this.e,e=this.Gb;g.p.Pb(a.src,function(f){function h(w,
|
||||
r,o,x,q){w=e[w].style;var y=Math.max;w.width=y(r,0);w.height=y(o,0);w.left=x;w.top=q}function j(w,r,o){for(var x=0,q=w.length;x<q;x++)e[w[x]].imagedata[r]=o}var d=b.i,i=b.f,k=a.width,m=k.T.a(c),l=k.S.a(c),t=k.L.a(c);k=k.Q.a(c);var n=a.slice,p=n.T.a(c),s=n.S.a(c),u=n.L.a(c);n=n.Q.a(c);h("tl",k,m,0,0);h("t",d-k-l,m,k,0);h("tr",l,m,d-l,0);h("r",l,i-m-t,d-l,m);h("br",l,t,d-l,i-t);h("b",d-k-l,t,k,i-t);h("bl",k,t,0,i-t);h("l",k,i-m-t,0,m);h("c",d-k-l,i-m-t,k,m);j(["tl","t","tr"],"cropBottom",(f.f-p)/f.f);
|
||||
j(["tl","l","bl"],"cropRight",(f.i-n)/f.i);j(["bl","b","br"],"cropTop",(f.f-u)/f.f);j(["tr","r","br"],"cropLeft",(f.i-s)/f.i);if(a.repeat.kb==="stretch"){j(["l","r","c"],"cropTop",p/f.f);j(["l","r","c"],"cropBottom",u/f.f)}if(a.repeat.f==="stretch"){j(["t","b","c"],"cropLeft",n/f.i);j(["t","b","c"],"cropRight",s/f.i)}e.c.style.display=a.fill?"":"none"},this)},w:function(){var a=this.parent.ra(this.C),b,c,e,f=this.Oc,h=f.length;if(!a){a=doc.createElement("border-image");b=a.style;b.position="absolute";
|
||||
this.Gb={};for(e=0;e<h;e++){c=this.Gb[f[e]]=g.p.Ga("rect");c.appendChild(g.p.Ga("imagedata"));b=c.style;b.behavior="url(#default#VML)";b.position="absolute";b.top=b.left=0;c.imagedata.src=this.j.N.m().src;c.stroked=false;c.filled=false;a.appendChild(c)}this.parent.Wa(this.C,a)}return a}});g.Yb=g.B.Z({C:1,Fa:"outset-box-shadow",R:function(){var a=this.j;return a.W.D()||a.v.D()},g:function(){var a=this.j.W;return a.g()&&a.m().ua[0]},X:function(){function a(z,F,H,K,J,v,E){z=b.sa("shadow"+z+F,"fill",
|
||||
e,j-z);F=z.fill;z.coordsize=m*2+","+l*2;z.coordorigin="1,1";z.stroked=false;z.filled=true;F.color=J.O(c);if(v){F.type="gradienttitle";F.color2=F.color;F.opacity=0}z.path=E;u=z.style;u.left=H;u.top=K;u.width=m;u.height=l;return z}var b=this,c=this.e,e=this.w(),f=this.j,h=f.W.m().ua;f=f.v.m();var j=h.length,d=j,i,k=this.q.o(),m=k.i,l=k.f;k=g.J===8?1:0;for(var t=["tl","tr","br","bl"],n,p,s,u,w,r,o,x,q,y,A,D,B,C;d--;){p=h[d];w=p.fd.a(c);r=p.gd.a(c);i=p.Xc.a(c);o=p.blur.a(c);p=p.color;x=-i-o;if(!f&&o)f=
|
||||
g.Oa.Qb;x=this.oa({T:x,S:x,L:x,Q:x},2,f);if(o){q=(i+o)*2+m;y=(i+o)*2+l;A=o*2/q;D=o*2/y;if(o-i>m/2||o-i>l/2)for(i=4;i--;){n=t[i];B=n.charAt(0)==="b";C=n.charAt(1)==="r";n=a(d,n,w,r,p,o,x);s=n.fill;s.focusposition=(C?1-A:A)+","+(B?1-D:D);s.focussize="0,0";n.style.clip="rect("+((B?y/2:0)+k)+"px,"+(C?q:q/2)+"px,"+(B?y:y/2)+"px,"+((C?q/2:0)+k)+"px)"}else{n=a(d,"",w,r,p,o,x);s=n.fill;s.focusposition=A+","+D;s.focussize=1-A*2+","+(1-D*2)}}else{n=a(d,"",w,r,p,o,x);w=p.la();if(w<1)n.fill.opacity=w}}}});g.bc=
|
||||
g.B.Z({C:6,Fa:"imgEl",R:function(){var a=this.j;return this.e.src!==this.hc||a.v.D()},g:function(){var a=this.j;return a.v.g()||a.H.Eb()},X:function(){this.hc=j;this.Gc();var a=this.sa("img","fill",this.w()),b=a.fill,c=this.q.o(),e=c.i;c=c.f;var f=this.j.I.m();f=f&&f.nb;var h=this.e,j=h.src,d=Math.round;a.stroked=false;b.type="frame";b.src=j;b.position=(e?0.5/e:0)+","+(c?0.5/c:0);a.coordsize=e*2+","+c*2;a.coordorigin="1,1";a.path=this.oa(f?{T:d(f.t.a(h)),S:d(f.r.a(h)),L:d(f.b.a(h)),Q:d(f.l.a(h))}:
|
||||
0,2);a=a.style;a.width=e;a.height=c},Gc:function(){this.e.runtimeStyle.filter="alpha(opacity=0)"},n:function(){g.B.n.call(this);this.e.runtimeStyle.filter=""}});g.Qa=function(){function a(d){function i(){if(!z){var v,E,G=d.currentStyle,I=G.getAttribute(c)==="true";J=G.getAttribute(e);J=g.Ab===8?J!=="false":J==="true";if(!C){C=1;d.runtimeStyle.zoom=1;G=d;for(var O=1;G=G.previousSibling;)if(G.nodeType===1){O=0;break}if(O)d.className+=" "+g.Pa+"first-child"}y.Ja();if(I&&(E=y.o())&&(v=doc.documentElement||
|
||||
doc.body)&&(E.y>v.clientHeight||E.x>v.clientWidth||E.y+E.f<0||E.x+E.i<0)){if(!H){H=1;g.Ra.aa(i)}}else{z=1;H=C=0;g.Ra.Ma(i);A={H:new g.Tb(d),I:new g.Xb(d),N:new g.Vb(d),v:new g.Oa(d),W:new g.Zb(d),lb:new g.ec(d)};D=[A.H,A.I,A.N,A.v,A.W,A.lb];v=new g.cc(d,y,A);E=[new g.Yb(d,y,A,v),new g.Sb(d,y,A,v),new g.Wb(d,y,A,v),new g.Ub(d,y,A,v)];d.tagName==="IMG"&&E.push(new g.bc(d,y,A,v));v.oc=E;q=[v].concat(E);if(v=d.currentStyle.getAttribute(g.F+"watch-ancestors")){B=[];v=parseInt(v,10);E=0;for(I=d.parentNode;I&&
|
||||
(v==="NaN"||E++<v);){B.push(I);I.attachEvent("onpropertychange",u);I.attachEvent("onmouseenter",p);I.attachEvent("onmouseleave",s);I=I.parentNode}}if(J){g.ya.aa(m);g.ya.Tc()}m(1)}if(!F){F=1;d.attachEvent("onmove",k);d.attachEvent("onresize",k);d.attachEvent("onpropertychange",l);d.attachEvent("onmouseenter",p);d.attachEvent("onmouseleave",s);g.za.aa(k);g.G.aa(o)}y.La()}}function k(){y&&y.Ec()&&m()}function m(v){if(!K)if(z){var E,G;w();if(v||y.Qc()){E=0;for(G=q.length;E<G;E++)q[E].jb()}if(v||y.Vc()){E=
|
||||
0;for(G=q.length;E<G;E++)q[E].Lb()}r()}else C||i()}function l(){var v,E,G;v=event;if(!K&&!(v&&v.propertyName in j))if(z){w();v=0;for(E=q.length;v<E;v++){G=q[v];G.eb||G.jb();G.R()&&G.Kb()}r()}else C||i()}function t(){if(d)d.className+=f}function n(){if(d)d.className=d.className.replace(h,"")}function p(){setTimeout(t,0)}function s(){setTimeout(n,0)}function u(){var v=event.propertyName;if(v==="className"||v==="id")l()}function w(){y.Ja();for(var v=D.length;v--;)D[v].Ja()}function r(){for(var v=D.length;v--;)D[v].La();
|
||||
y.La()}function o(){if(F){if(B)for(var v=0,E=B.length,G;v<E;v++){G=B[v];G.detachEvent("onpropertychange",u);G.detachEvent("onmouseenter",p);G.detachEvent("onmouseleave",s)}d.detachEvent("onmove",m);d.detachEvent("onresize",m);d.detachEvent("onpropertychange",l);d.detachEvent("onmouseenter",p);d.detachEvent("onmouseleave",s);g.G.Ma(o);F=0}}function x(){if(!K){var v,E;o();K=1;if(q){v=0;for(E=q.length;v<E;v++)q[v].n()}J&&g.ya.Ma(m);g.za.Ma(m);q=y=A=D=B=d=null}}var q,y=new M(d),A,D,B,C,z,F,H,K,J;this.Ic=
|
||||
i;this.update=m;this.n=x;this.Ac=d}var b={},c=g.F+"lazy-init",e=g.F+"poll",f=" "+g.Pa+"hover",h=new RegExp("\\b"+g.Pa+"hover\\b","g"),j={background:1,bgColor:1,display:1};a.Cc=function(d){var i=g.p.ta(d);return b[i]||(b[i]=new a(d))};a.n=function(d){d=g.p.ta(d);var i=b[d];if(i){i.n();delete b[d]}};a.wc=function(){var d=[],i;if(b){for(var k in b)if(b.hasOwnProperty(k)){i=b[k];d.push(i.Ac);i.n()}b={}}return d};return a}();g.attach=function(a){g.Ab<9&&g.Qa.Cc(a).Ic()};g.detach=function(a){g.Qa.n(a)}};
|
||||
var N=window.PIE,P=element;function init(){N&&doc.media!=="print"&&N.attach(P)}function cleanup(){if(N){N.detach(P);N=P=0}}P.readyState==="complete"&&init();
|
||||
</script>
|
||||
</PUBLIC:COMPONENT>
|
13
web/static-templates/js/backups-control.js
Normal file
|
@ -0,0 +1,13 @@
|
|||
$(document).ready(function(){
|
||||
|
||||
var area = $('.backups-list .detailed-restore-url');
|
||||
|
||||
|
||||
area.hover(
|
||||
function() {
|
||||
$(this).prev().hide();
|
||||
},
|
||||
function() {
|
||||
$(this).prev().show();
|
||||
});
|
||||
});
|
3
web/static-templates/js/common.js
Normal file
|
@ -0,0 +1,3 @@
|
|||
$(document).ready(function(){
|
||||
$('.remember-me').checkBox();
|
||||
});
|
|
@ -1,144 +1,144 @@
|
|||
/*
|
||||
|
||||
CUSTOM FORM ELEMENTS
|
||||
|
||||
Created by Ryan Fait
|
||||
www.ryanfait.com
|
||||
|
||||
The only things you may need to change in this file are the following
|
||||
variables: checkboxHeight, radioHeight and selectWidth (lines 24, 25, 26)
|
||||
|
||||
The numbers you set for checkboxHeight and radioHeight should be one quarter
|
||||
of the total height of the image want to use for checkboxes and radio
|
||||
buttons. Both images should contain the four stages of both inputs stacked
|
||||
on top of each other in this order: unchecked, unchecked-clicked, checked,
|
||||
checked-clicked.
|
||||
|
||||
You may need to adjust your images a bit if there is a slight vertical
|
||||
movement during the different stages of the button activation.
|
||||
|
||||
The value of selectWidth should be the width of your select list image.
|
||||
|
||||
Visit http://ryanfait.com/ for more information.
|
||||
|
||||
*/
|
||||
|
||||
var checkboxHeight = "25";
|
||||
var radioHeight = "25";
|
||||
var selectWidth = "210";
|
||||
|
||||
|
||||
/* No need to change anything after this */
|
||||
|
||||
|
||||
document.write('<style type="text/css">input.styled { display: none; } select.styled { position: relative; width: ' + selectWidth + 'px; opacity: 0; filter: alpha(opacity=0); z-index: 5; } .disabled { opacity: 0.5; filter: alpha(opacity=50); }</style>');
|
||||
|
||||
var Custom = {
|
||||
init: function() {
|
||||
var inputs = document.getElementsByTagName("input"), span = Array(), textnode, option, active;
|
||||
for(a = 0; a < inputs.length; a++) {
|
||||
if((inputs[a].type == "checkbox" || inputs[a].type == "radio") && inputs[a].className == "styled") {
|
||||
span[a] = document.createElement("span");
|
||||
span[a].className = inputs[a].type;
|
||||
|
||||
if(inputs[a].checked == true) {
|
||||
if(inputs[a].type == "checkbox") {
|
||||
position = "0 -" + (checkboxHeight*2) + "px";
|
||||
span[a].style.backgroundPosition = position;
|
||||
} else {
|
||||
position = "0 -" + (radioHeight*2) + "px";
|
||||
span[a].style.backgroundPosition = position;
|
||||
}
|
||||
}
|
||||
inputs[a].parentNode.insertBefore(span[a], inputs[a]);
|
||||
inputs[a].onchange = Custom.clear;
|
||||
if(!inputs[a].getAttribute("disabled")) {
|
||||
span[a].onmousedown = Custom.pushed;
|
||||
span[a].onmouseup = Custom.check;
|
||||
} else {
|
||||
span[a].className = span[a].className += " disabled";
|
||||
}
|
||||
}
|
||||
}
|
||||
inputs = document.getElementsByTagName("select");
|
||||
for(a = 0; a < inputs.length; a++) {
|
||||
if(inputs[a].className == "styled") {
|
||||
option = inputs[a].getElementsByTagName("option");
|
||||
active = option[0].childNodes[0].nodeValue;
|
||||
textnode = document.createTextNode(active);
|
||||
for(b = 0; b < option.length; b++) {
|
||||
if(option[b].selected == true) {
|
||||
textnode = document.createTextNode(option[b].childNodes[0].nodeValue);
|
||||
}
|
||||
}
|
||||
span[a] = document.createElement("span");
|
||||
span[a].className = "select";
|
||||
span[a].id = "select" + inputs[a].name;
|
||||
span[a].appendChild(textnode);
|
||||
inputs[a].parentNode.insertBefore(span[a], inputs[a]);
|
||||
if(!inputs[a].getAttribute("disabled")) {
|
||||
inputs[a].onchange = Custom.choose;
|
||||
} else {
|
||||
inputs[a].previousSibling.className = inputs[a].previousSibling.className += " disabled";
|
||||
}
|
||||
}
|
||||
}
|
||||
document.onmouseup = Custom.clear;
|
||||
},
|
||||
pushed: function() {
|
||||
element = this.nextSibling;
|
||||
if(element.checked == true && element.type == "checkbox") {
|
||||
this.style.backgroundPosition = "0 -" + checkboxHeight*3 + "px";
|
||||
} else if(element.checked == true && element.type == "radio") {
|
||||
this.style.backgroundPosition = "0 -" + radioHeight*3 + "px";
|
||||
} else if(element.checked != true && element.type == "checkbox") {
|
||||
this.style.backgroundPosition = "0 -" + checkboxHeight + "px";
|
||||
} else {
|
||||
this.style.backgroundPosition = "0 -" + radioHeight + "px";
|
||||
}
|
||||
},
|
||||
check: function() {
|
||||
element = this.nextSibling;
|
||||
if(element.checked == true && element.type == "checkbox") {
|
||||
this.style.backgroundPosition = "0 0";
|
||||
element.checked = false;
|
||||
} else {
|
||||
if(element.type == "checkbox") {
|
||||
this.style.backgroundPosition = "0 -" + checkboxHeight*2 + "px";
|
||||
} else {
|
||||
this.style.backgroundPosition = "0 -" + radioHeight*2 + "px";
|
||||
group = this.nextSibling.name;
|
||||
inputs = document.getElementsByTagName("input");
|
||||
for(a = 0; a < inputs.length; a++) {
|
||||
if(inputs[a].name == group && inputs[a] != this.nextSibling) {
|
||||
inputs[a].previousSibling.style.backgroundPosition = "0 0";
|
||||
}
|
||||
}
|
||||
}
|
||||
element.checked = true;
|
||||
}
|
||||
},
|
||||
clear: function() {
|
||||
inputs = document.getElementsByTagName("input");
|
||||
for(var b = 0; b < inputs.length; b++) {
|
||||
if(inputs[b].type == "checkbox" && inputs[b].checked == true && inputs[b].className == "styled") {
|
||||
inputs[b].previousSibling.style.backgroundPosition = "0 -" + checkboxHeight*2 + "px";
|
||||
} else if(inputs[b].type == "checkbox" && inputs[b].className == "styled") {
|
||||
inputs[b].previousSibling.style.backgroundPosition = "0 0";
|
||||
} else if(inputs[b].type == "radio" && inputs[b].checked == true && inputs[b].className == "styled") {
|
||||
inputs[b].previousSibling.style.backgroundPosition = "0 -" + radioHeight*2 + "px";
|
||||
} else if(inputs[b].type == "radio" && inputs[b].className == "styled") {
|
||||
inputs[b].previousSibling.style.backgroundPosition = "0 0";
|
||||
}
|
||||
}
|
||||
},
|
||||
choose: function() {
|
||||
option = this.getElementsByTagName("option");
|
||||
for(d = 0; d < option.length; d++) {
|
||||
if(option[d].selected == true)
|
||||
document.getElementById("select" + this.name).childNodes[0].nodeValue = option[d].childNodes[0].nodeValue;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
window.onload = Custom.init;
|
||||
/*
|
||||
|
||||
CUSTOM FORM ELEMENTS
|
||||
|
||||
Created by Ryan Fait
|
||||
www.ryanfait.com
|
||||
|
||||
The only things you may need to change in this file are the following
|
||||
variables: checkboxHeight, radioHeight and selectWidth (lines 24, 25, 26)
|
||||
|
||||
The numbers you set for checkboxHeight and radioHeight should be one quarter
|
||||
of the total height of the image want to use for checkboxes and radio
|
||||
buttons. Both images should contain the four stages of both inputs stacked
|
||||
on top of each other in this order: unchecked, unchecked-clicked, checked,
|
||||
checked-clicked.
|
||||
|
||||
You may need to adjust your images a bit if there is a slight vertical
|
||||
movement during the different stages of the button activation.
|
||||
|
||||
The value of selectWidth should be the width of your select list image.
|
||||
|
||||
Visit http://ryanfait.com/ for more information.
|
||||
|
||||
*/
|
||||
|
||||
var checkboxHeight = "25";
|
||||
var radioHeight = "25";
|
||||
var selectWidth = "210";
|
||||
|
||||
|
||||
/* No need to change anything after this */
|
||||
|
||||
|
||||
document.write('<style type="text/css">input.styled { display: none; } select.styled { position: relative; width: ' + selectWidth + 'px; opacity: 0; filter: alpha(opacity=0); z-index: 5; }</style>');
|
||||
|
||||
var Custom = {
|
||||
init: function() {
|
||||
var inputs = document.getElementsByTagName("input"), span = Array(), textnode, option, active;
|
||||
for(a = 0; a < inputs.length; a++) {
|
||||
if((inputs[a].type == "checkbox" || inputs[a].type == "radio") && inputs[a].className == "styled") {
|
||||
span[a] = document.createElement("span");
|
||||
span[a].className = inputs[a].type;
|
||||
|
||||
if(inputs[a].checked == true) {
|
||||
if(inputs[a].type == "checkbox") {
|
||||
position = "0 -" + (checkboxHeight*2) + "px";
|
||||
span[a].style.backgroundPosition = position;
|
||||
} else {
|
||||
position = "0 -" + (radioHeight*2) + "px";
|
||||
span[a].style.backgroundPosition = position;
|
||||
}
|
||||
}
|
||||
inputs[a].parentNode.insertBefore(span[a], inputs[a]);
|
||||
inputs[a].onchange = Custom.clear;
|
||||
if(!inputs[a].getAttribute("disabled")) {
|
||||
span[a].onmousedown = Custom.pushed;
|
||||
span[a].onmouseup = Custom.check;
|
||||
} else {
|
||||
span[a].className = span[a].className += " disabled";
|
||||
}
|
||||
}
|
||||
}
|
||||
inputs = document.getElementsByTagName("select");
|
||||
for(a = 0; a < inputs.length; a++) {
|
||||
if(inputs[a].className == "styled") {
|
||||
option = inputs[a].getElementsByTagName("option");
|
||||
active = option[0].childNodes[0].nodeValue;
|
||||
textnode = document.createTextNode(active);
|
||||
for(b = 0; b < option.length; b++) {
|
||||
if(option[b].selected == true) {
|
||||
textnode = document.createTextNode(option[b].childNodes[0].nodeValue);
|
||||
}
|
||||
}
|
||||
span[a] = document.createElement("span");
|
||||
span[a].className = "select";
|
||||
span[a].id = "select" + inputs[a].name;
|
||||
span[a].appendChild(textnode);
|
||||
inputs[a].parentNode.insertBefore(span[a], inputs[a]);
|
||||
if(!inputs[a].getAttribute("disabled")) {
|
||||
inputs[a].onchange = Custom.choose;
|
||||
} else {
|
||||
inputs[a].previousSibling.className = inputs[a].previousSibling.className += " disabled";
|
||||
}
|
||||
}
|
||||
}
|
||||
document.onmouseup = Custom.clear;
|
||||
},
|
||||
pushed: function() {
|
||||
element = this.nextSibling;
|
||||
if(element.checked == true && element.type == "checkbox") {
|
||||
this.style.backgroundPosition = "0 -" + checkboxHeight*3 + "px";
|
||||
} else if(element.checked == true && element.type == "radio") {
|
||||
this.style.backgroundPosition = "0 -" + radioHeight*3 + "px";
|
||||
} else if(element.checked != true && element.type == "checkbox") {
|
||||
this.style.backgroundPosition = "0 -" + checkboxHeight + "px";
|
||||
} else {
|
||||
this.style.backgroundPosition = "0 -" + radioHeight + "px";
|
||||
}
|
||||
},
|
||||
check: function() {
|
||||
element = this.nextSibling;
|
||||
if(element.checked == true && element.type == "checkbox") {
|
||||
this.style.backgroundPosition = "0 0";
|
||||
element.checked = false;
|
||||
} else {
|
||||
if(element.type == "checkbox") {
|
||||
this.style.backgroundPosition = "0 -" + checkboxHeight*2 + "px";
|
||||
} else {
|
||||
this.style.backgroundPosition = "0 -" + radioHeight*2 + "px";
|
||||
group = this.nextSibling.name;
|
||||
inputs = document.getElementsByTagName("input");
|
||||
for(a = 0; a < inputs.length; a++) {
|
||||
if(inputs[a].name == group && inputs[a] != this.nextSibling) {
|
||||
inputs[a].previousSibling.style.backgroundPosition = "0 0";
|
||||
}
|
||||
}
|
||||
}
|
||||
element.checked = true;
|
||||
}
|
||||
},
|
||||
clear: function() {
|
||||
inputs = document.getElementsByTagName("input");
|
||||
for(var b = 0; b < inputs.length; b++) {
|
||||
if(inputs[b].type == "checkbox" && inputs[b].checked == true && inputs[b].className == "styled") {
|
||||
inputs[b].previousSibling.style.backgroundPosition = "0 -" + checkboxHeight*2 + "px";
|
||||
} else if(inputs[b].type == "checkbox" && inputs[b].className == "styled") {
|
||||
inputs[b].previousSibling.style.backgroundPosition = "0 0";
|
||||
} else if(inputs[b].type == "radio" && inputs[b].checked == true && inputs[b].className == "styled") {
|
||||
inputs[b].previousSibling.style.backgroundPosition = "0 -" + radioHeight*2 + "px";
|
||||
} else if(inputs[b].type == "radio" && inputs[b].className == "styled") {
|
||||
inputs[b].previousSibling.style.backgroundPosition = "0 0";
|
||||
}
|
||||
}
|
||||
},
|
||||
choose: function() {
|
||||
option = this.getElementsByTagName("option");
|
||||
for(d = 0; d < option.length; d++) {
|
||||
if(option[d].selected == true) {
|
||||
document.getElementById("select" + this.name).childNodes[0].nodeValue = option[d].childNodes[0].nodeValue;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
window.onload = Custom.init;
|
6240
web/static-templates/js/jquery-1.4.2.js
vendored
Normal file
236
web/static-templates/js/jquery.ui.widget.js
vendored
Normal file
|
@ -0,0 +1,236 @@
|
|||
/*!
|
||||
* jQuery UI Widget 1.8
|
||||
*
|
||||
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* http://docs.jquery.com/UI/Widget
|
||||
*/
|
||||
(function( $ ) {
|
||||
|
||||
var _remove = $.fn.remove;
|
||||
|
||||
$.fn.remove = function( selector, keepData ) {
|
||||
return this.each(function() {
|
||||
if ( !keepData ) {
|
||||
if ( !selector || $.filter( selector, [ this ] ).length ) {
|
||||
$( "*", this ).add( this ).each(function() {
|
||||
$( this ).triggerHandler( "remove" );
|
||||
});
|
||||
}
|
||||
}
|
||||
return _remove.call( $(this), selector, keepData );
|
||||
});
|
||||
};
|
||||
|
||||
$.widget = function( name, base, prototype ) {
|
||||
var namespace = name.split( "." )[ 0 ],
|
||||
fullName;
|
||||
name = name.split( "." )[ 1 ];
|
||||
fullName = namespace + "-" + name;
|
||||
|
||||
if ( !prototype ) {
|
||||
prototype = base;
|
||||
base = $.Widget;
|
||||
}
|
||||
|
||||
// create selector for plugin
|
||||
$.expr[ ":" ][ fullName ] = function( elem ) {
|
||||
return !!$.data( elem, name );
|
||||
};
|
||||
|
||||
$[ namespace ] = $[ namespace ] || {};
|
||||
$[ namespace ][ name ] = function( options, element ) {
|
||||
// allow instantiation without initializing for simple inheritance
|
||||
if ( arguments.length ) {
|
||||
this._createWidget( options, element );
|
||||
}
|
||||
};
|
||||
|
||||
var basePrototype = new base();
|
||||
// we need to make the options hash a property directly on the new instance
|
||||
// otherwise we'll modify the options hash on the prototype that we're
|
||||
// inheriting from
|
||||
// $.each( basePrototype, function( key, val ) {
|
||||
// if ( $.isPlainObject(val) ) {
|
||||
// basePrototype[ key ] = $.extend( {}, val );
|
||||
// }
|
||||
// });
|
||||
basePrototype.options = $.extend( {}, basePrototype.options );
|
||||
$[ namespace ][ name ].prototype = $.extend( true, basePrototype, {
|
||||
namespace: namespace,
|
||||
widgetName: name,
|
||||
widgetEventPrefix: $[ namespace ][ name ].prototype.widgetEventPrefix || name,
|
||||
widgetBaseClass: fullName
|
||||
}, prototype );
|
||||
|
||||
$.widget.bridge( name, $[ namespace ][ name ] );
|
||||
};
|
||||
|
||||
$.widget.bridge = function( name, object ) {
|
||||
$.fn[ name ] = function( options ) {
|
||||
var isMethodCall = typeof options === "string",
|
||||
args = Array.prototype.slice.call( arguments, 1 ),
|
||||
returnValue = this;
|
||||
|
||||
// allow multiple hashes to be passed on init
|
||||
options = !isMethodCall && args.length ?
|
||||
$.extend.apply( null, [ true, options ].concat(args) ) :
|
||||
options;
|
||||
|
||||
// prevent calls to internal methods
|
||||
if ( isMethodCall && options.substring( 0, 1 ) === "_" ) {
|
||||
return returnValue;
|
||||
}
|
||||
|
||||
if ( isMethodCall ) {
|
||||
this.each(function() {
|
||||
var instance = $.data( this, name ),
|
||||
methodValue = instance && $.isFunction( instance[options] ) ?
|
||||
instance[ options ].apply( instance, args ) :
|
||||
instance;
|
||||
if ( methodValue !== instance && methodValue !== undefined ) {
|
||||
returnValue = methodValue;
|
||||
return false;
|
||||
}
|
||||
});
|
||||
} else {
|
||||
this.each(function() {
|
||||
var instance = $.data( this, name );
|
||||
if ( instance ) {
|
||||
if ( options ) {
|
||||
instance.option( options );
|
||||
}
|
||||
instance._init();
|
||||
} else {
|
||||
$.data( this, name, new object( options, this ) );
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
return returnValue;
|
||||
};
|
||||
};
|
||||
|
||||
$.Widget = function( options, element ) {
|
||||
// allow instantiation without initializing for simple inheritance
|
||||
if ( arguments.length ) {
|
||||
this._createWidget( options, element );
|
||||
}
|
||||
};
|
||||
|
||||
$.Widget.prototype = {
|
||||
widgetName: "widget",
|
||||
widgetEventPrefix: "",
|
||||
options: {
|
||||
disabled: false
|
||||
},
|
||||
_createWidget: function( options, element ) {
|
||||
// $.widget.bridge stores the plugin instance, but we do it anyway
|
||||
// so that it's stored even before the _create function runs
|
||||
this.element = $( element ).data( this.widgetName, this );
|
||||
this.options = $.extend( true, {},
|
||||
this.options,
|
||||
$.metadata && $.metadata.get( element )[ this.widgetName ],
|
||||
options );
|
||||
|
||||
var self = this;
|
||||
this.element.bind( "remove." + this.widgetName, function() {
|
||||
self.destroy();
|
||||
});
|
||||
|
||||
this._create();
|
||||
this._init();
|
||||
},
|
||||
_create: function() {},
|
||||
_init: function() {},
|
||||
|
||||
destroy: function() {
|
||||
this.element
|
||||
.unbind( "." + this.widgetName )
|
||||
.removeData( this.widgetName );
|
||||
this.widget()
|
||||
.unbind( "." + this.widgetName )
|
||||
.removeAttr( "aria-disabled" )
|
||||
.removeClass(
|
||||
this.widgetBaseClass + "-disabled " +
|
||||
this.namespace + "-state-disabled" );
|
||||
},
|
||||
|
||||
widget: function() {
|
||||
return this.element;
|
||||
},
|
||||
|
||||
option: function( key, value ) {
|
||||
var options = key,
|
||||
self = this;
|
||||
|
||||
if ( arguments.length === 0 ) {
|
||||
// don't return a reference to the internal hash
|
||||
return $.extend( {}, self.options );
|
||||
}
|
||||
|
||||
if (typeof key === "string" ) {
|
||||
if ( value === undefined ) {
|
||||
return this.options[ key ];
|
||||
}
|
||||
options = {};
|
||||
options[ key ] = value;
|
||||
}
|
||||
|
||||
$.each( options, function( key, value ) {
|
||||
self._setOption( key, value );
|
||||
});
|
||||
|
||||
return self;
|
||||
},
|
||||
_setOption: function( key, value ) {
|
||||
this.options[ key ] = value;
|
||||
|
||||
if ( key === "disabled" ) {
|
||||
this.widget()
|
||||
[ value ? "addClass" : "removeClass"](
|
||||
this.widgetBaseClass + "-disabled" + " " +
|
||||
this.namespace + "-state-disabled" )
|
||||
.attr( "aria-disabled", value );
|
||||
}
|
||||
|
||||
return this;
|
||||
},
|
||||
|
||||
enable: function() {
|
||||
return this._setOption( "disabled", false );
|
||||
},
|
||||
disable: function() {
|
||||
return this._setOption( "disabled", true );
|
||||
},
|
||||
|
||||
_trigger: function( type, event, data ) {
|
||||
var callback = this.options[ type ];
|
||||
|
||||
event = $.Event( event );
|
||||
event.type = ( type === this.widgetEventPrefix ?
|
||||
type :
|
||||
this.widgetEventPrefix + type ).toLowerCase();
|
||||
data = data || {};
|
||||
|
||||
// copy original event properties over to the new event
|
||||
// this would happen if we could call $.event.fix instead of $.Event
|
||||
// but we don't have a way to force an event to be fixed multiple times
|
||||
if ( event.originalEvent ) {
|
||||
for ( var i = $.event.props.length, prop; i; ) {
|
||||
prop = $.event.props[ --i ];
|
||||
event[ prop ] = event.originalEvent[ prop ];
|
||||
}
|
||||
}
|
||||
|
||||
this.element.trigger( event, data );
|
||||
|
||||
return !( $.isFunction(callback) &&
|
||||
callback.call( this.element[0], event, data ) === false ||
|
||||
event.isDefaultPrevented() );
|
||||
}
|
||||
};
|
||||
|
||||
})( jQuery );
|
75
web/static-templates/js/jquery.usermode.js
Normal file
|
@ -0,0 +1,75 @@
|
|||
/**
|
||||
* @author trixta
|
||||
*/
|
||||
(function($){
|
||||
$.userMode = (function(){
|
||||
var userBg,
|
||||
timer,
|
||||
testDiv,
|
||||
boundEvents = 0;
|
||||
|
||||
function testBg(){
|
||||
testDiv = testDiv || $('<div></div>').css({position: 'absolute', left: '-999em', top: '-999px', width: '0px', height: '0px'}).appendTo('body');
|
||||
var black = $.curCSS( testDiv.css({backgroundColor: '#000000'})[0], 'backgroundColor', true),
|
||||
white = $.curCSS( testDiv.css({backgroundColor: '#ffffff'})[0], 'backgroundColor', true),
|
||||
newBgStatus = (black === white || white === 'transparent');
|
||||
if(newBgStatus != userBg){
|
||||
userBg = newBgStatus;
|
||||
$.event.trigger('_internalusermode');
|
||||
}
|
||||
return userBg;
|
||||
}
|
||||
|
||||
function init(){
|
||||
testBg();
|
||||
timer = setInterval(testBg, 3000);
|
||||
}
|
||||
|
||||
function stop(){
|
||||
clearInterval(timer);
|
||||
testDiv.remove();
|
||||
testDiv = null;
|
||||
}
|
||||
|
||||
$.event.special.usermode = {
|
||||
setup: function(){
|
||||
(!boundEvents && init());
|
||||
boundEvents++;
|
||||
var jElem = $(this)
|
||||
.bind('_internalusermode', $.event.special.usermode.handler);
|
||||
//always trigger
|
||||
setTimeout(function(){
|
||||
jElem.triggerHandler('_internalusermode');
|
||||
}, 1);
|
||||
return true;
|
||||
},
|
||||
teardown: function(){
|
||||
boundEvents--;
|
||||
(!boundEvents && stop());
|
||||
$(this).unbind('_internalusermode', $.event.special.usermode.handler);
|
||||
return true;
|
||||
},
|
||||
handler: function(e){
|
||||
e.type = 'usermode';
|
||||
e.disabled = !userBg;
|
||||
e.enabled = userBg;
|
||||
return jQuery.event.handle.apply(this, arguments);
|
||||
}
|
||||
};
|
||||
|
||||
return {
|
||||
get: testBg
|
||||
};
|
||||
|
||||
})();
|
||||
|
||||
$.fn.userMode = function(fn){
|
||||
return this[(fn) ? 'bind' : 'trigger']('usermode', fn);
|
||||
};
|
||||
|
||||
$(function(){
|
||||
$('html').userMode(function(e){
|
||||
$('html')[e.enabled ? 'addClass' : 'removeClass']('hcm');
|
||||
});
|
||||
});
|
||||
})(jQuery);
|
3
web/static-templates/js/ui.checkbox.init.js
Normal file
|
@ -0,0 +1,3 @@
|
|||
$(document).ready(function(){
|
||||
$('.remember-me').checkBox();
|
||||
});
|
276
web/static-templates/js/ui.checkbox.js
Normal file
|
@ -0,0 +1,276 @@
|
|||
/**
|
||||
* @author alexander.farkas
|
||||
* @version 1.4.3
|
||||
*/
|
||||
(function($){
|
||||
|
||||
var supportsValidity;
|
||||
(function(){
|
||||
if(!$.prop || supportsValidity){return;}
|
||||
var supportTest = function(){
|
||||
supportsValidity = !!$('<input />').prop('validity');
|
||||
};
|
||||
supportTest();
|
||||
$(supportTest);
|
||||
})();
|
||||
|
||||
$.widget('ui.checkBox', {
|
||||
options: {
|
||||
hideInput: true,
|
||||
addVisualElement: true,
|
||||
addLabel: true
|
||||
},
|
||||
_create: function(){
|
||||
var that = this,
|
||||
opts = this.options
|
||||
;
|
||||
|
||||
if(!this.element.is(':radio,:checkbox')){
|
||||
if(this.element[0].elements && $.nodeName(this.element[0], 'form')){
|
||||
$(this.element[0].elements).filter(':radio,:checkbox').checkBox(opts);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
this._proxiedReflectUI = $.proxy(this, 'reflectUI');
|
||||
|
||||
this.labels = $([]);
|
||||
|
||||
this.checkedStatus = false;
|
||||
this.disabledStatus = false;
|
||||
this.hoverStatus = false;
|
||||
|
||||
this.inputType = this.element[0].type;
|
||||
this.radio = this.inputType == 'radio';
|
||||
|
||||
this.visualElement = $([]);
|
||||
if (opts.hideInput) {
|
||||
this.element.addClass('ui-helper-hidden-accessible');
|
||||
if(opts.addVisualElement){
|
||||
this.visualElement = $('<span />')
|
||||
.addClass('ui-'+this.inputType)
|
||||
;
|
||||
this.element.after(this.visualElement[0]);
|
||||
}
|
||||
}
|
||||
|
||||
if(opts.addLabel){
|
||||
var id = this.element[0].id;
|
||||
if(id){
|
||||
this.labels = $('label[for="' + id + '"]', this.element[0].form || this.element[0].ownerDocument).add(this.element.parent('label'));
|
||||
}
|
||||
if(!this.labels[0]){
|
||||
this.labels = this.element.closest('label', this.element[0].form);
|
||||
}
|
||||
this.labels.addClass(this.radio ? 'ui-radio' : 'ui-checkbox');
|
||||
}
|
||||
|
||||
this.visualGroup = this.visualElement.add(this.labels);
|
||||
|
||||
this._addEvents();
|
||||
|
||||
this.initialized = true;
|
||||
this.reflectUI({type: 'initialreflect'});
|
||||
return undefined;
|
||||
},
|
||||
_addEvents: function(){
|
||||
var that = this,
|
||||
|
||||
opts = this.options,
|
||||
|
||||
toggleHover = function(e){
|
||||
if(that.disabledStatus){
|
||||
return false;
|
||||
}
|
||||
that.hover = (e.type == 'focus' || e.type == 'mouseenter');
|
||||
if(e.type == 'focus'){
|
||||
that.visualGroup.addClass(that.inputType +'-focused');
|
||||
} else if(e.type == 'blur'){
|
||||
that.visualGroup.removeClass(that.inputType +'-focused');
|
||||
}
|
||||
that._changeStateClassChain();
|
||||
return undefined;
|
||||
}
|
||||
;
|
||||
|
||||
this.element
|
||||
.bind('click.checkBox invalid.checkBox', this._proxiedReflectUI)
|
||||
.bind('focus.checkBox blur.checkBox', toggleHover)
|
||||
;
|
||||
if (opts.hideInput){
|
||||
this.element
|
||||
.bind('usermode', function(e){
|
||||
(e.enabled &&
|
||||
that.destroy.call(that, true));
|
||||
})
|
||||
;
|
||||
}
|
||||
if(opts.addVisualElement){
|
||||
this.visualElement
|
||||
.bind('click.checkBox', function(e){
|
||||
that.element[0].click();
|
||||
return false;
|
||||
})
|
||||
;
|
||||
}
|
||||
|
||||
this.visualGroup.bind('mouseenter.checkBox mouseleave.checkBox', toggleHover);
|
||||
|
||||
},
|
||||
_changeStateClassChain: function(){
|
||||
var allElements = this.labels.add(this.visualElement),
|
||||
stateClass = '',
|
||||
baseClass = 'ui-'+ this.inputType
|
||||
;
|
||||
|
||||
if(this.checkedStatus){
|
||||
stateClass += '-checked';
|
||||
allElements.addClass(baseClass+'-checked');
|
||||
} else {
|
||||
allElements.removeClass(baseClass+'-checked');
|
||||
}
|
||||
|
||||
if(this.disabledStatus){
|
||||
stateClass += '-disabled';
|
||||
allElements.addClass(baseClass+'-disabled');
|
||||
} else {
|
||||
allElements.removeClass(baseClass+'-disabled');
|
||||
}
|
||||
if(this.hover){
|
||||
stateClass += '-hover';
|
||||
allElements.addClass(baseClass+'-hover');
|
||||
} else {
|
||||
allElements.removeClass(baseClass+'-hover');
|
||||
}
|
||||
|
||||
baseClass += '-state';
|
||||
if(stateClass){
|
||||
stateClass = baseClass + stateClass;
|
||||
}
|
||||
|
||||
function switchStateClass(){
|
||||
var classes = this.className.split(' '),
|
||||
found = false;
|
||||
$.each(classes, function(i, classN){
|
||||
if(classN.indexOf(baseClass) === 0){
|
||||
found = true;
|
||||
classes[i] = stateClass;
|
||||
return false;
|
||||
}
|
||||
return undefined;
|
||||
});
|
||||
if(!found){
|
||||
classes.push(stateClass);
|
||||
}
|
||||
this.className = classes.join(' ');
|
||||
}
|
||||
|
||||
this.visualGroup.each(switchStateClass);
|
||||
},
|
||||
destroy: function(onlyCss){
|
||||
this.element.removeClass('ui-helper-hidden-accessible');
|
||||
this.visualElement.addClass('ui-helper-hidden');
|
||||
if (!onlyCss) {
|
||||
var o = this.options;
|
||||
this.element.unbind('.checkBox');
|
||||
this.visualElement.remove();
|
||||
this.labels
|
||||
.unbind('.checkBox')
|
||||
.removeClass('ui-state-hover ui-state-checked ui-state-disabled')
|
||||
;
|
||||
}
|
||||
},
|
||||
|
||||
disable: function(status){
|
||||
if(status === undefined){
|
||||
status = true;
|
||||
}
|
||||
this.element[0].disabled = status;
|
||||
this.reflectUI({type: 'manuallydisabled'});
|
||||
},
|
||||
|
||||
enable: function(){
|
||||
this.element[0].disabled = false;
|
||||
this.reflectUI({type: 'manuallyenabled'});
|
||||
},
|
||||
|
||||
toggle: function(e){
|
||||
this.changeCheckStatus(!(this.element.is(':checked')), e);
|
||||
},
|
||||
|
||||
changeCheckStatus: function(status, e){
|
||||
if(e && e.type == 'click' && this.element[0].disabled){
|
||||
return false;
|
||||
}
|
||||
this.element[0].checked = !!status;
|
||||
this.reflectUI(e || {
|
||||
type: 'changecheckstatus'
|
||||
});
|
||||
return undefined;
|
||||
},
|
||||
propagate: function(n, e, _noGroupReflect){
|
||||
if(!e || e.type != 'initialreflect'){
|
||||
if (this.radio && !_noGroupReflect) {
|
||||
var elem = this.element[0];
|
||||
//dynamic
|
||||
$('[name="'+ elem.name +'"]', elem.form || elem.ownerDocument).checkBox('reflectUI', e, true);
|
||||
|
||||
}
|
||||
return this._trigger(n, e, {
|
||||
options: this.options,
|
||||
checked: this.checkedStatus,
|
||||
labels: this.labels,
|
||||
disabled: this.disabledStatus
|
||||
});
|
||||
}
|
||||
return undefined;
|
||||
},
|
||||
changeValidityState: function(){
|
||||
if(supportsValidity){
|
||||
this.visualGroup[ !this.element.prop('willValidate') || (this.element.prop('validity') || {valid: true}).valid ? 'removeClass' : 'addClass' ](this.inputType +'-invalid');
|
||||
}
|
||||
},
|
||||
reflectUI: function(e){
|
||||
|
||||
var oldChecked = this.checkedStatus,
|
||||
oldDisabledStatus = this.disabledStatus
|
||||
;
|
||||
|
||||
this.disabledStatus = this.element.is(':disabled');
|
||||
this.checkedStatus = this.element.is(':checked');
|
||||
if(!e || e.type !== 'initialreflect'){
|
||||
this.changeValidityState();
|
||||
}
|
||||
|
||||
if (this.disabledStatus != oldDisabledStatus || this.checkedStatus !== oldChecked) {
|
||||
this._changeStateClassChain();
|
||||
|
||||
(this.disabledStatus != oldDisabledStatus &&
|
||||
this.propagate('disabledchange', e));
|
||||
|
||||
(this.checkedStatus !== oldChecked &&
|
||||
this.propagate('change', e));
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
if($.propHooks){
|
||||
$.each({checked: 'changeCheckStatus', disabled: 'disable'}, function(name, fn){
|
||||
//be hook friendly
|
||||
if(!$.propHooks[name]){
|
||||
$.propHooks[name] = {};
|
||||
}
|
||||
var oldSetHook = $.propHooks[name].set;
|
||||
|
||||
$.propHooks[name].set = function(elem, value){
|
||||
var widget = $.data(elem, 'checkBox');
|
||||
if(widget){
|
||||
widget[fn](!!value);
|
||||
}
|
||||
return oldSetHook && oldSetHook(elem, value) ;
|
||||
};
|
||||
|
||||
});
|
||||
}
|
||||
})(jQuery);
|
58
web/static-templates/login-form.html
Normal file
|
@ -0,0 +1,58 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
|
||||
|
||||
<head>
|
||||
<title>Vesta | Login Form</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta http-equiv="imagetoolbar" content="false" />
|
||||
|
||||
<link rel="stylesheet" media="all" type="text/css" href="css/reset2.css" />
|
||||
<link rel="stylesheet" media="all" type="text/css" href="css/vesta-login-form.css" />
|
||||
|
||||
<!--[if lt IE 8]>
|
||||
<link rel="stylesheet" type="text/css" href="css/ie.css" />
|
||||
<![endif]-->
|
||||
</head>
|
||||
<body class="page-auth">
|
||||
<div class="page">
|
||||
<div class="b-auth-form">
|
||||
<div class="b-auth-form-wrap">
|
||||
<img class="vesta-logo" src="i/auth/logo.png" width="72" height="24" alt="" />
|
||||
<div class="b-client-title">
|
||||
<span class="client-title-wrap">Rackspace <i class="planets"> </i></span>
|
||||
</div>
|
||||
<form class="auth" action="#" method="post">
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="email">Email</label>
|
||||
<input class="field-text" id="email" type="text" tabindex="1"/>
|
||||
</div>
|
||||
<div class="form-row cc">
|
||||
<label class="field-label" for="password">Password</label>
|
||||
<input class="field-text" id="password" type="password" tabindex="2"/>
|
||||
</div>
|
||||
<div class="error-box">Login or password is wrong</div>
|
||||
<div class="form-row last-row cc">
|
||||
<div class="b-remember">
|
||||
<input class="remember-me" id="remember-me" name="remember_me" type="checkbox" value="1" tabindex="3"/>
|
||||
<label class="remember-label" for="remember-me">remember me</label>
|
||||
</div>
|
||||
<input class="sumbit-btn" type="submit" value="enter" tabindex="4"/>
|
||||
</div>
|
||||
</form>
|
||||
<p class="forgot-pwd"><a class="forgot-pwd-url" href="#">forgot password?</a></p>
|
||||
<div class="footnotes cc">
|
||||
<p class="additional-info">For questions please contact <a class="questions-url" href="mailto:support@vestacp.com">support@vestacp.com</a></p>
|
||||
<address class="imprint">© 2011 Vesta Control Panel</address>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Grab Google CDN's jQuery. fall back to local if necessary -->
|
||||
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.js"></script>
|
||||
<script>!window.jQuery && document.write(unescape('%3Cscript src="js/jquery-1.4.2.js"%3E%3C/script%3E'))</script>
|
||||
<script src="js/jquery.ui.widget.js"></script>
|
||||
<script src="js/jquery.usermode.js"></script>
|
||||
<script src="js/ui.checkbox.js"></script>
|
||||
<script src="js/common.js"></script>
|
||||
</body>
|
||||
</html>
|