mirror of
https://github.com/Piwigo/Piwigo.git
synced 2026-08-07 01:03:31 +02:00
add AdminTools to trunk
git-svn-id: http://piwigo.org/svn/trunk@28694 68402e56-0260-453c-a942-63ccdbb3a9ee
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
{html_style}
|
||||
.graphicalCheckbox {
|
||||
font-size:16px;
|
||||
line-height:16px;
|
||||
}
|
||||
|
||||
.graphicalCheckbox + input {
|
||||
display:none;
|
||||
}
|
||||
{/html_style}
|
||||
|
||||
{footer_script}
|
||||
jQuery('#ato-config input[type=checkbox]').change(function() {
|
||||
jQuery(this).prev().toggleClass('icon-check icon-check-empty');
|
||||
});
|
||||
jQuery('#ato-config input[type=radio]').change(function() {
|
||||
jQuery('#ato-config input[type=radio][name='+ $(this).attr('name') +']').prev().toggleClass('icon-check icon-check-empty');
|
||||
});
|
||||
{/footer_script}
|
||||
|
||||
<div class="titrePage">
|
||||
<h2>Admin Tools</h2>
|
||||
</div>
|
||||
|
||||
<form method="post" action="" class="properties" id="ato-config">
|
||||
<fieldset>
|
||||
<legend>{'Configuration'|translate}</legend>
|
||||
<ul>
|
||||
<li>
|
||||
<label>
|
||||
<span class="graphicalCheckbox icon-check{if not $AdminTools.default_open}-empty{/if}"></span>
|
||||
<input type="checkbox" name="default_open"{if $AdminTools.default_open} checked="checked"{/if}>
|
||||
<b>{'Open toolbar by default'|translate}</b>
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<label>
|
||||
<span class="graphicalCheckbox icon-check{if not $AdminTools.public_quick_edit}-empty{/if}"></span>
|
||||
<input type="checkbox" name="public_quick_edit"{if $AdminTools.public_quick_edit} checked="checked"{/if}>
|
||||
<b>{'Give access to quick edit to photo owners even if they are not admin'|translate}</b>
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<b>{'Closed icon position'|translate} :</b>
|
||||
<label>
|
||||
<span class="graphicalCheckbox icon-check{if $AdminTools.closed_position!='left'}-empty{/if}"></span>
|
||||
<input type="radio" name="closed_position" value="left"{if $AdminTools.closed_position=='left'} checked="checked"{/if}>
|
||||
{'left'|translate}
|
||||
</label>
|
||||
<label>
|
||||
<span class="graphicalCheckbox icon-check{if $AdminTools.closed_position!='right'}-empty{/if}"></span>
|
||||
<input type="radio" name="closed_position" value="right"{if $AdminTools.closed_position=='right'} checked="checked"{/if}>
|
||||
{'right'|translate}
|
||||
</label>
|
||||
</li>
|
||||
</ul>
|
||||
</fieldset>
|
||||
|
||||
<p class="formButtons"><input type="submit" name="save_config" value="{'Save Settings'|translate}"></p>
|
||||
</form>
|
||||
@@ -0,0 +1,39 @@
|
||||
Font license info
|
||||
|
||||
|
||||
## Font Awesome
|
||||
|
||||
Copyright (C) 2012 by Dave Gandy
|
||||
|
||||
Author: Dave Gandy
|
||||
License: SIL ()
|
||||
Homepage: http://fortawesome.github.com/Font-Awesome/
|
||||
|
||||
|
||||
## Entypo
|
||||
|
||||
Copyright (C) 2012 by Daniel Bruce
|
||||
|
||||
Author: Daniel Bruce
|
||||
License: CC BY-SA (http://creativecommons.org/licenses/by-sa/2.0/)
|
||||
Homepage: http://www.entypo.com
|
||||
|
||||
|
||||
## Iconic
|
||||
|
||||
Copyright (C) 2012 by P.J. Onori
|
||||
|
||||
Author: P.J. Onori
|
||||
License: SIL (http://scripts.sil.org/OFL)
|
||||
Homepage: http://somerandomdude.com/work/iconic/
|
||||
|
||||
|
||||
## MFG Labs
|
||||
|
||||
Copyright (C) 2012 by Daniel Bruce
|
||||
|
||||
Author: MFG Labs
|
||||
License: SIL (http://scripts.sil.org/OFL)
|
||||
Homepage: http://www.mfglabs.com/
|
||||
|
||||
|
||||
@@ -0,0 +1,75 @@
|
||||
This webfont is generated by http://fontello.com open source project.
|
||||
|
||||
|
||||
================================================================================
|
||||
Please, note, that you should obey original font licences, used to make this
|
||||
webfont pack. Details available in LICENSE.txt file.
|
||||
|
||||
- Usually, it's enough to publish content of LICENSE.txt file somewhere on your
|
||||
site in "About" section.
|
||||
|
||||
- If your project is open-source, usually, it will be ok to make LICENSE.txt
|
||||
file publically available in your repository.
|
||||
|
||||
- Fonts, used in Fontello, don't require to make clickable links on your site.
|
||||
But any kind of additional authors crediting is welcome.
|
||||
================================================================================
|
||||
|
||||
|
||||
Comments on archive content
|
||||
---------------------------
|
||||
|
||||
- /font/* - fonts in different formats
|
||||
|
||||
- /css/* - different kinds of css, for all situations. Should be ok with
|
||||
twitter bootstrap. Also, you can skip <i> style and assign icon classes
|
||||
directly to text elements, if you don't mind about IE7.
|
||||
|
||||
- demo.html - demo file, to show your webfont content
|
||||
|
||||
- LICENSE.txt - license info about source fonts, used to build your one.
|
||||
|
||||
- config.json - keeps your settings. You can import it back to fontello anytime,
|
||||
to continue your work
|
||||
|
||||
|
||||
Why so many CSS files ?
|
||||
-----------------------
|
||||
|
||||
Because we like to fit all your needs :)
|
||||
|
||||
- basic file, <your_font_name>.css - is usually enougth, in contains @font-face
|
||||
and character codes definition
|
||||
|
||||
- *-ie7.css - if you need IE7 support, but still don't wish to put char codes
|
||||
directly into html
|
||||
|
||||
- *-codes.css and *-ie7-codes.css - if you like to use your own @font-face
|
||||
rules, but still wish to benefit of css generation. That can be very
|
||||
convenient for automated assets build systems. When you need to update font -
|
||||
no needs to manually edit files, just override old version with archive
|
||||
content. See fontello source codes for example.
|
||||
|
||||
- *-embedded.css - basic css file, but with embedded WOFF font, to avoid
|
||||
CORS issues in Firefox and IE9+, when fonts are hosted on the separate domain.
|
||||
We strongly recommend to resolve this issue by `Access-Control-Allow-Origin`
|
||||
server headers. But if you ok with dirty hack - this file is for you. Note,
|
||||
that data url moved to separate @font-face to avoid problems with <IE9, when
|
||||
string is too long.
|
||||
|
||||
- animate.css - use it to get ideas about spinner rotation animation.
|
||||
|
||||
|
||||
Attention for server setup
|
||||
--------------------------
|
||||
|
||||
You MUST setup server to reply with proper `mime-types` for font files. In other
|
||||
case, some browsers will fail to show fonts.
|
||||
|
||||
Usually, `apache` already has necessary settings, but `nginx` and other
|
||||
webservers should be tuned. Here is list of mime types for our file extentions:
|
||||
|
||||
- `application/vnd.ms-fontobject` - eot
|
||||
- `application/x-font-woff` - woff
|
||||
- `application/x-font-ttf` - ttf
|
||||
- `image/svg+xml` - svg
|
||||
@@ -0,0 +1,40 @@
|
||||
{
|
||||
"name": "fontello-ato",
|
||||
"css_prefix_text": "icon-ato-",
|
||||
"css_use_suffix": false,
|
||||
"hinting": true,
|
||||
"units_per_em": 1000,
|
||||
"ascent": 850,
|
||||
"glyphs": [
|
||||
{
|
||||
"uid": "c08a1cde48d96cba21d8c05fa7d7feb1",
|
||||
"css": "doc-text-inv",
|
||||
"code": 59392,
|
||||
"src": "fontawesome"
|
||||
},
|
||||
{
|
||||
"uid": "3212f42c65d41ed91cb435d0490e29ed",
|
||||
"css": "flash",
|
||||
"code": 59393,
|
||||
"src": "fontawesome"
|
||||
},
|
||||
{
|
||||
"uid": "978aa8facd816df874039e139cb0cdde",
|
||||
"css": "trophy",
|
||||
"code": 59395,
|
||||
"src": "entypo"
|
||||
},
|
||||
{
|
||||
"uid": "11e664deed5b2587456a4f9c01d720b6",
|
||||
"css": "cancel",
|
||||
"code": 59397,
|
||||
"src": "iconic"
|
||||
},
|
||||
{
|
||||
"uid": "ce50292e85eb5d6ee3be61b32bf2bdf3",
|
||||
"css": "ok",
|
||||
"code": 59394,
|
||||
"src": "mfglabs"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,85 @@
|
||||
/*
|
||||
Animation example, for spinners
|
||||
*/
|
||||
.animate-spin {
|
||||
-moz-animation: spin 2s infinite linear;
|
||||
-o-animation: spin 2s infinite linear;
|
||||
-webkit-animation: spin 2s infinite linear;
|
||||
animation: spin 2s infinite linear;
|
||||
display: inline-block;
|
||||
}
|
||||
@-moz-keyframes spin {
|
||||
0% {
|
||||
-moz-transform: rotate(0deg);
|
||||
-o-transform: rotate(0deg);
|
||||
-webkit-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
-moz-transform: rotate(359deg);
|
||||
-o-transform: rotate(359deg);
|
||||
-webkit-transform: rotate(359deg);
|
||||
transform: rotate(359deg);
|
||||
}
|
||||
}
|
||||
@-webkit-keyframes spin {
|
||||
0% {
|
||||
-moz-transform: rotate(0deg);
|
||||
-o-transform: rotate(0deg);
|
||||
-webkit-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
-moz-transform: rotate(359deg);
|
||||
-o-transform: rotate(359deg);
|
||||
-webkit-transform: rotate(359deg);
|
||||
transform: rotate(359deg);
|
||||
}
|
||||
}
|
||||
@-o-keyframes spin {
|
||||
0% {
|
||||
-moz-transform: rotate(0deg);
|
||||
-o-transform: rotate(0deg);
|
||||
-webkit-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
-moz-transform: rotate(359deg);
|
||||
-o-transform: rotate(359deg);
|
||||
-webkit-transform: rotate(359deg);
|
||||
transform: rotate(359deg);
|
||||
}
|
||||
}
|
||||
@-ms-keyframes spin {
|
||||
0% {
|
||||
-moz-transform: rotate(0deg);
|
||||
-o-transform: rotate(0deg);
|
||||
-webkit-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
-moz-transform: rotate(359deg);
|
||||
-o-transform: rotate(359deg);
|
||||
-webkit-transform: rotate(359deg);
|
||||
transform: rotate(359deg);
|
||||
}
|
||||
}
|
||||
@keyframes spin {
|
||||
0% {
|
||||
-moz-transform: rotate(0deg);
|
||||
-o-transform: rotate(0deg);
|
||||
-webkit-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
-moz-transform: rotate(359deg);
|
||||
-o-transform: rotate(359deg);
|
||||
-webkit-transform: rotate(359deg);
|
||||
transform: rotate(359deg);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
|
||||
.icon-ato-doc-text-inv:before { content: '\e800'; } /* '' */
|
||||
.icon-ato-flash:before { content: '\e801'; } /* '' */
|
||||
.icon-ato-trophy:before { content: '\e803'; } /* '' */
|
||||
.icon-ato-cancel:before { content: '\e805'; } /* '' */
|
||||
.icon-ato-ok:before { content: '\e802'; } /* '' */
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,6 @@
|
||||
|
||||
.icon-ato-doc-text-inv { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-ato-flash { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-ato-trophy { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-ato-cancel { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-ato-ok { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
@@ -0,0 +1,17 @@
|
||||
[class^="icon-ato-"], [class*=" icon-ato-"] {
|
||||
font-family: 'fontello-ato';
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
|
||||
/* fix buttons height */
|
||||
line-height: 1em;
|
||||
|
||||
/* you can be more comfortable with increased icons size */
|
||||
/* font-size: 120%; */
|
||||
}
|
||||
|
||||
.icon-ato-doc-text-inv { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-ato-flash { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-ato-trophy { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-ato-cancel { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-ato-ok { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
@@ -0,0 +1,57 @@
|
||||
@font-face {
|
||||
font-family: 'fontello-ato';
|
||||
src: url('../font/fontello-ato.eot?10884929');
|
||||
src: url('../font/fontello-ato.eot?10884929#iefix') format('embedded-opentype'),
|
||||
url('../font/fontello-ato.woff?10884929') format('woff'),
|
||||
url('../font/fontello-ato.ttf?10884929') format('truetype'),
|
||||
url('../font/fontello-ato.svg?10884929#fontello-ato') format('svg');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
|
||||
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
|
||||
/*
|
||||
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
||||
@font-face {
|
||||
font-family: 'fontello-ato';
|
||||
src: url('../font/fontello-ato.svg?10884929#fontello-ato') format('svg');
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
[class^="icon-ato-"]:before, [class*=" icon-ato-"]:before {
|
||||
font-family: "fontello-ato";
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
speak: none;
|
||||
|
||||
display: inline-block;
|
||||
text-decoration: inherit;
|
||||
width: 1em;
|
||||
margin-right: .2em;
|
||||
text-align: center;
|
||||
/* opacity: .8; */
|
||||
|
||||
/* For safety - reset parent styles, that can break glyph codes*/
|
||||
font-variant: normal;
|
||||
text-transform: none;
|
||||
|
||||
/* fix buttons height, for twitter bootstrap */
|
||||
line-height: 1em;
|
||||
|
||||
/* Animation center compensation - margins should be symmetric */
|
||||
/* remove if not needed */
|
||||
margin-left: .2em;
|
||||
|
||||
/* you can be more comfortable with increased icons size */
|
||||
/* font-size: 120%; */
|
||||
|
||||
/* Uncomment for 3D effect */
|
||||
/* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
|
||||
}
|
||||
|
||||
.icon-ato-doc-text-inv:before { content: '\e800'; } /* '' */
|
||||
.icon-ato-flash:before { content: '\e801'; } /* '' */
|
||||
.icon-ato-trophy:before { content: '\e803'; } /* '' */
|
||||
.icon-ato-cancel:before { content: '\e805'; } /* '' */
|
||||
.icon-ato-ok:before { content: '\e802'; } /* '' */
|
||||
@@ -0,0 +1,275 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<!--[if lt IE 9]>
|
||||
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
<meta charset="UTF-8"><style type="text/css">/*
|
||||
* Bootstrap v2.2.1
|
||||
*
|
||||
* Copyright 2012 Twitter, Inc
|
||||
* Licensed under the Apache License v2.0
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Designed and built with all the love in the world @twitter by @mdo and @fat.
|
||||
*/
|
||||
.clearfix {
|
||||
*zoom: 1;
|
||||
}
|
||||
.clearfix:before,
|
||||
.clearfix:after {
|
||||
display: table;
|
||||
content: "";
|
||||
line-height: 0;
|
||||
}
|
||||
.clearfix:after {
|
||||
clear: both;
|
||||
}
|
||||
html {
|
||||
font-size: 100%;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-ms-text-size-adjust: 100%;
|
||||
}
|
||||
a:focus {
|
||||
outline: thin dotted #333;
|
||||
outline: 5px auto -webkit-focus-ring-color;
|
||||
outline-offset: -2px;
|
||||
}
|
||||
a:hover,
|
||||
a:active {
|
||||
outline: 0;
|
||||
}
|
||||
button,
|
||||
input,
|
||||
select,
|
||||
textarea {
|
||||
margin: 0;
|
||||
font-size: 100%;
|
||||
vertical-align: middle;
|
||||
}
|
||||
button,
|
||||
input {
|
||||
*overflow: visible;
|
||||
line-height: normal;
|
||||
}
|
||||
button::-moz-focus-inner,
|
||||
input::-moz-focus-inner {
|
||||
padding: 0;
|
||||
border: 0;
|
||||
}
|
||||
body {
|
||||
margin: 0;
|
||||
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
font-size: 14px;
|
||||
line-height: 20px;
|
||||
color: #333;
|
||||
background-color: #fff;
|
||||
}
|
||||
a {
|
||||
color: #08c;
|
||||
text-decoration: none;
|
||||
}
|
||||
a:hover {
|
||||
color: #005580;
|
||||
text-decoration: underline;
|
||||
}
|
||||
.row {
|
||||
margin-left: -20px;
|
||||
*zoom: 1;
|
||||
}
|
||||
.row:before,
|
||||
.row:after {
|
||||
display: table;
|
||||
content: "";
|
||||
line-height: 0;
|
||||
}
|
||||
.row:after {
|
||||
clear: both;
|
||||
}
|
||||
[class*="span"] {
|
||||
float: left;
|
||||
min-height: 1px;
|
||||
margin-left: 20px;
|
||||
}
|
||||
.container,
|
||||
.navbar-static-top .container,
|
||||
.navbar-fixed-top .container,
|
||||
.navbar-fixed-bottom .container {
|
||||
width: 940px;
|
||||
}
|
||||
.span12 {
|
||||
width: 940px;
|
||||
}
|
||||
.span11 {
|
||||
width: 860px;
|
||||
}
|
||||
.span10 {
|
||||
width: 780px;
|
||||
}
|
||||
.span9 {
|
||||
width: 700px;
|
||||
}
|
||||
.span8 {
|
||||
width: 620px;
|
||||
}
|
||||
.span7 {
|
||||
width: 540px;
|
||||
}
|
||||
.span6 {
|
||||
width: 460px;
|
||||
}
|
||||
.span5 {
|
||||
width: 380px;
|
||||
}
|
||||
.span4 {
|
||||
width: 300px;
|
||||
}
|
||||
.span3 {
|
||||
width: 220px;
|
||||
}
|
||||
.span2 {
|
||||
width: 140px;
|
||||
}
|
||||
.span1 {
|
||||
width: 60px;
|
||||
}
|
||||
[class*="span"].pull-right,
|
||||
.row-fluid [class*="span"].pull-right {
|
||||
float: right;
|
||||
}
|
||||
.container {
|
||||
margin-right: auto;
|
||||
margin-left: auto;
|
||||
*zoom: 1;
|
||||
}
|
||||
.container:before,
|
||||
.container:after {
|
||||
display: table;
|
||||
content: "";
|
||||
line-height: 0;
|
||||
}
|
||||
.container:after {
|
||||
clear: both;
|
||||
}
|
||||
p {
|
||||
margin: 0 0 10px;
|
||||
}
|
||||
.lead {
|
||||
margin-bottom: 20px;
|
||||
font-size: 21px;
|
||||
font-weight: 200;
|
||||
line-height: 30px;
|
||||
}
|
||||
small {
|
||||
font-size: 85%;
|
||||
}
|
||||
h1 {
|
||||
margin: 10px 0;
|
||||
font-family: inherit;
|
||||
font-weight: bold;
|
||||
line-height: 20px;
|
||||
color: inherit;
|
||||
text-rendering: optimizelegibility;
|
||||
}
|
||||
h1 small {
|
||||
font-weight: normal;
|
||||
line-height: 1;
|
||||
color: #999;
|
||||
}
|
||||
h1 {
|
||||
line-height: 40px;
|
||||
}
|
||||
h1 {
|
||||
font-size: 38.5px;
|
||||
}
|
||||
h1 small {
|
||||
font-size: 24.5px;
|
||||
}
|
||||
body {
|
||||
margin-top: 90px;
|
||||
}
|
||||
.header {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 50%;
|
||||
margin-left: -480px;
|
||||
background-color: #fff;
|
||||
border-bottom: 1px solid #ddd;
|
||||
padding-top: 10px;
|
||||
z-index: 10;
|
||||
}
|
||||
.footer {
|
||||
color: #ddd;
|
||||
font-size: 12px;
|
||||
text-align: center;
|
||||
margin-top: 20px;
|
||||
}
|
||||
.footer a {
|
||||
color: #ccc;
|
||||
text-decoration: underline;
|
||||
}
|
||||
.the-icons {
|
||||
font-size: 14px;
|
||||
line-height: 24px;
|
||||
}
|
||||
.switch {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
bottom: 10px;
|
||||
color: #666;
|
||||
}
|
||||
.switch input {
|
||||
margin-right: 0.3em;
|
||||
}
|
||||
.codesOn .i-name {
|
||||
display: none;
|
||||
}
|
||||
.codesOn .i-code {
|
||||
display: inline;
|
||||
}
|
||||
.i-code {
|
||||
display: none;
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" href="css/fontello-ato.css">
|
||||
<link rel="stylesheet" href="css/animation.css">
|
||||
<!--[if IE 7]>
|
||||
<link rel="stylesheet" href="css/fontello-ato-ie7.css">
|
||||
<![endif]-->
|
||||
<script>
|
||||
function toggleCodes(on) {
|
||||
var obj = document.getElementById('icons');
|
||||
|
||||
if (on) {
|
||||
obj.className += ' codesOn';
|
||||
} else {
|
||||
obj.className = obj.className.replace(' codesOn', '');
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="container header">
|
||||
<h1>
|
||||
fontello-ato
|
||||
<small>font demo</small>
|
||||
</h1>
|
||||
<label class="switch">
|
||||
<input type="checkbox" onclick="toggleCodes(this.checked)">show codes
|
||||
</label>
|
||||
</div>
|
||||
<div id="icons" class="container">
|
||||
<div class="row">
|
||||
<div title="Code: 0xe800" class="the-icons span3"><i class="icon-ato-doc-text-inv"></i> <span class="i-name">icon-ato-doc-text-inv</span><span class="i-code">0xe800</span></div>
|
||||
<div title="Code: 0xe801" class="the-icons span3"><i class="icon-ato-flash"></i> <span class="i-name">icon-ato-flash</span><span class="i-code">0xe801</span></div>
|
||||
<div title="Code: 0xe803" class="the-icons span3"><i class="icon-ato-trophy"></i> <span class="i-name">icon-ato-trophy</span><span class="i-code">0xe803</span></div>
|
||||
<div title="Code: 0xe805" class="the-icons span3"><i class="icon-ato-cancel"></i> <span class="i-name">icon-ato-cancel</span><span class="i-code">0xe805</span></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div title="Code: 0xe802" class="the-icons span3"><i class="icon-ato-ok"></i> <span class="i-name">icon-ato-ok</span><span class="i-code">0xe802</span></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container footer">Generated by <a href="http://fontello.com">fontello.com</a></div>
|
||||
</body>
|
||||
</html>
|
||||
Binary file not shown.
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<metadata>Copyright (C) 2013 by original authors @ fontello.com</metadata>
|
||||
<defs>
|
||||
<font id="fontello-ato" horiz-adv-x="1000" >
|
||||
<font-face font-family="fontello-ato" font-weight="400" font-stretch="normal" units-per-em="1000" ascent="850" descent="-150" />
|
||||
<missing-glyph horiz-adv-x="1000" />
|
||||
<glyph glyph-name="doc-text-inv" unicode="" d="m571 82v36q0 8-5 13t-12 5h-393q-8 0-13-5t-5-13v-36q0-8 5-13t13-5h393q7 0 12 5t5 13z m0 143v36q0 8-5 13t-12 5h-393q-8 0-13-5t-5-13v-36q0-8 5-13t13-5h393q7 0 12 5t5 13z m143 196v-446q0-22-15-38t-38-16h-607q-23 0-38 16t-16 38v750q0 22 16 38t38 16h303v-304q0-22 16-38t38-16h303z m-1 72h-284v284q45-8 73-36l174-175q28-27 37-73z" horiz-adv-x="714.3" />
|
||||
<glyph glyph-name="flash" unicode="" d="m494 534q10-11 4-24l-302-646q-7-14-23-14q-2 0-8 1q-9 3-14 11t-3 16l110 451l-226-56q-2-1-7-1q-10 0-17 7q-10 8-7 21l112 461q2 8 9 13t15 5h183q11 0 18-7t7-17q0-4-2-10l-96-258l221 54q5 2 7 2q11 0 19-9z" horiz-adv-x="500" />
|
||||
<glyph glyph-name="trophy" unicode="" d="m510 134l0-66q70-8 116-32t46-56q0-36-65-63t-157-27q-90 0-156 27t-66 63q0 32 46 56t118 32l0 66q0 50-33 84t-113 88q-56 36-87 61t-75 72t-64 108t-20 137q0 14 11 24t25 10l172 0q48 92 242 92q196 0 244-92l170 0q14 0 25-10t11-24q0-76-20-137t-64-108t-75-72t-87-61q-78-52-111-87t-33-85z m138 252q80 56 126 114t54 148l-126 0q-6-158-54-262z m-198 364q-62 0-108-15t-64-32t-18-29q0-14 18-31t64-32t108-15t108 15t64 32t18 31q0 12-18 29t-64 32t-108 15z m-378-102q8-90 54-148t126-114q-48 104-54 262l-126 0z" horiz-adv-x="900" />
|
||||
<glyph glyph-name="cancel" unicode="" d="m799 116l-156-157l-234 235l-235-235l-156 157l234 234l-234 234l156 157l235-235l234 235l156-157l-234-234z" horiz-adv-x="817" />
|
||||
<glyph glyph-name="ok" unicode="" d="m0 339q0-35 24-60l246-239q24-25 60-25q36 0 60 25l505 495q25 24 25 59t-25 58q-25 25-60 25t-60-25l-445-435l-185 181q-25 24-60 24t-61-24q-24-24-24-59z" horiz-adv-x="920.4" />
|
||||
</font>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.1 KiB |
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,7 @@
|
||||
<?php
|
||||
$url = '../';
|
||||
header( 'Request-URI: '.$url );
|
||||
header( 'Content-Location: '.$url );
|
||||
header( 'Location: '.$url );
|
||||
exit();
|
||||
?>
|
||||
@@ -0,0 +1,319 @@
|
||||
var AdminTools = function($) {
|
||||
var __this = this;
|
||||
|
||||
this.urlWS;
|
||||
this.urlSelf;
|
||||
this.multiView;
|
||||
|
||||
var $ato = $('#ato_header'),
|
||||
$ato_closed = $('#ato_header_closed'),
|
||||
ato_height = 28; // normal height, real height conputed on init()
|
||||
|
||||
// move to whole page down or up
|
||||
function moveBody(dir, anim) {
|
||||
var operator = dir=='show' ? '+=' : '-=';
|
||||
|
||||
if (anim) {
|
||||
$('body').animate({'margin-top': operator+ato_height});
|
||||
|
||||
if ($('#the_page, [data-role="page"]').css('position')=='absolute') {
|
||||
$('#the_page, [data-role="page"]').animate({'top': operator+ato_height});
|
||||
}
|
||||
}
|
||||
else {
|
||||
$('body').css({'margin-top': operator+ato_height});
|
||||
|
||||
if ($('#the_page, [data-role="page"]').css('position')=='absolute') {
|
||||
$('#the_page, [data-role="page"]').css({'top': operator+ato_height});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// fill multiview selects
|
||||
// data came from AJAX request or sessionStorage
|
||||
function populateMultiView() {
|
||||
var $multiview = $ato.find('.multiview');
|
||||
|
||||
if ($multiview.data('init')) return;
|
||||
|
||||
var render = function(data) {
|
||||
var html = '';
|
||||
$.each(data.users, function(i, user) {
|
||||
html+= '<option value="'+ user.id +'">'+ user.username +'</option>';
|
||||
});
|
||||
$multiview.find('select[data-type="view_as"]').html(html)
|
||||
.val(__this.multiView.view_as);
|
||||
|
||||
html = '';
|
||||
$.each(data.themes, function(i, theme) {
|
||||
html+= '<option value="'+ theme +'">'+ theme +'</option>';
|
||||
});
|
||||
$multiview.find('select[data-type="theme"]').html(html)
|
||||
.val(__this.multiView.theme);
|
||||
|
||||
html = '';
|
||||
$.each(data.languages, function(i, language) {
|
||||
html+= '<option value="'+ language.id +'">'+ language.name +'</option>';
|
||||
});
|
||||
$multiview.find('select[data-type="lang"]').html(html)
|
||||
.val(__this.multiView.lang);
|
||||
|
||||
$multiview.data('init', true);
|
||||
|
||||
$multiview.find('.switcher').show();
|
||||
};
|
||||
|
||||
if ('sessionStorage' in window && window.sessionStorage.multiView != undefined) {
|
||||
render(JSON.parse(window.sessionStorage.multiView));
|
||||
}
|
||||
else {
|
||||
$.ajax({
|
||||
method: 'POST',
|
||||
url: __this.urlWS + 'multiView.getData',
|
||||
dataType: 'json',
|
||||
success: function(data) {
|
||||
render(data.result);
|
||||
if ('sessionStorage' in window) {
|
||||
window.sessionStorage.multiView = JSON.stringify(data.result);
|
||||
}
|
||||
},
|
||||
error: function(xhr, text, error) {
|
||||
alert(text + ' ' + error);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// delete session cache
|
||||
this.deleteCache = function() {
|
||||
if ('sessionStorage' in window) {
|
||||
window.sessionStorage.removeItem('multiView');
|
||||
}
|
||||
};
|
||||
|
||||
// move close button to smartpocket toolbar
|
||||
this.initMobile = function() {
|
||||
var $headerbar = $('div[data-role="header"] .title');
|
||||
if ($headerbar.length == 1) {
|
||||
$ato_closed.addClass('smartpocket');
|
||||
$ato_closed.find('a').attr({
|
||||
'data-iconpos':'notext',
|
||||
'data-role':'button'
|
||||
});
|
||||
$headerbar.prepend($ato_closed);
|
||||
}
|
||||
};
|
||||
|
||||
// attach jquery handlers
|
||||
this.init = function(open) {
|
||||
$('body').prepend($ato); // ensure the bar is at the begining
|
||||
|
||||
$ato.show();
|
||||
ato_height = $ato.height();
|
||||
|
||||
if ('localStorage' in window) {
|
||||
if (window.localStorage.ato_panel_open == null) {
|
||||
window.localStorage.ato_panel_open = open;
|
||||
}
|
||||
|
||||
if (window.localStorage.ato_panel_open == 1) {
|
||||
moveBody('show', false);
|
||||
}
|
||||
else {
|
||||
$ato.hide();
|
||||
$ato_closed.show();
|
||||
}
|
||||
}
|
||||
else {
|
||||
$ato.show();
|
||||
moveBody('show', false);
|
||||
}
|
||||
|
||||
/* <!-- sub menus --> */
|
||||
$ato.find('.parent').on({
|
||||
'click': function() {
|
||||
if ($(this).hasClass('multiview')) {
|
||||
populateMultiView();
|
||||
}
|
||||
$(this).find('ul').toggle();
|
||||
},
|
||||
'mouseleave': function(e) {
|
||||
if (e.target.tagName.toLowerCase() != "select") {
|
||||
$(this).find('ul').hide();
|
||||
}
|
||||
}
|
||||
});
|
||||
$ato.find('.parent>a').on('click', function(e) {
|
||||
e.preventDefault();
|
||||
});
|
||||
$ato.find('.parent ul').on('mouseleave', function(e) {
|
||||
if (e.target.tagName.toLowerCase() != "select") {
|
||||
$(this).hide();
|
||||
}
|
||||
});
|
||||
|
||||
/* <!-- select boxes --> */
|
||||
$ato.find('.switcher').on({
|
||||
'change': function() {
|
||||
window.location.href = __this.urlSelf + 'ato_'+ $(this).data('type') +'='+ $(this).val();
|
||||
},
|
||||
'click': function(e) {
|
||||
e.stopPropagation();
|
||||
}
|
||||
});
|
||||
|
||||
/* <!-- toggle toolbar --> */
|
||||
$ato.find('.close-panel').on('click', function(e) {
|
||||
$ato.slideUp();
|
||||
$ato_closed.slideDown();
|
||||
moveBody('hide', true);
|
||||
|
||||
if ('localStorage' in window) window.localStorage.ato_panel_open = 0;
|
||||
e.preventDefault();
|
||||
});
|
||||
|
||||
$ato_closed.on('click', function(e) {
|
||||
$ato.slideDown();
|
||||
$ato_closed.slideUp();
|
||||
moveBody('show', true);
|
||||
|
||||
if ('localStorage' in window) window.localStorage.ato_panel_open = 1;
|
||||
e.preventDefault();
|
||||
});
|
||||
};
|
||||
|
||||
// init "set as representative" button
|
||||
this.initRepresentative = function(image_id, category_id) {
|
||||
$ato.find('.set-representative').on('click', function(e) {
|
||||
if (!$(this).parent().hasClass('disabled')) {
|
||||
$(this).parent().addClass('disabled')
|
||||
|
||||
$.ajax({
|
||||
method: 'POST',
|
||||
url: __this.urlWS + 'pwg.categories.setRepresentative',
|
||||
dataType: 'json',
|
||||
data: {
|
||||
image_id: image_id,
|
||||
category_id: category_id
|
||||
},
|
||||
success: function() {
|
||||
$ato.find('.saved').fadeIn(200).delay(1600).fadeOut(200);
|
||||
},
|
||||
error: function(xhr, text, error) {
|
||||
alert(text + ' ' + error);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
e.preventDefault();
|
||||
});
|
||||
};
|
||||
|
||||
// init "add to caddie" button
|
||||
this.initCaddie = function(image_id) {
|
||||
$ato.find('.add-caddie').on('click', function(e) {
|
||||
if (!$(this).parent().hasClass('disabled')) {
|
||||
$(this).parent().addClass('disabled')
|
||||
|
||||
$.ajax({
|
||||
method: 'POST',
|
||||
url: __this.urlWS + 'pwg.caddie.add',
|
||||
dataType: 'json',
|
||||
data: {
|
||||
image_id: image_id
|
||||
},
|
||||
success: function() {
|
||||
$ato.find('.saved').fadeIn(200).delay(1600).fadeOut(200);
|
||||
},
|
||||
error: function(xhr, text, error) {
|
||||
alert(text + ' ' + error);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
e.preventDefault();
|
||||
});
|
||||
};
|
||||
|
||||
// init "quick edit" popup
|
||||
this.initQuickEdit = function(is_picture, tokeninput_lang) {
|
||||
var $ato_edit = $('#ato_quick_edit');
|
||||
|
||||
// try to find background color matching text color
|
||||
// there is a 1s delay to wait for jQuery Mobile initialization
|
||||
setTimeout(function() {
|
||||
var bg_color = 'white';
|
||||
var selectors = ['#the_page #content', '[data-role="page"]', 'body'];
|
||||
|
||||
for (var i=0; i<selectors.length; i++) {
|
||||
var color = $(selectors[i]).css('background-color');
|
||||
if (color && color!='transparent') {
|
||||
bg_color = color;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
$ato_edit.css('background-color', bg_color);
|
||||
}, 1000);
|
||||
|
||||
$ato_edit.find('.close-edit').on('click', function(e) {
|
||||
$.colorbox.close()
|
||||
e.preventDefault();
|
||||
});
|
||||
|
||||
if (is_picture) {
|
||||
$ato_edit.find('.datepicker').datepicker({
|
||||
dateFormat: 'yy-mm-dd'
|
||||
});
|
||||
}
|
||||
|
||||
$(".edit-quick").colorbox({
|
||||
inline: true,
|
||||
transition: 'none',
|
||||
width: 500,
|
||||
maxWidth: '100%',
|
||||
top: 50,
|
||||
title: $ato_edit.attr('title'),
|
||||
|
||||
onOpen: function() {
|
||||
if (!is_picture) return;
|
||||
|
||||
// fetch tags list on first open
|
||||
if ($(this).data('tags-init')) return;
|
||||
|
||||
$.ajax({
|
||||
method: 'POST',
|
||||
url: __this.urlWS + 'pwg.tags.getList',
|
||||
dataType: 'json',
|
||||
success: function(data) {
|
||||
var tags = [];
|
||||
// convert to custom format
|
||||
for (var i=0, l=data.result.tags.length; i<l; i++) {
|
||||
tags.push({
|
||||
id: '~~'+ data.result.tags[i].id +'~~',
|
||||
name: data.result.tags[i].name
|
||||
});
|
||||
}
|
||||
|
||||
$ato_edit.find('.tags').tokenInput(
|
||||
tags,
|
||||
$.extend({
|
||||
animateDropdown: false,
|
||||
preventDuplicates: true,
|
||||
allowFreeTagging: true
|
||||
}, tokeninput_lang)
|
||||
);
|
||||
|
||||
$.colorbox.resize();
|
||||
$(this).data('tags-init', true);
|
||||
},
|
||||
error: function(xhr, text, error) {
|
||||
alert(text + ' ' + error);
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
return this;
|
||||
}(jQuery);
|
||||
@@ -0,0 +1,188 @@
|
||||
{strip}
|
||||
{combine_css path=$ADMINTOOLS_PATH|cat:'template/style.css'}
|
||||
{combine_css path='admin/themes/default/fontello/css/fontello.css'}
|
||||
{combine_css path=$ADMINTOOLS_PATH|cat:'template/fontello/css/fontello-ato.css'}
|
||||
|
||||
{if isset($ato.QUICK_EDIT)}
|
||||
{*<!-- colorbox -->*}
|
||||
{combine_script id='jquery.colorbox' load='footer' require='jquery' path='themes/default/js/plugins/jquery.colorbox.min.js'}
|
||||
{combine_css id='colorbox' path='themes/default/js/plugins/colorbox/style2/colorbox.css'}
|
||||
|
||||
{if isset($ato.IS_PICTURE)}
|
||||
{*<!-- tokeninput -->*}
|
||||
{combine_script id='jquery.tokeninput' load='footer' require='jquery' path='themes/default/js/plugins/jquery.tokeninput.js'}
|
||||
{combine_css path='themes/default/js/plugins/jquery.tokeninput.css'}
|
||||
|
||||
{*<!-- datepicker -->*}
|
||||
{combine_script id='jquery.ui.datepicker' load='footer' path='themes/default/js/ui/jquery.ui.datepicker.js'}
|
||||
|
||||
{assign var=datepicker_language value='themes/default/js/ui/i18n/jquery.ui.datepicker-'|cat:$lang_info.code|cat:'.js'}
|
||||
{if 'PHPWG_ROOT_PATH'|constant|cat:$datepicker_language|file_exists}
|
||||
{combine_script id='jquery.ui.datepicker-'|cat:$lang_info.code load='footer' path=$datepicker_language}
|
||||
{/if}
|
||||
|
||||
{combine_css path='themes/default/js/ui/theme/jquery.ui.core.css'}
|
||||
{combine_css path='themes/default/js/ui/theme/jquery.ui.theme.css'}
|
||||
{combine_css path='themes/default/js/ui/theme/jquery.ui.datepicker.css'}
|
||||
{/if}
|
||||
{/if}
|
||||
|
||||
{combine_script id='admintools.controller' load='footer' require='jquery' path=$ADMINTOOLS_PATH|cat:'template/public_controller.js'}
|
||||
{/strip}
|
||||
|
||||
{footer_script require='admintools.controller'}
|
||||
AdminTools.urlWS = '{$ROOT_URL}ws.php?format=json&method=';
|
||||
AdminTools.urlSelf = '{$ato.U_SELF}';
|
||||
|
||||
{if isset($ato.MULTIVIEW)}
|
||||
AdminTools.multiView = {
|
||||
view_as: {$ato.MULTIVIEW.view_as},
|
||||
theme: '{$ato.MULTIVIEW.theme}',
|
||||
lang: '{$ato.MULTIVIEW.lang}'
|
||||
};
|
||||
{/if}
|
||||
|
||||
{if $ato.DELETE_CACHE}
|
||||
AdminTools.deleteCache();
|
||||
{/if}
|
||||
AdminTools.init({intval($ato.DEFAULT_OPEN)});
|
||||
{if isset($themeconf.mobile) and $themeconf.mobile}
|
||||
AdminTools.initMobile();
|
||||
{/if}
|
||||
{if isset($ato.U_SET_REPRESENTATIVE)}
|
||||
AdminTools.initRepresentative({$current.id}, {$ato.CATEGORY_ID});
|
||||
{/if}
|
||||
{if isset($ato.U_CADDIE) and isset($ato.IS_PICTURE)}
|
||||
AdminTools.initCaddie({$current.id});
|
||||
{/if}
|
||||
{if isset($ato.QUICK_EDIT)}
|
||||
AdminTools.initQuickEdit({intval(isset($ato.IS_PICTURE))}, {
|
||||
hintText: '{'Type in a search term'|translate|escape:javascript}',
|
||||
noResultsText: '{'No results'|translate|escape:javascript}',
|
||||
searchingText: '{'Searching...'|translate|escape:javascript}',
|
||||
newText: ' ({'new'|translate|escape:javascript})'
|
||||
});
|
||||
{/if}
|
||||
{/footer_script}
|
||||
|
||||
<div id="ato_header_closed"{if $ato.POSITION=='right'} class="right"{/if}><a href="#" class="icon-tools"></a></div>
|
||||
|
||||
<div id="ato_header">
|
||||
<ul>
|
||||
<li{if $ato.POSITION=='right'} class="right"{/if}><a href="#" class="icon-ato-cancel close-panel"></a></li>
|
||||
{if isset($ato.U_SITE_ADMIN)}
|
||||
<li class="parent"><a href="#" class="icon-menu ato-min-1">{'Administration'|translate}</a>
|
||||
<ul>
|
||||
<li><a class="icon-home" href="{$ato.U_SITE_ADMIN}intro">{'Home'|translate}</a></li>
|
||||
<li><a class="icon-picture" href="{$ato.U_SITE_ADMIN}batch_manager">{'Photos'|translate}</a></li>
|
||||
<li><a class="icon-sitemap" href="{$ato.U_SITE_ADMIN}cat_list">{'Albums'|translate}</a></li>
|
||||
<li><a class="icon-users" href="{$ato.U_SITE_ADMIN}user_list">{'Users'|translate}</a></li>
|
||||
<li><a class="icon-puzzle" href="{$ato.U_SITE_ADMIN}plugins">{'Plugins'|translate}</a></li>
|
||||
<li><a class="icon-wrench" href="{$ato.U_SITE_ADMIN}maintenance">{'Tools'|translate}</a></li>
|
||||
<li><a class="icon-cog" href="{$ato.U_SITE_ADMIN}configuration">{'Configuration'|translate}</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
{/if}
|
||||
{if isset($ato.U_ADMIN_EDIT)}
|
||||
<li class="parent"><a href="#" class="icon-pencil ato-min-2">{'Edit'|translate}</a>
|
||||
<ul>
|
||||
<li><a href="#ato_quick_edit" class="icon-ato-flash edit-quick">{'Quick edit'|translate}</a></li>
|
||||
<li><a class="icon-ato-doc-text-inv" href="{$ato.U_ADMIN_EDIT}">{'Properties page'|translate}</a></li>
|
||||
{if isset($ato.U_DELETE)}
|
||||
<li style="margin-top:1em;"><a class="icon-ato-cancel" href="{$ato.U_DELETE}" onclick="return confirm('{'Are you sure?'|translate|escape:javascript}')">{'delete photo'|translate|ucfirst}</a></li>
|
||||
{/if}
|
||||
</ul>
|
||||
</li>
|
||||
{elseif isset($ato.QUICK_EDIT)}
|
||||
<li><a href="#ato_quick_edit" class="icon-pencil edit-quick ato-min-2">{'Edit'|translate}</a></li>
|
||||
{if isset($ato.U_DELETE)}
|
||||
<li><a class="icon-ato-cancel ato-min-2" href="{$ato.U_DELETE}" onclick="return confirm('{'Are you sure?'|translate|escape:javascript}')">{'delete photo'|translate|ucfirst}</a></li>
|
||||
{/if}
|
||||
{/if}
|
||||
{if isset($ato.U_SET_REPRESENTATIVE)}
|
||||
<li {if $ato.IS_REPRESENTATIVE}class="disabled"{/if}><a class="icon-ato-trophy set-representative ato-min-2" href="{$ato.U_SET_REPRESENTATIVE}">{'representative'|translate|ucfirst}</a></li>
|
||||
{/if}
|
||||
{if isset($ato.U_CADDIE)}
|
||||
<li {if $ato.IS_IN_CADDIE}class="disabled"{/if}><a class="icon-flag add-caddie ato-min-2" href="{$ato.U_CADDIE}">{'Add to caddie'|translate}</a></li>
|
||||
{/if}
|
||||
{if isset($ato.IS_CATEGORY)}
|
||||
<li><a class="icon-plus-circled ato-min-2" href="{$ato.U_SITE_ADMIN}photos_add&album={$ato.CATEGORY_ID}">{'Add Photos'|translate}</a></li>
|
||||
{/if}
|
||||
<li class="saved"><span class="icon-ato-ok ato-min-1">{'Saved'|translate}</span></li>
|
||||
|
||||
{if isset($ato.MULTIVIEW)}
|
||||
<li class="parent right multiview"><a class="icon-cog-alt ato-min-1" href="#">{'Tools'|translate}</a>
|
||||
<ul>
|
||||
<li><label>{'View as'|translate}</label>
|
||||
<select class="switcher" data-type="view_as"></select>
|
||||
</li>
|
||||
<li><label>{'Theme'|translate}</label>
|
||||
<select class="switcher" data-type="theme"></select>
|
||||
</li>
|
||||
<li><label>{'Language'|translate}</label>
|
||||
<select class="switcher" data-type="lang"></select>
|
||||
</li>
|
||||
<li><a class="icon-check{if !$ato.MULTIVIEW.show_queries}-empty{/if}" href="{$ato.U_SELF}ato_show_queries={(int)!$ato.MULTIVIEW.show_queries}">{'Show SQL queries'|translate}</a></li>
|
||||
<li><a class="icon-check{if !$ato.MULTIVIEW.debug_l10n}-empty{/if}" href="{$ato.U_SELF}ato_debug_l10n={(int)!$ato.MULTIVIEW.debug_l10n}">{'Debug languages'|translate}</a></li>
|
||||
<li><a class="icon-check{if !$ato.MULTIVIEW.debug_template}-empty{/if}" href="{$ato.U_SELF}ato_debug_template={(int)!$ato.MULTIVIEW.debug_template}">{'Debug template'|translate}</a></li>
|
||||
<li><a class="icon-check{if !$ato.MULTIVIEW.template_combine_files}-empty{/if}" href="{$ato.U_SELF}ato_template_combine_files={(int)!$ato.MULTIVIEW.template_combine_files}">{'Combine JS&CSS'|translate}</a></li>
|
||||
<li><a class="icon-check{if $ato.MULTIVIEW.no_history}-empty{/if}" href="{$ato.U_SELF}ato_no_history={(int)!$ato.MULTIVIEW.no_history}">{'Save visit in history'|translate}</a></li>
|
||||
<li><a class="icon-ato-null" href="{$ato.U_SELF}ato_purge_template=1">{'Purge compiled templates'|translate}</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
{if $ato.USER.id != $ato.MULTIVIEW.view_as}
|
||||
<li class="right ato-hide-2"><span>
|
||||
{'Viewing as <b>%s</b>.'|translate:$ato.CURRENT_USERNAME}
|
||||
<a href="{$ato.U_SELF}ato_view_as={$ato.USER.id}">{'Revert'|translate}</a>
|
||||
</span></li>
|
||||
{/if}
|
||||
{/if}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
{if isset($ato.QUICK_EDIT)}
|
||||
<div style="display:none;">
|
||||
<div id="ato_quick_edit" title="{'Quick edit'|translate}">
|
||||
<form method="post" action="{$ato.U_SELF}">
|
||||
<fieldset class="left">
|
||||
{if isset($ato.QUICK_EDIT.img)}<img src="{$ato.QUICK_EDIT.img}" width="100" height="100">{/if}
|
||||
<input type="submit" value="{'Save'|translate}">
|
||||
<a href="#" class="icon-ato-cancel close-edit">{'Cancel'|translate}</a>
|
||||
</fieldset>
|
||||
|
||||
<fieldset class="main">
|
||||
<label for="quick_edit_name">{'Name'|translate}</label>
|
||||
<input type="text" name="name" id="quick_edit_name" value="{$ato.QUICK_EDIT.name|escape:html}">
|
||||
|
||||
{if isset($ato.IS_PICTURE)}
|
||||
<label for="quick_edit_author">{'Author'|translate}</label>
|
||||
<input type="text" name="author" id="quick_edit_author" value="{$ato.QUICK_EDIT.author|escape:html}">
|
||||
|
||||
<label for="quick_edit_date_creation">{'Creation date'|translate}</label>
|
||||
<input type="text" name="date_creation" id="quick_edit_date_creation" class="datepicker" value="{$ato.QUICK_EDIT.date_creation}">
|
||||
<input type="hidden" name="date_creation_time" value="{$ato.QUICK_EDIT.date_creation_time}">
|
||||
|
||||
<label for="quick_edit_tags">{'Tags'|translate}</label>
|
||||
<select name="tags" id="quick_edit_tags" class="tags">
|
||||
{foreach from=$ato.QUICK_EDIT.tag_selection item=tag}
|
||||
<option value="{$tag.id}" class="selected">{$tag.name}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
|
||||
{if isset($available_permission_levels)}
|
||||
<label for="quick_edit_level">{'Who can see this photo?'|@translate}</label>
|
||||
<select name="level" size="1">
|
||||
{html_options options=$available_permission_levels selected=$ato.QUICK_EDIT.level}
|
||||
</select>
|
||||
{/if}
|
||||
{/if}
|
||||
|
||||
<label for="quick_edit_comment">{'Description'|translate}</label>
|
||||
<textarea name="comment" id="quick_edit_comment">{$ato.QUICK_EDIT.comment}</textarea>
|
||||
</fieldset>
|
||||
|
||||
<input type="hidden" name="action" value="quick_edit">
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
@@ -0,0 +1,251 @@
|
||||
.icon-ato-null:before { content:' '; }
|
||||
|
||||
.token-input-dropdown {
|
||||
z-index:10000 !important;
|
||||
}
|
||||
|
||||
#ato_header, #ato_header_closed {
|
||||
display:none;
|
||||
}
|
||||
#ato_header {
|
||||
width:100%;
|
||||
}
|
||||
#ato_header, #ato_header_closed:not(.smartpocket) {
|
||||
position:fixed;
|
||||
top:0;
|
||||
left:0;
|
||||
background:#464646;
|
||||
background-image:linear-gradient(to bottom, #383838 0%, #464646 20%, #464646 80%, #383838 100%);
|
||||
z-index:1000;
|
||||
}
|
||||
|
||||
#ato_header>ul {
|
||||
padding:0;
|
||||
margin:0;
|
||||
}
|
||||
|
||||
#ato_header>ul li {
|
||||
list-style:none;
|
||||
line-height:16px;
|
||||
font-size:13px;
|
||||
white-space:nowrap;
|
||||
}
|
||||
#ato_header>ul li>*, #ato_header_closed:not(.smartpocket)>* {
|
||||
display:inline-block;
|
||||
padding:5px 10px;
|
||||
border:none;
|
||||
text-decoration:none;
|
||||
}
|
||||
#ato_header>ul li>*:before {
|
||||
font-size:16px;
|
||||
margin-right:0.5em;
|
||||
}
|
||||
|
||||
#ato_header>ul>li {
|
||||
float:left;
|
||||
display:inline-block;
|
||||
position:relative;
|
||||
overflow:visible;
|
||||
}
|
||||
#ato_header>ul>li a {
|
||||
color:white;
|
||||
}
|
||||
#ato_header>ul>li.right {
|
||||
float:right;
|
||||
}
|
||||
#ato_header>ul>li {
|
||||
border-left:1px solid #666;
|
||||
}
|
||||
#ato_header>ul>li {
|
||||
border-right:1px solid #222;
|
||||
}
|
||||
#ato_header>ul>li>*, #ato_header_closed:not(.smartpocket)>* {
|
||||
color:#ddd;
|
||||
text-shadow:1px 1px 0px #222;
|
||||
}
|
||||
#ato_header>ul>li.disabled [class*="icon-"] {
|
||||
color:#888;
|
||||
text-shadow:none;
|
||||
}
|
||||
#ato_header>ul>li:not(.disabled):hover, #ato_header_closed:not(.smartpocket):hover {
|
||||
background:#222;
|
||||
background-image:linear-gradient(to bottom, #222, #353535);
|
||||
}
|
||||
|
||||
#ato_header>ul ul {
|
||||
display:none;
|
||||
position:absolute;
|
||||
top:27px;
|
||||
left:0;
|
||||
min-width:100%;
|
||||
background:#fefefe;
|
||||
padding:0;
|
||||
margin:0;
|
||||
box-shadow:3px 3px 5px rgba(0,0,0,0.5);
|
||||
}
|
||||
#ato_header>ul>li.right ul {
|
||||
left:auto;
|
||||
right:0;
|
||||
}
|
||||
#ato_header>ul ul li {
|
||||
}
|
||||
#ato_header>ul ul li:hover {
|
||||
background:#dedede;
|
||||
}
|
||||
#ato_header>ul ul li>* {
|
||||
color:#444;
|
||||
text-shadow:1px 1px 0px #eee;
|
||||
}
|
||||
#ato_header>ul ul label {
|
||||
font-weight:bold;
|
||||
color:#777;
|
||||
display:inline-block;
|
||||
width:80px;
|
||||
padding:5px;
|
||||
text-align:right;
|
||||
font-size:11px;
|
||||
}
|
||||
#ato_header>ul ul select, #ato_header>ul ul option {
|
||||
font-size:13px;
|
||||
line-height:15px;
|
||||
color:#444;
|
||||
background:#fefefe;
|
||||
border-radius:2px;
|
||||
text-shadow:none;
|
||||
}
|
||||
#ato_header>ul ul select {
|
||||
border:1px solid #777;
|
||||
height:22px;
|
||||
padding:2px 3px;
|
||||
}
|
||||
#ato_header .switcher {
|
||||
display:none;
|
||||
}
|
||||
|
||||
#ato_header_closed:not(.smartpocket) {
|
||||
left:10px;
|
||||
font-size:20px;
|
||||
border-radius:0 0 20% 20%;
|
||||
box-shadow:1px 1px 1px rgba(0,0,0,0.5);
|
||||
width:35px;
|
||||
height:35px;
|
||||
}
|
||||
#ato_header_closed:not(.smartpocket).right {
|
||||
left:auto;
|
||||
right:10px;
|
||||
}
|
||||
#ato_header_closed:not(.smartpocket)>* {
|
||||
padding:4px;
|
||||
}
|
||||
#ato_header_closed.smartpocket {
|
||||
float:left;
|
||||
margin-right:10px;
|
||||
}
|
||||
#ato_header_closed.smartpocket .ui-btn-inner {
|
||||
display:none;
|
||||
}
|
||||
|
||||
#ato_header>ul .close-panel {
|
||||
padding:6px 1px 4px 5px;
|
||||
}
|
||||
#ato_header>ul .close-panel:hover {
|
||||
color:#d00;
|
||||
}
|
||||
#ato_header>ul .saved {
|
||||
display:none;
|
||||
border:none !important;
|
||||
-webkit-animation:blink 0.8s infinite;
|
||||
animation:blink 0.8s infinite;
|
||||
}
|
||||
#ato_header>ul .saved>* {
|
||||
color:#5f5;
|
||||
}
|
||||
|
||||
#ato_quick_edit {
|
||||
padding:10px;
|
||||
}
|
||||
#ato_quick_edit fieldset {
|
||||
margin:0;
|
||||
padding:0;
|
||||
border:none;
|
||||
}
|
||||
#ato_quick_edit fieldset.left {
|
||||
float:left;
|
||||
width:100px;
|
||||
text-align:center;
|
||||
}
|
||||
#ato_quick_edit fieldset.left img {
|
||||
border-radius:2px;
|
||||
border:1px solid #111;
|
||||
}
|
||||
#ato_quick_edit fieldset.main {
|
||||
margin:0 0 0 110px;
|
||||
}
|
||||
#ato_quick_edit label {
|
||||
display:block;
|
||||
font-weight:bold;
|
||||
}
|
||||
#ato_quick_edit input, #ato_quick_edit textarea, #ato_quick_edit select {
|
||||
width:100%;
|
||||
margin:0 0 1em 0;
|
||||
border-radius:2px;
|
||||
padding:2px;
|
||||
-moz-box-sizing:border-box;
|
||||
box-sizing:border-box;
|
||||
}
|
||||
#ato_quick_edit textarea {
|
||||
height:110px;
|
||||
}
|
||||
#ato_quick_edit input[type="submit"] {
|
||||
margin:1.5em 0;
|
||||
cursor:pointer;
|
||||
background:#e60;
|
||||
border:none;
|
||||
color:#fff;
|
||||
}
|
||||
#ato_quick_edit input[type="submit"]:hover {
|
||||
background:#EF962F;
|
||||
}
|
||||
#ato_quick_edit ul.token-input-list {
|
||||
width:100%;
|
||||
margin:0 0 1em 0;
|
||||
}
|
||||
|
||||
@-webkit-keyframes blink {
|
||||
0% { opacity:0; }
|
||||
50% { opacity:1; }
|
||||
100% { opacity:0; }
|
||||
}
|
||||
@keyframes blink {
|
||||
0% { opacity:0; }
|
||||
50% { opacity:1; }
|
||||
100% { opacity:0; }
|
||||
}
|
||||
|
||||
@media (max-width:900px) {
|
||||
#ato_header .ato-min-1 {
|
||||
font-size:0px;
|
||||
line-height:0px;
|
||||
}
|
||||
#ato_header .ato-min-1:before {
|
||||
margin-right:0;
|
||||
}
|
||||
|
||||
#ato_header .ato-hide-1 {
|
||||
display:none;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width:750px) {
|
||||
#ato_header .ato-min-2 {
|
||||
font-size:0px;
|
||||
line-height:0px;
|
||||
}
|
||||
#ato_header .ato-min-2:before {
|
||||
margin-right:0;
|
||||
}
|
||||
|
||||
#ato_header .ato-hide-2 {
|
||||
display:none;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user