1
0

Merge branch 'master' of git@github.com:gallery/gallery3-contrib

This commit is contained in:
Tim Almdal 2011-06-29 20:36:34 -07:00
commit 63b08b6200
236 changed files with 9574 additions and 1895 deletions

View File

@ -0,0 +1,58 @@
<?php defined("SYSPATH") or die("No direct script access.");
/**
* Gallery - a web based photo album viewer and editor
* Copyright (C) 2000-2011 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 item_links_event_Core {
static function item_edit_form($item, $form) {
// Create fields on the album edit screen to allow the user to link
// the item to another page.
$item_url = ORM::factory("item_link")
->where("item_id", "=", $item->id)
->find_all();
$existing_url = "";
if (count($item_url) > 0) {
$existing_url = $item_url[0]->url;
}
$form->edit_item
->input("item_links_url")
->label(t("Redirect to URL:"))
->value($existing_url);
}
static function item_deleted($item) {
// Whenever an item is deleted, delete any corresponding data.
db::build()->delete("item_links")->where("item_id", "=", $item->id)->execute();
}
static function item_edit_form_completed($item, $form) {
// Update the database with any changes to the item_links field.
$record = ORM::factory("item_link")->where("item_id", "=", $item->id)->find();
if ($form->edit_item->item_links_url->value != "") {
if (!$record->loaded()) {
$record->item_id = $item->id;
}
$record->url = $form->edit_item->item_links_url->value;
$record->save();
} else {
db::build()->delete("item_links")->where("item_id", "=", $item->id)->execute();
}
}
}

View File

@ -0,0 +1,34 @@
<?php defined("SYSPATH") or die("No direct script access.");
/**
* Gallery - a web based photo album viewer and editor
* Copyright (C) 2000-2011 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 item_links_installer {
static function install() {
$db = Database::instance();
$db->query("CREATE TABLE IF NOT EXISTS {item_links} (
`id` int(9) NOT NULL auto_increment,
`item_id` int(9) NOT NULL,
`url` text default NULL,
PRIMARY KEY (`id`),
KEY(`item_id`, `id`))
DEFAULT CHARSET=utf8;");
// Set the module's version number.
module::set_version("item_links", 1);
}
}

View File

@ -0,0 +1,34 @@
<?php defined("SYSPATH") or die("No direct script access.");
/**
* Gallery - a web based photo album viewer and editor
* Copyright (C) 2000-2011 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 item_links_theme_Core {
static function head($theme) {
// If the current page is an item, and if it's in the item_links table,
// then redirect to the specified web page.
if ($theme->item()) {
$item_url = ORM::factory("item_link")
->where("item_id", "=", $theme->item->id)
->find_all();
if (count($item_url) > 0) {
url::redirect($item_url[0]->url);
}
}
return;
}
}

View File

@ -0,0 +1,21 @@
<?php defined("SYSPATH") or die("No direct script access.");
/**
* Gallery - a web based photo album viewer and editor
* Copyright (C) 2000-2011 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 Item_Link_Model extends ORM {
}

View File

@ -0,0 +1,7 @@
name = "Item Links"
description = "Allows users to use Gallery items as links to external URLs."
version = 1
author_name = "rWatcher"
author_url = "http://codex.gallery2.org/User:RWatcher"
info_url = "http://codex.gallery2.org/Gallery3:Modules:item_links"
discuss_url = "http://gallery.menalto.com/node/102548"

View File

@ -39,6 +39,9 @@ class Admin_Moduleupdates_Controller extends Admin_Controller {
*/
public function index() {
//Start execution timer
$bgtime=time();
$view = new Admin_View("admin.html");
$view->page_title = t("Gallery 3 :: Manage Module Updates");
$view->content = new View("admin_moduleupdates.html");
@ -111,10 +114,12 @@ class Admin_Moduleupdates_Controller extends Admin_Controller {
$font_color_local = $this->get_local_module_version_color ($module_info->version, $module_info->code_version);
list ($core_version, $core_server) = $this->get_remote_module_version($this_module_name, "CORE");
$font_color_core = $this->get_module_version_color ($module_info->version, $module_info->code_version, $core_version);
list ($contrib_version, $contrib_server) = $this->get_remote_module_version($this_module_name, "CONTRIB");
$font_color_contrib = $this->get_module_version_color ($module_info->version, $module_info->code_version, $contrib_version);
list ($gh_version, $gh_server) = $this->get_remote_module_version($this_module_name, "GH");
$font_color_gh = $this->get_module_version_color ($module_info->version, $module_info->code_version, $gh_version);
if(!is_numeric($core_version)) {
list ($contrib_version, $contrib_server) = $this->get_remote_module_version($this_module_name, "CONTRIB");
$font_color_contrib = $this->get_module_version_color ($module_info->version, $module_info->code_version, $contrib_version);
list ($gh_version, $gh_server) = $this->get_remote_module_version($this_module_name, "GH");
$font_color_gh = $this->get_module_version_color ($module_info->version, $module_info->code_version, $gh_version);
}
if($font_color_core == "red" or $font_color_contrib == "red" or $font_color_gh == "red"){
$update_count++;
@ -174,6 +179,20 @@ class Admin_Moduleupdates_Controller extends Admin_Controller {
$view->content->GitHub = $GitHub;
$view->content->Gallery_Version = substr_replace(gallery::VERSION,"",strpos(gallery::VERSION," "));
//End execution timer
$ExecutionTime = (time()-$bgtime);
if ($ExecutionTime < 1) {
$ExecutionTime = '<font color=green>1</font>';
}else if ($ExecutionTime <= 30){
$ExecutionTime = '<font color=green>' . $ExecutionTime . '</font>';
}else if ($ExecutionTime <= 60){
$ExecutionTime = '<font color=orange>' . $ExecutionTime . '</font>';
}else{
$ExecutionTime = '<font color=red>' . $ExecutionTime . '</font>';
}
$view->content->ExecutionTime = $ExecutionTime;
print $view;
}
@ -252,13 +271,24 @@ class Admin_Moduleupdates_Controller extends Admin_Controller {
//Check the Gallery3 Community Contributions GitHub
if ($file == null) {
try {
$thisInstalledVersion = gallery::VERSION;
//Gallery versions prior to 3.0.2 contained the codename in the version string
if (substr_count($thisInstalledVersion, ' ') > 0 ){
$thisInstalledVersion = substr_replace($thisInstalledVersion,"",strpos($thisInstalledVersion," "));
}
//Truncate the minor version number
if (substr_count($thisInstalledVersion, '.') > 1 ){
$thisInstalledVersion = substr_replace($thisInstalledVersion,"",strripos($thisInstalledVersion,"."));
}
$file = fopen ("http://github.com/gallery/gallery3-contrib/raw/master/".
substr_replace(gallery::VERSION,"",strpos(gallery::VERSION," "))."/modules/".$module_name."/module.info", "r");
$thisInstalledVersion ."/modules/".$module_name."/module.info", "r");
if ($file != null) {
$server = '(GCC)';
}
}
catch (Exception $e) {
//echo 'Message: ' .$e->getMessage() . '<br>';
}
}
break;
@ -303,6 +333,9 @@ class Admin_Moduleupdates_Controller extends Admin_Controller {
if($line == "Not entered" or $line == "See git") {
$line = "";
}
if (substr_count($line, '.') > 0) {
$line = str_replace('.','',$line);
}
$version = $line;
break;
} else {

View File

@ -24,7 +24,7 @@ class moduleupdates_installer {
$version = module::get_version("moduleupdates");
if ($version < 1) {
module::set_version("moduleupdates", 7);
module::set_version("moduleupdates", 8);
//Remove the ModuleUpdates cache entry 'JIC'
Cache::instance()->delete("ModuleUpdates");
//create the blank ModuleUpdates cache entry with an expiration of 0 days
@ -34,7 +34,7 @@ class moduleupdates_installer {
}
static function upgrade($version) {
module::set_version("moduleupdates", 7);
module::set_version("moduleupdates", 8);
//Remove the ModuleUpdates cache entry 'JIC'
Cache::instance()->delete("ModuleUpdates");
//Empty the ModuleUpdates cache entry so our new version starts from scratch

View File

@ -1,7 +1,7 @@
name = "Module Updates"
name = "ModuleUpdates"
description = "Compares your installed module version against the ones stored in the GitHub."
version = 7
author_name = ""
author_url = ""
version = 8
author_name = "brentil"
author_url = "http://gallery.menalto.com/user/153736"
info_url = "http://codex.gallery2.org/Gallery3:Modules:moduleupdates"
discuss_url = "http://gallery.menalto.com/forum_module_moduleupdates"
discuss_url = "http://gallery.menalto.com/node/96574"

View File

@ -2,7 +2,7 @@
<div id="g-admin-moduleupdates" class="g-block">
<h1> <?= t("Module Updates v".$mu_version.".0") ?> </h1>
<h1> <?= t("ModuleUpdates v".$mu_version) ?> </h1>
<?= t("Compares your installed module version against the ones stored in the GitHub and GalleryModules.") ?>
<div class="g-block-content">
@ -16,7 +16,7 @@
<li><?= t("<font color=green>Green = Your version is newer than the GitHub</font><br>") ?></li>
<li><?= t("<font color=orange>Orange = Your file version is newer than the installed version</font><br>") ?></li>
<li><?= t("<font color=pink>Pink = Your installed version is newer than file version</font><br>") ?></li>
<li><?= t("Outbound Status: " . $Google . " - GitHub Status: " . $GitHub . "<br>") ?></li>
<li><?= t("Outbound Status: " . $Google . " - GitHub Status: " . $GitHub . " - Execution Time: " . $ExecutionTime . " s <br>") ?></li>
<li><input type="submit" value="<?= t("Check Modules for Updates")?>" class="submit" /> <? if($update_time == ""){ echo "&nbsp;- Last Scan: Unknown";}else{ echo "&nbsp;- Last Scan: ".$update_time;} ?></li>
</ul>
</fieldset>

View File

@ -0,0 +1,271 @@
<?php defined("SYSPATH") or die("No direct script access.");
/**
* Gallery - a web based photo album viewer and editor
* Copyright (C) 2000-2011 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_Pages_Controller extends Admin_Controller {
public function index() {
// Display the admin page.
$view = new Admin_View("admin.html");
$view->page_title = t("Manage pages");
$view->content = new View("admin_pages.html");
$query = ORM::factory("static_page");
$view->content->pages = $query->order_by("name", "ASC")->find_all();
$view->content->form = $this->get_prefs_form();
print $view;
}
public function createpage() {
// Display a form for creating a new page.
$view = new Admin_View("admin.html");
$view->page_title = t("Create page");
$view->content = new View("admin_pages_new.html");
$view->content->form = $this->get_new_page_form();
print $view;
}
public function editpage($id) {
// Display a form for editing an existing page.
$existing_page = ORM::factory("static_page", $id);
$view = new Admin_View("admin.html");
$view->page_title = t("Edit page");
$view->content = new View("admin_pages_new.html");
$view->content->form = $this->get_edit_page_form($existing_page);
print $view;
}
public function savepage() {
// Save a page to the database.
access::verify_csrf();
// Store form values into variables.
$page_id = Input::instance()->post("page_id");
$page_name = urlencode(trim(Input::instance()->post("page_name")));
$page_title = Input::instance()->post("page_title");
$page_code = Input::instance()->post("page_code");
$display_menu = Input::instance()->post("display_menu");
// If $page_id is set, update an existing page.
if (isset($page_id)) {
$update_page = ORM::factory("static_page", $page_id);
$update_page->title = $page_title;
$update_page->html_code = $page_code;
$update_page->display_menu = $display_menu;
$update_page->save();
message::success(t("Page %page_name updated", array("page_name" => $update_page->name)));
log::success("pages", t("Page %page_name updated", array("page_name" => $update_page->name)));
url::redirect("admin/pages");
} else {
// If $page_id is not set, we are dealing with a new page.
// Check and make sure a page with the same names doesn't already exist.
$existing_page = ORM::factory("static_page")
->where("name", "=", $page_name)
->find_all();
// If the page doesn't exist, save it to the database.
if (count($existing_page) == 0) {
$new_page = ORM::factory("static_page");
$new_page->name = $page_name;
$new_page->title = $page_title;
$new_page->html_code = $page_code;
$new_page->display_menu = $display_menu;
$new_page->save();
message::success(t("Page %page_name created", array("page_name" => $page_name)));
log::success("pages", t("Page %page_name created", array("page_name" => $page_name)));
url::redirect("admin/pages");
} else {
// If the page does exist, ask the user if they want to overwrite the old page with the new one.
message::error(t("Page %page_name already exists, press Save again to overwrite.", array("page_name" => $page_name)));
$view = new Admin_View("admin.html");
$view->page_title = t("Edit page");
$view->content = new View("admin_pages_new.html");
$view->content->form = $this->get_overwrite_page_form($existing_page[0]->id, $page_name, $page_title, $page_code, $display_menu);
print $view;
}
}
}
public function form_delete($id) {
// Display a form asking the user if they want to delete a page.
$one_page = ORM::factory("static_page", $id);
if ($one_page->loaded()) {
print $this->get_delete_form($one_page);
}
}
public function delete($id) {
// Delete the specified page.
access::verify_csrf();
// Make sure $id belongs to an actual page.
$one_page = ORM::factory("static_page", $id);
if (!$one_page->loaded()) {
throw new Kohana_404_Exception();
}
// If the form validates, delete the specified page.
$form = $this->get_delete_form($one_page);
if ($form->validate()) {
$name = $one_page->name;
$one_page->delete();
message::success(t("Deleted page %page_name", array("page_name" => $name)));
log::success("pages", t("Deleted page %page_name", array("page_name" => $name)));
json::reply(array("result" => "success", "location" => url::site("admin/pages")));
} else {
print $form;
}
}
public function form_rename($id) {
// Display a form to allow the user to rename a page.
$one_page = ORM::factory("static_page", $id);
if ($one_page->loaded()) {
print InPlaceEdit::factory(urldecode($one_page->name))
->action("admin/pages/rename/$id")
->render();
}
}
public function rename($id) {
// Rename an existing page.
access::verify_csrf();
// Make sure the page specified by $id exists.
$one_page = ORM::factory("static_page", $id);
if (!$one_page->loaded()) {
throw new Kohana_404_Exception();
}
$in_place_edit = InPlaceEdit::factory($one_page->name)
->action("admin/pages/rename/$one_page->id")
->rules(array("required", "length[1,64]"));
// If the form validates, and if the new name doesn't already exist, rename the page.
if ($in_place_edit->validate()) {
$old_name = $one_page->name;
$new_name = urlencode(trim($in_place_edit->value()));
$new_name_exists = ORM::factory("static_page")->where("name", "=", $new_name)->find_all();
if (count($new_name_exists) == 0) {
$one_page->name = $new_name;
$one_page->save();
$message = t("Renamed page <i>%old_name</i> to <i>%new_name</i>",
array("old_name" => $old_name, "new_name" => $new_name));
message::success($message);
log::success("pages", $message);
json::reply(array("result" => "success", "location" => url::site("admin/pages")));
} else {
json::reply(array("result" => "error", "form" => (string)$in_place_edit->render()));
}
} else {
json::reply(array("result" => "error", "form" => (string)$in_place_edit->render()));
}
}
static function get_delete_form($one_page) {
// Generate a new form asking the user if they want to delete a page.
$form = new Forge("admin/pages/delete/$one_page->id", "", "post", array("id" => "g-delete-pages-form"));
$group = $form->group("delete_page")
->label(t("Really delete page %page_name?", array("page_name" => $one_page->name)));
$group->submit("")->value(t("Delete Page"));
return $form;
}
private function get_new_page_form() {
// Generate a form for creating a new page.
$form = new Forge("admin/pages/savepage", "", "post",
array("id" => "g-pages-admin-form"));
$pages_group = $form->group("new_page");
$pages_group->input("page_name")
->label(t("Name"));
$pages_group->input("page_title")
->label(t("Title"));
$pages_group->textarea("page_code")
->label(t("HTML Code"));
$pages_group->checkbox("display_menu")
->label(t("Display in menu?"))
->checked(false);
$pages_group->submit("save_page")
->value(t("Save"));
return $form;
}
private function get_overwrite_page_form($id, $name, $title, $html_code, $display_menu) {
// Generate a form for overwriting an existing page.
$form = new Forge("admin/pages/savepage", "", "post",
array("id" => "g-pages-admin-form"));
$pages_group = $form->group("new_page");
$pages_group->hidden("page_id")
->value($id);
$pages_group->input("page_name")
->label(t("Name"))
->readonly()
->value($name);
$pages_group->input("page_title")
->label(t("Title"))
->value($title);
$pages_group->textarea("page_code")
->label(t("HTML Code"))
->value($html_code);
$pages_group->checkbox("display_menu")
->label(t("Display in menu?"))
->checked($display_menu);
$pages_group->submit("save_page")
->value(t("Save"));
return $form;
}
private function get_edit_page_form($existing_page) {
// Generate a form for editing an existing page. Reuse the overwrite form for as it's basically the same thing.
return ($this->get_overwrite_page_form($existing_page->id, $existing_page->name, $existing_page->title, $existing_page->html_code, $existing_page->display_menu));
}
private function get_prefs_form() {
// Generate a form for global preferences.
$form = new Forge("admin/pages/saveprefs", "", "post",
array("id" => "g-pages-admin-form"));
$pages_group = $form->group("preferences")->label(t("Settings"));
$pages_group->checkbox("display_sidebar")
->label(t("Hide sidebar on Pages?"))
->checked(module::get_var("pages", "show_sidebar"));
$pages_group->submit("save_prefs")
->value(t("Save"));
return $form;
}
public function saveprefs() {
// Save a preferences to the database.
access::verify_csrf();
// Save form variables.
module::set_var("pages", "show_sidebar", Input::instance()->post("display_sidebar"));
// Display message and load main pages admin screen.
message::success(t("Your settings have been saved."));
url::redirect("admin/pages");
}
}

View File

@ -0,0 +1,42 @@
<?php defined("SYSPATH") or die("No direct script access.");
/**
* Gallery - a web based photo album viewer and editor
* Copyright (C) 2000-2011 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 Pages_Controller extends Controller {
public function show($page_name) {
// Display the page specified by $page_name, or a 404 error if it doesn't exist.
// Run a database search to look up the page.
$existing_page = ORM::factory("static_page")
->where("name", "=", $page_name)
->find_all();
// If it doesn't exist, display a 404 error.
if (count($existing_page) == 0) {
throw new Kohana_404_Exception();
}
// Display the page.
$template = new Theme_View("page.html", "other", "Pages");
$template->page_title = t("Gallery :: ") . $existing_page[0]->title;
$template->content = new View("pages_display.html");
$template->content->title = $existing_page[0]->title;
$template->content->body = $existing_page[0]->html_code;
print $template;
}
}

View File

@ -0,0 +1,48 @@
div.jHtmlArea { display: inline block; border: solid 1px #ccc; }
div.jHtmlArea div { padding: 0px; margin: 0px; }
div.jHtmlArea .ToolBar { }
div.jHtmlArea .ToolBar ul { border: solid 0px #ccc; margin: 1px; padding: 1px; position:relative; display: inline; background: #fff url(../images/jHtmlArea_Toolbar_Group_BG.png) repeat-x;}
div.jHtmlArea .ToolBar ul li { list-style-type: none; float: left; border: none; padding: 1px; margin: 1px; }
div.jHtmlArea .ToolBar ul li:hover { border: solid 1px #ccc; background: #ddd url(../images/jHtmlArea_Toolbar_Group__Btn_Select_BG.png); padding: 0; }
div.jHtmlArea .ToolBar ul li a { display: block; width: 16px; height: 16px; background: url(../images/jHtmlArea.png) no-repeat -16px -500px; border: none; cursor: pointer; padding: 0px; }
div.jHtmlArea .ToolBar ul li a.highlighted { border: solid 1px #aaa; background-color: #bbb; padding: 0; }
div.jHtmlArea .ToolBar ul li.separator {height: 16px; margin: 0 2px 0 3px; border-left: 1px solid #ccc;}
div.jHtmlArea .ToolBar ul li.separator:hover { padding: 1px; background-color: #fff; border-top:none; border-bottom:none; border-right:none;}
div.jHtmlArea .ToolBar ul li a:hover { }
div.jHtmlArea .ToolBar ul li a.bold { background-position: 0 0; }
div.jHtmlArea .ToolBar ul li a.italic { background-position: -16px 0; }
div.jHtmlArea .ToolBar ul li a.underline { background-position: -32px 0; }
div.jHtmlArea .ToolBar ul li a.strikethrough { background-position: -48px 0; }
div.jHtmlArea .ToolBar ul li a.link { background-position: -64px 0; }
div.jHtmlArea .ToolBar ul li a.unlink { background-position: -80px 0; }
div.jHtmlArea .ToolBar ul li a.orderedlist { background-position: -96px 0; }
div.jHtmlArea .ToolBar ul li a.unorderedlist { background-position: -112px 0; }
div.jHtmlArea .ToolBar ul li a.image { background-position: -128px 0; }
div.jHtmlArea .ToolBar ul li a.cut { background-position: -144px 0; }
div.jHtmlArea .ToolBar ul li a.copy { background-position: -160px 0; }
div.jHtmlArea .ToolBar ul li a.paste { background-position: -176px 0; }
div.jHtmlArea .ToolBar ul li a.html { background-position: -192px 0; opacity:0.6; filter:alpha(opacity=60);}
div.jHtmlArea .ToolBar ul li a.html.highlighted { opacity:1.0; filter:alpha(opacity=100);}
div.jHtmlArea .ToolBar ul li a.h1 { background-position: 0 -16px;}
div.jHtmlArea .ToolBar ul li a.h2 { background-position: -16px -16px;}
div.jHtmlArea .ToolBar ul li a.h3 { background-position: -32px -16px;}
div.jHtmlArea .ToolBar ul li a.h4 { background-position: -48px -16px;}
div.jHtmlArea .ToolBar ul li a.h5 { background-position: -64px -16px;}
div.jHtmlArea .ToolBar ul li a.h6 { background-position: -80px -16px;}
div.jHtmlArea .ToolBar ul li a.subscript { background-position: -96px -16px;}
div.jHtmlArea .ToolBar ul li a.superscript { background-position: -112px -16px;}
div.jHtmlArea .ToolBar ul li a.indent { background-position: -128px -16px;}
div.jHtmlArea .ToolBar ul li a.outdent { background-position: -144px -16px;}
div.jHtmlArea .ToolBar ul li a.horizontalrule { background-position: -160px -16px;}
div.jHtmlArea .ToolBar ul li a.p { background-position: -176px -16px;}
div.jHtmlArea .ToolBar ul li a.justifyleft { background-position: 0 -32px;}
div.jHtmlArea .ToolBar ul li a.justifycenter { background-position: -16px -32px;}
div.jHtmlArea .ToolBar ul li a.justifyright { background-position: -32px -32px;}
div.jHtmlArea .ToolBar ul li a.increasefontsize { background-position: -48px -32px;}
div.jHtmlArea .ToolBar ul li a.decreasefontsize { background-position: -64px -32px;}
div.jHtmlArea .ToolBar ul li a.forecolor { background-position: -80px -32px;}

View File

@ -0,0 +1,57 @@
<?php defined("SYSPATH") or die("No direct script access.");
/**
* Gallery - a web based photo album viewer and editor
* Copyright (C) 2000-2011 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 pages_block_Core {
static function get_site_list() {
return array("pages_block" => t("Pages Links"));
}
static function get($block_id, $theme) {
$block = "";
switch ($block_id) {
case "pages_block":
// Create a new block with a list of all Pages and their links.
// Query the database for all existing pages.
// If at least one page exists, display the sidebar block.
$query = ORM::factory("static_page");
$pages = $query->order_by("title", "ASC")->find_all();
if (count($pages) > 0) {
// Loop through each page and generate an HTML list of their links and titles.
$content = "<ul id=\"g-pages-list\">";
foreach ($pages as $one_page) {
$content .= "<li style=\"clear: both;\"><a href=\"" . url::site("pages/show/" . $one_page->name) . "\">" . $one_page->title . "</a></li>";
}
$content .= "</ul>";
// Make a new sidebar block.
$block = new Block();
$block->css_id = "g-pages";
$block->title = t("Pages");
$block->content = new View("pages_sidebar.html");
$block->content->links = $content;
}
break;
}
return $block;
}
}

View File

@ -0,0 +1,44 @@
<?php defined("SYSPATH") or die("No direct script access.");
/**
* Gallery - a web based photo album viewer and editor
* Copyright (C) 2000-2011 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 pages_event_Core {
static function admin_menu($menu, $theme) {
// Add a settings link to the admin menu.
$menu->get("settings_menu")
->append(Menu::factory("link")
->id("pages")
->label(t("Pages Settings"))
->url(url::site("admin/pages")));
}
static function site_menu($menu, $theme) {
$menu_pages = ORM::factory("static_page")
->where("display_menu", "=", true)
->order_by("title", "DESC")
->find_all();
if (count($menu_pages) > 0) {
foreach ($menu_pages as $one_page) {
$menu->add_after("home", Menu::factory("link")
->id("pages-" . $one_page->id)
->label($one_page->title)
->url(url::site("pages/show/" . $one_page->name)));
}
}
}
}

View File

@ -0,0 +1,44 @@
<?php defined("SYSPATH") or die("No direct script access.");
/**
* Gallery - a web based photo album viewer and editor
* Copyright (C) 2000-2011 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 pages_installer {
static function install() {
// Create a table to store pages in.
$db = Database::instance();
$db->query("CREATE TABLE IF NOT EXISTS {static_pages} (
`id` int(9) NOT NULL auto_increment,
`name` varchar(255) default NULL,
`title` varchar(255) default NULL,
`html_code` text default NULL,
`display_menu` boolean default 0,
PRIMARY KEY (`id`),
UNIQUE KEY(`name`))
DEFAULT CHARSET=utf8;");
// Set the module version number.
module::set_version("pages", 2);
}
static function upgrade($version) {
$db = Database::instance();
if ($version == 1) {
$db->query("ALTER TABLE {static_pages} ADD COLUMN `display_menu` boolean default 0");
module::set_version("pages", $version = 2);
}
}
}

View 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-2011 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 pages_theme_Core {
static function admin_head($theme) {
// Load jHtmlArea js and css.
return $theme->script("jHtmlArea-0.7.0.js") .
$theme->css("jHtmlArea.css");
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 964 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 942 B

View File

@ -0,0 +1,403 @@
/*
* jHtmlArea 0.7.0 - WYSIWYG Html Editor jQuery Plugin
* Copyright (c) 2009 Chris Pietschmann
* http://jhtmlarea.codeplex.com
* Licensed under the Microsoft Reciprocal License (Ms-RL)
* http://jhtmlarea.codeplex.com/license
*/
(function($) {
$.fn.htmlarea = function(opts) {
if (opts && typeof (opts) === "string") {
var args = [];
for (var i = 1; i < arguments.length; i++) { args.push(arguments[i]); }
var htmlarea = jHtmlArea(this[0]);
var f = htmlarea[opts];
if (f) { return f.apply(htmlarea, args); }
}
return this.each(function() { jHtmlArea(this, opts); });
};
var jHtmlArea = window.jHtmlArea = function(elem, options) {
if (elem.jquery) {
return jHtmlArea(elem[0]);
}
if (elem.jhtmlareaObject) {
return elem.jhtmlareaObject;
} else {
return new jHtmlArea.fn.init(elem, options);
}
};
jHtmlArea.fn = jHtmlArea.prototype = {
// The current version of jHtmlArea being used
jhtmlarea: "0.7.0",
init: function(elem, options) {
if (elem.nodeName.toLowerCase() === "textarea") {
var opts = $.extend({}, jHtmlArea.defaultOptions, options);
elem.jhtmlareaObject = this;
var textarea = this.textarea = $(elem);
var container = this.container = $("<div/>").addClass("jHtmlArea").width(textarea.width()).insertAfter(textarea);
var toolbar = this.toolbar = $("<div/>").addClass("ToolBar").appendTo(container);
priv.initToolBar.call(this, opts);
var iframe = this.iframe = $("<iframe/>").height(textarea.height());
iframe.width(textarea.width() - ($.browser.msie ? 0 : 4));
var htmlarea = this.htmlarea = $("<div/>").append(iframe);
container.append(htmlarea).append(textarea.hide());
priv.initEditor.call(this, opts);
priv.attachEditorEvents.call(this);
// Fix total height to match TextArea
iframe.height(iframe.height() - toolbar.height());
toolbar.width(textarea.width() - 2);
if (opts.loaded) { opts.loaded.call(this); }
}
},
dispose: function() {
this.textarea.show().insertAfter(this.container);
this.container.remove();
this.textarea[0].jhtmlareaObject = null;
},
execCommand: function(a, b, c) {
this.iframe[0].contentWindow.focus();
this.editor.execCommand(a, b || false, c || null);
this.updateTextArea();
},
ec: function(a, b, c) {
this.execCommand(a, b, c);
},
queryCommandValue: function(a) {
this.iframe[0].contentWindow.focus();
return this.editor.queryCommandValue(a);
},
qc: function(a) {
return this.queryCommandValue(a);
},
getSelectedHTML: function() {
if ($.browser.msie) {
return this.getRange().htmlText;
} else {
var elem = this.getRange().cloneContents();
return $("<p/>").append($(elem)).html();
}
},
getSelection: function() {
if ($.browser.msie) {
//return (this.editor.parentWindow.getSelection) ? this.editor.parentWindow.getSelection() : this.editor.selection;
return this.editor.selection;
} else {
return this.iframe[0].contentDocument.defaultView.getSelection();
}
},
getRange: function() {
var s = this.getSelection();
if (!s) { return null; }
//return (s.rangeCount > 0) ? s.getRangeAt(0) : s.createRange();
return (s.getRangeAt) ? s.getRangeAt(0) : s.createRange();
},
html: function(v) {
if (v) {
this.pastHTML(v);
} else {
return toHtmlString();
}
},
pasteHTML: function(html) {
this.iframe[0].contentWindow.focus();
var r = this.getRange();
if ($.browser.msie) {
r.pasteHTML(html);
} else if ($.browser.mozilla) {
r.deleteContents();
r.insertNode($((html.indexOf("<") != 0) ? $("<span/>").append(html) : html)[0]);
} else { // Safari
r.deleteContents();
r.insertNode($(this.iframe[0].contentWindow.document.createElement("span")).append($((html.indexOf("<") != 0) ? "<span>" + html + "</span>" : html))[0]);
}
r.collapse(false);
r.select();
},
cut: function() {
this.ec("cut");
},
copy: function() {
this.ec("copy");
},
paste: function() {
this.ec("paste");
},
bold: function() { this.ec("bold"); },
italic: function() { this.ec("italic"); },
underline: function() { this.ec("underline"); },
strikeThrough: function() { this.ec("strikethrough"); },
image: function(url) {
if ($.browser.msie && !url) {
this.ec("insertImage", true);
} else {
this.ec("insertImage", false, (url || prompt("Image URL:", "http://")));
}
},
removeFormat: function() {
this.ec("removeFormat", false, []);
this.unlink();
},
link: function() {
if ($.browser.msie) {
this.ec("createLink", true);
} else {
this.ec("createLink", false, prompt("Link URL:", "http://"));
}
},
unlink: function() { this.ec("unlink", false, []); },
orderedList: function() { this.ec("insertorderedlist"); },
unorderedList: function() { this.ec("insertunorderedlist"); },
superscript: function() { this.ec("superscript"); },
subscript: function() { this.ec("subscript"); },
p: function() {
this.formatBlock("<p>");
},
h1: function() {
this.heading(1);
},
h2: function() {
this.heading(2);
},
h3: function() {
this.heading(3);
},
h4: function() {
this.heading(4);
},
h5: function() {
this.heading(5);
},
h6: function() {
this.heading(6);
},
heading: function(h) {
this.formatBlock($.browser.msie ? "Heading " + h : "h" + h);
},
indent: function() {
this.ec("indent");
},
outdent: function() {
this.ec("outdent");
},
insertHorizontalRule: function() {
this.ec("insertHorizontalRule", false, "ht");
},
justifyLeft: function() {
this.ec("justifyLeft");
},
justifyCenter: function() {
this.ec("justifyCenter");
},
justifyRight: function() {
this.ec("justifyRight");
},
increaseFontSize: function() {
if ($.browser.msie) {
this.ec("fontSize", false, this.qc("fontSize") + 1);
} else if ($.browser.safari) {
this.getRange().surroundContents($(this.iframe[0].contentWindow.document.createElement("span")).css("font-size", "larger")[0]);
} else {
this.ec("increaseFontSize", false, "big");
}
},
decreaseFontSize: function() {
if ($.browser.msie) {
this.ec("fontSize", false, this.qc("fontSize") - 1);
} else if ($.browser.safari) {
this.getRange().surroundContents($(this.iframe[0].contentWindow.document.createElement("span")).css("font-size", "smaller")[0]);
} else {
this.ec("decreaseFontSize", false, "small");
}
},
forecolor: function(c) {
this.ec("foreColor", false, c || prompt("Enter HTML Color:", "#"));
},
formatBlock: function(v) {
this.ec("formatblock", false, v || null);
},
showHTMLView: function() {
this.updateTextArea();
this.textarea.show();
this.htmlarea.hide();
$("ul li:not(li:has(a.html))", this.toolbar).hide();
$("ul:not(:has(:visible))", this.toolbar).hide();
$("ul li a.html", this.toolbar).addClass("highlighted");
},
hideHTMLView: function() {
this.updateHtmlArea();
this.textarea.hide();
this.htmlarea.show();
$("ul", this.toolbar).show();
$("ul li", this.toolbar).show().find("a.html").removeClass("highlighted");
},
toggleHTMLView: function() {
(this.textarea.is(":hidden")) ? this.showHTMLView() : this.hideHTMLView();
},
toHtmlString: function() {
return this.editor.body.innerHTML;
},
toString: function() {
return this.editor.body.innerText;
},
updateTextArea: function() {
this.textarea.val(this.toHtmlString());
},
updateHtmlArea: function() {
this.editor.body.innerHTML = this.textarea.val();
}
};
jHtmlArea.fn.init.prototype = jHtmlArea.fn;
jHtmlArea.defaultOptions = {
toolbar: [
["html"], ["bold", "italic", "underline", "strikethrough", "|", "subscript", "superscript"],
["increasefontsize", "decreasefontsize"],
["orderedlist", "unorderedlist"],
["indent", "outdent"],
["justifyleft", "justifycenter", "justifyright"],
["link", "unlink", "image", "horizontalrule"],
["p", "h1", "h2", "h3", "h4", "h5", "h6"],
["cut", "copy", "paste"]
],
css: null,
toolbarText: {
bold: "Bold", italic: "Italic", underline: "Underline", strikethrough: "Strike-Through",
cut: "Cut", copy: "Copy", paste: "Paste",
h1: "Heading 1", h2: "Heading 2", h3: "Heading 3", h4: "Heading 4", h5: "Heading 5", h6: "Heading 6", p: "Paragraph",
indent: "Indent", outdent: "Outdent", horizontalrule: "Insert Horizontal Rule",
justifyleft: "Left Justify", justifycenter: "Center Justify", justifyright: "Right Justify",
increasefontsize: "Increase Font Size", decreasefontsize: "Decrease Font Size", forecolor: "Text Color",
link: "Insert Link", unlink: "Remove Link", image: "Insert Image",
orderedlist: "Insert Ordered List", unorderedlist: "Insert Unordered List",
subscript: "Subscript", superscript: "Superscript",
html: "Show/Hide HTML Source View"
}
};
var priv = {
toolbarButtons: {
strikethrough: "strikeThrough", orderedlist: "orderedList", unorderedlist: "unorderedList",
horizontalrule: "insertHorizontalRule",
justifyleft: "justifyLeft", justifycenter: "justifyCenter", justifyright: "justifyRight",
increasefontsize: "increaseFontSize", decreasefontsize: "decreaseFontSize",
html: function(btn) {
this.toggleHTMLView();
}
},
initEditor: function(options) {
var edit = this.editor = this.iframe[0].contentWindow.document;
edit.designMode = 'on';
edit.open();
edit.write(this.textarea.val());
edit.close();
if (options.css) {
var e = edit.createElement('link'); e.rel = 'stylesheet'; e.type = 'text/css'; e.href = options.css; edit.getElementsByTagName('head')[0].appendChild(e);
}
},
initToolBar: function(options) {
var that = this;
var menuItem = function(className, altText, action) {
return $("<li/>").append($("<a href='javascript:void(0);'/>").addClass(className).attr("title", altText).click(function() { action.call(that, $(this)); }));
};
function addButtons(arr) {
var ul = $("<ul/>").appendTo(that.toolbar);
for (var i = 0; i < arr.length; i++) {
var e = arr[i];
if ((typeof (e)).toLowerCase() === "string") {
if (e === "|") {
ul.append($('<li class="separator"/>'));
} else {
var f = (function(e) {
// If button name exists in priv.toolbarButtons then call the "method" defined there, otherwise call the method with the same name
var m = priv.toolbarButtons[e] || e;
if ((typeof (m)).toLowerCase() === "function") {
return function(btn) { m.call(this, btn); };
} else {
return function() { this[m](); this.editor.body.focus(); };
}
})(e.toLowerCase());
var t = options.toolbarText[e.toLowerCase()];
ul.append(menuItem(e.toLowerCase(), t || e, f));
}
} else {
ul.append(menuItem(e.css, e.text, e.action));
}
}
};
if (options.toolbar.length !== 0 && priv.isArray(options.toolbar[0])) {
for (var i = 0; i < options.toolbar.length; i++) {
addButtons(options.toolbar[i]);
}
} else {
addButtons(options.toolbar);
}
},
attachEditorEvents: function() {
var t = this;
var fnHA = function() {
t.updateHtmlArea();
};
this.textarea.click(fnHA).
keyup(fnHA).
keydown(fnHA).
mousedown(fnHA).
blur(fnHA);
var fnTA = function() {
t.updateTextArea();
};
$(this.editor.body).click(fnTA).
keyup(fnTA).
keydown(fnTA).
mousedown(fnTA).
blur(fnTA);
$('form').submit(function() { t.toggleHTMLView(); t.toggleHTMLView(); });
//$(this.textarea[0].form).submit(function() { //this.textarea.closest("form").submit(function() {
// Fix for ASP.NET Postback Model
if (window.__doPostBack) {
var old__doPostBack = __doPostBack;
window.__doPostBack = function() {
if (t) {
if (t.toggleHTMLView) {
t.toggleHTMLView();
t.toggleHTMLView();
}
}
return old__doPostBack.apply(window, arguments);
};
}
},
isArray: function(v) {
return v && typeof v === 'object' && typeof v.length === 'number' && typeof v.splice === 'function' && !(v.propertyIsEnumerable('length'));
}
};
})(jQuery);

View File

@ -0,0 +1,21 @@
<?php defined("SYSPATH") or die("No direct script access.");
/**
* Gallery - a web based photo album viewer and editor
* Copyright (C) 2000-2011 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 Static_Page_Model extends ORM {
}

View File

@ -0,0 +1,7 @@
name = "Pages"
description = "Allows Gallery admins to create static pages."
version = 2
author_name = "rWatcher"
author_url = "http://codex.gallery2.org/User:RWatcher"
info_url = "http://codex.gallery2.org/Gallery3:Modules:Pages"
discuss_url = "http://gallery.menalto.com/node/102534"

View File

@ -0,0 +1,59 @@
<?php defined("SYSPATH") or die("No direct script access.") ?>
<script type="text/javascript">
$("document").ready(function() {
// using JS for adding link titles to avoid running t() for each tag
$("#g-page-admin .g-page-name").attr("title", <?= t("Click to edit this page")->for_js() ?>);
$("#g-page-admin .g-delete-link").attr("title", $(".g-delete-link:first span").html());
// In-place editing for tag admin
$(".g-editable").gallery_in_place_edit({
form_url: <?= html::js_string(url::site("admin/pages/form_rename/__ID__")) ?>
});
});
</script>
<? $pages_per_column = $pages->count()/5 ?>
<? $column_page_count = 0 ?>
<div class="g-block">
<h1> <?= t("Manage pages") ?> </h1>
<?= $form; ?>
<div class="g-block-content">
<table id="g-page-admin">
<caption>
<?= t2("There is one page", "There are %count pages", $pages->count()) ?><br />
<a href="<?=url::site("admin/pages/createpage") ?>"><?=t("Add new page") ?></a>
</caption>
<tr>
<td>
<? foreach ($pages as $i => $one_page): ?>
<? $current_letter = strtoupper(mb_substr($one_page->name, 0, 1)) ?>
<? if ($i == 0): /* first letter */ ?>
<strong><?= html::clean($current_letter) ?></strong>
<ul>
<? elseif ($last_letter != $current_letter): /* new letter */ ?>
</ul>
<? if ($column_page_count > $pages_per_column): /* new column */ ?>
<? $column_page_count = 0 ?>
</td>
<td>
<? endif ?>
<strong><?= html::clean($current_letter) ?></strong>
<ul>
<? endif ?>
<li>
<span class="g-editable g-page-name" rel="<?= $one_page->id ?>"><?= html::clean($one_page->name) ?></span>
<a href="<?= url::site("admin/pages/editpage/$one_page->id") ?>" class="g-edit-link g-button" title="<?= t("Edit this page") ?>"><span class="ui-icon ui-icon-pencil"><?= t("Edit this page") ?></span></a>
<a href="<?= url::site("pages/show/" . $one_page->name) ?>" class="g-view-link g-button" title="<?= t("View this page") ?>" target="_blank"><span class="ui-icon ui-icon-info"><?= t("View this page") ?></span></a>
<a href="<?= url::site("admin/pages/form_delete/$one_page->id") ?>" class="g-dialog-link g-delete-link g-button"><span class="ui-icon ui-icon-trash"><?= t("Delete this page") ?></span></a>
</li>
<? $column_page_count++ ?>
<? $last_letter = $current_letter ?>
<? endforeach ?>
</ul>
</td>
</tr>
</table>
</div>
</div>

View File

@ -0,0 +1,20 @@
<?php defined("SYSPATH") or die("No direct script access.") ?>
<body>
<style type="text/css">
textarea {
height: 35em;
width: 97%;
}
</style>
<script type="text/javascript">
$(function() {
$("textarea").htmlarea(); // Initialize all TextArea's as jHtmlArea's with default values
});
</script>
<div class="g-block">
<h1> <?= $theme->page_title ?> </h1>
<div class="g-block-content">
<?=$form ?>
</div>
</div>

View File

@ -0,0 +1,26 @@
<?php defined("SYSPATH") or die("No direct script access.") ?>
<? if (module::get_var("pages", "show_sidebar")) : ?>
<style type="text/css">
<? if (module::get_var("gallery", "active_site_theme") == "greydragon") : ?>
#g-column-right {
display: none;
}
.g-page-block-content {
width: 99%;
}
<? else: ?>
#g-sidebar {
display: none;
}
#g-content {
width: 950px;
}
<? endif ?>
</style>
<? endif ?>
<div class="g-page-block">
<h1> <?= $title ?> </h1>
<div class="g-page-block-content">
<?=$body ?>
</div>
</div>

View File

@ -0,0 +1,2 @@
<?php defined("SYSPATH") or die("No direct script access.") ?>
<?= $links ?>

View File

@ -29,12 +29,26 @@ class tagsinalbum_block_Core {
case "tagsinalbum":
if (($theme->item) && ($theme->item->is_album())) {
$item = $theme->item;
$all_tags = ORM::factory("tag")
// Create an ORM query for finding one instance of each tag
// used by children in the current album.
$tags_model = ORM::factory("tag")
->join("items_tags", "items_tags.tag_id", "tags.id")
->join("items", "items.id", "items_tags.item_id", "LEFT")
->where("items.parent_id", "=", $item->id)
->order_by("tags.id", "ASC")
->find_all();
->order_by("tags.name", "ASC")
->group_by("tags.id");
// Limit $all_tags to the first X tags if max_display_tags is set,
// else populate it with all tags used by this album's children.
$all_tags = "";
if (module::get_var("tagsinalbum", "max_display_tags") > 0) {
$all_tags = $tags_model->find_all(module::get_var("tagsinalbum", "max_display_tags"));
} else {
$all_tags = $tags_model->find_all();
}
// If this album has children that are tagged, display those tags.
if (count($all_tags) > 0) {
$block = new Block();
$block->css_id = "g-tags-in-album-block";

View File

@ -1,7 +1,7 @@
name = "Tags In Album"
description = "Creates a sidebar block to display tags used by photos and videos in the current album."
version = 2
author_name = ""
author_url = ""
author_name = "rWatcher"
author_url = "http://codex.gallery2.org/User:RWatcher"
info_url = "http://codex.gallery2.org/Gallery3:Modules:tagsinalbum"
discuss_url = "http://gallery.menalto.com/forum_module_tagsinalbum"
discuss_url = "http://gallery.menalto.com/node/99171"

View File

@ -1,33 +1,11 @@
<?php defined("SYSPATH") or die("No direct script access.") ?>
<?
// Create an array to store the tag names and urls in.
$display_tags = array();
// Loop through all tags in the album, copying their
// names and urls into the array and skipping duplicates.
$last_tagid = "";
foreach ($all_tags as $one_tag) {
if ($last_tagid != $one_tag->id) {
$tag = ORM::factory("tag", $one_tag->id);
$display_tags[] = array(html::clean($tag->name), $tag->url());
$last_tagid = $one_tag->id;
}
if (module::get_var("tagsinalbum", "max_display_tags") > 0) {
if (count($display_tags) == module::get_var("tagsinalbum", "max_display_tags")) {
break;
}
}
}
// Sort the array.
asort($display_tags);
// Print out the list of tags as clickable links.
// Loop through each tag in $all_tags, and display it as a link.
$not_first = 0;
foreach ($display_tags as $one_tag) {
foreach ($all_tags as $one_tag) {
if ($not_first++ > 0) {
print ", ";
}
print "<a href=\"" . $one_tag[1] . "\">" . $one_tag[0] . "</a>";
print "<a href=\"" . $one_tag->url() . "\">" . html::clean($one_tag->name) . "</a>";
}
?>

View File

@ -0,0 +1,401 @@
/**
* Gallery 3 Browny Admin Wind Theme Right-to-Left Screen Styles
*/
.rtl {
direction: rtl;
}
#g-header,
#g-content,
#g-sidebar,
#g-footer,
caption,
th,
#g-dialog,
.g-context-menu li a,
.g-message-box li,
#g-site-status li {
text-align: right;
}
.g-text-right {
text-align: left;
}
/* Lists ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.g-text li,
.g-text li {
margin-left: 0;
margin-right: 1em;
}
/* Messages ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.g-error,
.g-info,
.g-success,
.g-warning,
#g-add-photos-status .g-success,
#g-add-photos-status .g-error {
background-position: center right;
padding-right: 30px !important;
}
form li.g-error,
form li.g-info,
form li.g-success,
form li.g-warning {
padding-right: 0 !important;
}
.g-left,
.g-inline li,
#g-content #g-album-grid .g-item,
.sf-menu li,
.g-breadcrumbs li,
.g-paginator li,
.g-buttonset li,
.ui-icon-left .ui-icon,
.g-short-form li,
form ul ul li,
input[type="submit"],
input[type="reset"],
input.checkbox,
input[type=checkbox],
input.radio,
input[type=radio] {
float: right;
}
.g-right,
.ui-icon-right .ui-icon {
float: left;
}
.g-inline li {
margin-right: 1em;
}
.g-inline li.g-first {
margin-right: 0;
}
.g-breadcrumbs li {
background: transparent url('../images/ico-separator-rtl.gif') no-repeat scroll right center;
padding: 1em 18px 1em 8px;
}
.g-breadcrumbs .g-first {
background: none;
padding-right: 0;
}
input.checkbox,
input[type="checkbox"],
input.radio,
input[type="radio"] {
margin-right: 0;
margin-left: .4em;
}
#g-add-comment {
right: inherit;
left: 0;
}
.ui-icon-left .ui-icon {
margin-left: .2em;
}
.ui-icon-right .ui-icon {
margin-right: .2em;
}
.g-group h4 {
padding: .5em .5em .5em 0;
}
.g-group .g-user {
padding: .2em .5em 0 0;
}
/* RTL Corner radius ~~~~~~~~~~~~~~~~~~~~~~ */
.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;
}
.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;
}
.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;
}
.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;
}
.g-buttonset .ui-corner-right,
.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;
}
.g-buttonset .ui-corner-left,
.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 ~~~~~~~~~~~~~~~~~~~~~~~~~ */
.sf-menu a {
border-left: none;
border-right:1px solid #fff;
}
.sf-menu a.sf-with-ul {
padding-left: 2.25em;
padding-right: 1em;
}
.sf-sub-indicator {
left: .75em !important;
right: auto;
background: url('../../../lib/superfish/images/arrows-ffffff-rtl.png') no-repeat -10px -100px;
}
a > .sf-sub-indicator {
top: .8em;
background-position: -10px -100px;
}
a:focus > .sf-sub-indicator,
a:hover > .sf-sub-indicator,
a:active > .sf-sub-indicator,
li:hover > a > .sf-sub-indicator,
li.sfHover > a > .sf-sub-indicator {
background-position: 0 -100px;
}
.sf-menu ul .sf-sub-indicator {
background-position: 0 0;
}
.sf-menu ul a > .sf-sub-indicator {
background-position: -10px 0;
}
.sf-menu ul a:focus > .sf-sub-indicator,
.sf-menu ul a:hover > .sf-sub-indicator,
.sf-menu ul a:active > .sf-sub-indicator,
.sf-menu ul li:hover > a > .sf-sub-indicator,
.sf-menu ul li.sfHover > a > .sf-sub-indicator {
background-position: 0 0;
}
.sf-menu li:hover ul,
.sf-menu li.sfHover ul {
right: 0;
left: auto;
}
ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul {
right: 12em;
left: auto;
}
ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul {
right: 12em;
left: auto;
}
.sf-shadow ul {
background: url('../../../lib/superfish/images/shadow.png') no-repeat bottom left;
padding: 0 0 9px 8px;
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;
}
/* RTL ThemeRoller ~~~~~~~~~~~~~~~~~~~~~~~~ */
.ui-dialog .ui-dialog-titlebar {
padding: 0.5em 1em 0.3em 0.3em;
}
.ui-dialog .ui-dialog-title {
float: right;
}
.ui-dialog .ui-dialog-titlebar-close {
left: 0.3em;
right: auto;
}
.ui-tabs .ui-tabs-nav li {
float: right;
}
#g-content #g-album-grid .g-item,
#g-site-theme,
#g-admin-theme,
.g-selected img,
.g-available .g-block img,
#g-content #g-photo-stream .g-item,
li.g-group,
#g-server-add-admin {
float: right;
}
#g-site-theme {
margin-right: 0;
margin-left: 1em;
}
#g-admin-graphics .g-available .g-block {
float: right;
margin-left: 1em;
margin-right: 0em;
}
#g-site-admin-menu {
left: auto;
right: 240px;
}
#g-header #g-login-menu {
float: left;
}
#g-header #g-login-menu li {
margin-left: 0;
padding-left: 0;
padding-right: 1.2em;
}
#g-sidebar .g-block-content {
padding-left: 0em;
padding-right: 1em;
}
.g-selected img,
.g-available .g-block img {
margin: 0 0 1em 1em;
}
.g-button {
margin: 0 0 0 4px;
}
/* RTL paginator ~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.g-paginator .g-info {
width: 35%;
}
.g-paginator .g-text-right {
margin-left: 0;
}
.g-paginator .ui-icon-seek-end {
background-position: -80px -160px;
}
.g-paginator .ui-icon-seek-next {
background-position: -48px -160px;
}
.g-paginator .ui-icon-seek-prev {
background-position: -32px -160px;
}
.g-paginator .ui-icon-seek-first {
background-position: -64px -160px;
}
#g-header #g-login-menu,
#g-header #g-quick-search-form {
clear: left;
float: left;
}
#g-header #g-login-menu li {
margin-left: 0;
padding-left: 0;
padding-right: 1.2em;
}
#g-site-menu {
left: auto;
right: 240px;
}
#g-view-menu #g-slideshow-link {
background-image: url('../images/ico-view-slideshow-rtl.png');
}
#g-sidebar .g-block-content {
padding-right: 1em;
padding-left: 0;
}
#g-footer #g-credits li {
padding-left: 1.2em !important;
padding-right: 0;
}

View File

@ -4,23 +4,30 @@
* @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) States and interactions
* 6) Positioning and order
* 7) Navigation and menus
* 8) ThemeRoller
* 9) jQuery and jQuery UI
* 10) Right-to-left language styles
* 11) More Browny
* 0) Pre Overrides
* 1) Basic HTML elements
* 2) Reusable content blocks
* 3) Page layout containers
* 4) Content blocks in specific layout containers
* 5) States and interactions
* 6) Positioning and order
* 7) Navigation and menus
* 8) jQuery and jQuery UI
* 9) More Browny
*
* @todo Review g-buttonset-vertical
*/
/** *******************************************************************
* 1) Basic HTML elements
* 0) Pre Overrides
**********************************************************************/
/* ThemeRoller overrides ~~~~~~~~~~~~~~ */
@import "themeroller/ui.tabs.css";
/** *******************************************************************
* 1) Basic HTML elements
**********************************************************************/
/* ~browny~ */
@ -29,6 +36,21 @@ body, html {
font-family: 'Century gothic', Verdana, 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
}
.ui-widget {
font-family: 'Century gothic', Verdana, 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
}
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button {
font-family: 'Century gothic', Verdana, 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
}
select,
input,
button,
textarea {
font: 99% 'Century gothic', Verdana, Arial, Helvetica, Clean, sans-serif;
}
p {
margin-bottom: 1em;
text-shadow: 0px 1px 1px #F7F5F0;
@ -67,13 +89,6 @@ h3 {
font-size: 1.2em;
}
select,
input,
button,
textarea {
font: 99% 'Century gothic', Verdana, Arial, Helvetica, Clean, sans-serif;
}
#l10n-client h2 {
text-shadow: none;
}
@ -104,7 +119,25 @@ a:hover,
text-decoration: none;
}
/* Lists ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
ul.g-text li,
.g-text ul li {
list-style-type: disc;
}
ol.g-text li,
.g-text ol li {
list-style-type: decimal;
}
.g-text li,
.g-text li {
margin-left: 1em;
}
/* Forms ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
form {
margin: 0;
}
@ -284,22 +317,6 @@ fieldset {
margin-bottom: 0;
}
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 {
@ -328,8 +345,22 @@ th {
white-space: nowrap;
}
/* Text ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.g-text-small {
font-size: .8em;
}
.g-text-big {
font-size: 1.2em;
}
.g-text-right {
text-align: right;
}
/** *******************************************************************
* 2) Reusable content blocks
* 2) Reusable content blocks
*********************************************************************/
.g-block,
@ -393,7 +424,8 @@ th {
.g-unavailable {
border-color: #999;
opacity: 0.4;
color: black;
opacity: .6;
}
.g-info td {
@ -401,10 +433,6 @@ th {
background-image: none;
}
#g-maintenance-mode ul.g-message-block {
margin-top: .5em;
}
.g-success td {
background-color: transparent;
background-image: none;
@ -427,15 +455,12 @@ th {
background-color: #fff;
}
ul.enumeration li {
list-style-type: disc;
margin-left: 20px;
}
/*** ******************************************************************
* 3) Page layout containers
* 3) Page layout containers
*********************************************************************/
/* Dimension and scale ~~~~~~~~~~~~~~~~~~~ */
.g-one-quarter {
width: 25%;
}
@ -512,7 +537,7 @@ ul.enumeration li {
}
/** *******************************************************************
* 4) Content blocks in specific layout containers
* 4) Content blocks in specific layout containers
*********************************************************************/
/* Header ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
@ -607,7 +632,7 @@ ul.enumeration li {
margin-right: 1em;
}
/* Block admin ~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* Block admin ~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.g-admin-blocks-list {
float: left;
@ -633,12 +658,14 @@ ul.enumeration li {
padding: .3em .8em;
}
/* In-line editing ~~~~~~~~~~~~~~~~~~~~ */
/* In-line editing ~~~~~~~~~~~~~~~~~~~~~~ */
#g-in-place-edit-message {
background-color: #FFF;
}
/* Language options ~~~~~~~~~~~~~~~~~~~~~~~~ */
/* Language options ~~~~~~~~~~~~~~~~~~~~~ */
#g-share-translations-form fieldset {
border: 0px;
margin: 0px;
@ -823,7 +850,7 @@ form .g-error {
}
/** *******************************************************************
* 7) Navigation and menus
* 7) Navigation and menus
*********************************************************************/
/* Site Menu ~~~~~~~~~~~~~~~~~~~~~~~~~~ */
@ -840,16 +867,9 @@ form .g-error {
}
/** *******************************************************************
* 8) ThemeRoller Theme
**********************************************************************/
/* ~browny~ */
/* ThemeRoller overrides ~~~~~~~~~~~~~~ */
@import "themeroller/ui.tabs.css";
/** *******************************************************************
* 9) jQuery and jQuery UI
* 8) jQuery and jQuery UI
*********************************************************************/
/* Generic block container ~~~~~~~~~~~~~~~ */
.g-block {
@ -923,16 +943,16 @@ button {
display: inline-block;
}
/* Status and validation messages ~~~~ */
/* Status and validation messages ~~~~~~~~~ */
.g-message-block {
background-position: .4em .3em;
border: 1px solid #ccc;
padding: 0;
margin-bottom: 1em;
}
#g-action-status {
margin-bottom: 1em;
}
#g-action-status li,
@ -1002,7 +1022,7 @@ div#g-action-status {
width: 40%;
}
/* Dialogs and panels ~~~~~~~~~~~~~~~~~~ */
/* Dialogs and panels ~~~~~~~~~~~~~~~~~~~~ */
#g-dialog {
text-align: left;
@ -1021,7 +1041,7 @@ div#g-action-status {
padding: 1em;
}
/* Inline layout ~~~~~~~~~~ */
/* Inline layout ~~~~~~~~~~~~~~~~~~~~~~~~ */
.g-inline li {
float: left;
@ -1033,19 +1053,20 @@ div#g-action-status {
margin-left: 0;
}
/* Superfish menu overrides ~~~~~~~~~~~ */
/* Superfish menu overrides ~~~~~~~~~~~~~~ */
.sf-menu ul {
width: 12em;
width: 12em;
}
ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul {
left: 12em;
left: 12em;
}
ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul {
left: 12em;
left: 12em;
}
/* ~browny~ */
@ -1061,13 +1082,13 @@ ul.sf-menu li li li.sfHover ul {
/* ~browny~ */
.sf-menu a {
border-top: 1px solid #e0cbae;
border-top: 1px solid #e0cbae;
}
/* ~browny~ */
.sf-menu li {
background: #d3b07e url('../images/ui-bg_highlight-soft_45_d3b07e_1x100.png') 50% 50% repeat-x;
text-shadow: 0px 1px 1px #fff;
background: #d3b07e url('../images/ui-bg_highlight-soft_45_d3b07e_1x100.png') 50% 50% repeat-x;
text-shadow: 0px 1px 1px #fff;
}
/* ~browny~ */
@ -1076,11 +1097,16 @@ ul.sf-menu li li li.sfHover ul {
.sf-menu a:focus,
.sf-menu a:hover,
.sf-menu a:active {
background: #e0cbae;
background: #e0cbae;
}
/* jQuery UI Dialog ~~~~~~~~~~~~~~~~~~~ */
.ui-widget-overlay {
background: #000;
opacity: .7;
}
#g-admin-dashboard .ui-state-highlight,
#g-sidebar .ui-state-highlight {
height: 2em;
@ -1100,326 +1126,18 @@ ul.sf-menu li li li.sfHover ul {
text-shadow: 0px 1px 1px #fff;
}
.ui-widget {
font-family: 'Century gothic', Verdana, 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
}
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button {
font-family: 'Century gothic', Verdana, 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
}
/** *******************************************************************
* 10) Right to left styles
*********************************************************************/
.rtl {
direction: rtl;
}
.rtl #g-header,
.rtl #g-content,
.rtl #g-sidebar,
.rtl #g-footer,
.rtl caption,
.rtl th,
.rtl #g-dialog,
.rtl .g-context-menu li a,
.rtl .g-message-box li,
.rtl #g-site-status li {
text-align: right;
}
.rtl .g-text-right {
text-align: left;
}
.rtl .g-error,
.rtl .g-info,
.rtl .g-success,
.rtl .g-warning,
.rtl #g-add-photos-status .g-success,
.rtl #g-add-photos-status .g-error {
background-position: center right;
padding-right: 30px !important;
}
.rtl form li.g-error,
.rtl form li.g-info,
.rtl form li.g-success,
.rtl form li.g-warning {
padding-right: 0 !important;
}
.rtl .g-left,
.rtl .g-inline li,
.rtl #g-content #g-album-grid .g-item,
.rtl .sf-menu li,
.rtl .g-breadcrumbs li,
.rtl .g-paginator li,
.rtl .g-buttonset li,
.rtl .ui-icon-left .ui-icon,
.rtl .g-short-form li,
.rtl form ul ul li,
.rtl input[type="submit"],
.rtl input[type="reset"],
.rtl input.checkbox,
.rtl input[type=checkbox],
.rtl input.radio,
.rtl input[type=radio] {
float: right;
}
.rtl .g-right,
.rtl .ui-icon-right .ui-icon {
float: left;
}
.rtl .g-inline li {
margin-right: 1em;
}
.rtl .g-inline li.g-first {
margin-right: 0;
}
.rtl .g-breadcrumbs li {
background: transparent url('../images/ico-separator-rtl.gif') no-repeat scroll right center;
padding: 1em 18px 1em 8px;
}
.rtl .g-breadcrumbs .g-first {
background: none;
padding-right: 0;
}
.rtl input.checkbox {
margin-left: .4em;
}
.rtl #g-add-comment {
right: inherit;
left: 0;
}
.rtl .ui-icon-left .ui-icon {
margin-left: .2em;
}
.rtl .ui-icon-right .ui-icon {
margin-right: .2em;
}
/* 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-left: none;
border-right:1px solid #fff;
}
.rtl .sf-menu a.sf-with-ul {
padding-left: 2.25em;
padding-right: 1em;
}
.rtl .sf-sub-indicator {
left: .75em !important;
right: auto;
background: url('../../../lib/superfish/images/arrows-ffffff-rtl.png') no-repeat -10px -100px; /* 8-bit indexed alpha png. IE6 gets solid image only */
}
.rtl a > .sf-sub-indicator { /* give all except IE6 the correct values */
top: .8em;
background-position: -10px -100px; /* use translucent arrow for modern browsers*/
}
/* apply hovers to modern browsers */
.rtl a:focus > .sf-sub-indicator,
.rtl a:hover > .sf-sub-indicator,
.rtl a:active > .sf-sub-indicator,
.rtl li:hover > a > .sf-sub-indicator,
.rtl li.sfHover > a > .sf-sub-indicator {
background-position: 0 -100px; /* arrow hovers for modern browsers*/
}
/* point right for anchors in subs */
.rtl .sf-menu ul .sf-sub-indicator { background-position: 0 0; }
.rtl .sf-menu ul a > .sf-sub-indicator { background-position: -10px 0; }
/* apply hovers to modern browsers */
.rtl .sf-menu ul a:focus > .sf-sub-indicator,
.rtl .sf-menu ul a:hover > .sf-sub-indicator,
.rtl .sf-menu ul a:active > .sf-sub-indicator,
.rtl .sf-menu ul li:hover > a > .sf-sub-indicator,
.rtl .sf-menu ul li.sfHover > a > .sf-sub-indicator {
background-position: 0 0; /* arrow hovers for modern browsers*/
}
.rtl .sf-menu li:hover ul,
.rtl .sf-menu li.sfHover ul {
right: 0;
left: auto;
}
.rtl ul.sf-menu li li:hover ul,
.rtl ul.sf-menu li li.sfHover ul {
right: 12em; /* match ul width */
left: auto;
}
.rtl ul.sf-menu li li li:hover ul,
.rtl ul.sf-menu li li li.sfHover ul {
right: 12em; /* match ul width */
left: auto;
}
/*** shadows for all but IE6 ***/
.rtl .sf-shadow ul {
background: url('../../../lib/superfish/images/shadow.png') no-repeat bottom left;
padding: 0 0 9px 8px;
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;
}
/* RTL ThemeRoller ~~~~~~~~~~~~~~~~~~~~~~~~ */
.rtl .ui-dialog .ui-dialog-titlebar {
padding: 0.5em 1em 0.3em 0.3em;
}
.rtl .ui-dialog .ui-dialog-title {
float: right;
}
.rtl .ui-dialog .ui-dialog-titlebar-close {
left: 0.3em;
right: auto;
}
.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: 240px;
}
.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;
}
/* ~browny~ */
.rtl .g-selected img,
.rtl .g-available .g-block img {
margin: 0 0 1em 1em;
}
/** *******************************************************************
* 11) More Browny (Extra overrides for better Browny look)
* 9) More Browny (Extra overrides for better Browny look)
*********************************************************************/
/* /lib/gallery.common.css ~~~~~~~~~~~~ */
.g-success {
background: #fcf9ce url('../images/ico-success.png') no-repeat .4em 50%
background: #fcf9ce url('../images/ico-success.png') no-repeat .4em 50%
}
.g-even {
background: transparent;
background: transparent;
}
.g-odd {

Binary file not shown.

After

Width:  |  Height:  |  Size: 604 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 916 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 715 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 749 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 473 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

After

Width:  |  Height:  |  Size: 64 KiB

View File

@ -1,10 +1,10 @@
name = "Browny Wind"
description = "The default Wind Admin theme with a browny style."
version = 1
author = "Ma'moun M. Diraneyya"
author = "Mamouneyya"
admin = 1
site = 0
author_name = ""
author_name = "Ma'moun Diraneyya"
author_url = ""
info_url = "http://codex.gallery2.org/Gallery3:Themes:browny_admin_wind"
discuss_url = "http://gallery.menalto.com/forum_theme_browny_admin_wind"
discuss_url = "http://gallery.menalto.com/node/95007"

View File

@ -1,9 +1,10 @@
<?php defined("SYSPATH") or die("No direct script access.") ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<html xmlns="http://www.w3.org/1999/xhtml" <?= $theme->html_attributes() ?> xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<? $theme->start_combining("script,css") ?>
<title>
<? if ($page_title): ?>
<?= t("Gallery Admin: %page_title", array("page_title" => $page_title)) ?>
@ -11,31 +12,46 @@
<?= t("Admin dashboard") ?>
<? endif ?>
</title>
<link rel="shortcut icon" href="<?= url::file(module::get_var("gallery", "favicon_url")) ?>" type="image/x-icon" />
<link rel="shortcut icon"
href="<?= url::file(module::get_var("gallery", "favicon_url")) ?>"
type="image/x-icon" />
<link rel="apple-touch-icon-precomposed"
href="<?= url::file(module::get_var("gallery", "apple_touch_icon_url")) ?>" />
<?= $theme->script("jquery.js") ?>
<?= $theme->script("jquery.form.js") ?>
<?= $theme->script("jquery-ui.js") ?>
<?= $theme->script("gallery.common.js") ?>
<? /* MSG_CANCEL is required by gallery.dialog.js */ ?>
<script type="text/javascript">
var MSG_CANCEL = <?= t("Cancel")->for_js() ?>;
</script>
<?= $theme->script("gallery.ajax.js") ?>
<?= $theme->script("gallery.dialog.js") ?>
<?= $theme->script("superfish/js/superfish.js") ?>
<?= $theme->script("jquery.scrollTo.js") ?>
<?= $theme->admin_head() ?>
<? /* Theme specific CSS/JS goes last so that it can override module CSS/JS */ ?>
<?= $theme->script("ui.init.js") ?>
<?= $theme->css("yui/reset-fonts-grids.css") ?>
<?= $theme->css("themeroller/ui.base.css") ?>
<?= $theme->css("superfish/css/superfish.css") ?>
<?= $theme->css("screen.css") ?>
<? if (locales::is_rtl()): ?>
<?= $theme->css("screen-rtl.css") ?>
<? endif; ?>
<!--[if lt IE 8]>
<link rel="stylesheet" type="text/css" href="<?= $theme->url("fix-ie.css") ?>"
<link rel="stylesheet" type="text/css" href="<?= $theme->url("css/fix-ie.css") ?>"
media="screen,print,projection" />
<![endif]-->
<?= $theme->script("jquery.js") ?>
<?= $theme->script("jquery.form.js") ?>
<?= $theme->script("jquery-ui.js") ?>
<?= $theme->script("gallery.common.js") ?>
<? /* MSG_CANCEL is required by gallery.dialog.js */ ?>
<script type="text/javascript">
var MSG_CANCEL = <?= t("Cancel")->for_js() ?>;
</script>
<?= $theme->script("gallery.ajax.js") ?>
<?= $theme->script("gallery.dialog.js") ?>
<?= $theme->script("superfish/js/superfish.js") ?>
<?= $theme->script("ui.init.js") ?>
<!-- LOOKING FOR YOUR CSS? It's all been combined into the link below -->
<?= $theme->get_combined("css") ?>
<?= $theme->admin_head() ?>
<!-- LOOKING FOR YOUR JAVASCRIPT? It's all been combined into the link below -->
<?= $theme->get_combined("script") ?>
</head>
<body <?= $theme->body_attributes() ?>>

View File

@ -1,44 +0,0 @@
<?php defined("SYSPATH") or die("No direct script access.") ?>
<? // See http://docs.kohanaphp.com/libraries/pagination ?>
<ul class="g-paginator">
<? /* @todo This message isn't easily localizable */
$from_to_msg = t2("Item %from_number of %count",
"Items %from_number - %to_number of %count",
$total_items,
array("from_number" => $current_first_item,
"to_number" => $current_last_item,
"count" => $total_items)) ?>
<li>
<? if ($first_page): ?>
<a href="<?= str_replace('{page}', 1, $url) ?>" class="g-button ui-icon-left ui-state-default ui-corner-all">
<span class="ui-icon ui-icon-seek-first"></span><?= t("First") ?></a>
<? else: ?>
<a class="g-button ui-icon-left ui-state-disabled ui-corner-all">
<span class="ui-icon ui-icon-seek-first"></span><?= t("First") ?></a>
<? endif ?>
<? if ($previous_page): ?>
<a href="<?= str_replace('{page}', $previous_page, $url) ?>" class="g-button ui-icon-left ui-state-default ui-corner-all">
<span class="ui-icon ui-icon-seek-prev"></span><?= t("Previous") ?></a>
<? else: ?>
<a class="g-button ui-icon-left ui-state-disabled ui-corner-all">
<span class="ui-icon ui-icon-seek-prev"></span><?= t("Previous") ?></a>
<? endif ?>
</li>
<li class="g-info"><?= $from_to_msg ?></li>
<li class="g-text-right">
<? if ($next_page): ?>
<a href="<?= str_replace('{page}', $next_page, $url) ?>" class="g-button ui-icon-right ui-state-default ui-corner-all">
<span class="ui-icon ui-icon-seek-next"></span><?= t("Next") ?></a>
<? else: ?>
<a class="g-button ui-state-disabled ui-icon-right ui-corner-all">
<span class="ui-icon ui-icon-seek-next"></span><?= t("Next") ?></a>
<? endif ?>
<? if ($last_page): ?>
<a href="<?= str_replace('{page}', $last_page, $url) ?>" class="g-button ui-icon-right ui-state-default ui-corner-all">
<span class="ui-icon ui-icon-seek-end"></span><?= t("Last") ?></a>
<? else: ?>
<a class="g-button ui-state-disabled ui-icon-right ui-corner-all">
<span class="ui-icon ui-icon-seek-end"></span><?= t("Last") ?></a>
<? endif ?>
</li>
</ul>

View File

@ -0,0 +1,88 @@
<?php defined("SYSPATH") or die("No direct script access.") ?>
<?
// This is a generic paginator for admin collections. Depending on the page type, there are
// different sets of variables available. With this data, you can make a paginator that
// lets you say "You're viewing photo 5 of 35", or "You're viewing photos 10 - 18 of 37"
// for album views.
//
// Available variables for all page types:
// $page_type - "collection", "item", or "other"
// $page_subtype - "album", "movie", "photo", "tag", etc.
// $previous_page_url - the url to the previous page, if there is one
// $next_page_url - the url to the next page, if there is one
// $total - the total number of photos in this album
//
// Available for the "collection" page types:
// $page - what page number we're on
// $max_pages - the maximum page number
// $page_size - the page size
// $first_page_url - the url to the first page, or null if we're on the first page
// $last_page_url - the url to the last page, or null if we're on the last page
// $first_visible_position - the position number of the first visible photo on this page
// $last_visible_position - the position number of the last visible photo on this page
//
// Available for "item" page types:
// $position - the position number of this photo
//
?>
<? if ($total): ?>
<ul class="g-paginator ui-helper-clearfix">
<li class="g-first">
<? if ($page_type == "collection"): ?>
<? if (isset($first_page_url)): ?>
<a href="<?= $first_page_url ?>" class="g-button ui-icon-left ui-state-default ui-corner-all">
<span class="ui-icon ui-icon-seek-first"></span><?= t("First") ?></a>
<? else: ?>
<a class="g-button ui-icon-left ui-state-disabled ui-corner-all">
<span class="ui-icon ui-icon-seek-first"></span><?= t("First") ?></a>
<? endif ?>
<? endif ?>
<? if (isset($previous_page_url)): ?>
<a href="<?= $previous_page_url ?>" class="g-button ui-icon-left ui-state-default ui-corner-all">
<span class="ui-icon ui-icon-seek-prev"></span><?= t("Previous") ?></a>
<? else: ?>
<a class="g-button ui-icon-left ui-state-disabled ui-corner-all">
<span class="ui-icon ui-icon-seek-prev"></span><?= t("Previous") ?></a>
<? endif ?>
</li>
<li class="g-info">
<? if ($total): ?>
<? if ($page_type == "collection"): ?>
<?= /* @todo This message isn't easily localizable */
t2("Viewing %from_number of %count",
"Viewing %from_number - %to_number of %count",
$total,
array("from_number" => $first_visible_position,
"to_number" => $last_visible_position,
"count" => $total)) ?>
<? else: ?>
<?= t("%position of %total", array("position" => $position, "total" => $total)) ?>
<? endif ?>
<? endif ?>
</li>
<li class="g-text-right">
<? if (isset($next_page_url)): ?>
<a href="<?= $next_page_url ?>" class="g-button ui-icon-right ui-state-default ui-corner-all">
<span class="ui-icon ui-icon-seek-next"></span><?= t("Next") ?></a>
<? else: ?>
<a class="g-button ui-state-disabled ui-icon-right ui-corner-all">
<span class="ui-icon ui-icon-seek-next"></span><?= t("Next") ?></a>
<? endif ?>
<? if ($page_type == "collection"): ?>
<? if (isset($last_page_url)): ?>
<a href="<?= $last_page_url ?>" class="g-button ui-icon-right ui-state-default ui-corner-all">
<span class="ui-icon ui-icon-seek-end"></span><?= t("Last") ?></a>
<? else: ?>
<a class="g-button ui-state-disabled ui-icon-right ui-corner-all">
<span class="ui-icon ui-icon-seek-end"></span><?= t("Last") ?></a>
<? endif ?>
<? endif ?>
</li>
</ul>
<? endif ?>

View File

@ -0,0 +1,393 @@
/**
* Gallery 3 Browny Wind Theme Right-to-Left Screen Styles
*/
.rtl {
direction: rtl;
}
#g-header,
#g-content,
#g-sidebar,
#g-footer,
caption,
th,
#g-dialog,
.g-context-menu li a,
.g-message-box li,
#g-site-status li {
text-align: right;
}
.g-text-right {
text-align: left;
}
/* Lists ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.g-text li,
.g-text li {
margin-left: 0;
margin-right: 1em;
}
/* Messages ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.g-error,
.g-info,
.g-success,
.g-warning,
#g-add-photos-status .g-success,
#g-add-photos-status .g-error {
background-position: center right;
padding-right: 30px !important;
}
form li.g-error,
form li.g-info,
form li.g-success,
form li.g-warning {
padding-right: 0 !important;
}
.g-left,
.g-inline li,
#g-content #g-album-grid .g-item,
.sf-menu li,
.g-breadcrumbs li,
.g-paginator li,
.g-buttonset li,
.ui-icon-left .ui-icon,
.g-short-form li,
form ul ul li,
input[type="submit"],
input[type="reset"],
input.checkbox,
input[type=checkbox],
input.radio,
input[type=radio] {
float: right;
}
.g-right,
.ui-icon-right .ui-icon {
float: left;
}
.g-inline li {
margin-right: 1em;
}
.g-inline li.g-first {
margin-right: 0;
}
/* ~browny~ */
.g-breadcrumbs li {
background: transparent url('../images/ico-separator-rtl.gif') no-repeat scroll right center;
padding: .5em 18px .5em 8px;
}
.g-breadcrumbs .g-first {
background: none;
padding-right: 0;
}
input.checkbox {
margin-left: .4em;
}
#g-add-comment {
right: inherit;
left: 0;
}
.ui-icon-left .ui-icon {
margin-left: .2em;
}
.ui-icon-right .ui-icon {
margin-right: .2em;
}
/* RTL Corner radius ~~~~~~~~~~~~~~~~~~~~~~ */
.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;
}
.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;
}
.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;
}
.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;
}
.g-buttonset .ui-corner-right,
.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;
}
.g-buttonset .ui-corner-left,
.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 ~~~~~~~~~~~~~~~~~~~~~~~~~ */
.sf-menu a {
border-left: none;
border-right:1px solid #fff;
}
.sf-menu a.sf-with-ul {
padding-left: 2.25em;
padding-right: 1em;
}
.sf-sub-indicator {
left: .75em !important;
right: auto;
background: url('../../../lib/superfish/images/arrows-ffffff-rtl.png') no-repeat -10px -100px;
}
a > .sf-sub-indicator {
top: .8em;
background-position: -10px -100px;
}
a:focus > .sf-sub-indicator,
a:hover > .sf-sub-indicator,
a:active > .sf-sub-indicator,
li:hover > a > .sf-sub-indicator,
li.sfHover > a > .sf-sub-indicator {
background-position: 0 -100px;
}
.sf-menu ul .sf-sub-indicator {
background-position: 0 0;
}
.sf-menu ul a > .sf-sub-indicator {
background-position: -10px 0;
}
.sf-menu ul a:focus > .sf-sub-indicator,
.sf-menu ul a:hover > .sf-sub-indicator,
.sf-menu ul a:active > .sf-sub-indicator,
.sf-menu ul li:hover > a > .sf-sub-indicator,
.sf-menu ul li.sfHover > a > .sf-sub-indicator {
background-position: 0 0;
}
.sf-menu li:hover ul,
.sf-menu li.sfHover ul {
right: 0;
left: auto;
}
ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul {
right: 12em;
left: auto;
}
ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul {
right: 12em;
left: auto;
}
.sf-shadow ul {
background: url('../../../lib/superfish/images/shadow.png') no-repeat bottom left;
padding: 0 0 9px 8px;
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;
}
/* RTL ThemeRoller ~~~~~~~~~~~~~~~~~~~~~~~~ */
.ui-dialog .ui-dialog-titlebar {
padding: 0.5em 1em 0.3em 0.3em;
}
.ui-dialog .ui-dialog-title {
float: right;
}
.ui-dialog .ui-dialog-titlebar-close {
left: 0.3em;
right: auto;
}
.ui-tabs .ui-tabs-nav li {
float: right;
}
/* RTL paginator ~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.g-paginator .g-info {
width: 35%;
}
.g-paginator .g-text-right {
margin-left: 0;
}
.g-paginator .ui-icon-seek-end {
background-position: -80px -160px;
}
.g-paginator .ui-icon-seek-next {
background-position: -48px -160px;
}
.g-paginator .ui-icon-seek-prev {
background-position: -32px -160px;
}
.g-paginator .ui-icon-seek-first {
background-position: -64px -160px;
}
#g-header #g-login-menu,
#g-header #g-quick-search-form {
clear: left;
float: left;
}
#g-header #g-login-menu li {
margin-left: 0;
padding-left: 0;
padding-right: 1.2em;
}
#g-site-menu {
left: auto;
right: 240px;
}
#g-view-menu #g-slideshow-link {
background-image: url('../images/ico-view-slideshow-rtl.png');
}
#g-sidebar .g-block-content {
padding-right: 1em;
padding-left: 0;
}
#g-footer #g-credits li {
padding-left: 1.2em !important;
padding-right: 0;
}
/* Browny ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.g-even {
text-align: left;
}
.g-odd {
text-align: right;
}
.uploadifyQueueItem .cancel {
float: left;
}
#g-user-profile .g-block h2 {
padding-right: .8em;
padding-left: auto;
}
#g-user-profile .g-avatar {
float: right;
right: 0em;
left: auto;
margin: 0em .6em 0em 0em;
}
#g-user-profile #g-comment-detail .g-author a {
float: right;
right: 0em;
left: auto;
margin-left: .6em;
margin-right: 0em;
}
#g-user-profile #g-comment-detail div {
margin-right: 5em;
margin-left: 0em;
}
#g-user-profile h1 {
margin: 1.25em 4.4em 2em 0em;
}
#g-content #g-comments .g-avatar {
float: right;
margin-left: .4em;
margin-right: 0;
}
#g-calendar-grid {
padding-right: 8px;
padding-left: 0px;
}

View File

@ -4,21 +4,28 @@
* @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) States and interactions
* 6) Positioning and order
* 7) Navigation and menus
* 8) ThemeRoller
* 9) jQuery and jQuery UI
* 10) Right-to-left language styles
* 11) More Browny
* 0) Pre Overrides
* 1) Font sizes, base HTML elements
* 2) Reusable content blocks
* 3) Page layout containers
* 4) Content blocks in specific layout containers
* 5) States and interactions
* 6) Positioning and order
* 7) Navigation and menus
* 8) jQuery and jQuery UI
* 9) More Browny
*/
/** *******************************************************************
* 1) Font sizes, base HTML elements
* 0) Pre Overrides
**********************************************************************/
/* ThemeRoller overrides ~~~~~~~~~~~~~~ */
@import "themeroller/ui.tabs.css";
/** *******************************************************************
* 1) Font sizes, base HTML elements
**********************************************************************/
/* ~browny~ */
@ -39,6 +46,13 @@ body, html {
font-family: Cursive, Serif;
}
select,
input,
button,
textarea {
font: 99% 'Century gothic', Verdana, Arial, Helvetica, Clean, sans-serif;
}
p {
margin-bottom: 1em;
text-shadow: 0px 1px 1px #F7F5F0;
@ -100,13 +114,6 @@ h3 {
font-size: .7em;
}
select,
input,
button,
textarea {
font: 99% 'Century gothic', Verdana, Arial, Helvetica, Clean, sans-serif;
}
#l10n-client h2 {
text-shadow: none;
}
@ -144,7 +151,25 @@ a:hover,
padding-left: 32px;
}
/* Lists ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
ul.g-text li,
.g-text ul li {
list-style-type: disc;
}
ol.g-text li,
.g-text ol li {
list-style-type: decimal;
}
.g-text li,
.g-text li {
margin-left: 1em;
}
/* Forms ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
form {
margin: 0;
}
@ -335,6 +360,7 @@ td {
}
/* Text ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.g-text-small {
font-size: .8em;
}
@ -348,7 +374,7 @@ td {
}
/** *******************************************************************
* 2) Reusable content blocks
* 2) Reusable content blocks
*********************************************************************/
/* ~browny~ */
@ -362,10 +388,11 @@ td {
}
/*** ******************************************************************
* 3) Page layout containers
* 3) Page layout containers
*********************************************************************/
/* Dimension and scale ~~~~~~~~~~~~~~~~~~~ */
.g-one-quarter {
width: 25%;
}
@ -434,7 +461,7 @@ td {
}
/** *******************************************************************
* 4) Content blocks in specific layout containers
* 4) Content blocks in specific layout containers
*********************************************************************/
/* Header ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
@ -562,7 +589,8 @@ td {
background-color: #fff;
}
/* Permissions ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* Permissions ~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
#g-edit-permissions-form td {
background-image: none;
}
@ -675,11 +703,11 @@ tr.g-error td.g-error,
}
tr.g-success {
background-image: none;
background-image: none;
}
tr.g-success td.g-success {
background-image: url('../images/ico-success.png');
background-image: url('../images/ico-success.png');
}
.g-warning,
@ -767,7 +795,7 @@ form .g-error {
}
/** *******************************************************************
* 7) Navigation and menus
* 7) Navigation and menus
*********************************************************************/
/* Login menu ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
@ -869,16 +897,7 @@ form .g-error {
}
/** *******************************************************************
* 8) ThemeRoller Theme
**********************************************************************/
/* ~browny~ */
/* ThemeRoller overrides ~~~~~~~~~~~~~~~~~ */
@import "themeroller/ui.tabs.css";
/** *******************************************************************
* 9) jQuery and jQuery UI
* 8) jQuery and jQuery UI
*********************************************************************/
/* Generic block container ~~~~~~~~~~~~~~~ */
@ -893,18 +912,19 @@ form .g-error {
}
/* Superfish menu overrides ~~~~~~~~~~~~~~ */
.sf-menu ul {
width: 12em;
width: 12em;
}
ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul {
left: 12em;
left: 12em;
}
ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul {
left: 12em;
left: 12em;
}
/* ~browny~ */
@ -915,13 +935,13 @@ ul.sf-menu li li li.sfHover ul {
/* ~browny~ */
.sf-menu li {
background: #d3b07e url('../images/ui-bg_highlight-soft_45_d3b07e_1x100.png') 50% 50% repeat-x;
text-shadow: 0px 1px 1px #fff;
background: #d3b07e url('../images/ui-bg_highlight-soft_45_d3b07e_1x100.png') 50% 50% repeat-x;
text-shadow: 0px 1px 1px #fff;
}
/* ~browny~ */
.sf-menu a {
border-top: 1px solid #e0cbae;
border-top: 1px solid #e0cbae;
}
/* ~browny~ */
@ -932,7 +952,7 @@ ul.sf-menu li li li.sfHover ul {
/* ~browny~ */
.sf-menu li:hover, .sf-menu li.sfHover,
.sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active {
background: #e0cbae;
background: #e0cbae;
}
/* jQuery UI Dialog ~~~~~~~~~~~~~~~~~~~~~~ */
@ -1005,11 +1025,11 @@ button {
.g-progress-bar {
height: 1em;
width: 100%;
margin-top: .5em;
margin: .5em 0;
display: inline-block;
}
/* Status and validation messages ~~~~ */
/* Status and validation messages ~~~~~~~~ */
.g-message-block {
background-position: .4em .3em;
@ -1089,7 +1109,7 @@ div#g-action-status {
width: 40%;
}
/* Dialogs and panels ~~~~~~~~~~~~~~~~~~ */
/* Dialogs and panels ~~~~~~~~~~~~~~~~~~~~ */
#g-dialog {
text-align: left;
@ -1108,7 +1128,7 @@ div#g-action-status {
padding: 1em;
}
/* Inline layout ~~~~~~~~~~ */
/* Inline layout ~~~~~~~~~~~~~~~~~~~~~~~~ */
.g-inline li {
float: left;
@ -1120,338 +1140,13 @@ div#g-action-status {
margin-left: 0;
}
/** *******************************************************************
* 10) Right to left language styles
*********************************************************************/
.rtl {
direction: rtl;
}
.rtl #g-header,
.rtl #g-content,
.rtl #g-sidebar,
.rtl #g-footer,
.rtl caption,
.rtl th,
.rtl #g-dialog,
.rtl .g-context-menu li a,
.rtl .g-message-box li,
.rtl #g-site-status li {
text-align: right;
}
.rtl .g-text-right {
text-align: left;
}
.rtl .g-error,
.rtl .g-info,
.rtl .g-success,
.rtl .g-warning,
.rtl #g-add-photos-status .g-success,
.rtl #g-add-photos-status .g-error {
background-position: center right;
padding-right: 30px !important;
}
.rtl form li.g-error,
.rtl form li.g-info,
.rtl form li.g-success,
.rtl form li.g-warning {
padding-right: 0 !important;
}
.rtl .g-left,
.rtl .g-inline li,
.rtl #g-content #g-album-grid .g-item,
.rtl .sf-menu li,
.rtl .g-breadcrumbs li,
.rtl .g-paginator li,
.rtl .g-buttonset li,
.rtl .ui-icon-left .ui-icon,
.rtl .g-short-form li,
.rtl form ul ul li,
.rtl input[type="submit"],
.rtl input[type="reset"],
.rtl input.checkbox,
.rtl input[type=checkbox],
.rtl input.radio,
.rtl input[type=radio] {
float: right;
}
.rtl .g-right,
.rtl .ui-icon-right .ui-icon {
float: left;
}
.rtl .g-inline li {
margin-right: 1em;
}
.rtl .g-inline li.g-first {
margin-right: 0;
}
/* ~browny~ */
.rtl .g-breadcrumbs li {
background: transparent url('../images/ico-separator-rtl.gif') no-repeat scroll right center;
padding: .5em 18px .5em 8px;
}
.rtl .g-breadcrumbs .g-first {
background: none;
padding-right: 0;
}
.rtl input.checkbox {
margin-left: .4em;
}
.rtl #g-add-comment {
right: inherit;
left: 0;
}
.rtl .ui-icon-left .ui-icon {
margin-left: .2em;
}
.rtl .ui-icon-right .ui-icon {
margin-right: .2em;
}
/* 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-left: none;
border-right:1px solid #fff;
}
.rtl .sf-menu a.sf-with-ul {
padding-left: 2.25em;
padding-right: 1em;
}
.rtl .sf-sub-indicator {
left: .75em !important;
right: auto;
background: url('../../../lib/superfish/images/arrows-ffffff-rtl.png') no-repeat -10px -100px; /* 8-bit indexed alpha png. IE6 gets solid image only */
}
.rtl a > .sf-sub-indicator { /* give all except IE6 the correct values */
top: .8em;
background-position: -10px -100px; /* use translucent arrow for modern browsers*/
}
/* apply hovers to modern browsers */
.rtl a:focus > .sf-sub-indicator,
.rtl a:hover > .sf-sub-indicator,
.rtl a:active > .sf-sub-indicator,
.rtl li:hover > a > .sf-sub-indicator,
.rtl li.sfHover > a > .sf-sub-indicator {
background-position: 0 -100px; /* arrow hovers for modern browsers*/
}
/* point right for anchors in subs */
.rtl .sf-menu ul .sf-sub-indicator { background-position: 0 0; }
.rtl .sf-menu ul a > .sf-sub-indicator { background-position: -10px 0; }
/* apply hovers to modern browsers */
.rtl .sf-menu ul a:focus > .sf-sub-indicator,
.rtl .sf-menu ul a:hover > .sf-sub-indicator,
.rtl .sf-menu ul a:active > .sf-sub-indicator,
.rtl .sf-menu ul li:hover > a > .sf-sub-indicator,
.rtl .sf-menu ul li.sfHover > a > .sf-sub-indicator {
background-position: 0 0; /* arrow hovers for modern browsers*/
}
.rtl .sf-menu li:hover ul,
.rtl .sf-menu li.sfHover ul {
right: 0;
left: auto;
}
.rtl ul.sf-menu li li:hover ul,
.rtl ul.sf-menu li li.sfHover ul {
right: 12em; /* match ul width */
left: auto;
}
.rtl ul.sf-menu li li li:hover ul,
.rtl ul.sf-menu li li li.sfHover ul {
right: 12em; /* match ul width */
left: auto;
}
/*** shadows for all but IE6 ***/
.rtl .sf-shadow ul {
background: url('../../../lib/superfish/images/shadow.png') no-repeat bottom left;
padding: 0 0 9px 8px;
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;
}
/* RTL ThemeRoller ~~~~~~~~~~~~~~~~~~~~~~~~ */
.rtl .ui-dialog .ui-dialog-titlebar {
padding: 0.5em 1em 0.3em 0.3em;
}
.rtl .ui-dialog .ui-dialog-title {
float: right;
}
.rtl .ui-dialog .ui-dialog-titlebar-close {
left: 0.3em;
right: auto;
}
/* RTL paginator ~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.rtl .g-paginator .g-info {
width: 35%;
}
.rtl .g-paginator .g-text-right {
margin-left: 0;
}
.rtl .g-paginator .ui-icon-seek-end {
background-position: -80px -160px;
}
.rtl .g-paginator .ui-icon-seek-next {
background-position: -48px -160px;
}
.rtl .g-paginator .ui-icon-seek-prev {
background-position: -32px -160px;
}
.rtl .g-paginator .ui-icon-seek-first {
background-position: -64px -160px;
}
.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: 240px;
}
.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;
}
/* ~browny~ */
.rtl .g-even {
text-align: left;
}
/* ~browny~ */
.rtl .g-odd {
text-align: right;
/* Autocomplete ~~~~~~~~~~~~~~~~~~~~~~~~~ */
.ac_loading {
background: white url('../images/loading-small.gif') right center no-repeat !important;
}
/** *******************************************************************
* 11) More Browny (Extra overrides for better Browny look)
* 9) More Browny (Extra overrides for better Browny look)
*********************************************************************/
/* ~browny~ */
@ -1478,10 +1173,6 @@ div#g-action-status {
background-color: #FAFAEB !important;
}
.rtl .uploadifyQueueItem .cancel {
float: left;
}
.uploadifyQueue {
margin-top: 1em;
}
@ -1533,35 +1224,6 @@ div#g-action-status {
margin-bottom: .5em;
}
.rtl #g-user-profile .g-block h2 {
padding-right: .8em;
padding-left: auto;
}
.rtl #g-user-profile .g-avatar {
float: right;
right: 0em;
left: auto;
margin: 0em .6em 0em 0em;
}
.rtl #g-user-profile #g-comment-detail .g-author a {
float: right;
right: 0em;
left: auto;
margin-left: .6em;
margin-right: 0em;
}
.rtl #g-user-profile #g-comment-detail div {
margin-right: 5em;
margin-left: 0em;
}
.rtl #g-user-profile h1 {
margin: 1.25em 4.4em 2em 0em;
}
/* Comments ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
#g-content #g-comments .g-avatar {
@ -1570,12 +1232,6 @@ div#g-action-status {
margin-left: 0;
}
.rtl #g-content #g-comments .g-avatar {
float: right;
margin-left: .4em;
margin-right: 0;
}
/* Organize ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
#g-organize {
@ -1609,11 +1265,6 @@ table.calendar td:hover {
background: #EDE4D5 !important;
}
.rtl #g-calendar-grid {
padding-right: 8px;
padding-left: 0px;
}
#g-view-menu #g-calendarview-link {
background-image: url('../images/ico-view-calendarview.png') !important;
}

View File

@ -82,7 +82,7 @@ $(document).ready(function() {
} else {
var sib_height = $(this).prev().height();
}
if ($.browser.msie && $.browser.version >= 8) {
if ($.browser.msie && $.browser.version <= 8) {
sib_height = sib_height + 1;
}
$(this).css("height", sib_height);

View File

@ -1,10 +1,10 @@
name = "Browny Wind"
description = "The default Wind theme with a browny style."
version = 1
author = "Ma'moun M. Diraneyya"
author = "Mamouneyya"
site = 1
admin = 0
author_name = ""
author_name = "Ma'moun Diraneyya"
author_url = ""
info_url = "http://codex.gallery2.org/Gallery3:Themes:browny_wind"
discuss_url = "http://gallery.menalto.com/forum_theme_browny_wind"
discuss_url = "http://gallery.menalto.com/node/95007"

View File

@ -1,6 +1,11 @@
<?php defined("SYSPATH") or die("No direct script access.") ?>
<ul class="g-message-block">
<li class="g-warning"><?= t("No active sidebar blocks.") ?>
<br/><a href="<?= url::site("admin/sidebar") ?>"><?= t("Add blocks") ?></a>
<li class="g-warning">
<? if (block_manager::get_active("site_sidebar")): ?>
<?= t("Active sidebar blocks have no content.") ?>
<? else: ?>
<?= t("No active sidebar blocks.") ?>
<? endif ?>
<a href="<?= url::site("admin/sidebar") ?>"><?= t("configure blocks") ?></a>
</li>
</ul>

View File

@ -1,50 +1,43 @@
<?php defined("SYSPATH") or die("No direct script access.") ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<html xmlns="http://www.w3.org/1999/xhtml" <?= $theme->html_attributes() ?> xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<? $theme->start_combining("script,css") ?>
<title>
<? if ($page_title): ?>
<?= $page_title ?>
<? else: ?>
<? if ($theme->item()): ?>
<? if ($theme->item()->is_album()): ?>
<?= t("Browse Album :: %album_title", array("album_title" => $theme->item()->title)) ?>
<? elseif ($theme->item()->is_photo()): ?>
<?= t("Photo :: %photo_title", array("photo_title" => $theme->item()->title)) ?>
<? else: ?>
<?= t("Movie :: %movie_title", array("movie_title" => $theme->item()->title)) ?>
<? endif ?>
<?= $theme->item()->title ?>
<? elseif ($theme->tag()): ?>
<?= t("Browse Tag :: %tag_title", array("tag_title" => $theme->tag()->name)) ?>
<?= t("Photos tagged with %tag_title", array("tag_title" => $theme->tag()->name)) ?>
<? else: /* Not an item, not a tag, no page_title specified. Help! */ ?>
<?= t("Gallery") ?>
<?= item::root()->title ?>
<? endif ?>
<? endif ?>
</title>
<link rel="shortcut icon" href="<?= url::file(module::get_var("gallery", "favicon_url")) ?>" type="image/x-icon" />
<?= $theme->css("yui/reset-fonts-grids.css") ?>
<?= $theme->css("superfish/css/superfish.css") ?>
<?= $theme->css("themeroller/ui.base.css") ?>
<?= $theme->css("screen.css") ?>
<!--[if lte IE 8]>
<link rel="stylesheet" type="text/css" href="<?= $theme->url("css/fix-ie.css") ?>"
media="screen,print,projection" />
<![endif]-->
<link rel="shortcut icon"
href="<?= url::file(module::get_var("gallery", "favicon_url")) ?>"
type="image/x-icon" />
<link rel="apple-touch-icon-precomposed"
href="<?= url::file(module::get_var("gallery", "apple_touch_icon_url")) ?>" />
<? if ($theme->page_type == "collection"): ?>
<? if ($thumb_proportion != 1): ?>
<? $new_width = round($thumb_proportion * 213) ?>
<? $new_height = round($thumb_proportion * 240) ?>
<style type="text/css">
.g-view #g-content #g-album-grid .g-item {
width: <?= $new_width ?>px;
height: <?= $new_height ?>px;
/* <?= $thumb_proportion ?> */
}
</style>
<style type="text/css">
.g-view #g-content #g-album-grid .g-item {
width: <?= $new_width ?>px;
height: <?= $new_height ?>px;
/* <?= $thumb_proportion ?> */
}
</style>
<? endif ?>
<? endif ?>
<?= $theme->script("json2-min.js") ?>
<?= $theme->script("jquery.js") ?>
<?= $theme->script("jquery.form.js") ?>
<?= $theme->script("jquery-ui.js") ?>
@ -57,9 +50,8 @@
<?= $theme->script("gallery.dialog.js") ?>
<?= $theme->script("superfish/js/superfish.js") ?>
<?= $theme->script("jquery.localscroll.js") ?>
<?= $theme->script("ui.init.js") ?>
<? /* These are page specific, but if we put them before $theme->head() they get combined */ ?>
<? /* These are page specific but they get combined */ ?>
<? if ($theme->page_subtype == "photo"): ?>
<?= $theme->script("jquery.scrollTo.js") ?>
<?= $theme->script("gallery.show_full_size.js") ?>
@ -68,6 +60,26 @@
<? endif ?>
<?= $theme->head() ?>
<? /* Theme specific CSS/JS goes last so that it can override module CSS/JS */ ?>
<?= $theme->script("ui.init.js") ?>
<?= $theme->css("yui/reset-fonts-grids.css") ?>
<?= $theme->css("superfish/css/superfish.css") ?>
<?= $theme->css("themeroller/ui.base.css") ?>
<?= $theme->css("screen.css") ?>
<? if (locales::is_rtl()): ?>
<?= $theme->css("screen-rtl.css") ?>
<? endif; ?>
<!--[if lte IE 8]>
<link rel="stylesheet" type="text/css" href="<?= $theme->url("css/fix-ie.css") ?>"
media="screen,print,projection" />
<![endif]-->
<!-- LOOKING FOR YOUR CSS? It's all been combined into the link below -->
<?= $theme->get_combined("css") ?>
<!-- LOOKING FOR YOUR JAVASCRIPT? It's all been combined into the link below -->
<?= $theme->get_combined("script") ?>
</head>
<body <?= $theme->body_attributes() ?>>
@ -80,7 +92,7 @@
<?= $header_text ?>
<? else: ?>
<a id="g-logo" class="g-left" href="<?= item::root()->url() ?>" title="<?= t("go back to the Gallery home")->for_html_attr() ?>">
<img alt="<?= t("Gallery logo: Your photos on your web site")->for_html_attr() ?>" src="<?= $theme->url("images/logo.png") ?>" />
<img alt="<?= t("Gallery logo: Your photos on your web site")->for_html_attr() ?>" src="<?= url::file("lib/images/logo.png") ?>" />
</a>
<? endif ?>
<?= $theme->user_menu() ?>

2
3.0/themes/pear4gallery3/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
icons/depricated
temp/

View File

@ -0,0 +1,327 @@
<?php defined("SYSPATH") or die("No direct script access.");
/*
*/
?>
<?
class Admin_Theme_Options_Controller extends Admin_Controller {
protected $min_gallery_ver = 46;
private function load_theme_info() {
$theme_id = module::get_var("gallery", "active_site_theme");
$file = THEMEPATH . "$theme_id/theme.info";
$theme_info = new ArrayObject(parse_ini_file($file), ArrayObject::ARRAY_AS_PROPS);
return $theme_info;
}
private function get_theme_version() {
$theme_info = $this->load_theme_info();
return ($theme_info->version);
}
private function get_theme_name() {
$theme_info = $this->load_theme_info();
return ($theme_info->name);
}
private function prerequisite_check($group, $id, $is_ok, $caption, $caption_ok, $caption_failed, $iswarning, $msg_error) {
$confirmation_caption = ($is_ok)? $caption_ok : $caption_failed;
$checkbox = $group->checkbox($id)
->label($caption . " " . $confirmation_caption)
->checked($is_ok)
->disabled(true);
if ($is_ok):
$checkbox->class("g-success");
elseif ($iswarning):
$checkbox->class("g-prerequisite g-warning")->error_messages("failed", $msg_error)->add_error("failed", 1);
else:
$checkbox->class("g-error")->error_messages("failed", $msg_error)->add_error("failed", 1);
endif;
}
/* Convert old values ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
protected function upgrade_settings() {
if (module::get_var("th_pear4gallery3", "show_logo")):
module::clear_var("th_pear4gallery3", "show_logo");
module::set_var("th_pear4gallery3", "hide_logo", FALSE);
endif;
}
protected function get_edit_form_admin() {
$this->upgrade_settings();
$form = new Forge("admin/theme_options/save/", "", null, array("id" =>"g-theme-options-form"));
// Just commenting out, we might want rssmodule in future versions.
// $rssmodulecheck = (module::is_active("rss") && module::info("rss"));
/* Prerequisites ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
$group = $form->group("requirements")->label(t("Prerequisites"));
$gallery_ver = module::get_version("gallery");
$this->prerequisite_check($group, "vercheck", $gallery_ver >= $this->min_gallery_ver,
t("Gallery 3 Core v.") . $this->min_gallery_ver . "+", t("Installed"), t("Required"), FALSE, sprintf(t("Check Failed. Minimum Required Version is %s. Found %s."), $this->min_gallery_ver, $gallery_ver));
$this->prerequisite_check($group, "square_thumbs", (module::is_active("square_thumbs") and module::info("square_thumbs")),
t("Square Thumbnails"), t("Found"), t("Required"), FALSE, t("Install <a href=\"http://codex.gallery2.org/Gallery3:Modules:square_thumbs\">Square Thumbnails</a> to display Thumbs correctly."));
if (!module::get_var("th_pear4gallery3", "hide_thumbmeta")):
$this->prerequisite_check($group, "info", (module::is_active("info") and module::info("info")),
t("Info Module"), t("Found"), t("Required"), FALSE, t("Check Failed. Module is required to display Thumb metadata."));
endif;
/* General Settings ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
$group = $form->group("edit_theme")->label(t("General Settings"));
$group->input("favicon")
->label(t("URL (or relative path) to your favicon.ico"))
->value(module::get_var("gallery", "favicon_url"));
$group->input("appletouchicon")
->label(t("URL (or relative path) to your apple-touch-icon.png"))
->value(module::get_var("gallery", "appletouchicon_url"));
/* Advanced Options - General ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
$group = $form->group("edit_theme_adv_main")->label(t("Advanced Options - General"));
$group->checkbox("hide_logo")
->label(t("Hide Bottom Pear Logo"))
->checked(module::get_var("th_pear4gallery3", "hide_logo"));
$group->dropdown("mainmenu_view")
->label(t("Main page View"))
->options(array("grid" => t("Grid (Default)"), "mosaic" => t("Mosaic")))
->selected(module::get_var("th_pear4gallery3", "mainmenu_view"));
$group->checkbox("show_guest_menu")
->label(t("Show Main Menu for Guest Users"))
->checked(module::get_var("th_pear4gallery3", "show_guest_menu"));
$group->dropdown("background")
->label(t("Background color"))
->options(array("black" => t("Black (Default)"), "dkgrey" => t("Dark-Grey"), "ltgrey" => t("Light-Grey"), "white" => t("White")))
->selected(module::get_var("th_pear4gallery3", "background"));
$group->input("ga_code")
->label(t("<a href=\"http://www.google.com/analytics/\">Google analytics</a> code."))
->value(module::get_var("th_pear4gallery3", "ga_code"));
/* Advanced Options - Photo page ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/*
$group = $form->group("edit_theme_adv_photo")->label(t("Advanced Options - Photo Page"));
$group->dropdown("photo_popupbox")
->label(t($sb_fb_caption) . " " . t("Mode"))
->options(array("default" => t("Default (Slideshow/Preview)"), "preview" => t("Preview Only"), "none" => t("Disable")))
->selected(module::get_var("th_pear4gallery3", "photo_popupbox"));
$group->dropdown("photo_descmode")
->label(t("Description Display Mode"))
->options(array("overlay_top" => t("Overlay Top"), "overlay_bottom" => t("Overlay Bottom"), "bottom" => t("Bottom"), "top" => t("Top"), "hide" => t("Hide")))
->selected(module::get_var("th_pear4gallery3", "photo_descmode"));
$group->checkbox("thumb_inpage")
->label(t("Keep Thumb Nav Block on the side"))
->checked(module::get_var("th_pear4gallery3", "thumb_inpage"));
if (!$thumbnavcheck):
$group->thumb_inpage->disabled(true);
endif;
$group->checkbox("hide_photometa")
->label(t("Hide Item Meta Data"))
->checked(module::get_var("th_pear4gallery3", "hide_photometa", TRUE));
$group->checkbox("desc_allowbbcode")
->label(t("Allow BBCode/HTML in Descriptions"))
->checked(module::get_var("th_pear4gallery3", "desc_allowbbcode"));
*/
/* Maintenance ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
$group = $form->group("maintenance")->label(t("Maintenance"));
$group->checkbox("build_resize")->label(t("Mark all Image Resizes for Rebuild"))->checked(false);
$group->checkbox("build_thumbs")->label(t("Mark all Thumbnails for Rebuild"))->checked(false);
$group->checkbox("build_exif")->label(t("Mark Exif Info data for reload"))->checked(false);
if ($iptccheck):
$group->checkbox("build_iptc")->label(t("Mark IPTC Info data for reload"))->checked(false);
endif;
$group->checkbox("purge_cache")->label(t("Purge cache data"))->checked(false);
$group->checkbox("reset_theme")->label(t("Reset Theme to a Default State"))->checked(false);
module::event("theme_edit_form", $form);
$form->submit("g-theme-options-save")->value(t("Save Changes"));
return $form;
}
protected function get_edit_form_help() {
$help = '<fieldset>';
$help .= '<legend>Help</legend><ul>';
$help .= '<li><h3>Prerequisites</h3>
<p style="color: red;">Requirements need to be met for theme to function properly.
</li>';
$help .= '<li><h3>General Settings</h3>
</li>';
$help .= '<li><h3>Advanced Options - General</h3>
</li>';
$help .= '<li><h3>Advanced Options - Photo Page</h3>
</li>';
$help .= '<li><h3>Maintenance</h3>
<p>Without changing image size, you can <b>Mark all Resizes for Rebuild</b>.
Then you need to visit Admin\Maintenance to initiate the process.
<p>Same can be done for image thumbs with <b>Mark all Thumbnails for Rebuild</b>.
<p><b>Mark Exif/IPTC Info for reload</b> would mark all Exif or IPTC records as "Dirty" allowing it to be repopulated.
<p>And just in case you think that something is not right, you can always <b>Reset Theme to a Default State</b>.
</li>';
$help .= '</ul></fieldset>';
return t($help);
}
private function save_item_state($statename, $state, $value) {
if ($state):
module::set_var("th_pear4gallery3", $statename, $value);
else:
module::clear_var("th_pear4gallery3", $statename);
endif;
}
protected function legacy() {
module::clear_var("th_pear4gallery3", "hide_logo");
module::clear_var("th_pear4gallery3", "mainmenu_view");
module::clear_var("th_pear4gallery3", "show_guest_menu");
module::clear_var("th_pear4gallery3", "background");
module::clear_var("th_pear4gallery3", "ga_code");
}
protected function reset_theme() {
// Default core theme settings
module::set_var("gallery", "page_size", 9);
module::set_var("gallery", "resize_size", 640);
module::set_var("gallery", "thumb_size", 200);
module::set_var("gallery", "header_text", "");
module::set_var("gallery", "footer_text", "");
module::set_var("gallery", "show_credits", FALSE);
module::clear_all_vars("th_pear4gallery3");
module::clear_var("th_pear4gallery3", "hide_logo");
}
public function save() {
site_status::clear("gd_init_configuration");
access::verify_csrf();
$form = self::get_edit_form_admin();
if ($form->validate()):
$this->legacy();
if ($form->maintenance->reset_theme->value):
$this->reset_theme();
module::event("theme_edit_form_completed", $form);
message::success(t("Theme details are reset"));
else:
// * General Settings ****************************************************
$resize_size = 800;
$build_resize = $form->maintenance->build_resize->value;
$build_thumbs = $form->maintenance->build_thumbs->value;
$build_exif = $form->maintenance->build_exif->value;
if (module::is_active("iptc") and module::info("iptc")):
$build_iptc = $form->maintenance->build_iptc->value;
else:
$build_iptc = FALSE;
endif;
$purge_cache = $form->maintenance->purge_cache->value;
$thumb_descmode_a = $form->edit_theme_adv_thumb->thumb_descmode_a->value;
$thumb_descmode = $form->edit_theme_adv_thumb->thumb_descmode->value;
$thumb_metamode = $form->edit_theme_adv_thumb->thumb_metamode->value;
$photo_descmode = $form->edit_theme_adv_photo->photo_descmode->value;
$photo_popupbox = $form->edit_theme_adv_photo->photo_popupbox->value;
if ($build_resize):
graphics::remove_rule("gallery", "resize", "gallery_graphics::resize");
graphics::add_rule("gallery", "resize", "gallery_graphics::resize",
array("width" => $resize_size, "height" => $resize_size, "master" => Image::AUTO), 100);
endif;
if (module::get_var("gallery", "resize_size") != $resize_size):
module::set_var("gallery", "resize_size", $resize_size);
endif;
$thumb_size = 200;
$rule = Image::AUTO;
if ($build_thumbs):
graphics::remove_rule("gallery", "thumb", "gallery_graphics::resize");
graphics::add_rule("gallery", "thumb", "gallery_graphics::resize",
array("width" => $thumb_size, "height" => $thumb_size, "master" => $rule), 100);
endif;
if (module::get_var("gallery", "thumb_size") != $thumb_size):
module::set_var("gallery", "thumb_size", $thumb_size);
endif;
module::set_var("gallery", "page_size", 50);
module::set_var("gallery", "favicon_url", $form->edit_theme->favicon->value);
module::set_var("gallery", "appletouchicon_url", $form->edit_theme->appletouchicon->value);
$this->save_item_state("logo_path", $form->edit_theme->logo_path->value, $form->edit_theme->logo_path->value);
// * Advanced Options - General ******************************************
$this->save_item_state("hide_logo", $form->edit_theme_adv_main->hide_logo->value, TRUE);
$this->save_item_state("mainmenu_view", $form->edit_theme_adv_main->mainmenu_view->value != "grid", $form->edit_theme_adv_main->mainmenu_view->value);
$this->save_item_state("show_guest_menu",$form->edit_theme_adv_main->show_guest_menu->value, TRUE);
$this->save_item_state("background", $form->edit_theme_adv_main->background->value != "black", $form->edit_theme_adv_main->background->value);
$this->save_item_state("ga_code", $form->edit_theme_adv_main->ga_code->value, $form->edit_theme_adv_main->ga_code->value);
// * Advanced Options - Photo page ***************************************
/*
$this->save_item_state("photo_descmode", $photo_descmode != "overlay_top", $photo_descmode);
$this->save_item_state("photo_popupbox", $photo_popupbox != "default", $photo_popupbox);
$this->save_item_state("thumb_inpage", $form->edit_theme_adv_photo->thumb_inpage->value, TRUE);
$this->save_item_state("hide_photometa", !$form->edit_theme_adv_photo->hide_photometa->value, FALSE);
$this->save_item_state("desc_allowbbcode", $form->edit_theme_adv_photo->desc_allowbbcode->value, TRUE);
*/
module::event("theme_edit_form_completed", $form);
if ($_priorratio != $thumb_ratio):
message::warning(t("Thumb aspect ratio has been changed. Consider rebuilding thumbs if needed."));
endif;
message::success(t("Updated theme details"));
if ($build_exif):
db::update('exif_records')
->set(array('dirty'=>'1'))
->execute();
endif;
if ($build_iptc):
db::update('iptc_records')
->set(array('dirty'=>'1'))
->execute();
endif;
if ($purge_cache):
db::build()
->delete("caches")
->execute();
endif;
endif;
url::redirect("admin/theme_options");
else:
print $this->get_admin_view();
endif;
}
protected function get_admin_view() {
$view = new Admin_View("admin.html");
$view->page_title = t(".Pear Theme");
$view->content = new View("admin_theme_options.html");
$view->content->name = self::get_theme_name();
$view->content->version = self::get_theme_version();
$view->content->form = self::get_edit_form_admin();
$view->content->help = self::get_edit_form_help();
return $view;
}
public function index() {
site_status::clear("gd_init_configuration");
print $this->get_admin_view();
}
}
?>

View File

@ -0,0 +1,90 @@
<?php defined("SYSPATH") or die("No direct script access.");
/**
* Grey Dragon Theme - a custom theme for Gallery 3
* This theme was designed and built by Serguei Dosyukov, whose blog you will find at http://blog.dragonsoft.us
* Copyright (C) 2009-2011 Serguei Dosyukov
*
* 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.
*/
?>
<style>
#g-header { margin-bottom: 10px; }
#gd-admin { position: relative; font-size: 0.9em; }
#gd-admin legend { width: 99.5%; padding: 0.4em 0.8em; margin-left: -11px; background: url(/themes/greydragon/images/blue-grad.png) #d5e6f2 repeat-x left top; border: #dfdfdf 1px solid;}
.g-admin-left { float: left; width: 53%; }
.g-admin-right { float: left; width: 46%; margin-left: 1%; margin-top: 1em; }
.g-admin-right h3 { border-bottom: #a2bdbf 1px solid; margin-top: 0.3em; margin-bottom: 0.3em; }
#gd-admin-head { position: relative; height: auto; clear: both; display: block; overflow: auto; font-size: 11px; padding: 0.4em 0.8em; background-color: #b7c9d6; border: #a2bdbf 1px solid; }
#gd-admin-title { float: left; color: #333v42; font-weight: bold; font-size: 1.6em; text-shadow: #deeefa 0 1px 0; }
#gd-admin-hlinks ul { float: right; margin-top: 0.4em; font-size: 11px; }
#gd-admin-hlinks li { list-style-type: none; float: left; color: #618299; display: inline; }
#gd-admin-hlinks a { font-weight: bold; font-size: 13px; }
#gd-admin form { border: none; }
#gd-admin fieldset { border: #ccc 1px solid; }
#gd-admin input.g-error { padding-left: 30px; border: none; }
#gd-admin input.g-success { background-color: transparent; }
#gd-admin input.g-warning { background-color: transparent; border: none; }
#gd-admin p.g-error { padding-left: 30px; border: none; margin-bottom: 0; background-image: none; }
#g-content { padding: 0 1em; width: 97%; font-size: 1em; }
#g-content form ul li input { display: inline; float: left; margin-right: 0.8em; }
#g-content form ul li select { display: inline; float: left; margin-right: 0.8em; width: 50.6%; padding: 0 0 0 .2em; }
#g-content form ul li input[type='text'] { width: 50%; }
#g-content form ul li textarea { height: 6em; }
#g-content form input[type="submit"] { border: #5b86ab 2px solid; padding: 0.3em; color: #fff; background: url(/themes/greydragon/images/button-grad-vs.png) #5580a6 repeat-x left top; }
#g-content form input[type="submit"]:hover,
input.ui-state-hover { background-image: url(/themes/greydragon/images/button-grad-active-vs.png); border-color: #2e5475; color: #eaf2fa !important; }
#g-content form #vercheck, #g-content form #shadowbox, #g-content form #organizecheck { display: none; }
</style>
<script>
$(document).ready( function() {
$('form').submit( function() {
$('input[type=submit]', this).attr('disabled', 'disabled');
});
});
</script>
<?
if ($is_module):
$admin_info = new ArrayObject(parse_ini_file(MODPATH . $name . "/module.info"), ArrayObject::ARRAY_AS_PROPS);
$version = number_format($admin_info->version / 10, 1, '.', '');
else:
$admin_info = new ArrayObject(parse_ini_file(THEMEPATH . $name . "/theme.info"), ArrayObject::ARRAY_AS_PROPS);
$version = $admin_info->version;
endif;
?>
<div id="gd-admin" class="g-block">
<div id="gd-admin-head">
<div id="gd-admin-title"><?= t($admin_info->name) ?> - <?= $version ?></div>
<div id="gd-admin-hlinks">
<ul><li><a href="http://codex.gallery2.org/Gallery3:Themes:pear4gallery3" target="_blank"><?= t("Home") ?></a>&nbsp;|&nbsp;</li>
<? if (isset($admin_info->support)): ?>
<li><a href="<?= $admin_info->support; ?>" target="_blank"><?= t("Support") ?></a>&nbsp;|&nbsp;</li>
<? endif; ?>
<? if (isset($admin_info->download)): ?>
<li><a href="<?= $admin_info->download; ?>" target="_blank"><?= t("Download") ?></a>&nbsp;|&nbsp;</li>
<? endif; ?>
</ul>
</div>
</div>
<div class="g-block-content g-admin-left">
<?= $form ?>
</div>
<div class="g-admin-right">
<?= $help ?>
</div>
</div>

View File

@ -0,0 +1,14 @@
<?php defined("SYSPATH") or die("No direct script access.");
/**
*/
?>
<?
$view = new View("admin_include.html");
$view->is_module = FALSE;
$view->name = module::get_var("gallery", "active_site_theme");
$view->form = $form;
$view->help = $help;
print $view;
?>

View File

@ -0,0 +1,59 @@
/**
* Fix display in IE 6, 7, and 8
*/
#g-banner {
z-index: 2;
zoom: 1;
}
#g-sidebar {
overflow: hidden;
}
#g-photo,
#g-movie {
zoom: 1;
}
#g-photo .g-context-menu,
#g-movie .g-context-menu {
width: 240px;
}
input.submit {
clear: none !important;
display: inline !important;
}
.g-short-form input.text,
.g-short-form input.submit {
font-size: 1em;
line-height: 1em;
padding: .38em .3em;
}
#g-search-form input#q {
width: 300px;
}
#g-add-tag-form input.textbox {
width: 110px !important;
}
#g-add-tag-form input[type='submit'] {
padding: .3em 0 !important;
}
#g-dialog .g-cancel {
display: inline-block !important;
float: none !important;
}
.g-paginator .g-text-right {
width: 29%;
}
.g-paginator .ui-icon-right {
width: 60px;
}

View File

@ -0,0 +1 @@
@charset "utf-8"; @media screen, projection{.imageflow{overflow:hidden; position:relative; text-align:left; visibility:hidden; width:100%}.imageflow img{border:none; position:absolute; top:0px; visibility:hidden; -ms-interpolation-mode:bicubic}.imageflow p{margin:0 auto; text-align:center}.imageflow .loading{border:1px solid white; height:15px; left:50%; margin-left:-106px; padding:5px; position:relative; visibility:visible; width:200px}.imageflow .loading_bar{background:#fff; height:15px; visibility:visible; width:1%}.imageflow .navigation{z-index:10000}.imageflow .caption{font-weight:bold; position:relative; text-align:center; z-index:10001}.imageflow .scrollbar{border-bottom:1px solid #b3b3b3; position:relative; visibility:hidden; z-index:10002; height:1px}.imageflow .slider{background:url(../icons/slider.png) no-repeat; height:14px; margin:-6px 0 0 -7px; position:absolute; width:14px; z-index:10003}.imageflow .slideshow{cursor:pointer; height:14px; margin:20px 0 0 20px; position:absolute; width:14px; z-index:10003}.imageflow .slideshow.pause{background:url(../icons/button_pause.png) no-repeat}.imageflow .slideshow.play{background:url(../icons/button_play.png) no-repeat}.imageflow .images{overflow:hidden; white-space:nowrap}.imageflow .button{cursor:pointer; height:17px; position:relative; width:17px}.imageflow .previous{background:url(../icons/button_left.png) top left no-repeat; float:left; margin:-7px 0 0 -30px}.imageflow .next{background:url(../icons/button_right.png) top left no-repeat; float:right; margin:-7px -30px 0 30px}}

View File

@ -0,0 +1,145 @@
.gallery-thumb {
float: left;
margin-bottom: 5px;
margin-left: 5px;
margin-right: 5px;
position: relative;
text-align: center;
cursor: pointer;
}
.gallery-album {
display: block;
height: 400px;
overflow: auto;
padding-bottom: 10px;
padding-top: 10px;
}
th, td {
padding: 0;
border-width: 0;
}
.giInfo {
color: #888888;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 9px;
height: 11px;
margin-bottom: 0px;
margin-left: 12px;
margin-right: 0px;
text-align: left;
}
.pear {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #999 !important;
background-color: #000;
}
.giTitle {
font-size: 1.1em;
font-weight: bold;
margin: 3px 10px !important;
padding: 0 0;
text-align: left;
}
#gsNavBar div {
font-weight: bold;
}
h2 {
font-size: 1.1em;
font-weight: bold;
}
.center {
text-align: center !important;
}
#g-header {
margin-top: -2px;
position: fixed;
top: 44px;
width: 100%;
z-index: 50;
}
/*Menu*/
.sf-menu li:hover, .sf-menu li.sfHover, .sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active {
background: none repeat scroll 0 0 #333333;
outline: 0 none;
}
.sf-menu li {
background: none repeat scroll 0 0 #000000;
float: left;
position: relative;
}
.sf-menu li li, .sf-menu li li ul li {
background-color: #000;
}
.sf-menu ul {
background: none repeat scroll 0 0 #000000;
}
.sf-menu, .sf-menu * {
list-style: none outside none;
margin: 0;
padding: 0;
}
a, .g-menu a, #g-dialog a, .g-button, .g-button:hover, .g-button:active, a.ui-state-hover, input.ui-state-hover, button.ui-state-hover {
color: #777777 !important;
cursor: pointer !important;
text-decoration: none;
}
.sf-menu a, .sf-menu a:visited {
color: #555555;
}
.sf-menu a {
border-left: 1px solid #333;
border-top: 1px solid #222;
padding: 0.75em 1em;
text-decoration: none;
display: block;
position: relative;
}
.ui-state-default, .ui-widget-content .ui-state-default {
background: #ccc;
border: 1px solid #C5DBEC;
color: #555
font-weight: bold;
outline: medium none;
}
#g-banner {
background-color: #555;
border-bottom: 1px solid #333333;
min-height: 5em;
padding: 1em 20px;
position: relative;
}
.g-paginator {
margin-bottom: 5px;
margin-left: 15px;
margin-right: 15px;
padding-top: 6px;
}
a.buttonFirst { background-position: 0px 0px !important; }
a.buttonFirst:hover { background-position: -15px 0px !important; }
a.buttonPrev { background-position: 0px -15px !important; }
a.buttonPrev:hover { background-position: -15px -15px !important; }
a.buttonNext { background-position: 0px -30px !important;}
a.buttonNext:hover { background-position: -15px -30px !important;}
a.buttonLast { background-position: 0px -45px !important; }
a.buttonLast:hover { background-position: -15px -45px !important; }
a.buttonNext, a.buttonLast { float: right; }
a.buttonFirst, a.buttonPrev { float: left; }
.g-paginator .buttonAction {
background: url("../icons/paginator.gif") no-repeat 0 0;
height: 15px;
width: 15px;
margin-left: 0;
display: block;
}

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 180 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 124 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 123 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 119 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

@ -0,0 +1,7 @@
@import "ui.core.css";
@import "ui.theme.css";
@import "ui.datepicker.css";
@import "ui.dialog.css";
@import "ui.progressbar.css";
@import "ui.resizable.css";
@import "ui.tabs.css";

View File

@ -0,0 +1,37 @@
/*
* jQuery UI CSS Framework
* Copyright (c) 2009 AUTHORS.txt (http://ui.jquery.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses.
*/
/* Layout helpers
----------------------------------*/
.ui-helper-hidden { display: none; }
.ui-helper-hidden-accessible { position: absolute; left: -99999999px; }
.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.ui-helper-clearfix { display: inline-block; }
/* required comment for clearfix to work in Opera \*/
* html .ui-helper-clearfix { height:1%; }
.ui-helper-clearfix { display:block; }
/* end clearfix */
.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
/* Interaction Cues
----------------------------------*/
.ui-state-disabled { cursor: default !important; }
/* Icons
----------------------------------*/
/* states and images */
.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
/* Misc visuals
----------------------------------*/
/* Overlays */
.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

View File

@ -0,0 +1,62 @@
/* Datepicker
----------------------------------*/
.ui-datepicker { width: 17em; padding: .2em .2em 0; }
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }
.ui-datepicker .ui-datepicker-prev { left:2px; }
.ui-datepicker .ui-datepicker-next { right:2px; }
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }
.ui-datepicker .ui-datepicker-next-hover { right:1px; }
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; }
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }
.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; }
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year { width: 49%;}
.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; }
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; }
.ui-datepicker td { border: 0; padding: 1px; }
.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }
.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }
/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi { width:auto; }
.ui-datepicker-multi .ui-datepicker-group { float:left; }
.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; }
.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }
.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }
.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }
.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }
.ui-datepicker-row-break { clear:left; width:100%; }
/* RTL support */
.ui-datepicker-rtl { direction: rtl; }
.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }
.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }
.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }
.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }
.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }
.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }
.ui-datepicker-rtl .ui-datepicker-group { float:right; }
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
.ui-datepicker-cover {
display: none; /*sorry for IE5*/
display/**/: block; /*sorry for IE5*/
position: absolute; /*must have*/
z-index: -1; /*must have*/
filter: mask(); /*must have*/
top: -4px; /*must have*/
left: -4px; /*must have*/
width: 200px; /*must have*/
height: 200px; /*must have*/
}

View File

@ -0,0 +1,13 @@
/* Dialog
----------------------------------*/
.ui-dialog { position: relative; padding: .2em; width: 300px; }
.ui-dialog .ui-dialog-titlebar { padding: .5em .3em .3em 1em; position: relative; }
.ui-dialog .ui-dialog-title { float: left; margin: .1em 0 .2em; }
.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; }
.ui-dialog .ui-dialog-content { border: 0; padding: .5em 1em; background: none; overflow: auto; }
.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
.ui-dialog .ui-dialog-buttonpane button { float: right; margin: .5em .4em .5em 0; cursor: pointer; padding: .2em .6em .3em .6em; line-height: 1.4em; width:auto; overflow:visible; }
.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
.ui-draggable .ui-dialog-titlebar { cursor: move; }

View File

@ -0,0 +1,4 @@
/* Progressbar
----------------------------------*/
.ui-progressbar { height:2em; text-align: left; }
.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; }

View File

@ -0,0 +1,13 @@
/* Resizable
----------------------------------*/
.ui-resizable { position: relative;}
.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;}
.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; }
.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0px; }
.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0px; }
.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0px; height: 100%; }
.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0px; height: 100%; }
.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; }
.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; }
.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; }
.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}

View File

@ -0,0 +1,9 @@
/* Tabs
----------------------------------*/
.ui-tabs {padding: .2em;}
.ui-tabs .ui-tabs-nav { padding: .2em .2em 0 .2em; position: relative; }
.ui-tabs .ui-tabs-nav li { float: left; border-bottom: 0 !important; margin: 0 .2em -1px 0; padding: 0; list-style: none; }
.ui-tabs .ui-tabs-nav li a { display:block; text-decoration: none; padding: .5em 1em; }
.ui-tabs .ui-tabs-nav li.ui-tabs-selected { padding-bottom: .1em; border-bottom: 0; }
.ui-tabs .ui-tabs-panel { padding: 1em 1.4em; display: block; border: 0; background: none; }
.ui-tabs .ui-tabs-hide { display: none !important; }

View File

@ -0,0 +1,243 @@
/*
* jQuery UI CSS Framework
* Copyright (c) 2009 AUTHORS.txt (http://ui.jquery.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses.
* To view and modify this theme, visit http://ui.jquery.com/themeroller/?tr=&ffDefault=Lucida%20Grande,%20Lucida%20Sans,%20Arial,%20sans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=5px&bgColorHeader=5c9ccc&bgTextureHeader=12_gloss_wave.png&bgImgOpacityHeader=55&borderColorHeader=4297d7&fcHeader=ffffff&iconColorHeader=d8e7f3&bgColorContent=fcfdfd&bgTextureContent=06_inset_hard.png&bgImgOpacityContent=100&borderColorContent=a6c9e2&fcContent=222222&iconColorContent=469bdd&bgColorDefault=dfeffc&bgTextureDefault=02_glass.png&bgImgOpacityDefault=85&borderColorDefault=c5dbec&fcDefault=2e6e9e&iconColorDefault=6da8d5&bgColorHover=d0e5f5&bgTextureHover=02_glass.png&bgImgOpacityHover=75&borderColorHover=79b7e7&fcHover=1d5987&iconColorHover=217bc0&bgColorActive=f5f8f9&bgTextureActive=06_inset_hard.png&bgImgOpacityActive=100&borderColorActive=79b7e7&fcActive=e17009&iconColorActive=f9bd01&bgColorHighlight=fbec88&bgTextureHighlight=01_flat.png&bgImgOpacityHighlight=55&borderColorHighlight=fad42e&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=02_glass.png&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
*/
/* Component containers
----------------------------------*/
.ui-widget { font-family: Lucida Grande, Lucida Sans, Arial, sans-serif; font-size: 1.1em; }
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Lucida Grande, Lucida Sans, Arial, sans-serif; font-size: 1em; }
.ui-widget-header { border: 1px solid #4297d7; background: #5c9ccc url(images/ui-bg_gloss-wave_55_5c9ccc_500x100.png) 50% 50% repeat-x; color: #ffffff; font-weight: bold; }
.ui-widget-header a { color: #ffffff; }
.ui-widget-content { border: 1px solid #a6c9e2; background: #fcfdfd url(images/ui-bg_inset-hard_100_fcfdfd_1x100.png) 50% bottom repeat-x; color: #222222; }
.ui-widget-content a { color: #222222; }
/* Interaction states
----------------------------------*/
.ui-state-default, .ui-widget-content .ui-state-default { border: 1px solid #c5dbec; background: #dfeffc url(images/ui-bg_glass_85_dfeffc_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #2e6e9e; outline: none; }
.ui-state-default a { color: #2e6e9e; text-decoration: none; outline: none; }
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus { border: 1px solid #79b7e7; background: #d0e5f5 url(images/ui-bg_glass_75_d0e5f5_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #1d5987; outline: none; }
.ui-state-hover a { color: #1d5987; text-decoration: none; outline: none; }
.ui-state-active, .ui-widget-content .ui-state-active { border: 1px solid #79b7e7; background: #f5f8f9 url(images/ui-bg_inset-hard_100_f5f8f9_1x100.png) 50% 50% repeat-x; font-weight: bold; color: #e17009; outline: none; }
.ui-state-active a { color: #e17009; outline: none; text-decoration: none; }
/* Interaction Cues
----------------------------------*/
.ui-state-highlight, .ui-widget-content .ui-state-highlight {border: 1px solid #fad42e; background: #fbec88 url(images/ui-bg_flat_55_fbec88_40x100.png) 50% 50% repeat-x; color: #363636; }
.ui-state-error, .ui-widget-content .ui-state-error {border: 1px solid #cd0a0a; background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x; color: #cd0a0a; }
.ui-state-error-text, .ui-widget-content .ui-state-error-text { color: #cd0a0a; }
.ui-state-disabled, .ui-widget-content .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
.ui-priority-primary, .ui-widget-content .ui-priority-primary { font-weight: bold; }
.ui-priority-secondary, .ui-widget-content .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
/* Icons
----------------------------------*/
/* states and images */
.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_469bdd_256x240.png); }
.ui-widget-content .ui-icon {background-image: url(images/ui-icons_469bdd_256x240.png); }
.ui-widget-header .ui-icon {background-image: url(images/ui-icons_d8e7f3_256x240.png); }
.ui-state-default .ui-icon { background-image: url(images/ui-icons_6da8d5_256x240.png); }
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_217bc0_256x240.png); }
.ui-state-active .ui-icon {background-image: url(images/ui-icons_f9bd01_256x240.png); }
.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png); }
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png); }
/* positioning */
.ui-icon-carat-1-n { background-position: 0 0; }
.ui-icon-carat-1-ne { background-position: -16px 0; }
.ui-icon-carat-1-e { background-position: -32px 0; }
.ui-icon-carat-1-se { background-position: -48px 0; }
.ui-icon-carat-1-s { background-position: -64px 0; }
.ui-icon-carat-1-sw { background-position: -80px 0; }
.ui-icon-carat-1-w { background-position: -96px 0; }
.ui-icon-carat-1-nw { background-position: -112px 0; }
.ui-icon-carat-2-n-s { background-position: -128px 0; }
.ui-icon-carat-2-e-w { background-position: -144px 0; }
.ui-icon-triangle-1-n { background-position: 0 -16px; }
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
.ui-icon-triangle-1-e { background-position: -32px -16px; }
.ui-icon-triangle-1-se { background-position: -48px -16px; }
.ui-icon-triangle-1-s { background-position: -64px -16px; }
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
.ui-icon-triangle-1-w { background-position: -96px -16px; }
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
.ui-icon-arrow-1-n { background-position: 0 -32px; }
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
.ui-icon-arrow-1-e { background-position: -32px -32px; }
.ui-icon-arrow-1-se { background-position: -48px -32px; }
.ui-icon-arrow-1-s { background-position: -64px -32px; }
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
.ui-icon-arrow-1-w { background-position: -96px -32px; }
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
.ui-icon-arrow-4 { background-position: 0 -80px; }
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
.ui-icon-extlink { background-position: -32px -80px; }
.ui-icon-newwin { background-position: -48px -80px; }
.ui-icon-refresh { background-position: -64px -80px; }
.ui-icon-shuffle { background-position: -80px -80px; }
.ui-icon-transfer-e-w { background-position: -96px -80px; }
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
.ui-icon-folder-collapsed { background-position: 0 -96px; }
.ui-icon-folder-open { background-position: -16px -96px; }
.ui-icon-document { background-position: -32px -96px; }
.ui-icon-document-b { background-position: -48px -96px; }
.ui-icon-note { background-position: -64px -96px; }
.ui-icon-mail-closed { background-position: -80px -96px; }
.ui-icon-mail-open { background-position: -96px -96px; }
.ui-icon-suitcase { background-position: -112px -96px; }
.ui-icon-comment { background-position: -128px -96px; }
.ui-icon-person { background-position: -144px -96px; }
.ui-icon-print { background-position: -160px -96px; }
.ui-icon-trash { background-position: -176px -96px; }
.ui-icon-locked { background-position: -192px -96px; }
.ui-icon-unlocked { background-position: -208px -96px; }
.ui-icon-bookmark { background-position: -224px -96px; }
.ui-icon-tag { background-position: -240px -96px; }
.ui-icon-home { background-position: 0 -112px; }
.ui-icon-flag { background-position: -16px -112px; }
.ui-icon-calendar { background-position: -32px -112px; }
.ui-icon-cart { background-position: -48px -112px; }
.ui-icon-pencil { background-position: -64px -112px; }
.ui-icon-clock { background-position: -80px -112px; }
.ui-icon-disk { background-position: -96px -112px; }
.ui-icon-calculator { background-position: -112px -112px; }
.ui-icon-zoomin { background-position: -128px -112px; }
.ui-icon-zoomout { background-position: -144px -112px; }
.ui-icon-search { background-position: -160px -112px; }
.ui-icon-wrench { background-position: -176px -112px; }
.ui-icon-gear { background-position: -192px -112px; }
.ui-icon-heart { background-position: -208px -112px; }
.ui-icon-star { background-position: -224px -112px; }
.ui-icon-link { background-position: -240px -112px; }
.ui-icon-cancel { background-position: 0 -128px; }
.ui-icon-plus { background-position: -16px -128px; }
.ui-icon-plusthick { background-position: -32px -128px; }
.ui-icon-minus { background-position: -48px -128px; }
.ui-icon-minusthick { background-position: -64px -128px; }
.ui-icon-close { background-position: -80px -128px; }
.ui-icon-closethick { background-position: -96px -128px; }
.ui-icon-key { background-position: -112px -128px; }
.ui-icon-lightbulb { background-position: -128px -128px; }
.ui-icon-scissors { background-position: -144px -128px; }
.ui-icon-clipboard { background-position: -160px -128px; }
.ui-icon-copy { background-position: -176px -128px; }
.ui-icon-contact { background-position: -192px -128px; }
.ui-icon-image { background-position: -208px -128px; }
.ui-icon-video { background-position: -224px -128px; }
.ui-icon-script { background-position: -240px -128px; }
.ui-icon-alert { background-position: 0 -144px; }
.ui-icon-info { background-position: -16px -144px; }
.ui-icon-notice { background-position: -32px -144px; }
.ui-icon-help { background-position: -48px -144px; }
.ui-icon-check { background-position: -64px -144px; }
.ui-icon-bullet { background-position: -80px -144px; }
.ui-icon-radio-off { background-position: -96px -144px; }
.ui-icon-radio-on { background-position: -112px -144px; }
.ui-icon-pin-w { background-position: -128px -144px; }
.ui-icon-pin-s { background-position: -144px -144px; }
.ui-icon-play { background-position: 0 -160px; }
.ui-icon-pause { background-position: -16px -160px; }
.ui-icon-seek-next { background-position: -32px -160px; }
.ui-icon-seek-prev { background-position: -48px -160px; }
.ui-icon-seek-end { background-position: -64px -160px; }
.ui-icon-seek-first { background-position: -80px -160px; }
.ui-icon-stop { background-position: -96px -160px; }
.ui-icon-eject { background-position: -112px -160px; }
.ui-icon-volume-off { background-position: -128px -160px; }
.ui-icon-volume-on { background-position: -144px -160px; }
.ui-icon-power { background-position: 0 -176px; }
.ui-icon-signal-diag { background-position: -16px -176px; }
.ui-icon-signal { background-position: -32px -176px; }
.ui-icon-battery-0 { background-position: -48px -176px; }
.ui-icon-battery-1 { background-position: -64px -176px; }
.ui-icon-battery-2 { background-position: -80px -176px; }
.ui-icon-battery-3 { background-position: -96px -176px; }
.ui-icon-circle-plus { background-position: 0 -192px; }
.ui-icon-circle-minus { background-position: -16px -192px; }
.ui-icon-circle-close { background-position: -32px -192px; }
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
.ui-icon-circle-zoomin { background-position: -176px -192px; }
.ui-icon-circle-zoomout { background-position: -192px -192px; }
.ui-icon-circle-check { background-position: -208px -192px; }
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
.ui-icon-circlesmall-close { background-position: -32px -208px; }
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
.ui-icon-squaresmall-close { background-position: -80px -208px; }
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
/* Misc visuals
----------------------------------*/
/* Corner radius */
.ui-corner-tl { -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; border-top-left-radius: 5px; }
.ui-corner-tr { -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; border-top-right-radius: 5px; }
.ui-corner-bl { -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; border-bottom-left-radius: 5px; }
.ui-corner-br { -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; border-bottom-right-radius: 5px; }
.ui-corner-top { -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; border-top-left-radius: 5px; -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; border-top-right-radius: 5px; }
.ui-corner-bottom { -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; border-bottom-left-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; border-bottom-right-radius: 5px; }
.ui-corner-right { -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; border-top-right-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; border-bottom-right-radius: 5px; }
.ui-corner-left { -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; border-top-left-radius: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; border-bottom-left-radius: 5px; }
.ui-corner-all { -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; }
/* Overlays */
.ui-widget-overlay { background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); }
.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -webkit-border-radius: 8px; }

View File

@ -0,0 +1,27 @@
<?php defined("SYSPATH") or die("No direct script access."); ?>
<?
class pear4gallery3_installer {
static function install() {
site_status::warning(t("Initial configuration for the theme may be required. Visit Admin\Appearance\Theme Options before continue."), "gd_init_configuration");
}
static function deactivate() {
site_status::warning(t("DeActivate."), "gd_init_configuration");
//site_status::clear("gd_init_configuration");
}
static function activate() {
site_status::warning(t("Activate."), "gd_init_configuration");
if (module::get_var("gallery", "resize_size") != 800):
module::set_var("gallery", "resize_size", 800);
endif;
if (module::get_var("gallery", "thumb_size") != 200):
module::set_var("gallery", "thumb_size", 200);
endif;
if (module::get_var("gallery", "page_size") != 50):
module::set_var("gallery", "page_size", 50);
endif;
}
}
?>

Binary file not shown.

After

Width:  |  Height:  |  Size: 120 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 778 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 399 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 394 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 B

View File

@ -0,0 +1,278 @@
/* <?php $colorpackName = $gallery->i18n('Ice Carbon Icons'); ?>
* $Revision: 16034 $
*/
#gallery {
color: #999 !important;
background-color: #333 !important;
}
body.gallery { background-color: #333 !important; }
.gbBlock {
border-color: #666 !important;
}
.gcBorder1 { border-color: #6f6f6f !important; }
.gcBorder2 { border-color: #666 !important; }
#gallery a { color: #999 !important; }
#gallery a:hover { color: #ccc !important; }
#gallery a:active { color: #ccc !important; }
.giError { color: #f00 !important; }
.giInfo { color: #888 !important; }
.block-core-PeerList .current { color: #ccc !important; }
table.gbDataTable th { background-color: #4f4f4f !important; }
.gbEven { background-color: #3f3f3f !important; }
.gbOdd { background-color: #393939 !important; }
#gallery select {
background-color: #bbb !important;
-moz-border-top-colors: #AAA #EEE !important;
-moz-border-left-colors: #AAA #EEE !important;
-moz-border-bottom-colors: #AAA #EEE !important;
-moz-border-right-colors: #AAA #EEE !important;
}
#gallery input {
background-color: #bbb !important;
-moz-border-top-colors: #AAA #EEE !important;
-moz-border-left-colors: #AAA #EEE !important;
-moz-border-bottom-colors: #AAA #EEE !important;
-moz-border-right-colors: #AAA #EEE !important;
}
#gallery textarea {
background-color: #bbb !important;
-moz-border-top-colors: #AAA #EEE !important;
-moz-border-left-colors: #AAA #EEE !important;
-moz-border-bottom-colors: #AAA #EEE !important;
-moz-border-right-colors: #AAA #EEE !important;
}
#gallery input:focus, #gallery textarea:focus {
background-color: #ddd !important;
-moz-border-top-colors: #AAA #EEE !important;
-moz-border-left-colors: #AAA #EEE !important;
-moz-border-bottom-colors: #AAA #EEE !important;
-moz-border-right-colors: #AAA #EEE !important;
}
#gallery input.inputTypeSubmit, #gallery input.inputTypeButton { /* No input[type=submit] in IE */
color: #333 !important;
background-color: #eee !important;
}
#gallery input.inputTypeSubmit:hover, #gallery input.inputTypeButton:hover { /* No input[type=submit] in IE */
background-color: #ccc !important;
}
#gallery select:hover {
background-color: #ddd !important;
-moz-border-top-colors: #AAA #EEE !important;
-moz-border-left-colors: #AAA #EEE !important;
-moz-border-bottom-colors: #AAA #EEE !important;
-moz-border-right-colors: #AAA #EEE !important;
}
#gallery div.gbTabBar a {
color: #00a0ff !important;
}
#gsSidebarCol {
border: #666 1px solid !important;
background-color: #333 !important;
}
#gallery img.giThumbnail:hover {
border-color: #333 !important;
background-color: #555 !important;
}
#gallery img.giThumbnailIce {
background-color: #444 !important;
border: 1px solid #666 !important;
}
#gallery img.giThumbnailIce:hover {
background-color: #555 !important;
}
#microThumb img.giThumbnailIce {
border-color: #333 !important;
}
#microThumb img.giThumbnailIce:hover {
border-color: #666 !important;
}
#microThumbCurrent img.giThumbnailIce {
border-color: #333 !important;
}
#microThumbCurrent img.giThumbnailIce:hover {
border-color: #666 !important;
}
#gsNavBar div.gbBreadCrumb {
background-image: none !important;
}
#photoframe {
background-color: #333 !important;
border: 0px solid #ddd !important;
padding: 0px !important;
-moz-border-radius: 0px !important;
}
div.gbTabBar span.o {
padding: 6px 0 5px 16px !important;
background: url('table_left.gif') no-repeat left top !important;
}
#gallery div.gbTabBar span span {
padding: 6px 16px 5px 4px !important;
background: url('table_right.gif') no-repeat right top !important;
}
#gallery div.gbTabBar a {
color: #666 !important;
text-decoration: none !important;
}
#gallery div.gbTabBar a:hover { color: #333 !important; }
#gallery div.gbTabBar span.giSelected {
background-image: url('table_left_on.gif') !important;
}
#gallery div.gbTabBar span.giSelected span {
color: #333;
background-image: url('table_right_on.gif') !important;
}
span.bsw_ButtonEnabled {
color: #ddd !important;
}
.autoCompleteContainer li {
background-color: #333 !important;
}
.buttonAction a {
display: block !important;
width: 20px !important;
height: 20px !important;
margin-left: 7px !important;
}
.buttonAction a {
opacity: 1.0 !important;
filter: alpha(opacity=100) !important; /* IE's opacity*/
}
.buttonAction a:hover {
opacity: 1.0 !important;
filter: alpha(opacity=100)!important; /* IE's opacity*/
}
.iconAlbum {
background: url('album.gif') no-repeat !important;
background-position: center center !important;
}
.buttonClose a {
padding: 0px !important;
width: 15px !important;
height: 15px !important;
background: url('close.gif') no-repeat !important;
margin: 1px !important;
}
.buttonClose a:hover { background-position: -15px 0 !important; }
.buttonFirst a {
width: 15px !important;
height: 15px !important;
margin-left: 0px !important;
background: url('first.gif') no-repeat !important;
}
.buttonFirst a:hover { background-position: -15px 0 !important; }
.buttonLast a {
width: 15px !important;
height: 15px !important;
margin-left: 0px !important;
background: url('last.gif') no-repeat !important;
}
.buttonLast a:hover { background-position: -15px 0 !important; }
.buttonPrev a {
width: 15px !important;
height: 15px !important;
margin-left: 0px !important;
background: url('prev.gif') no-repeat !important;
}
.buttonPrev a:hover { background-position: -15px 0 !important; }
.buttonNext a {
width: 15px !important;
height: 15px !important;
margin-left: 0px !important;
background: url('next.gif') no-repeat !important;
}
.buttonNext a:hover { background-position: -15px 0 !important; }
.buttonExif a {
width: 18px !important;
height: 15px !important;
padding: 0px !important;
background: url('exif.gif') no-repeat !important;
}
.buttonExif a:hover { background-position: -18px 0 !important; }
.buttonPopup a {
width: 17px !important;
height: 15px !important;
padding: 0px !important;
background: url('popup.gif') no-repeat !important;
}
.buttonPopup a:hover { background-position: -17px 0 !important; }
.buttonAddComment a {
width: 15px !important;
height: 15px !important;
padding: 0px !important;
background: url('addcomment.gif') no-repeat !important;
}
.buttonAddComment a:hover { background-position: -15px 0 !important; }
.buttonViewComments a {
width: 15px !important;
height: 15px !important;
padding: 0px !important;
background: url('viewcomments.gif') no-repeat !important;
}
.buttonViewComments a:hover { background-position: -15px 0 !important; }
.buttonViewSlideshow a {
width: 15px !important;
height: 15px !important;
padding: 0px !important;
background: url('slideshow.gif') no-repeat !important;
}
.buttonViewSlideshow a:hover { background-position: -15px 0 !important; }
.buttonCart a {
width: 16px !important;
height: 15px !important;
padding: 0px !important;
background: url('cart.gif') no-repeat !important;
}
.buttonCart a:hover { background-position: -16px 0 !important; }
.buttonShowSidebar a {
width: 15px !important;
height: 15px !important;
padding: 0px !important;
background: url('showsidebar.gif') no-repeat !important;
}
.buttonShowSidebar a:hover { background-position: -15px 0 !important; }

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 161 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 349 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 336 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 480 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 509 B

Some files were not shown because too many files have changed in this diff Show More