Initial commit of a themeroller module... not ready for general use
73
modules/themeroller/controllers/admin_themeroller.php
Executable file
@ -0,0 +1,73 @@
|
||||
<?php defined("SYSPATH") or die("No direct script access.");/**
|
||||
* Gallery - a web based photo album viewer and editor
|
||||
* Copyright (C) 2000-2010 Bharat Mediratta
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or (at
|
||||
* your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
class Admin_Themeroller_Controller extends Admin_Controller {
|
||||
public function form_add() {
|
||||
$v = new View("admin_themeroller.html");
|
||||
|
||||
list ($v->form, $v->errors) = $this->_get_theme_form();
|
||||
$v->is_writable = is_writable(THEMEPATH);
|
||||
$v->action = "admin/themeroller/upload";
|
||||
$submit_class = "ui-state-default ui-corner-all submit g-left";
|
||||
|
||||
if ($v->not_writable = !is_writable(THEMEPATH)) {
|
||||
$submit_class .= " ui-state-disabled";
|
||||
}
|
||||
$v->submit_class = $submit_class;
|
||||
$v->script_data = array(
|
||||
"g3sid" => Session::instance()->id(),
|
||||
"user_agent" => Input::instance()->server("HTTP_USER_AGENT"),
|
||||
"csrf" => access::csrf_token());
|
||||
print json_encode(array("form" => (string) $v));
|
||||
}
|
||||
|
||||
public function upload() {
|
||||
access::verify_csrf();
|
||||
|
||||
list ($v->form, $v->errors) = $this->_get_theme_form();
|
||||
|
||||
Kohana_Log::add("error", Kohana::debug($_POST));
|
||||
Kohana_Log::add("error", Kohana::debug($_FILES));
|
||||
$validation = new Validation(array_merge($_POST, $_FILES));
|
||||
$validation->add_rules("name", "required");
|
||||
$validation->add_rules("display_name", "required");
|
||||
$validation->add_rules("description", "required");
|
||||
$validation->add_rules("zip_file", "upload::valid", "upload::required", "upload::type[zip]");
|
||||
$validation->add_callbacks("name", array($this, "_is_theme_defined"));
|
||||
if ($validation->validate()) {
|
||||
print "FILEID: {$v->form['name']}";
|
||||
} else {
|
||||
arr::overwrite($form, $validation->as_array());
|
||||
arr::overwrite($errors, $validation->errors());
|
||||
}
|
||||
}
|
||||
|
||||
public function _is_theme_defined(Validation $post, $field) {
|
||||
$theme_name = strtolower(strtr($post[$field], " ", "_"));
|
||||
if (file_exists(THEMEPATH . "$theme_name/theme.info")) {
|
||||
$post->add_error($field, "theme_exists");
|
||||
}
|
||||
}
|
||||
|
||||
private function _get_theme_form() {
|
||||
$form = array("name" => "", "display_name" => "", "description" => "", "is_admin" => array(),
|
||||
"zip_file" => "");
|
||||
$errors = array_fill_keys(array_keys($form), "");
|
||||
return array($form, $errors);
|
||||
}
|
||||
}
|
BIN
modules/themeroller/data/masks/avatar_mask.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
modules/themeroller/data/masks/ico-album_mask.png
Normal file
After Width: | Height: | Size: 451 B |
BIN
modules/themeroller/data/masks/ico-denied-active_mask.png
Normal file
After Width: | Height: | Size: 604 B |
BIN
modules/themeroller/data/masks/ico-denied-inactive_mask.png
Normal file
After Width: | Height: | Size: 604 B |
BIN
modules/themeroller/data/masks/ico-denied-passive_mask.png
Normal file
After Width: | Height: | Size: 604 B |
BIN
modules/themeroller/data/masks/ico-error_mask.png
Normal file
After Width: | Height: | Size: 635 B |
BIN
modules/themeroller/data/masks/ico-help_mask.png
Normal file
After Width: | Height: | Size: 690 B |
BIN
modules/themeroller/data/masks/ico-info_mask.png
Normal file
After Width: | Height: | Size: 661 B |
BIN
modules/themeroller/data/masks/ico-lock_mask.png
Normal file
After Width: | Height: | Size: 736 B |
BIN
modules/themeroller/data/masks/ico-print_mask.png
Normal file
After Width: | Height: | Size: 914 B |
BIN
modules/themeroller/data/masks/ico-separator-rtl_mask.gif
Normal file
After Width: | Height: | Size: 844 B |
BIN
modules/themeroller/data/masks/ico-separator_mask.gif
Normal file
After Width: | Height: | Size: 844 B |
BIN
modules/themeroller/data/masks/ico-success-active_mask.png
Normal file
After Width: | Height: | Size: 476 B |
BIN
modules/themeroller/data/masks/ico-success-inactive_mask.png
Normal file
After Width: | Height: | Size: 476 B |
BIN
modules/themeroller/data/masks/ico-success-passive_mask.png
Normal file
After Width: | Height: | Size: 476 B |
BIN
modules/themeroller/data/masks/ico-view-comments_mask.png
Normal file
After Width: | Height: | Size: 720 B |
BIN
modules/themeroller/data/masks/ico-view-fullsize_mask.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
modules/themeroller/data/masks/ico-view-slideshow-rtl_mask.png
Normal file
After Width: | Height: | Size: 956 B |
BIN
modules/themeroller/data/masks/ico-view-slideshow_mask.png
Normal file
After Width: | Height: | Size: 965 B |
BIN
modules/themeroller/data/masks/ico-warning_mask.png
Normal file
After Width: | Height: | Size: 582 B |
BIN
modules/themeroller/data/masks/loading-large_mask.gif
Normal file
After Width: | Height: | Size: 8.0 KiB |
BIN
modules/themeroller/data/masks/loading-small_mask.gif
Normal file
After Width: | Height: | Size: 673 B |
BIN
modules/themeroller/data/masks/select-photos-backg_mask.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 8.0 KiB |
27
modules/themeroller/helpers/themeroller_event.php
Normal file
@ -0,0 +1,27 @@
|
||||
<?php defined("SYSPATH") or die("No direct script access.");/**
|
||||
* Gallery - a web based photo album viewer and editor
|
||||
* Copyright (C) 2000-2010 Bharat Mediratta
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or (at
|
||||
* your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
class themeroller_event {
|
||||
static function admin_menu($admin_menu, $theme) {
|
||||
$admin_menu->get("appearance_menu")
|
||||
->append(Menu::factory("dialog")
|
||||
->id("themeroller")
|
||||
->label(t("Import themeroller"))
|
||||
->url(url::site("admin/themeroller/form_add")));
|
||||
}
|
||||
}
|
35
modules/themeroller/helpers/themeroller_installer.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php defined("SYSPATH") or die("No direct script access.");/**
|
||||
* Gallery - a web based photo album viewer and editor
|
||||
* Copyright (C) 2000-2010 Bharat Mediratta
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or (at
|
||||
* your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
class themeroller_installer {
|
||||
static function install() {
|
||||
$version = module::get_version("themeroller");
|
||||
if ($version == 0) {
|
||||
/* @todo Put database creation here */
|
||||
module::set_version("themeroller", 1);
|
||||
}
|
||||
}
|
||||
|
||||
static function upgrade($version) {
|
||||
}
|
||||
|
||||
static function uninstall() {
|
||||
/* @todo Put database table drops here */
|
||||
module::delete("themeroller");
|
||||
}
|
||||
}
|
3
modules/themeroller/module.info
Executable file
@ -0,0 +1,3 @@
|
||||
name = "Theme generator"
|
||||
description = "Use a JQuery UI theme to create a Gallery3 Theme"
|
||||
version = 1
|
622
modules/themeroller/views/admin_screen.css.php
Normal file
@ -0,0 +1,622 @@
|
||||
/**
|
||||
* Gallery 3 Admin Redmond Theme Screen Styles
|
||||
*
|
||||
* @requires YUI reset, font, grids CSS
|
||||
*
|
||||
* Sheet organization:
|
||||
* 1) Basic HTML elements
|
||||
* 2) Reusable content blocks
|
||||
* 3) Page layout containers
|
||||
* 4) Content blocks in specific layout containers
|
||||
* 5) Navigation and menus
|
||||
* 6) jQuery and jQuery UI
|
||||
* 7) Module color overrides
|
||||
* 8) States and interactions
|
||||
* 9) Right-to-left language styles
|
||||
*
|
||||
* @todo Review g-buttonset-vertical
|
||||
*/
|
||||
|
||||
/** *******************************************************************
|
||||
* 1) Basic HTML elements
|
||||
**********************************************************************/
|
||||
html {
|
||||
color: #2e6e9e; /* fcDefault; */
|
||||
}
|
||||
|
||||
body, html {
|
||||
background-color: #dfeffc; /* bgColorDefault */
|
||||
font-family: Lucida Grande, Lucida Sans, Arial, sans-serif; /* ffDefault */
|
||||
font-size: 13px/1.231; /* fsDefault/ gallery_line_height */
|
||||
}
|
||||
|
||||
p {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
em {
|
||||
font-style: oblique;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, strong, th {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 1.7em;
|
||||
}
|
||||
|
||||
#g-dialog h1 {
|
||||
font-size: 1.1em;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.4em;
|
||||
}
|
||||
|
||||
#g-sidebar .g-block h2 {
|
||||
font-size: 1.2em;
|
||||
}
|
||||
|
||||
#g-sidebar .g-block li {
|
||||
margin-bottom: .6em;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.2em;
|
||||
}
|
||||
|
||||
/* Links ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
a,
|
||||
.g-menu a,
|
||||
#g-dialog a,
|
||||
.g-button,
|
||||
.g-button:active {
|
||||
color: #2e6e9e !important; /* fcDefault; */
|
||||
text-decoration: none;
|
||||
-moz-outline-style: none;
|
||||
}
|
||||
|
||||
a:hover,
|
||||
.g-button:hover,
|
||||
a.ui-state-hover,
|
||||
input.ui-state-hover,
|
||||
button.ui-state-hover {
|
||||
color: #1d5987 !important; /* fcHover */
|
||||
text-decoration: none;
|
||||
-moz-outline-style: none;
|
||||
}
|
||||
|
||||
a:hover,
|
||||
#g-dialog a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.g-menu a:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
/* Forms ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
fieldset {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
#g-content form ul li {
|
||||
padding: .4em 0;
|
||||
}
|
||||
|
||||
#g-dialog form {
|
||||
width: 270px;
|
||||
}
|
||||
|
||||
#g-dialog fieldset {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
/* Tables ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
table {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#g-content table {
|
||||
margin: .6em 0 2em 0;
|
||||
}
|
||||
|
||||
caption,
|
||||
th {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
th,
|
||||
td {
|
||||
border: none;
|
||||
border-bottom: 1px solid #aaaaaa; /* borderColorContent */
|
||||
padding: .5em;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
th {
|
||||
vertical-align: bottom;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.g-even {
|
||||
background-color: #fcfdfd; /* bgColorContent */
|
||||
}
|
||||
|
||||
.g-odd {
|
||||
background-color: #dfeffc; /* bgColorDefault */
|
||||
}
|
||||
|
||||
/** *******************************************************************
|
||||
* 2) Reusable content blocks
|
||||
*********************************************************************/
|
||||
|
||||
.g-block,
|
||||
#g-content #g-admin-dashboard .g-block {
|
||||
border: 1px solid #aaaaaa; /* borderColorContent */
|
||||
padding: 1em;
|
||||
}
|
||||
|
||||
.g-block h2 {
|
||||
padding: .3em .8em;
|
||||
}
|
||||
|
||||
.g-block-content {
|
||||
margin-top: 1em;
|
||||
}
|
||||
|
||||
#g-content .g-block {
|
||||
border: none;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#g-sidebar .g-block-content {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#g-content .g-selected,
|
||||
#g-content .g-available .g-block {
|
||||
border: 1px solid #aaaaaa; /* borderColorContent */
|
||||
padding: .8em;
|
||||
}
|
||||
|
||||
.g-selected img,
|
||||
.g-available .g-block img {
|
||||
float: left;
|
||||
margin: 0 1em 1em 0;
|
||||
}
|
||||
|
||||
.g-selected {
|
||||
background: #f5f8f9 ; /* bgColorActive */
|
||||
}
|
||||
|
||||
.g-available .g-installed-toolkit:hover {
|
||||
cursor: pointer;
|
||||
background: #fcfdfd; /* bgColorContent */
|
||||
}
|
||||
|
||||
.g-available .g-button {
|
||||
width: 96%;
|
||||
}
|
||||
|
||||
.g-selected .g-button {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.g-unavailable {
|
||||
border-color: #ffffff; /* fcHeader; */;
|
||||
opacity: 0.4;
|
||||
}
|
||||
|
||||
.g-info td {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.g-success td {
|
||||
background-color: transparent;
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.g-error td {
|
||||
background-color: #cd0a0a /* borderColorError */;
|
||||
color: #cd0a0a /* fcError */;
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.g-warning td {
|
||||
background-color: #fcf9ce;
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.g-module-status.g-info,
|
||||
#g-log-entries .g-info,
|
||||
.g-module-status.g-success,
|
||||
#g-log-entries .g-success {
|
||||
background-color: #fcfdfd /* bgColorContent */;
|
||||
}
|
||||
|
||||
/*** ******************************************************************
|
||||
* 3) Page layout containers
|
||||
*********************************************************************/
|
||||
|
||||
/* Header ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-header #g-login-menu {
|
||||
margin-top: 1em;
|
||||
float: right;
|
||||
}
|
||||
|
||||
/* View container ~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
.g-view {
|
||||
background-color: #fcfdfd; /* bgColorContent */
|
||||
border: 1px solid #a6c9e2; /* borderColorContent */
|
||||
border-bottom: none;
|
||||
min-width: 974px !important;
|
||||
}
|
||||
|
||||
/* Layout containers ~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-header {
|
||||
background-color: #5c9ccc; /* bgColorHeader */
|
||||
border-bottom: 1px solid #4297d7; /* borderColorHeader */
|
||||
color: #ffffff; /* fcHeader */
|
||||
font-size: .8em;
|
||||
margin-bottom: 20px;
|
||||
padding: 0 20px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
#g-content {
|
||||
font-size: 1.1em;
|
||||
padding: 0 2em;
|
||||
width: 96%;
|
||||
}
|
||||
|
||||
#g-sidebar {
|
||||
background-color: #fff;
|
||||
font-size: .9em;
|
||||
padding: 0 20px;
|
||||
width: 220px;
|
||||
}
|
||||
|
||||
#g-footer {
|
||||
background-color: #5c9ccc; /* bgColorHeader */
|
||||
border-top: 1px solid #4297d7; /* borderColorHeader */
|
||||
color: #ffffff; /* fcHeader */
|
||||
font-size: .8em;
|
||||
margin-top: 20px;
|
||||
padding: 10px 20px;
|
||||
}
|
||||
|
||||
/** *******************************************************************
|
||||
* 4) Content blocks in specific layout containers
|
||||
*********************************************************************/
|
||||
|
||||
/* Header ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-header #g-logo {
|
||||
background: transparent url('../../../lib/images/logo.png') no-repeat 0 .5em;
|
||||
color: #ffffff /* fcHeader */ !important;
|
||||
display: block;
|
||||
height: 65px;
|
||||
padding-top: 5px;
|
||||
width: 105px;
|
||||
}
|
||||
|
||||
#g-header #g-logo:hover {
|
||||
color: #1d5987 !important; /* fcHover */
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#g-content .g-block h2 {
|
||||
background-color: transparent;
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
#g-sidebar .g-block-content {
|
||||
padding-left: 1em;
|
||||
}
|
||||
|
||||
.g-block .ui-dialog-titlebar {
|
||||
margin: -1em -1em 0;
|
||||
}
|
||||
|
||||
#g-sidebar .g-block h2 {
|
||||
background: none;
|
||||
}
|
||||
|
||||
/* Photo stream ~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-photo-stream {
|
||||
}
|
||||
|
||||
#g-photo-stream .g-block-content ul {
|
||||
border-right: 1px solid #e8e8e8;
|
||||
height: 135px;
|
||||
overflow: auto;
|
||||
overflow: -moz-scrollbars-horizontal; /* for FF */
|
||||
overflow-x: scroll; /* scroll horizontal */
|
||||
overflow-y: hidden; /* Hide vertical*/
|
||||
}
|
||||
|
||||
#g-content #g-photo-stream .g-item {
|
||||
background-color: #dfeffc; /* bgColorDefault */
|
||||
border: 1px solid #e8e8e8;
|
||||
border-right-color: #ccc;
|
||||
border-bottom-color: #ccc;
|
||||
float: left;
|
||||
height: 90px;
|
||||
overflow: hidden;
|
||||
text-align: center;
|
||||
width: 90px;
|
||||
}
|
||||
|
||||
#g-content .g-item {
|
||||
background-color: #dfeffc; /* bgColorDefault */
|
||||
border: 1px solid #e8e8e8;
|
||||
border-right-color: #ccc;
|
||||
border-bottom-color: #ccc;
|
||||
height: 90px;
|
||||
padding: 14px 8px;
|
||||
text-align: center;
|
||||
width: 90px;
|
||||
}
|
||||
|
||||
/* Graphics settings ~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-admin-graphics .g-available .g-block {
|
||||
clear: none;
|
||||
float: left;
|
||||
margin-right: 1em;
|
||||
width: 30%;
|
||||
}
|
||||
|
||||
/* Appearance settings ~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-site-theme,
|
||||
#g-admin-theme {
|
||||
float: left;
|
||||
width: 48%;
|
||||
}
|
||||
|
||||
#g-site-theme {
|
||||
margin-right: 1em;
|
||||
}
|
||||
|
||||
/* Block admin ~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
.g-admin-blocks-list {
|
||||
float: left;
|
||||
margin: 0 2em 2em 0;
|
||||
width: 30%;
|
||||
}
|
||||
|
||||
.g-admin-blocks-list div:last-child {
|
||||
border: .1em solid;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.g-admin-blocks-list ul {
|
||||
height: 98%;
|
||||
margin: .1em .1em;
|
||||
padding: .1em;
|
||||
}
|
||||
|
||||
.g-admin-blocks-list ul li.g-draggable {
|
||||
background-color: #dfeffc; /* bgColorDefault */
|
||||
margin: .5em;
|
||||
padding: .3em .8em;
|
||||
}
|
||||
|
||||
/* In-line editing ~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
#g-in-place-edit-message {
|
||||
background-color: #fcfdfd; /* bgColorContent */
|
||||
}
|
||||
|
||||
/* Theme options ~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
#g-theme-options-form {
|
||||
border: 1px solid #aaaaaa; /* borderColorContent */
|
||||
}
|
||||
#g-theme-options-form-tabs {
|
||||
border: none !important;
|
||||
}
|
||||
#g-theme-options-form fieldset {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.ui-tabs .ui-tabs-nav li a {
|
||||
padding: 0 1em;
|
||||
}
|
||||
|
||||
.ui-tabs .ui-tabs-nav li a.g-error {
|
||||
background: none no-repeat scroll 0 0 transparent;
|
||||
color: #cd0a0a !important; /* fcError */
|
||||
}
|
||||
|
||||
/** *******************************************************************
|
||||
* 5) Navigation and menus
|
||||
*********************************************************************/
|
||||
|
||||
/* Site Menu ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-site-admin-menu {
|
||||
bottom: 0;
|
||||
font-size: 1.2em;
|
||||
left: 140px;
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
#g-site-admin-menu ul {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
/** *******************************************************************
|
||||
* 6) jQuery and jQuery UI
|
||||
*********************************************************************/
|
||||
|
||||
/* Superfish menu overrides ~~~~~~~~~~~~~~ */
|
||||
.sf-menu a {
|
||||
border-left:1px solid #a6c9e2; /* borderColorContent */
|
||||
}
|
||||
|
||||
.sf-menu li,
|
||||
.sf-menu li li,
|
||||
.sf-menu li li ul li {
|
||||
background-color: #dfeffc; /* bgColorDefault */
|
||||
}
|
||||
|
||||
.sf-menu li:hover {
|
||||
background-color: #d0e5f5; /* bgColorHover */
|
||||
}
|
||||
|
||||
.sf-menu li:hover,
|
||||
.sf-menu li.sfHover,
|
||||
.sf-menu a:focus,
|
||||
.sf-menu a:hover,
|
||||
.sf-menu a:active {
|
||||
background-color: #d0e5f5 !important; /* bgColorHover */
|
||||
}
|
||||
|
||||
.sf-sub-indicator {
|
||||
background-image: url("themeroller/images/ui-icons_2e83ff_256x240.png");
|
||||
height: 16px;
|
||||
width: 16px;
|
||||
}
|
||||
|
||||
a > .sf-sub-indicator {
|
||||
background-position: -64px -16px !important;
|
||||
top: 0.6em;
|
||||
}
|
||||
|
||||
.sf-menu ul a > .sf-sub-indicator {
|
||||
background-position: -32px -16px !important;
|
||||
}
|
||||
|
||||
/* jQuery UI Dialog ~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-admin-dashboard .ui-state-highlight,
|
||||
#g-sidebar .ui-state-highlight {
|
||||
height: 2em;
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
.g-buttonset-vertical a {
|
||||
width: 8em !important;
|
||||
}
|
||||
|
||||
#g-admin-dashboard .ui-dialog-titlebar,
|
||||
#g-admin-dashboard-sidebar .ui-dialog-titlebar {
|
||||
padding: .2em .4em;
|
||||
}
|
||||
|
||||
/** *******************************************************************
|
||||
* 7) Module color overrides
|
||||
*********************************************************************/
|
||||
|
||||
/* User admin form ~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
#g-user-admin-list .g-admin {
|
||||
color: #2e6e9e !important; /* fcDefault; */
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.g-group {
|
||||
border: 1px solid #aaaaaa !important; /* borderColorContent */
|
||||
}
|
||||
|
||||
.g-group h4 {
|
||||
background-color: #dfeffc !important; /* bgColorDefault */
|
||||
border-bottom: 1px dashed #2e6e9e !important; /* fcDefault; */
|
||||
}
|
||||
|
||||
.g-default-group h4,
|
||||
.g-default-group .g-user {
|
||||
color: #2e6e9e !important; /* fcDefault; */
|
||||
}
|
||||
|
||||
/** *******************************************************************
|
||||
* 8) States and interactions
|
||||
*********************************************************************/
|
||||
|
||||
.g-draggable:hover {
|
||||
border: 1px dashed #fbec88; /* bgColorHighlight */
|
||||
}
|
||||
|
||||
.ui-sortable .g-target,
|
||||
.ui-state-highlight {
|
||||
background-color: #fbec88; /* bgColorHighlight */
|
||||
border: 2px dotted #fad42e; /* borderColorHighlight */
|
||||
}
|
||||
|
||||
/** *******************************************************************
|
||||
* 9) Right to left styles
|
||||
*********************************************************************/
|
||||
|
||||
.rtl #g-content #g-album-grid .g-item,
|
||||
.rtl #g-site-theme,
|
||||
.rtl #g-admin-theme,
|
||||
.rtl .g-selected img,
|
||||
.rtl .g-available .g-block img,
|
||||
.rtl #g-content #g-photo-stream .g-item,
|
||||
.rtl li.g-group,
|
||||
.rtl #g-server-add-admin {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.rtl #g-admin-graphics .g-available .g-block {
|
||||
float: right;
|
||||
margin-left: 1em;
|
||||
margin-right: 0em;
|
||||
}
|
||||
|
||||
.rtl #g-site-admin-menu {
|
||||
left: auto;
|
||||
right: 150px;
|
||||
}
|
||||
|
||||
.rtl #g-header #g-login-menu {
|
||||
float: left;
|
||||
}
|
||||
|
||||
.rtl #g-header #g-login-menu li {
|
||||
margin-left: 0;
|
||||
padding-left: 0;
|
||||
padding-right: 1.2em;
|
||||
}
|
||||
|
||||
.rtl .g-selected img,
|
||||
.rtl .g-available .g-block img {
|
||||
margin: 0 0 1em 1em;
|
||||
}
|
||||
|
||||
/* RTL Superfish ~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
.rtl .sf-menu a {
|
||||
border-right:1px solid #fff;
|
||||
}
|
||||
|
||||
.rtl .sf-sub-indicator {
|
||||
background: url("themeroller/images/ui-icons_2e83ff_256x240.png") no-repeat -96px -16px; /* 8-bit indexed alpha png. IE6 gets solid image only */
|
||||
}
|
||||
|
||||
/*** shadows for all but IE6 ***/
|
||||
.rtl .sf-shadow ul {
|
||||
background: url('../images/superfish-shadow.png') no-repeat bottom left;
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-left-radius: 0;
|
||||
-moz-border-radius-topright: 0;
|
||||
-moz-border-radius-bottomleft: 0;
|
||||
-webkit-border-top-right-radius: 0;
|
||||
-webkit-border-bottom-left-radius: 0;
|
||||
-moz-border-radius-topleft: 17px;
|
||||
-moz-border-radius-bottomright: 17px;
|
||||
-webkit-border-top-left-radius: 17px;
|
||||
-webkit-border-bottom-right-radius: 17px;
|
||||
border-top-left-radius: 17px;
|
||||
border-bottom-right-radius: 17px;
|
||||
}
|
79
modules/themeroller/views/admin_themeroller.html.php
Executable file
@ -0,0 +1,79 @@
|
||||
<?php defined("SYSPATH") or die("No direct script access.") ?>
|
||||
<script type="text/javascript" src="<?= url::file("lib/swfobject.js") ?>"></script>
|
||||
<script type="text/javascript" src="<?= url::file("lib/uploadify/jquery.uploadify.min.js") ?>"></script>
|
||||
<script type="text/javascript">
|
||||
$("#g-admin-themeroller").ready(function() {
|
||||
$("#g-themeroller-zip").uploadify({
|
||||
'uploader' : '<?= url::file("lib/uploadify/uploadify.swf") ?>',
|
||||
'script' : '<?= url::site($action) ?>',
|
||||
'cancelImg' : '<?= url::file("lib/uploadify/cancel.png") ?>',
|
||||
'fileExt' : '*.zip',
|
||||
scriptData: <?= json_encode($script_data) ?>,
|
||||
'fileDesc' : <?= t("Archive file")->for_js() ?>,
|
||||
'auto' : true,
|
||||
'multi' : false,
|
||||
'wmode' : 'transparent',
|
||||
hideButton: true, /* should be true */
|
||||
});
|
||||
|
||||
$("#g-themeroller-zipUploader").css({height: '25px', width: '70px', position: 'absolute'});
|
||||
});
|
||||
</script>
|
||||
<div id="g-admin-themeroller">
|
||||
<h1><?= t("Generate theme") ?></h1>
|
||||
<?= form::open($action, array("method" => "post", "id" => "g-themeroller-form")) ?>
|
||||
<fieldset>
|
||||
<ul>
|
||||
<li><?= access::csrf_form_field() ?></li>
|
||||
<? if (!$is_writable): ?>
|
||||
<li class="g-error">
|
||||
<?= t("The theme directory is not writable. Please ensure that it is writable by the web server") ?>
|
||||
</li>
|
||||
<? endif ?>
|
||||
<li <? if (!empty($errors["name"])): ?> class="g-error"<? endif ?>>
|
||||
<?= form::label("name", t("Name")) ?>
|
||||
<?= form::input("name", $form["name"]) ?>
|
||||
<? if (!empty($errors["name"]) && $errors["name"] == "required"): ?>
|
||||
<p class="g-error"><?= t("Theme name is required") ?></p>
|
||||
<? endif ?>
|
||||
<? if (!empty($errors["name"]) && $errors["name"] == "module_exists"): ?>
|
||||
<p class="g-error"><?= t("Theme exists") ?></p>
|
||||
<? endif ?>
|
||||
</li>
|
||||
<li <? if (!empty($errors["display_name"])): ?> class="g-error"<? endif ?>>
|
||||
<?= form::label("display_name", t("Display name")) ?>
|
||||
<?= form::input("display_name", $form["display_name"]) ?>
|
||||
<? if (!empty($errors["display_name"]) && $errors["display_name"] == "required"): ?>
|
||||
<p class="g-error"><?= t("Theme display_name is required")?></p>
|
||||
<? endif ?>
|
||||
</li>
|
||||
<li <? if (!empty($errors["description"])): ?> class="g-error"<? endif ?>>
|
||||
<?= form::label("description", t("Description")) ?>
|
||||
<?= form::textarea("description", $form["description"]) ?>
|
||||
<? if (!empty($errors["description"]) && $errors["description"] == "required"): ?>
|
||||
<p class="g-error"><?= t("Theme description is required")?></p>
|
||||
<? endif ?>
|
||||
</li>
|
||||
<li>
|
||||
<?= form::label("is_admin", t("Generate an admin theme")) ?>
|
||||
<?= form::checkbox("is_admin", "", !empty($form["is_admin"])) ?>
|
||||
</li>
|
||||
<li>
|
||||
<?= form::label("zip_file", t("Upload and generate theme")) ?>
|
||||
<br />
|
||||
<?= form::upload(array("name" => "zip_file",
|
||||
"id" => "g-themeroller-zip",
|
||||
"accept" => "application/zip, multipart/x-zip")) ?>
|
||||
<span style="z-index: 1">
|
||||
<button type="submit"
|
||||
id="g-generate-theme"
|
||||
class="<?= $submit_class ?>"
|
||||
<? if ($not_writable): ?> disabled<? endif ?>>
|
||||
<?= t("Generate") ?>
|
||||
</button>
|
||||
</span>
|
||||
</li>
|
||||
</ul>
|
||||
</fieldset>
|
||||
</form>
|
||||
</div>
|
863
modules/themeroller/views/site_screen.css.php
Normal file
@ -0,0 +1,863 @@
|
||||
/**
|
||||
* Gallery 3 Redmond Theme Screen Styles
|
||||
*
|
||||
* @requires YUI reset, font, grids CSS
|
||||
*
|
||||
* Sheet organization:
|
||||
* 1) Font sizes, base HTML elements
|
||||
* 2) Reusable content blocks
|
||||
* 3) Page layout containers
|
||||
* 4) Content blocks in specific layout containers
|
||||
* 5) Navigation and menus
|
||||
* 6) jQuery and jQuery UI
|
||||
* 7) Forms
|
||||
* 8) States and interactions
|
||||
* 9) Right-to-left language styles
|
||||
*/
|
||||
|
||||
/** *******************************************************************
|
||||
* 1) Font sizes, base HTML elements
|
||||
**********************************************************************/
|
||||
html {
|
||||
color: #2e6e9e; /* fcDefault; */
|
||||
}
|
||||
|
||||
body, html {
|
||||
background-color: #dfeffc; /* bgColorDefault */
|
||||
font-family: Lucida Grande, Lucida Sans, Arial, sans-serif; /* ffDefault */
|
||||
font-size: 13px/1.231; /* fsDefault/ gallery_line_height */
|
||||
}
|
||||
|
||||
p {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
em {
|
||||
font-style: oblique;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, strong, th {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 1.7em;
|
||||
}
|
||||
|
||||
#g-dialog h1 {
|
||||
font-size: 1.1em;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.4em;
|
||||
}
|
||||
|
||||
#g-sidebar .g-block h2 {
|
||||
font-size: 1.2em;
|
||||
}
|
||||
|
||||
#g-sidebar .g-block li {
|
||||
margin-bottom: .6em;
|
||||
}
|
||||
|
||||
#g-content,
|
||||
#g-site-menu,
|
||||
h3 {
|
||||
font-size: 1.2em;
|
||||
}
|
||||
|
||||
#g-sidebar,
|
||||
.g-breadcrumbs {
|
||||
font-size: .9em;
|
||||
}
|
||||
|
||||
#g-banner,
|
||||
#g-footer,
|
||||
.g-message {
|
||||
font-size: .8em;
|
||||
}
|
||||
|
||||
#g-album-grid .g-item,
|
||||
#g-item #g-photo,
|
||||
#g-item #g-movie {
|
||||
font-size: .7em;
|
||||
}
|
||||
|
||||
/* Links ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
a,
|
||||
.g-menu a,
|
||||
#g-dialog a,
|
||||
.g-button,
|
||||
.g-button:active {
|
||||
color: #2e6e9e !important; /* fcDefault; */
|
||||
cursor: pointer !important;
|
||||
text-decoration: none;
|
||||
-moz-outline-style: none;
|
||||
}
|
||||
|
||||
a:hover,
|
||||
.g-button:hover,
|
||||
a.ui-state-hover,
|
||||
input.ui-state-hover,
|
||||
button.ui-state-hover {
|
||||
color: #1d5987 !important; /* fcHover */
|
||||
text-decoration: none;
|
||||
-moz-outline-style: none;
|
||||
}
|
||||
|
||||
a:hover,
|
||||
#g-dialog a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.g-menu a:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#g-dialog #g-action-status li {
|
||||
width: 400px;
|
||||
white-space: normal;
|
||||
padding-left: 32px;
|
||||
}
|
||||
|
||||
/* Tables ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
table {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#g-content table {
|
||||
margin: 1em 0;
|
||||
}
|
||||
|
||||
caption,
|
||||
th {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
th,
|
||||
td {
|
||||
border: none;
|
||||
border-bottom: 1px solid #aaaaaa; /* borderColorContent */
|
||||
padding: .5em;
|
||||
}
|
||||
|
||||
td {
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.g-even {
|
||||
background-color: #fcfdfd; /* bgColorContent */
|
||||
}
|
||||
|
||||
.g-odd {
|
||||
background-color: #dfeffc; /* bgColorDefault */
|
||||
}
|
||||
|
||||
/** *******************************************************************
|
||||
* 2) Reusable content blocks
|
||||
*********************************************************************/
|
||||
|
||||
.g-block h2 {
|
||||
background-color: #dfeffc; /* bgColorDefault */
|
||||
padding: .3em .8em;
|
||||
}
|
||||
|
||||
.g-block-content {
|
||||
margin-top: 1em;
|
||||
}
|
||||
|
||||
/*** ******************************************************************
|
||||
* 3) Page layout containers
|
||||
*********************************************************************/
|
||||
|
||||
/* View container ~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
.g-view {
|
||||
background-color: #fcfdfd; /* bgColorContent */
|
||||
border: 1px solid #a6c9e2; /* borderColorContent */
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
/* Layout containers ~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-header {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
#g-banner {
|
||||
background-color: #5c9ccc; /* bgColorHeader */
|
||||
border-bottom: 1px solid #4297d7; /* borderColorHeader */
|
||||
color: #ffffff; /* fcHeader */
|
||||
min-height: 5em;
|
||||
padding: 1em 20px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
#g-content {
|
||||
padding-left: 20px;
|
||||
position: relative;
|
||||
width: 696px;
|
||||
}
|
||||
|
||||
#g-sidebar {
|
||||
padding: 0 20px;
|
||||
width: 220px;
|
||||
}
|
||||
|
||||
#g-footer {
|
||||
background-color: #5c9ccc; /* bgColorHeader */
|
||||
border-top: 1px solid #4297d7; /* borderColorHeader */
|
||||
margin-top: 20px;
|
||||
padding: 10px 20px;
|
||||
color: #ffffff; /* fcHeader */
|
||||
}
|
||||
|
||||
/* Status and validation messages ~~~~ */
|
||||
|
||||
.g-message-block {
|
||||
border: 1px solid #a6c9e2; /* borderColorContent */
|
||||
}
|
||||
|
||||
#g-site-status li {
|
||||
border-bottom: 1px solid #a6c9e2; /* borderColorContent */
|
||||
}
|
||||
|
||||
/* Breadcrumbs ~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
.g-breadcrumbs li {
|
||||
background: transparent url('../images/ico-separator.gif') no-repeat scroll left center;
|
||||
}
|
||||
|
||||
.g-breadcrumbs .g-first {
|
||||
background: none;
|
||||
}
|
||||
|
||||
/* Pagination ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
.g-paginator {
|
||||
}
|
||||
|
||||
.g-paginator li {
|
||||
}
|
||||
|
||||
.g-paginator .g-info {
|
||||
background: none;
|
||||
}
|
||||
|
||||
/* Dialogs and panels ~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-dialog {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#g-dialog legend {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#g-dialog .g-cancel {
|
||||
margin: .4em 1em;
|
||||
}
|
||||
|
||||
#g-panel {
|
||||
display: none;
|
||||
padding: 1em;
|
||||
}
|
||||
|
||||
/* Inline layout ~~~~~~~~~~ */
|
||||
|
||||
.g-inline li {
|
||||
float: left;
|
||||
margin-left: 1.8em;
|
||||
padding-left: 0 !important;
|
||||
}
|
||||
|
||||
.g-inline li.g-first {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
/** *******************************************************************
|
||||
* 4) Content blocks in specific layout containers
|
||||
*********************************************************************/
|
||||
|
||||
/* Header ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-banner #g-quick-search-form {
|
||||
clear: right;
|
||||
float: right;
|
||||
margin-top: 1em;
|
||||
}
|
||||
|
||||
#g-banner #g-quick-search-form input[type='text'] {
|
||||
width: 17em;
|
||||
}
|
||||
|
||||
#g-content .g-block h2 {
|
||||
background-color: transparent;
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
/* Sidebar ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-sidebar .g-block-content {
|
||||
padding-left: 1em;
|
||||
}
|
||||
|
||||
#g-sidebar #g-image-block {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* Album content ~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-content #g-album-grid {
|
||||
margin: 1em 0;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
#g-content #g-album-grid .g-item {
|
||||
background-color: #fcfdfd; /* bgColorContent */
|
||||
border: 1px solid #fcfdfd; /* bgColorContent */
|
||||
float: left;
|
||||
padding: .6em 8px;
|
||||
position: relative;
|
||||
text-align: center;
|
||||
width: 213px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
#g-content #g-album-grid .g-item h2 {
|
||||
margin: 5px 0;
|
||||
}
|
||||
|
||||
#g-content .g-photo h2,
|
||||
#g-content .g-item .g-metadata {
|
||||
display: none;
|
||||
margin-bottom: .6em;
|
||||
}
|
||||
|
||||
#g-content #g-album-grid .g-album {
|
||||
background-color: #dfeffc; /* bgColorDefault */
|
||||
}
|
||||
|
||||
#g-content #g-album-grid .g-album h2 span.g-album {
|
||||
background: transparent url('../images/ico-album.png') no-repeat top left;
|
||||
display: inline-block;
|
||||
height: 16px;
|
||||
margin-right: 5px;
|
||||
width: 16px;
|
||||
}
|
||||
|
||||
#g-content #g-album-grid .g-hover-item {
|
||||
border: 1px solid #a6c9e2; /* borderColorContent */
|
||||
position: absolute !important;
|
||||
z-index: 1000 !important;
|
||||
}
|
||||
|
||||
#g-content .g-hover-item h2,
|
||||
#g-content .g-hover-item .g-metadata {
|
||||
display: block;
|
||||
}
|
||||
|
||||
#g-content #g-album-grid #g-place-holder {
|
||||
position: relative;
|
||||
visibility: hidden;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
/* Search results ~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-content #g-search-results {
|
||||
margin-top: 1em;
|
||||
padding-top: 1em;
|
||||
}
|
||||
|
||||
/* Individual photo content ~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-item {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#g-item #g-photo,
|
||||
#g-item #g-movie {
|
||||
padding: 2.2em 0;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
#g-item img.g-resize,
|
||||
#g-item a.g-movie {
|
||||
display: block;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
/* Footer content ~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-footer #g-credits li {
|
||||
padding-right: 1.2em;
|
||||
}
|
||||
|
||||
/* In-line editing ~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-in-place-edit-message {
|
||||
background-color: #fcfdfd; /* bgColorContent */
|
||||
}
|
||||
|
||||
/** *******************************************************************
|
||||
* 5) Navigation and menus
|
||||
*********************************************************************/
|
||||
|
||||
/* Login menu ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-banner #g-login-menu {
|
||||
color: #ffffff; /* fcHeader; */
|
||||
float: right;
|
||||
}
|
||||
|
||||
#g-banner #g-login-menu li {
|
||||
padding-left: 1.2em;
|
||||
}
|
||||
|
||||
/* Site Menu ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-site-menu {
|
||||
bottom: 0;
|
||||
left: 140px;
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
#g-site-menu ul {
|
||||
margin-bottom: 0 !important;
|
||||
}
|
||||
|
||||
/* Context Menu ~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
.g-context-menu {
|
||||
background-color: #fcfdfd; /* bgColorContent */
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
.g-item .g-context-menu {
|
||||
display: none;
|
||||
margin-top: 2em;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#g-item .g-context-menu ul {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.g-context-menu li {
|
||||
border-left: none;
|
||||
border-right: none;
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
.g-context-menu li a {
|
||||
display: block;
|
||||
line-height: 1.6em;
|
||||
}
|
||||
|
||||
.g-hover-item .g-context-menu {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.g-hover-item .g-context-menu li {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.g-hover-item .g-context-menu a:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
/* View Menu ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
#g-view-menu {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
#g-view-menu a {
|
||||
background-repeat: no-repeat;
|
||||
background-position: 50% 50%;
|
||||
height: 28px !important;
|
||||
width: 43px !important;
|
||||
}
|
||||
|
||||
#g-view-menu #g-slideshow-link {
|
||||
background-image: url('../images/ico-view-slideshow.png');
|
||||
}
|
||||
|
||||
#g-view-menu .g-fullsize-link {
|
||||
background-image: url('../images/ico-view-fullsize.png');
|
||||
}
|
||||
|
||||
#g-view-menu #g-comments-link {
|
||||
background-image: url('../images/ico-view-comments.png');
|
||||
}
|
||||
|
||||
#g-view-menu #g-print-digibug-link {
|
||||
background-image: url('../images/ico-print.png');
|
||||
}
|
||||
|
||||
/** *******************************************************************
|
||||
* 6) jQuery and jQuery UI
|
||||
*********************************************************************/
|
||||
|
||||
/* jQuery UI Dialog ~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
.ui-widget-overlay {
|
||||
background: #aaaaaa; /* bgColorOverlay */
|
||||
opacity: .7;
|
||||
}
|
||||
|
||||
/* Rotate icon, ThemeRoller only provides one of these */
|
||||
|
||||
.ui-icon-rotate-ccw {
|
||||
background-position: -192px -64px;
|
||||
}
|
||||
|
||||
.ui-icon-rotate-cw {
|
||||
background-position: -208px -64px;
|
||||
}
|
||||
|
||||
/* Superfish menu overrides ~~~~~~~~~~~~~~ */
|
||||
.sf-menu a {
|
||||
border-left:1px solid #a6c9e2; /* borderColorContent */
|
||||
}
|
||||
|
||||
.sf-menu li,
|
||||
.sf-menu li li,
|
||||
.sf-menu li li ul li {
|
||||
background-color: #dfeffc; /* bgColorDefault */
|
||||
}
|
||||
|
||||
.sf-menu li:hover {
|
||||
background-color: #d0e5f5; /* bgColorHover */
|
||||
}
|
||||
|
||||
.sf-menu li:hover,
|
||||
.sf-menu li.sfHover,
|
||||
.sf-menu a:focus,
|
||||
.sf-menu a:hover,
|
||||
.sf-menu a:active {
|
||||
background-color: #d0e5f5 !important; /* bgColorHover */
|
||||
}
|
||||
|
||||
.sf-sub-indicator {
|
||||
background-image: url("themeroller/images/ui-icons_2e83ff_256x240.png");
|
||||
height: 16px;
|
||||
width: 16px;
|
||||
}
|
||||
|
||||
a > .sf-sub-indicator {
|
||||
background-position: -64px -16px !important;
|
||||
top: 0.6em;
|
||||
}
|
||||
|
||||
.sf-menu ul a > .sf-sub-indicator {
|
||||
background-position: -32px -16px !important;
|
||||
}
|
||||
|
||||
/** *******************************************************************
|
||||
* 7) Forms
|
||||
*********************************************************************/
|
||||
fieldset {
|
||||
border: 1px solid #a6c9e2; /* borderColorContent */
|
||||
}
|
||||
|
||||
legend {
|
||||
font-weight: bold;
|
||||
color: #2e6e9e; /* fcDefault; */
|
||||
}
|
||||
|
||||
input.textbox,
|
||||
input[type="text"],
|
||||
input[type="password"],
|
||||
textarea {
|
||||
border: 1px solid #79b7e7; /* borderColorActive */
|
||||
border-top-color: #a6c9e2; /* borderColorContent */
|
||||
border-left-color: #a6c9e2; /* borderColorContent */
|
||||
color: #222222; /* fcContent */
|
||||
}
|
||||
|
||||
input:focus,
|
||||
input.textbox:focus,
|
||||
input[type=text]:focus,
|
||||
textarea:focus,
|
||||
option:focus {
|
||||
background-color: #f5f8f9 ; /* bgColorActive */
|
||||
color: #222222; /* fcContent */
|
||||
}
|
||||
|
||||
/* Forms in dialogs and panels ~~~~~~~~~ */
|
||||
|
||||
label,
|
||||
input[readonly] {
|
||||
background-color: #fcfdfd; /* bgColorContent */
|
||||
color: #2e6e9e; /* fcDefault; */
|
||||
}
|
||||
|
||||
/* Short forms ~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
.g-short-form .textbox,
|
||||
.g-short-form input[type=text] {
|
||||
color: #222222; /* fcContent */
|
||||
}
|
||||
|
||||
.g-short-form .textbox.g-error {
|
||||
border: 1px solid #cd0a0a; /* borderColorError */
|
||||
color: #cd0a0a; /* fcError */
|
||||
}
|
||||
|
||||
/** *******************************************************************
|
||||
* 8) States and interactions
|
||||
*********************************************************************/
|
||||
|
||||
.g-active,
|
||||
.g-enabled,
|
||||
.g-available,
|
||||
.g-selected,
|
||||
.g-highlight {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.g-inactive,
|
||||
.g-disabled,
|
||||
.g-unavailable,
|
||||
.g-uneditable,
|
||||
.g-locked,
|
||||
.g-deselected,
|
||||
.g-understate {
|
||||
color: #a6c9e2; /* borderColorContent */
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.g-editable:hover {
|
||||
background-color: #f5f8f9; /* bgColorActive */
|
||||
}
|
||||
|
||||
form li.g-error,
|
||||
form li.g-info,
|
||||
form li.g-success,
|
||||
form li.g-warning {
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
|
||||
form.g-error input[type="text"],
|
||||
li.g-error input[type="text"],
|
||||
form.g-error input[type="password"],
|
||||
li.g-error input[type="password"],
|
||||
form.g-error input[type="checkbox"],
|
||||
li.g-error input[type="checkbox"],
|
||||
form.g-error input[type="radio"],
|
||||
li.g-error input[type="radio"],
|
||||
form.g-error textarea,
|
||||
li.g-error textarea,
|
||||
form.g-error select,
|
||||
li.g-error select {
|
||||
border: 2px solid #cd0a0a; /* fcError */;
|
||||
}
|
||||
|
||||
.g-error,
|
||||
.g-denied,
|
||||
tr.g-error td.g-error,
|
||||
#g-add-photos-status .g-error {
|
||||
background: #cd0a0a /* borderColorError */ url('../images/ico-error.png') no-repeat .4em 50%;
|
||||
color: #cd0a0a; /* fcError */;;
|
||||
}
|
||||
|
||||
.g-info {
|
||||
background: #fcfdfd /* bgColorContent */ url('../images/ico-info.png') no-repeat .4em 50%;
|
||||
}
|
||||
|
||||
.g-success,
|
||||
.g-allowed,
|
||||
#g-add-photos-status .g-success {
|
||||
background: #fcfdfd /* bgColorContent */ url('../images/ico-success.png') no-repeat .4em 50%;
|
||||
}
|
||||
|
||||
tr.g-success {
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
tr.g-success td.g-success {
|
||||
background-image: url('../images/ico-success.png');
|
||||
}
|
||||
|
||||
.g-warning,
|
||||
tr.g-warning td.g-warning {
|
||||
background: #fbec88 /* bgColorHighlight */ url('../images/ico-warning.png') no-repeat .4em 50%;
|
||||
}
|
||||
|
||||
form .g-error {
|
||||
background-color: #fef1ec; /* bgColorError */
|
||||
}
|
||||
|
||||
.g-default {
|
||||
background-color: #dfeffc; /* bgColorDefault */
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.g-draggable:hover {
|
||||
border: 1px dashed #fbec88; /* bgColorHighlight */
|
||||
}
|
||||
|
||||
.ui-sortable .g-target,
|
||||
.ui-state-highlight {
|
||||
background-color: #fbec88; /* bgColorHighlight */
|
||||
border: 2px dotted #fad42e; /* borderColorHighlight */
|
||||
}
|
||||
|
||||
/* Ajax loading indicator ~~~~~~~~~~~~~~~~ */
|
||||
|
||||
.g-loading-large,
|
||||
.g-dialog-loading-large {
|
||||
background: #fcfdfd /* bgColorContent */ url('../images/loading-large.gif') no-repeat center center !important;
|
||||
}
|
||||
|
||||
.g-loading-small {
|
||||
background: #fcfdfd /* bgColorContent */ url('../images/loading-small.gif') no-repeat center center !important;
|
||||
}
|
||||
|
||||
/** *******************************************************************
|
||||
* 9) Right to left language styles
|
||||
*********************************************************************/
|
||||
|
||||
.rtl #g-header #g-login-menu,
|
||||
.rtl #g-header #g-quick-search-form {
|
||||
clear: left;
|
||||
float: left;
|
||||
}
|
||||
|
||||
.rtl #g-header #g-login-menu li {
|
||||
margin-left: 0;
|
||||
padding-left: 0;
|
||||
padding-right: 1.2em;
|
||||
}
|
||||
|
||||
.rtl #g-site-menu {
|
||||
left: auto;
|
||||
right: 150px;
|
||||
}
|
||||
|
||||
.rtl #g-view-menu #g-slideshow-link {
|
||||
background-image: url('../images/ico-view-slideshow-rtl.png');
|
||||
}
|
||||
|
||||
.rtl #g-sidebar .g-block-content {
|
||||
padding-right: 1em;
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
.rtl #g-footer #g-credits li {
|
||||
padding-left: 1.2em !important;
|
||||
padding-right: 0;
|
||||
}
|
||||
|
||||
.rtl .g-breadcrumbs li {
|
||||
background: transparent url('../images/ico-separator-rtl.gif') no-repeat scroll right center;
|
||||
}
|
||||
|
||||
.rtl .g-breadcrumbs .g-first {
|
||||
background: none;
|
||||
}
|
||||
|
||||
/* RTL Corner radius ~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
.rtl .g-buttonset .ui-corner-tl {
|
||||
-moz-border-radius-topleft: 0;
|
||||
-webkit-border-top-left-radius: 0;
|
||||
border-top-left-radius: 0;
|
||||
-moz-border-radius-topright: 5px !important;
|
||||
-webkit-border-top-right-radius: 5px !important;
|
||||
border-top-right-radius: 5px !important;
|
||||
}
|
||||
|
||||
.rtl .g-buttonset .ui-corner-tr {
|
||||
-moz-border-radius-topright: 0;
|
||||
-webkit-border-top-right-radius: 0;
|
||||
border-top-right-radius: 0;
|
||||
-moz-border-radius-topleft: 5px !important;
|
||||
-webkit-border-top-left-radius: 5px !important;
|
||||
border-top-left-radius: 5px !important;
|
||||
}
|
||||
|
||||
.rtl .g-buttonset .ui-corner-bl {
|
||||
-moz-border-radius-bottomleft: 0;
|
||||
-webkit-border-bottom-left-radius: 0;
|
||||
border-bottom-left-radius: 0;
|
||||
-moz-border-radius-bottomright: 5px !important;
|
||||
-webkit-border-bottom-right-radius: 5px !important;
|
||||
border-bottom-right-radius: 5px !important;
|
||||
}
|
||||
|
||||
.rtl .g-buttonset .ui-corner-br {
|
||||
-moz-border-radius-bottomright: 0;
|
||||
-webkit-border-bottom-right-radius: 0;
|
||||
border-bottom-right-radius: 0;
|
||||
-moz-border-radius-bottomleft: 5px !important;
|
||||
-webkit-border-bottom-left-radius: 5px !important;
|
||||
border-bottom-left-radius: 5px !important;
|
||||
}
|
||||
|
||||
.rtl .g-buttonset .ui-corner-right,
|
||||
.rtl .ui-progressbar .ui-corner-right {
|
||||
-moz-border-radius-topright: 0;
|
||||
-webkit-border-top-right-radius: 0;
|
||||
border-top-right-radius: 0;
|
||||
-moz-border-radius-topleft: 5px !important;
|
||||
-webkit-border-top-left-radius: 5px !important;
|
||||
border-top-left-radius: 5px !important;
|
||||
-moz-border-radius-bottomright: 0;
|
||||
-webkit-border-bottom-right-radius: 0;
|
||||
border-bottom-right-radius: 0;
|
||||
-moz-border-radius-bottomleft: 5px !important;
|
||||
-webkit-border-bottom-left-radius: 5px !important;
|
||||
border-bottom-left-radius: 5px !important;
|
||||
}
|
||||
|
||||
.rtl .g-buttonset .ui-corner-left,
|
||||
.rtl .ui-progressbar .ui-corner-left {
|
||||
-moz-border-radius-topleft: 0;
|
||||
-webkit-border-top-left-radius: 0;
|
||||
border-top-left-radius: 0;
|
||||
-moz-border-radius-topright: 5px !important;
|
||||
-webkit-border-top-right-radius: 5px !important;
|
||||
border-top-right-radius: 5px !important;
|
||||
-moz-border-radius-bottomleft: 0;
|
||||
-webkit-border-bottom-left-radius: 0;
|
||||
border-bottom-left-radius: 0;
|
||||
-moz-border-radius-bottomright: 5px !important;
|
||||
-webkit-border-bottom-right-radius: 5px !important;
|
||||
border-bottom-right-radius: 5px !important;
|
||||
}
|
||||
|
||||
/* RTL Superfish ~~~~~~~~~~~~~~~~~~~~~~~~~ */
|
||||
|
||||
.rtl .sf-menu a {
|
||||
border-right:1px solid #fad42e; /* borderColorHighlight */
|
||||
}
|
||||
|
||||
.rtl .sf-sub-indicator {
|
||||
background: url("themeroller/images/ui-icons_2e83ff_256x240.png") no-repeat -96px -16px; /* 8-bit indexed alpha png. IE6 gets solid image only */
|
||||
}
|
||||
|
||||
/*** shadows for all but IE6 ***/
|
||||
.rtl .sf-shadow ul {
|
||||
background: url('../images/superfish-shadow.png') no-repeat bottom left;
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-left-radius: 0;
|
||||
-moz-border-radius-topright: 0;
|
||||
-moz-border-radius-bottomleft: 0;
|
||||
-webkit-border-top-right-radius: 0;
|
||||
-webkit-border-bottom-left-radius: 0;
|
||||
-moz-border-radius-topleft: 17px;
|
||||
-moz-border-radius-bottomright: 17px;
|
||||
-webkit-border-top-left-radius: 17px;
|
||||
-webkit-border-bottom-right-radius: 17px;
|
||||
border-top-left-radius: 17px;
|
||||
border-bottom-right-radius: 17px;
|
||||
}
|