From 4a9b45c9c3bbd574103e01debcd84cab1a18352a Mon Sep 17 00:00:00 2001
From: Chad Kieffer
Date: Fri, 22 Apr 2011 12:37:28 -0400
Subject: Created apple-touch-icon and added to wind and admin_wind themes.
---
modules/gallery/controllers/admin_theme_options.php | 4 ++++
modules/gallery/helpers/gallery_installer.php | 8 +++++++-
modules/gallery/helpers/gallery_theme.php | 5 ++++-
modules/gallery/module.info | 2 +-
4 files changed, 16 insertions(+), 3 deletions(-)
(limited to 'modules')
diff --git a/modules/gallery/controllers/admin_theme_options.php b/modules/gallery/controllers/admin_theme_options.php
index 055e063c..840b3b3d 100644
--- a/modules/gallery/controllers/admin_theme_options.php
+++ b/modules/gallery/controllers/admin_theme_options.php
@@ -59,6 +59,7 @@ class Admin_Theme_Options_Controller extends Admin_Controller {
module::set_var("gallery", "footer_text", $form->edit_theme->footer_text->value);
module::set_var("gallery", "show_credits", $form->edit_theme->show_credits->value);
module::set_var("gallery", "favicon_url", $form->edit_theme->favicon_url->value);
+ module::set_var("gallery", "apple_touch_url", $form->edit_theme->apple_touch_url->value);
module::event("theme_edit_form_completed", $form);
@@ -93,6 +94,9 @@ class Admin_Theme_Options_Controller extends Admin_Controller {
$group->input("favicon_url")->label(t("URL (or relative path) to your favicon.ico"))
->id("g-favicon")
->value(module::get_var("gallery", "favicon_url"));
+ $group->input("apple_touch_url")->label(t("URL (or relative path) to your Apple Touch icon"))
+ ->id("g-apple-touch")
+ ->value(module::get_var("gallery", "apple_touch_url"));
$group->textarea("header_text")->label(t("Header text"))->id("g-header-text")
->value(module::get_var("gallery", "header_text"));
$group->textarea("footer_text")->label(t("Footer text"))->id("g-footer-text")
diff --git a/modules/gallery/helpers/gallery_installer.php b/modules/gallery/helpers/gallery_installer.php
index 01c59eaa..cd9526b1 100644
--- a/modules/gallery/helpers/gallery_installer.php
+++ b/modules/gallery/helpers/gallery_installer.php
@@ -304,6 +304,7 @@ class gallery_installer {
module::set_var("gallery", "maintenance_mode", 0);
module::set_var("gallery", "visible_title_length", 15);
module::set_var("gallery", "favicon_url", "lib/images/favicon.ico");
+ module::set_var("gallery", "apple_touch_url", "lib/images/apple-touch-icon.png");
module::set_var("gallery", "email_from", "");
module::set_var("gallery", "email_reply_to", "");
module::set_var("gallery", "email_line_length", 70);
@@ -311,7 +312,7 @@ class gallery_installer {
module::set_var("gallery", "show_user_profiles_to", "registered_users");
module::set_var("gallery", "extra_binary_paths", "/usr/local/bin:/opt/local/bin:/opt/bin");
- module::set_version("gallery", 46);
+ module::set_version("gallery", 47);
}
static function upgrade($version) {
@@ -677,6 +678,11 @@ class gallery_installer {
module::set_var("gallery", "upgrade_checker_auto_enabled", true);
module::set_version("gallery", $version = 46);
}
+
+ if ($version == 46) {
+ module::set_var("gallery", "apple_touch_url", "lib/images/apple-touch-icon.png");
+ module::set_version("gallery", $version = 47);
+ }
}
static function uninstall() {
diff --git a/modules/gallery/helpers/gallery_theme.php b/modules/gallery/helpers/gallery_theme.php
index c4a82390..aa3fb7bb 100644
--- a/modules/gallery/helpers/gallery_theme.php
+++ b/modules/gallery/helpers/gallery_theme.php
@@ -60,11 +60,14 @@ class gallery_theme_Core {
if ($session->get("debug")) {
$buf .= $theme->css("debug.css");
}
+ if (in_array(URI::instance()->segment(1), array("admin", "admin/dashboard"))) {
+ $buf .= $theme->script("jquery.jcarousel.min.js");
+ }
if ($session->get("l10n_mode", false)) {
$buf .= $theme->css("l10n_client.css");
$buf .= $theme->script("jquery.cookie.js");
- $buf .=$theme->script("l10n_client.js");
+ $buf .= $theme->script("l10n_client.js");
}
return $buf;
}
diff --git a/modules/gallery/module.info b/modules/gallery/module.info
index 4c0c8866..aa1dc341 100644
--- a/modules/gallery/module.info
+++ b/modules/gallery/module.info
@@ -1,3 +1,3 @@
name = "Gallery 3"
description = "Gallery core application"
-version = 46
+version = 47
--
cgit v1.2.3
From 3bce5d00eef5cd6c255ab63bd7391de4557a1784 Mon Sep 17 00:00:00 2001
From: Chad Kieffer
Date: Fri, 22 Apr 2011 12:50:21 -0400
Subject: Renamed apple_touch_url to apple_touch_icon_url.
---
installer/install.sql | 2 +-
modules/gallery/controllers/admin_theme_options.php | 6 +++---
modules/gallery/helpers/gallery_installer.php | 4 ++--
themes/admin_wind/views/admin.html.php | 2 +-
themes/wind/views/page.html.php | 2 +-
5 files changed, 8 insertions(+), 8 deletions(-)
(limited to 'modules')
diff --git a/installer/install.sql b/installer/install.sql
index 06d2fcde..c45b421b 100644
--- a/installer/install.sql
+++ b/installer/install.sql
@@ -406,7 +406,7 @@ INSERT INTO {vars} VALUES (NULL,'gallery','admin_area_timeout','5400');
INSERT INTO {vars} VALUES (NULL,'gallery','maintenance_mode','0');
INSERT INTO {vars} VALUES (NULL,'gallery','visible_title_length','15');
INSERT INTO {vars} VALUES (NULL,'gallery','favicon_url','lib/images/favicon.ico');
-INSERT INTO {vars} VALUES (NULL,'gallery','apple_touch_url','lib/images/apple-touch-icon.png');
+INSERT INTO {vars} VALUES (NULL,'gallery','apple_touch_icon_url','lib/images/apple-touch-icon.png');
INSERT INTO {vars} VALUES (NULL,'gallery','email_from','unknown@unknown.com');
INSERT INTO {vars} VALUES (NULL,'gallery','email_reply_to','unknown@unknown.com');
INSERT INTO {vars} VALUES (NULL,'gallery','email_line_length','70');
diff --git a/modules/gallery/controllers/admin_theme_options.php b/modules/gallery/controllers/admin_theme_options.php
index 840b3b3d..cb46da90 100644
--- a/modules/gallery/controllers/admin_theme_options.php
+++ b/modules/gallery/controllers/admin_theme_options.php
@@ -59,7 +59,7 @@ class Admin_Theme_Options_Controller extends Admin_Controller {
module::set_var("gallery", "footer_text", $form->edit_theme->footer_text->value);
module::set_var("gallery", "show_credits", $form->edit_theme->show_credits->value);
module::set_var("gallery", "favicon_url", $form->edit_theme->favicon_url->value);
- module::set_var("gallery", "apple_touch_url", $form->edit_theme->apple_touch_url->value);
+ module::set_var("gallery", "apple_touch_icon_url", $form->edit_theme->apple_touch_icon_url->value);
module::event("theme_edit_form_completed", $form);
@@ -94,9 +94,9 @@ class Admin_Theme_Options_Controller extends Admin_Controller {
$group->input("favicon_url")->label(t("URL (or relative path) to your favicon.ico"))
->id("g-favicon")
->value(module::get_var("gallery", "favicon_url"));
- $group->input("apple_touch_url")->label(t("URL (or relative path) to your Apple Touch icon"))
+ $group->input("apple_touch_icon_url")->label(t("URL (or relative path) to your Apple Touch icon"))
->id("g-apple-touch")
- ->value(module::get_var("gallery", "apple_touch_url"));
+ ->value(module::get_var("gallery", "apple_touch_icon_url"));
$group->textarea("header_text")->label(t("Header text"))->id("g-header-text")
->value(module::get_var("gallery", "header_text"));
$group->textarea("footer_text")->label(t("Footer text"))->id("g-footer-text")
diff --git a/modules/gallery/helpers/gallery_installer.php b/modules/gallery/helpers/gallery_installer.php
index cd9526b1..20de1fea 100644
--- a/modules/gallery/helpers/gallery_installer.php
+++ b/modules/gallery/helpers/gallery_installer.php
@@ -304,7 +304,7 @@ class gallery_installer {
module::set_var("gallery", "maintenance_mode", 0);
module::set_var("gallery", "visible_title_length", 15);
module::set_var("gallery", "favicon_url", "lib/images/favicon.ico");
- module::set_var("gallery", "apple_touch_url", "lib/images/apple-touch-icon.png");
+ module::set_var("gallery", "apple_touch_icon_url", "lib/images/apple-touch-icon.png");
module::set_var("gallery", "email_from", "");
module::set_var("gallery", "email_reply_to", "");
module::set_var("gallery", "email_line_length", 70);
@@ -680,7 +680,7 @@ class gallery_installer {
}
if ($version == 46) {
- module::set_var("gallery", "apple_touch_url", "lib/images/apple-touch-icon.png");
+ module::set_var("gallery", "apple_touch_icon_url", "lib/images/apple-touch-icon.png");
module::set_version("gallery", $version = 47);
}
}
diff --git a/themes/admin_wind/views/admin.html.php b/themes/admin_wind/views/admin.html.php
index 0d35ac97..12301e02 100644
--- a/themes/admin_wind/views/admin.html.php
+++ b/themes/admin_wind/views/admin.html.php
@@ -16,7 +16,7 @@
href="= url::file(module::get_var("gallery", "favicon_url")) ?>"
type="image/x-icon" />
" />
+ href="= url::file(module::get_var("gallery", "apple_touch_icon_url")) ?>" />
= $theme->script("jquery.js") ?>
= $theme->script("jquery.form.js") ?>
diff --git a/themes/wind/views/page.html.php b/themes/wind/views/page.html.php
index 8b9ddf8a..1c67ff9d 100644
--- a/themes/wind/views/page.html.php
+++ b/themes/wind/views/page.html.php
@@ -22,7 +22,7 @@
href="= url::file(module::get_var("gallery", "favicon_url")) ?>"
type="image/x-icon" />
" />
+ 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) ?>
--
cgit v1.2.3
From 7deed8654549690ec7d5c7d9dd5ad479d9f0fdd8 Mon Sep 17 00:00:00 2001
From: Chad Kieffer
Date: Fri, 22 Apr 2011 12:54:25 -0400
Subject: Removed incomplete jquery carousel code
---
modules/gallery/helpers/gallery_theme.php | 3 ---
1 file changed, 3 deletions(-)
(limited to 'modules')
diff --git a/modules/gallery/helpers/gallery_theme.php b/modules/gallery/helpers/gallery_theme.php
index aa3fb7bb..e07839d9 100644
--- a/modules/gallery/helpers/gallery_theme.php
+++ b/modules/gallery/helpers/gallery_theme.php
@@ -60,9 +60,6 @@ class gallery_theme_Core {
if ($session->get("debug")) {
$buf .= $theme->css("debug.css");
}
- if (in_array(URI::instance()->segment(1), array("admin", "admin/dashboard"))) {
- $buf .= $theme->script("jquery.jcarousel.min.js");
- }
if ($session->get("l10n_mode", false)) {
$buf .= $theme->css("l10n_client.css");
--
cgit v1.2.3
From 526859d9605d137ebe053ecbd80f46ca6a331194 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Fri, 22 Apr 2011 13:56:32 -0700
Subject: Do simple transliteration when converting filenames to slugs, but
check to see if the transliteration module is available and use a more
complex transliteration if possible. Fixes #1668.
---
modules/gallery/helpers/item.php | 12 +++++++++++-
modules/gallery/models/item.php | 4 +---
modules/gallery/tests/Item_Helper_Test.php | 4 ++++
3 files changed, 16 insertions(+), 4 deletions(-)
(limited to 'modules')
diff --git a/modules/gallery/helpers/item.php b/modules/gallery/helpers/item.php
index 1a5c631e..7e779544 100644
--- a/modules/gallery/helpers/item.php
+++ b/modules/gallery/helpers/item.php
@@ -152,8 +152,18 @@ class item_Core {
* @param string $filename
*/
static function convert_filename_to_slug($filename) {
- $result = pathinfo($filename, PATHINFO_FILENAME);
+ $result = str_replace("&", "-and-", $filename);
+ $result = str_replace(" ", "-", $result);
+
+ // It's not easy to extend the text helper since it's called by the Input class which is
+ // referenced in hooks/init_gallery, so it's
+ if (class_exists("transliterate")) {
+ $result = transliterate::utf8_to_ascii($result);
+ } else {
+ $result = text::transliterate_to_ascii($result);
+ }
$result = preg_replace("/[^A-Za-z0-9-_]+/", "-", $result);
+ $result = preg_replace("/-+/", "-", $result);
return trim($result, "-");
}
diff --git a/modules/gallery/models/item.php b/modules/gallery/models/item.php
index 8f4bc5e4..f46db696 100644
--- a/modules/gallery/models/item.php
+++ b/modules/gallery/models/item.php
@@ -336,9 +336,7 @@ class Item_Model_Core extends ORM_MPTT {
// Make an url friendly slug from the name, if necessary
if (empty($this->slug)) {
- $tmp = pathinfo($this->name, PATHINFO_FILENAME);
- $tmp = preg_replace("/[^A-Za-z0-9-_]+/", "-", $tmp);
- $this->slug = trim($tmp, "-");
+ $this->slug = item::convert_filename_to_slug($this->name);
// If the filename is all invalid characters, then the slug may be empty here. Pick a
// random value.
diff --git a/modules/gallery/tests/Item_Helper_Test.php b/modules/gallery/tests/Item_Helper_Test.php
index 4d5aed41..2fde7cc0 100644
--- a/modules/gallery/tests/Item_Helper_Test.php
+++ b/modules/gallery/tests/Item_Helper_Test.php
@@ -49,6 +49,10 @@ class Item_Helper_Test extends Gallery_Unit_Test_Case {
public function convert_filename_to_slug_test() {
$this->assert_equal("foo", item::convert_filename_to_slug("{[foo]}"));
$this->assert_equal("foo-bar", item::convert_filename_to_slug("{[foo!@#!$@#^$@($!(@bar]}"));
+ $this->assert_equal("english-text", item::convert_filename_to_slug("english text"));
+ $this->assert_equal("new-line", item::convert_filename_to_slug("new \n line"));
+ $this->assert_equal("foo-and-bar", item::convert_filename_to_slug("foo&bar"));
+ $this->assert_equal("special", item::convert_filename_to_slug("šṗëçîąļ"));
}
public function move_test() {
--
cgit v1.2.3
From d7e299015222ba20ed6df7c572fb8bca7e252010 Mon Sep 17 00:00:00 2001
From: Tim Almdal
Date: Fri, 22 Apr 2011 15:02:30 -0700
Subject: Insure that the number of items for a page is greater than zero.
Fixes ticket 1644.
---
modules/gallery/controllers/admin_theme_options.php | 9 +++++++++
1 file changed, 9 insertions(+)
(limited to 'modules')
diff --git a/modules/gallery/controllers/admin_theme_options.php b/modules/gallery/controllers/admin_theme_options.php
index cb46da90..a968a56d 100644
--- a/modules/gallery/controllers/admin_theme_options.php
+++ b/modules/gallery/controllers/admin_theme_options.php
@@ -78,8 +78,10 @@ class Admin_Theme_Options_Controller extends Admin_Controller {
$group = $form->group("edit_theme")->label(t("Theme layout"));
$group->input("page_size")->label(t("Items per page"))->id("g-page-size")
->rules("required|valid_digit")
+ ->callback(array($this, "_valididate_page_size"))
->error_messages("required", t("You must enter a number"))
->error_messages("valid_digit", t("You must enter a number"))
+ ->error_messages("valid_min_value", t("The value must be greater than zero"))
->value(module::get_var("gallery", "page_size"));
$group->input("thumb_size")->label(t("Thumbnail size (in pixels)"))->id("g-thumb-size")
->rules("required|valid_digit")
@@ -110,5 +112,12 @@ class Admin_Theme_Options_Controller extends Admin_Controller {
$group->submit("")->value(t("Save"));
return $form;
}
+
+ function _valididate_page_size($input) {
+ if ($input->value < 1) {
+ $input->add_error("valid_min_value", true);
+ }
+
+ }
}
--
cgit v1.2.3
From 6f916e49d5b431c2c1961a13d1a61fef8c02d628 Mon Sep 17 00:00:00 2001
From: Andy Lindeman
Date: Fri, 22 Apr 2011 18:15:17 -0400
Subject: Allow timezone to be configurable
* Fixes #1637
* New advanced setting gallery/timezone
* Default setting comes from PHP
---
modules/gallery/config/locale.php | 8 ++------
modules/gallery/helpers/gallery_installer.php | 7 +++++++
modules/gallery/module.info | 2 +-
3 files changed, 10 insertions(+), 7 deletions(-)
(limited to 'modules')
diff --git a/modules/gallery/config/locale.php b/modules/gallery/config/locale.php
index 0509e45f..13de9098 100644
--- a/modules/gallery/config/locale.php
+++ b/modules/gallery/config/locale.php
@@ -29,14 +29,10 @@
$config['language'] = array('en_US', 'English_United States');
/**
- * Locale timezone. Defaults to use the server timezone.
+ * Locale timezone. Set in 'Advanced' settings, falling back to the server's zone.
* @see http://php.net/timezones
*/
-$config['timezone'] = ini_get('date.timezone');
-if (empty($config['timezone'])) {
- // This is a required field. Pick something as a default.
- $config['timezone'] = "America/Los_Angeles";
-}
+$config['timezone'] = module::get_var("gallery", "timezone", date_default_timezone_get());
// i18n settings
diff --git a/modules/gallery/helpers/gallery_installer.php b/modules/gallery/helpers/gallery_installer.php
index 20de1fea..2cb04356 100644
--- a/modules/gallery/helpers/gallery_installer.php
+++ b/modules/gallery/helpers/gallery_installer.php
@@ -683,6 +683,13 @@ class gallery_installer {
module::set_var("gallery", "apple_touch_icon_url", "lib/images/apple-touch-icon.png");
module::set_version("gallery", $version = 47);
}
+
+ if ($version == 47) {
+ // Add configuration variable to set timezone. Defaults to the currently
+ // used timezone (from PHP configuration).
+ module::set_var("gallery", "timezone", Kohana::config('locale.timezone'));
+ module::set_version("gallery", $version = 48);
+ }
}
static function uninstall() {
diff --git a/modules/gallery/module.info b/modules/gallery/module.info
index aa1dc341..807d08fd 100644
--- a/modules/gallery/module.info
+++ b/modules/gallery/module.info
@@ -1,3 +1,3 @@
name = "Gallery 3"
description = "Gallery core application"
-version = 47
+version = 48
--
cgit v1.2.3
From b07bc1af082ea097adb77d2e78e69af3e20d8d29 Mon Sep 17 00:00:00 2001
From: Tim Almdal
Date: Fri, 22 Apr 2011 16:15:56 -0700
Subject: Allow the administrator to set the number of tags to display in the
cloud via the advanced settings. Fixes ticket #1649.
---
installer/install.sql | 143 +++++++++++++++++-----------------
modules/tag/controllers/tags.php | 3 +-
modules/tag/helpers/tag_block.php | 2 +-
modules/tag/helpers/tag_installer.php | 7 +-
modules/tag/module.info | 2 +-
5 files changed, 82 insertions(+), 75 deletions(-)
(limited to 'modules')
diff --git a/installer/install.sql b/installer/install.sql
index 5dc09cca..ff29e1a0 100644
--- a/installer/install.sql
+++ b/installer/install.sql
@@ -1,6 +1,6 @@
DROP TABLE IF EXISTS {access_caches};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {access_caches} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`item_id` int(9) DEFAULT NULL,
@@ -13,11 +13,11 @@ CREATE TABLE {access_caches} (
PRIMARY KEY (`id`),
KEY `item_id` (`item_id`)
) AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {access_caches} VALUES (1,1,'1','0','0','1','0','0');
DROP TABLE IF EXISTS {access_intents};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {access_intents} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`item_id` int(9) DEFAULT NULL,
@@ -31,11 +31,11 @@ CREATE TABLE {access_intents} (
`add_2` binary(1) DEFAULT NULL,
PRIMARY KEY (`id`)
) AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {access_intents} VALUES (1,1,'1','1','0','0','1','1','0','0');
DROP TABLE IF EXISTS {caches};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {caches} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`key` varchar(255) NOT NULL,
@@ -46,10 +46,10 @@ CREATE TABLE {caches} (
UNIQUE KEY `key` (`key`),
KEY `tags` (`tags`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {comments};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {comments} (
`author_id` int(9) DEFAULT NULL,
`created` int(9) NOT NULL,
@@ -75,10 +75,10 @@ CREATE TABLE {comments} (
`updated` int(9) NOT NULL,
PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {failed_auths};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {failed_auths} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`count` int(9) NOT NULL,
@@ -86,10 +86,10 @@ CREATE TABLE {failed_auths} (
`time` int(9) NOT NULL,
PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {graphics_rules};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {graphics_rules} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`active` tinyint(1) DEFAULT '0',
@@ -100,12 +100,12 @@ CREATE TABLE {graphics_rules} (
`target` varchar(32) NOT NULL,
PRIMARY KEY (`id`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {graphics_rules} VALUES (1,1,'a:3:{s:5:\"width\";i:200;s:6:\"height\";i:200;s:6:\"master\";i:2;}','gallery','gallery_graphics::resize',100,'thumb');
INSERT INTO {graphics_rules} VALUES (2,1,'a:3:{s:5:\"width\";i:640;s:6:\"height\";i:640;s:6:\"master\";i:2;}','gallery','gallery_graphics::resize',100,'resize');
DROP TABLE IF EXISTS {groups};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {groups} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`name` char(64) DEFAULT NULL,
@@ -113,25 +113,25 @@ CREATE TABLE {groups} (
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {groups} VALUES (1,'Everybody',1);
INSERT INTO {groups} VALUES (2,'Registered Users',1);
DROP TABLE IF EXISTS {groups_users};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {groups_users} (
`group_id` int(9) NOT NULL,
`user_id` int(9) NOT NULL,
PRIMARY KEY (`group_id`,`user_id`),
UNIQUE KEY `user_id` (`user_id`,`group_id`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {groups_users} VALUES (1,1);
INSERT INTO {groups_users} VALUES (1,2);
INSERT INTO {groups_users} VALUES (2,2);
DROP TABLE IF EXISTS {incoming_translations};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {incoming_translations} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`key` char(32) NOT NULL,
@@ -143,10 +143,10 @@ CREATE TABLE {incoming_translations} (
UNIQUE KEY `key` (`key`,`locale`),
KEY `locale_key` (`locale`,`key`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {items};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {items} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`album_cover_item_id` int(9) DEFAULT NULL,
@@ -188,11 +188,11 @@ CREATE TABLE {items} (
KEY `weight` (`weight`),
KEY `left_ptr` (`left_ptr`)
) AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {items} VALUES (1,NULL,NULL,UNIX_TIMESTAMP(),'',NULL,1,1,NULL,NULL,2,0,NULL,'','',1,NULL,NULL,2,NULL,'weight','ASC',1,NULL,NULL,'Gallery','album',UNIX_TIMESTAMP(),0,1,NULL,'1','1');
DROP TABLE IF EXISTS {items_tags};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {items_tags} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`item_id` int(9) NOT NULL,
@@ -201,10 +201,10 @@ CREATE TABLE {items_tags} (
KEY `tag_id` (`tag_id`,`id`),
KEY `item_id` (`item_id`,`id`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {logs};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {logs} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`category` varchar(64) DEFAULT NULL,
@@ -217,10 +217,10 @@ CREATE TABLE {logs} (
`user_id` int(9) DEFAULT '0',
PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {messages};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {messages} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`key` varchar(255) DEFAULT NULL,
@@ -229,10 +229,10 @@ CREATE TABLE {messages} (
PRIMARY KEY (`id`),
UNIQUE KEY `key` (`key`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {modules};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {modules} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`active` tinyint(1) DEFAULT '0',
@@ -243,7 +243,7 @@ CREATE TABLE {modules} (
UNIQUE KEY `name` (`name`),
KEY `weight` (`weight`)
) AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {modules} VALUES (1,1,'gallery',47,1);
INSERT INTO {modules} VALUES (2,1,'user',3,2);
INSERT INTO {modules} VALUES (3,1,'comment',4,3);
@@ -252,10 +252,10 @@ INSERT INTO {modules} VALUES (5,1,'info',2,5);
INSERT INTO {modules} VALUES (6,1,'rss',1,6);
INSERT INTO {modules} VALUES (7,1,'search',1,7);
INSERT INTO {modules} VALUES (8,1,'slideshow',2,8);
-INSERT INTO {modules} VALUES (9,1,'tag',2,9);
+INSERT INTO {modules} VALUES (9,1,'tag',3,9);
DROP TABLE IF EXISTS {outgoing_translations};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {outgoing_translations} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`base_revision` int(9) DEFAULT NULL,
@@ -267,10 +267,10 @@ CREATE TABLE {outgoing_translations} (
UNIQUE KEY `key` (`key`,`locale`),
KEY `locale_key` (`locale`,`key`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {permissions};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {permissions} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`display_name` varchar(64) DEFAULT NULL,
@@ -278,14 +278,14 @@ CREATE TABLE {permissions} (
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {permissions} VALUES (1,'View','view');
INSERT INTO {permissions} VALUES (2,'View full size','view_full');
INSERT INTO {permissions} VALUES (3,'Edit','edit');
INSERT INTO {permissions} VALUES (4,'Add','add');
DROP TABLE IF EXISTS {search_records};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {search_records} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`item_id` int(9) DEFAULT NULL,
@@ -295,21 +295,21 @@ CREATE TABLE {search_records} (
KEY `item_id` (`item_id`),
FULLTEXT KEY `data` (`data`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {search_records} VALUES (1,1,0,' Gallery');
DROP TABLE IF EXISTS {sessions};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {sessions} (
`session_id` varchar(127) NOT NULL,
`data` text NOT NULL,
`last_activity` int(10) unsigned NOT NULL,
PRIMARY KEY (`session_id`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {tags};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {tags} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`name` varchar(128) NOT NULL,
@@ -317,10 +317,10 @@ CREATE TABLE {tags} (
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {tasks};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {tasks} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`callback` varchar(128) DEFAULT NULL,
@@ -335,10 +335,10 @@ CREATE TABLE {tasks} (
PRIMARY KEY (`id`),
KEY `owner_id` (`owner_id`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {themes};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {themes} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`name` varchar(64) DEFAULT NULL,
@@ -346,12 +346,12 @@ CREATE TABLE {themes} (
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {themes} VALUES (1,'wind',1);
INSERT INTO {themes} VALUES (2,'admin_wind',1);
DROP TABLE IF EXISTS {users};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {users} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`name` varchar(32) NOT NULL,
@@ -369,12 +369,12 @@ CREATE TABLE {users} (
UNIQUE KEY `name` (`name`),
UNIQUE KEY `hash` (`hash`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {users} VALUES (1,'guest','Guest User','',0,0,NULL,0,1,NULL,NULL,NULL);
INSERT INTO {users} VALUES (2,'admin','Gallery Administrator','',0,0,'unknown@unknown.com',1,0,NULL,NULL,NULL);
DROP TABLE IF EXISTS {vars};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {vars} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`module_name` varchar(64) NOT NULL,
@@ -382,8 +382,8 @@ CREATE TABLE {vars} (
`value` text,
PRIMARY KEY (`id`),
UNIQUE KEY `module_name` (`module_name`,`name`)
-) AUTO_INCREMENT=41 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+) AUTO_INCREMENT=42 DEFAULT CHARSET=utf8;
+SET character_set_client = @saved_cs_client;
INSERT INTO {vars} VALUES (NULL,'gallery','active_site_theme','wind');
INSERT INTO {vars} VALUES (NULL,'gallery','active_admin_theme','admin_wind');
INSERT INTO {vars} VALUES (NULL,'gallery','page_size','9');
@@ -424,3 +424,4 @@ INSERT INTO {vars} VALUES (NULL,'info','show_owner','1');
INSERT INTO {vars} VALUES (NULL,'info','show_name','1');
INSERT INTO {vars} VALUES (NULL,'info','show_captured','1');
INSERT INTO {vars} VALUES (NULL,'slideshow','max_scale','0');
+INSERT INTO {vars} VALUES (NULL,'tag','tag_cloud_size','30');
diff --git a/modules/tag/controllers/tags.php b/modules/tag/controllers/tags.php
index fe6d747b..bf41c4df 100644
--- a/modules/tag/controllers/tags.php
+++ b/modules/tag/controllers/tags.php
@@ -22,7 +22,8 @@ class Tags_Controller extends Controller {
// Far from perfection, but at least require view permission for the root album
$album = ORM::factory("item", 1);
access::required("view", $album);
- print tag::cloud(30);
+
+ print tag::cloud(module::get_var("tag", "tag_cloud_size", 30));
}
public function create($item_id) {
diff --git a/modules/tag/helpers/tag_block.php b/modules/tag/helpers/tag_block.php
index 8df58a6e..69a9a1c4 100644
--- a/modules/tag/helpers/tag_block.php
+++ b/modules/tag/helpers/tag_block.php
@@ -30,7 +30,7 @@ class tag_block_Core {
$block->css_id = "g-tag";
$block->title = t("Popular tags");
$block->content = new View("tag_block.html");
- $block->content->cloud = tag::cloud(30);
+ $block->content->cloud = tag::cloud(module::get_var("tag", "tag_cloud_size", 30));
if ($theme->item() && $theme->page_subtype() != "tag" && access::can("edit", $theme->item())) {
$controller = new Tags_Controller();
diff --git a/modules/tag/helpers/tag_installer.php b/modules/tag/helpers/tag_installer.php
index 16ad1239..66a78b91 100644
--- a/modules/tag/helpers/tag_installer.php
+++ b/modules/tag/helpers/tag_installer.php
@@ -36,7 +36,8 @@ class tag_installer {
KEY(`tag_id`, `id`),
KEY(`item_id`, `id`))
DEFAULT CHARSET=utf8;");
- module::set_version("tag", 2);
+ module::set_var("tag", "tag_cloud_size", 30);
+ module::set_version("tag", 3);
}
static function upgrade($version) {
@@ -45,6 +46,10 @@ class tag_installer {
$db->query("ALTER TABLE {tags} MODIFY COLUMN `name` VARCHAR(128)");
module::set_version("tag", $version = 2);
}
+ if ($version == 2) {
+ module::set_var("tag", "tag_cloud_size", 30);
+ module::set_version("tag", $version = 3);
+ }
}
static function uninstall() {
diff --git a/modules/tag/module.info b/modules/tag/module.info
index 8851d119..d9d34386 100644
--- a/modules/tag/module.info
+++ b/modules/tag/module.info
@@ -1,3 +1,3 @@
name = "Tags"
description = "Allows users to tag photos and albums"
-version = 2
+version = 3
--
cgit v1.2.3
From 5040adebb5c4e1e491fbb6c3b98783f5809020a3 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Fri, 22 Apr 2011 16:30:37 -0700
Subject: Totally revamp the G2 Import UI to make it sexxxy. Fixes #1683.
---
modules/g2_import/controllers/admin_g2_import.php | 44 ++++--
modules/g2_import/helpers/g2_import.php | 21 ++-
modules/g2_import/helpers/g2_import_task.php | 2 +-
modules/g2_import/views/admin_g2_import.html.php | 162 +++++++++++++---------
4 files changed, 151 insertions(+), 78 deletions(-)
(limited to 'modules')
diff --git a/modules/g2_import/controllers/admin_g2_import.php b/modules/g2_import/controllers/admin_g2_import.php
index 33186fb5..55a75a3b 100644
--- a/modules/g2_import/controllers/admin_g2_import.php
+++ b/modules/g2_import/controllers/admin_g2_import.php
@@ -24,23 +24,42 @@ class Admin_g2_import_Controller extends Admin_Controller {
g2_import::init();
}
- if (class_exists("GalleryCoreApi")) {
- $g2_stats = g2_import::stats();
- $g2_sizes = g2_import::common_sizes();
- }
-
$view = new Admin_View("admin.html");
$view->page_title = t("Gallery 2 import");
$view->content = new View("admin_g2_import.html");
+
+ if (class_exists("GalleryCoreApi")) {
+ $view->content->g2_stats = $g2_stats = g2_import::g2_stats();
+ $view->content->g3_stats = $g3_stats = g2_import::g3_stats();
+ $view->content->g2_sizes = g2_import::common_sizes();
+ $view->content->g2_version = g2_import::version();
+
+ // Don't count tags because we don't track them in g2_map
+ $view->content->g2_resource_count =
+ $g2_stats["users"] + $g2_stats["groups"] + $g2_stats["albums"] +
+ $g2_stats["photos"] + $g2_stats["movies"] + $g2_stats["comments"];
+ $view->content->g3_resource_count =
+ $g3_stats["user"] + $g3_stats["group"] + $g3_stats["album"] +
+ $g3_stats["item"] + $g3_stats["comment"] + $g3_stats["tag"];
+ }
+
$view->content->form = $this->_get_import_form();
$view->content->version = "";
+ $view->content->thumb_size = module::get_var("gallery", "thumb_size");
+ $view->content->resize_size = module::get_var("gallery", "resize_size");
if (g2_import::is_initialized()) {
- $view->content->g2_stats = $g2_stats;
- $view->content->g2_sizes = $g2_sizes;
- $view->content->thumb_size = module::get_var("gallery", "thumb_size");
- $view->content->resize_size = module::get_var("gallery", "resize_size");
- $view->content->version = g2_import::version();
+ if ((bool)ini_get("eaccelerator.enable") || (bool)ini_get("xcache.cacher")) {
+ message::warning(t("The eAccelerator and XCache PHP performance extensions are known to cause issues. If you're using either of those and are having problems, please disable them while you do your import. Add the following lines: %lines to gallery3/.htaccess and remove them when the import is done.", array("lines" => "\n\n php_value eaccelerator.enable 0\n php_value xcache.cacher off\n php_value xcache.optimizer off\n\n")));
+ }
+
+ foreach (array("notification", "search", "exif") as $module_id) {
+ if (module::is_active($module_id)) {
+ message::warning(
+ t("Deactivating the %module_id module during your import will make it faster",
+ array("url" => url::site("admin/modules"), "module_id" => $module_id)));
+ }
+ }
} else if (g2_import::is_configured()) {
$view->content->form->configure_g2_import->embed_path->add_error("invalid", 1);
}
@@ -76,14 +95,15 @@ class Admin_g2_import_Controller extends Admin_Controller {
}
private function _get_import_form() {
+ $embed_path = module::get_var("g2_import", "embed_path", "");
$form = new Forge(
"admin/g2_import/save", "", "post", array("id" => "g-admin-configure-g2-import-form"));
$group = $form->group("configure_g2_import")->label(t("Configure Gallery 2 Import"));
$group->input("embed_path")->label(t("Filesystem path to your Gallery 2 embed.php file"))
- ->value(module::get_var("g2_import", "embed_path", ""));
+ ->value($embed_path);
$group->embed_path->error_messages(
"invalid", t("The path you entered is not a Gallery 2 installation."));
- $group->submit("")->value(t("Save"));
+ $group->submit("")->value($embed_path ? t("Change") : t("Continue"));
return $form;
}
}
\ No newline at end of file
diff --git a/modules/g2_import/helpers/g2_import.php b/modules/g2_import/helpers/g2_import.php
index 22fb68c6..23fb29e5 100644
--- a/modules/g2_import/helpers/g2_import.php
+++ b/modules/g2_import/helpers/g2_import.php
@@ -219,7 +219,7 @@ class g2_import_Core {
* Return a set of statistics about the number of users, groups, albums, photos, movies and
* comments available for import from the Gallery 2 instance.
*/
- static function stats() {
+ static function g2_stats() {
global $gallery;
$root_album_id = g2(GalleryCoreApi::getDefaultAlbumId());
$stats["users"] = g2(GalleryCoreApi::fetchUserCount());
@@ -247,6 +247,25 @@ class g2_import_Core {
return $stats;
}
+ /**
+ * Return a set of statistics about the number of users, groups, albums, photos, movies and
+ * comments already imported into the Gallery 3 instance.
+ */
+ static function g3_stats() {
+ $g3_stats = array(
+ "album" => 0, "comment" => 0, "item" => 0, "user" => 0, "group" => 0, "tag" => 0);
+ foreach (db::build()
+ ->select("resource_type")
+ ->select(array("C" => 'COUNT("*")'))
+ ->from("g2_maps")
+ ->where("resource_type", "IN", array("album", "comment", "item", "user", "group"))
+ ->group_by("resource_type")
+ ->execute() as $row) {
+ $g3_stats[$row->resource_type] = $row->C;
+ }
+ return $g3_stats;
+ }
+
/**
* Import a single group.
*/
diff --git a/modules/g2_import/helpers/g2_import_task.php b/modules/g2_import/helpers/g2_import_task.php
index 6bda8f17..5e908676 100644
--- a/modules/g2_import/helpers/g2_import_task.php
+++ b/modules/g2_import/helpers/g2_import_task.php
@@ -56,7 +56,7 @@ class g2_import_task_Core {
$mode = $task->get("mode");
$queue = $task->get("queue");
if (!isset($mode)) {
- $stats = g2_import::stats();
+ $stats = g2_import::g2_stats();
$stats["items"] = $stats["photos"] + $stats["movies"];
unset($stats["photos"]);
unset($stats["movies"]);
diff --git a/modules/g2_import/views/admin_g2_import.html.php b/modules/g2_import/views/admin_g2_import.html.php
index cb13363a..20b243d5 100644
--- a/modules/g2_import/views/admin_g2_import.html.php
+++ b/modules/g2_import/views/admin_g2_import.html.php
@@ -5,20 +5,43 @@
= t("Import your Gallery 2 users, photos, movies, comments and tags into your new Gallery 3 installation.") ?>
-
- = $form ?>
-
-
-
- if (g2_import::is_initialized()): ?>
-
-
= t("Import") ?>
-
-
- = t("Gallery version %version detected", array("version" => $version)) ?>
+
+
+
+
+ = $form ?>
+
+
+ if (isset($g2_version)): ?>
+
+
+ = t("Gallery version %version detected", array("version" => $g2_version)) ?>
if ($g2_sizes["thumb"]["size"] && $thumb_size != $g2_sizes["thumb"]["size"]): ?>
-
+
= t("Your most common thumbnail size in Gallery 2 is %g2_pixels pixels, but your Gallery 3 thumbnail size is set to %g3_pixels pixels. Using the same value will speed up your import.",
array("g2_pixels" => $g2_sizes["thumb"]["size"],
"g3_pixels" => $thumb_size,
@@ -27,73 +50,84 @@
endif ?>
if ($g2_sizes["resize"]["size"] && $resize_size != $g2_sizes["resize"]["size"]): ?>
-
+
= t("Your most common intermediate size in Gallery 2 is %g2_pixels pixels, but your Gallery 3 intermediate size is set to %g3_pixels pixels. Using the same value will speed up your import.",
- array("g2_pixels" => $g2_sizes["resize"]["size"],
- "g3_pixels" => $resize_size,
- "url" => html::mark_clean(url::site("admin/theme_options")))) ?>
+ array("g2_pixels" => $g2_sizes["resize"]["size"],
+ "g3_pixels" => $resize_size,
+ "url" => html::mark_clean(url::site("admin/theme_options")))) ?>
endif ?>
-
- = t("Your Gallery 2 has the following importable data in it:") ?>
-
- = t2("1 user", "%count users", $g2_stats["users"]) ?>,
- = t2("1 group", "%count groups", $g2_stats["groups"]) ?>,
- = t2("1 album", "%count albums", $g2_stats["albums"]) ?>,
- = t2("1 photo", "%count photos", $g2_stats["photos"]) ?>,
- = t2("1 movie", "%count movies", $g2_stats["movies"]) ?>,
- = t2("1 comment", "%count comments", $g2_stats["comments"]) ?>,
- = t2("1 tagged photo/movie/album",
- "%count tagged photos/movies/albums", $g2_stats["tags"]) ?>
-
+
+
+ $t = array();
+ $t[] = t2("1 user", "%count users", $g2_stats["users"]);
+ $t[] = t2("1 group", "%count groups", $g2_stats["groups"]);
+ $t[] = t2("1 album", "%count albums", $g2_stats["albums"]);
+ $t[] = t2("1 photo", "%count photos/movies", $g2_stats["photos"] + $g2_stats["movies"]);
+ $t[] = t2("1 comment", "%count comments", $g2_stats["comments"]);
+ $t[] = t2("1 tagged photo/movie/album", "%count tagged photos/movies/albums",
+ $g2_stats["tags"]);
+ ?>
+ = t("Your Gallery 2 has the following importable data in it: %t0, %t1, %t2, %t3, %t4, %t5",
+ array("t0" => $t[0], "t1" => $t[1], "t2" => $t[2],
+ "t3" => $t[3], "t4" => $t[4], "t5" => $t[5])) ?>
-
+ if ($g3_resource_count): ?>
+
+
+ $t = array();
+ $t[] = t2("1 user", "%count users", $g3_stats["user"]);
+ $t[] = t2("1 group", "%count groups", $g3_stats["group"]);
+ $t[] = t2("1 album", "%count albums", $g3_stats["album"]);
+ $t[] = t2("1 photo/movie", "%count photos/movies", $g3_stats["item"]);
+ $t[] = t2("1 comment", "%count comments", $g3_stats["comment"]);
+ $t[] = t2("1 tagged photo/movie/album", "%count tagged photos/movies/albums", $g3_stats["tag"]);
+ ?>
+ = t("It looks like you've imported the following Gallery 2 data already: %t0, %t1, %t2, %t3, %t4, %t5",
+ array("t0" => $t[0], "t1" => $t[1], "t2" => $t[2],
+ "t3" => $t[3], "t4" => $t[4], "t5" => $t[5])) ?>
+
+ endif ?>
+
">
= t("Begin import!") ?>
+ endif ?>
+
--
cgit v1.2.3
From c2a38087dcd77bf8c1e7a5ff81692502bdb3ff59 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Fri, 22 Apr 2011 16:52:48 -0700
Subject: A few more fixes for #1637: - Update gallery_installer::install() to
set the version to 48 and set the timezone - Rebuild installer.sql
---
installer/install.sql | 143 +++++++++++++-------------
modules/gallery/helpers/gallery_installer.php | 5 +-
2 files changed, 75 insertions(+), 73 deletions(-)
(limited to 'modules')
diff --git a/installer/install.sql b/installer/install.sql
index ff29e1a0..de5250d1 100644
--- a/installer/install.sql
+++ b/installer/install.sql
@@ -1,6 +1,6 @@
DROP TABLE IF EXISTS {access_caches};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {access_caches} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`item_id` int(9) DEFAULT NULL,
@@ -13,11 +13,11 @@ CREATE TABLE {access_caches} (
PRIMARY KEY (`id`),
KEY `item_id` (`item_id`)
) AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {access_caches} VALUES (1,1,'1','0','0','1','0','0');
DROP TABLE IF EXISTS {access_intents};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {access_intents} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`item_id` int(9) DEFAULT NULL,
@@ -31,11 +31,11 @@ CREATE TABLE {access_intents} (
`add_2` binary(1) DEFAULT NULL,
PRIMARY KEY (`id`)
) AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {access_intents} VALUES (1,1,'1','1','0','0','1','1','0','0');
DROP TABLE IF EXISTS {caches};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {caches} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`key` varchar(255) NOT NULL,
@@ -46,10 +46,10 @@ CREATE TABLE {caches} (
UNIQUE KEY `key` (`key`),
KEY `tags` (`tags`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {comments};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {comments} (
`author_id` int(9) DEFAULT NULL,
`created` int(9) NOT NULL,
@@ -75,10 +75,10 @@ CREATE TABLE {comments} (
`updated` int(9) NOT NULL,
PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {failed_auths};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {failed_auths} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`count` int(9) NOT NULL,
@@ -86,10 +86,10 @@ CREATE TABLE {failed_auths} (
`time` int(9) NOT NULL,
PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {graphics_rules};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {graphics_rules} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`active` tinyint(1) DEFAULT '0',
@@ -100,12 +100,12 @@ CREATE TABLE {graphics_rules} (
`target` varchar(32) NOT NULL,
PRIMARY KEY (`id`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {graphics_rules} VALUES (1,1,'a:3:{s:5:\"width\";i:200;s:6:\"height\";i:200;s:6:\"master\";i:2;}','gallery','gallery_graphics::resize',100,'thumb');
INSERT INTO {graphics_rules} VALUES (2,1,'a:3:{s:5:\"width\";i:640;s:6:\"height\";i:640;s:6:\"master\";i:2;}','gallery','gallery_graphics::resize',100,'resize');
DROP TABLE IF EXISTS {groups};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {groups} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`name` char(64) DEFAULT NULL,
@@ -113,25 +113,25 @@ CREATE TABLE {groups} (
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {groups} VALUES (1,'Everybody',1);
INSERT INTO {groups} VALUES (2,'Registered Users',1);
DROP TABLE IF EXISTS {groups_users};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {groups_users} (
`group_id` int(9) NOT NULL,
`user_id` int(9) NOT NULL,
PRIMARY KEY (`group_id`,`user_id`),
UNIQUE KEY `user_id` (`user_id`,`group_id`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {groups_users} VALUES (1,1);
INSERT INTO {groups_users} VALUES (1,2);
INSERT INTO {groups_users} VALUES (2,2);
DROP TABLE IF EXISTS {incoming_translations};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {incoming_translations} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`key` char(32) NOT NULL,
@@ -143,10 +143,10 @@ CREATE TABLE {incoming_translations} (
UNIQUE KEY `key` (`key`,`locale`),
KEY `locale_key` (`locale`,`key`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {items};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {items} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`album_cover_item_id` int(9) DEFAULT NULL,
@@ -188,11 +188,11 @@ CREATE TABLE {items} (
KEY `weight` (`weight`),
KEY `left_ptr` (`left_ptr`)
) AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {items} VALUES (1,NULL,NULL,UNIX_TIMESTAMP(),'',NULL,1,1,NULL,NULL,2,0,NULL,'','',1,NULL,NULL,2,NULL,'weight','ASC',1,NULL,NULL,'Gallery','album',UNIX_TIMESTAMP(),0,1,NULL,'1','1');
DROP TABLE IF EXISTS {items_tags};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {items_tags} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`item_id` int(9) NOT NULL,
@@ -201,10 +201,10 @@ CREATE TABLE {items_tags} (
KEY `tag_id` (`tag_id`,`id`),
KEY `item_id` (`item_id`,`id`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {logs};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {logs} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`category` varchar(64) DEFAULT NULL,
@@ -217,10 +217,10 @@ CREATE TABLE {logs} (
`user_id` int(9) DEFAULT '0',
PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {messages};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {messages} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`key` varchar(255) DEFAULT NULL,
@@ -229,10 +229,10 @@ CREATE TABLE {messages} (
PRIMARY KEY (`id`),
UNIQUE KEY `key` (`key`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {modules};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {modules} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`active` tinyint(1) DEFAULT '0',
@@ -243,8 +243,8 @@ CREATE TABLE {modules} (
UNIQUE KEY `name` (`name`),
KEY `weight` (`weight`)
) AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
-INSERT INTO {modules} VALUES (1,1,'gallery',47,1);
+/*!40101 SET character_set_client = @saved_cs_client */;
+INSERT INTO {modules} VALUES (1,1,'gallery',48,1);
INSERT INTO {modules} VALUES (2,1,'user',3,2);
INSERT INTO {modules} VALUES (3,1,'comment',4,3);
INSERT INTO {modules} VALUES (4,1,'organize',4,4);
@@ -254,8 +254,8 @@ INSERT INTO {modules} VALUES (7,1,'search',1,7);
INSERT INTO {modules} VALUES (8,1,'slideshow',2,8);
INSERT INTO {modules} VALUES (9,1,'tag',3,9);
DROP TABLE IF EXISTS {outgoing_translations};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {outgoing_translations} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`base_revision` int(9) DEFAULT NULL,
@@ -267,10 +267,10 @@ CREATE TABLE {outgoing_translations} (
UNIQUE KEY `key` (`key`,`locale`),
KEY `locale_key` (`locale`,`key`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {permissions};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {permissions} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`display_name` varchar(64) DEFAULT NULL,
@@ -278,14 +278,14 @@ CREATE TABLE {permissions} (
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {permissions} VALUES (1,'View','view');
INSERT INTO {permissions} VALUES (2,'View full size','view_full');
INSERT INTO {permissions} VALUES (3,'Edit','edit');
INSERT INTO {permissions} VALUES (4,'Add','add');
DROP TABLE IF EXISTS {search_records};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {search_records} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`item_id` int(9) DEFAULT NULL,
@@ -295,21 +295,21 @@ CREATE TABLE {search_records} (
KEY `item_id` (`item_id`),
FULLTEXT KEY `data` (`data`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {search_records} VALUES (1,1,0,' Gallery');
DROP TABLE IF EXISTS {sessions};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {sessions} (
`session_id` varchar(127) NOT NULL,
`data` text NOT NULL,
`last_activity` int(10) unsigned NOT NULL,
PRIMARY KEY (`session_id`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {tags};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {tags} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`name` varchar(128) NOT NULL,
@@ -317,10 +317,10 @@ CREATE TABLE {tags} (
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {tasks};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {tasks} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`callback` varchar(128) DEFAULT NULL,
@@ -335,10 +335,10 @@ CREATE TABLE {tasks} (
PRIMARY KEY (`id`),
KEY `owner_id` (`owner_id`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {themes};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {themes} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`name` varchar(64) DEFAULT NULL,
@@ -346,12 +346,12 @@ CREATE TABLE {themes} (
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {themes} VALUES (1,'wind',1);
INSERT INTO {themes} VALUES (2,'admin_wind',1);
DROP TABLE IF EXISTS {users};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {users} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`name` varchar(32) NOT NULL,
@@ -369,12 +369,12 @@ CREATE TABLE {users} (
UNIQUE KEY `name` (`name`),
UNIQUE KEY `hash` (`hash`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {users} VALUES (1,'guest','Guest User','',0,0,NULL,0,1,NULL,NULL,NULL);
INSERT INTO {users} VALUES (2,'admin','Gallery Administrator','',0,0,'unknown@unknown.com',1,0,NULL,NULL,NULL);
DROP TABLE IF EXISTS {vars};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {vars} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`module_name` varchar(64) NOT NULL,
@@ -382,8 +382,8 @@ CREATE TABLE {vars} (
`value` text,
PRIMARY KEY (`id`),
UNIQUE KEY `module_name` (`module_name`,`name`)
-) AUTO_INCREMENT=42 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+) AUTO_INCREMENT=43 DEFAULT CHARSET=utf8;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {vars} VALUES (NULL,'gallery','active_site_theme','wind');
INSERT INTO {vars} VALUES (NULL,'gallery','active_admin_theme','admin_wind');
INSERT INTO {vars} VALUES (NULL,'gallery','page_size','9');
@@ -413,6 +413,7 @@ INSERT INTO {vars} VALUES (NULL,'gallery','email_line_length','70');
INSERT INTO {vars} VALUES (NULL,'gallery','email_header_separator','s:1:\"\n\";');
INSERT INTO {vars} VALUES (NULL,'gallery','show_user_profiles_to','registered_users');
INSERT INTO {vars} VALUES (NULL,'gallery','extra_binary_paths','/usr/local/bin:/opt/local/bin:/opt/bin');
+INSERT INTO {vars} VALUES (NULL,'gallery','timezone','PST8PDT');
INSERT INTO {vars} VALUES (NULL,'gallery','blocks_site_sidebar','a:4:{i:10;a:2:{i:0;s:7:\"gallery\";i:1;s:8:\"language\";}i:11;a:2:{i:0;s:4:\"info\";i:1;s:8:\"metadata\";}i:12;a:2:{i:0;s:3:\"rss\";i:1;s:9:\"rss_feeds\";}i:13;a:2:{i:0;s:3:\"tag\";i:1;s:3:\"tag\";}}');
INSERT INTO {vars} VALUES (NULL,'gallery','identity_provider','user');
INSERT INTO {vars} VALUES (NULL,'user','mininum_password_length','5');
diff --git a/modules/gallery/helpers/gallery_installer.php b/modules/gallery/helpers/gallery_installer.php
index 2cb04356..83c5ed71 100644
--- a/modules/gallery/helpers/gallery_installer.php
+++ b/modules/gallery/helpers/gallery_installer.php
@@ -311,8 +311,9 @@ class gallery_installer {
module::set_var("gallery", "email_header_separator", serialize("\n"));
module::set_var("gallery", "show_user_profiles_to", "registered_users");
module::set_var("gallery", "extra_binary_paths", "/usr/local/bin:/opt/local/bin:/opt/bin");
+ module::set_var("gallery", "timezone", Kohana::config("locale.timezone"));
- module::set_version("gallery", 47);
+ module::set_version("gallery", 48);
}
static function upgrade($version) {
@@ -687,7 +688,7 @@ class gallery_installer {
if ($version == 47) {
// Add configuration variable to set timezone. Defaults to the currently
// used timezone (from PHP configuration).
- module::set_var("gallery", "timezone", Kohana::config('locale.timezone'));
+ module::set_var("gallery", "timezone", Kohana::config("locale.timezone"));
module::set_version("gallery", $version = 48);
}
}
--
cgit v1.2.3
From fa4fb20f8036745a4999d05ccb2fe285a891f3a8 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 06:50:47 -0700
Subject: If we've cleared out the last group in a combine_queue for a given
type, unset the combine_queue for that type entirely. This way future calls
to css() and script() emit an element until there's a new call to
start_combining(). Fixes 1685.
---
modules/gallery/libraries/Gallery_View.php | 3 +++
1 file changed, 3 insertions(+)
(limited to 'modules')
diff --git a/modules/gallery/libraries/Gallery_View.php b/modules/gallery/libraries/Gallery_View.php
index 77e3d204..1395686c 100644
--- a/modules/gallery/libraries/Gallery_View.php
+++ b/modules/gallery/libraries/Gallery_View.php
@@ -136,6 +136,9 @@ class Gallery_View_Core extends View {
}
unset($this->combine_queue[$type][$group]);
+ if (empty($this->combine_queue[$type])) {
+ unset($this->combine_queue[$type]);
+ }
if ($type == "css") {
return html::stylesheet("combined/css/$key", "screen,print,projection", true);
--
cgit v1.2.3
From 80af9f0f17ce5ac10ceefc9d3d0736b3d4c1c2aa Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 07:05:15 -0700
Subject: Inline admin JS into admin_server_add.html.php. Fixes #1686.
---
modules/server_add/helpers/server_add_theme.php | 16 ---
modules/server_add/js/admin.js | 8 --
modules/server_add/js/server_add.js | 125 ---------------------
modules/server_add/views/admin_server_add.html.php | 24 +++-
4 files changed, 22 insertions(+), 151 deletions(-)
delete mode 100644 modules/server_add/js/admin.js
delete mode 100644 modules/server_add/js/server_add.js
(limited to 'modules')
diff --git a/modules/server_add/helpers/server_add_theme.php b/modules/server_add/helpers/server_add_theme.php
index 50c050a8..cfca5901 100644
--- a/modules/server_add/helpers/server_add_theme.php
+++ b/modules/server_add/helpers/server_add_theme.php
@@ -24,20 +24,4 @@ class server_add_theme_Core {
. $theme->script("server_add.js");
}
}
-
- static function admin_head($theme) {
- $buf = "";
- if (strpos(Router::$current_uri, "admin/server_add") !== false) {
- $buf .= $theme->css("server_add.css")
- . $theme->css("jquery.autocomplete.css");
- $base = url::site("__ARGS__");
- $csrf = access::csrf_token();
- $buf .= "";
-
- $buf .= $theme->script("jquery.autocomplete.js")
- . $theme->script("admin.js");
- }
-
- return $buf;
- }
}
\ No newline at end of file
diff --git a/modules/server_add/js/admin.js b/modules/server_add/js/admin.js
deleted file mode 100644
index 9d7bd181..00000000
--- a/modules/server_add/js/admin.js
+++ /dev/null
@@ -1,8 +0,0 @@
-/**
- * Set up autocomplete on the server path list
- *
- */
-$("document").ready(function() {
- $("#g-path").autocomplete(
- base_url.replace("__ARGS__", "admin/server_add/autocomplete"), {max: 256});
-});
diff --git a/modules/server_add/js/server_add.js b/modules/server_add/js/server_add.js
deleted file mode 100644
index 02dda4c0..00000000
--- a/modules/server_add/js/server_add.js
+++ /dev/null
@@ -1,125 +0,0 @@
-(function($) {
- $.widget("ui.gallery_server_add", {
- _init: function() {
- var self = this;
- $("#g-server-add-add-button", this.element).click(function(event) {
- event.preventDefault();
- $(".g-progress-bar", this.element).
- progressbar().
- progressbar("value", 0);
- $("#g-server-add-progress", this.element).slideDown("fast", function() { self.start_add(); });
- });
- $("#g-server-add-pause-button", this.element).click(function(event) {
- self.pause = true;
- $("#g-server-add-pause-button", this.element).hide();
- $("#g-server-add-continue-button", this.element).show();
- });
- $("#g-server-add-continue-button", this.element).click(function(event) {
- self.pause = false;
- $("#g-server-add-pause-button", this.element).show();
- $("#g-server-add-continue-button", this.element).hide();
- self.run_add();
- });
- $("#g-server-add-close-button", this.element).click(function(event) {
- $("#g-dialog").dialog("close");
- window.location.reload();
- });
- $("#g-server-add-tree span.g-directory", this.element).dblclick(function(event) {
- self.open_dir(event);
- });
- $("#g-server-add-tree span.g-file, #g-server-add-tree span.g-directory", this.element).click(function(event) {
- self.select_file(event);
- });
- $("#g-server-add-tree span.g-directory", this.element).dblclick(function(event) {
- self.open_dir(event);
- });
- $("#g-dialog").bind("dialogclose", function(event, ui) {
- window.location.reload();
- });
- },
-
- taskURL: null,
- pause: false,
-
- start_add: function() {
- var self = this;
- var paths = [];
- $.each($("span.selected", self.element), function () {
- paths.push($(this).attr("ref"));
- });
-
- $("#g-server-add-add-button", this.element).hide();
- $("#g-server-add-pause-button", this.element).show();
-
- $.ajax({
- url: START_URL,
- type: "POST",
- async: false,
- data: { "paths[]": paths },
- dataType: "json",
- success: function(data, textStatus) {
- $("#g-status").html(data.status);
- $(".g-progress-bar", self.element).progressbar("value", data.percent_complete);
- self.taskURL = data.url;
- setTimeout(function() { self.run_add(); }, 25);
- }
- });
- return false;
- },
-
- run_add: function () {
- var self = this;
- $.ajax({
- url: self.taskURL,
- async: false,
- dataType: "json",
- success: function(data, textStatus) {
- $("#g-status").html(data.status);
- $(".g-progress-bar", self.element).progressbar("value", data.percent_complete);
- if (data.done) {
- $("#g-server-add-progress", this.element).slideUp();
- $("#g-server-add-add-button", this.element).show();
- $("#g-server-add-pause-button", this.element).hide();
- $("#g-server-add-continue-button", this.element).hide();
- } else {
- if (!self.pause) {
- setTimeout(function() { self.run_add(); }, 25);
- }
- }
- }
- });
- },
-
- /**
- * Load a new directory
- */
- open_dir: function(event) {
- var self = this;
- var path = $(event.target).attr("ref");
- $.ajax({
- url: GET_CHILDREN_URL.replace("__PATH__", path),
- success: function(data, textStatus) {
- $("#g-server-add-tree", self.element).html(data);
- $("#g-server-add-tree span.g-directory", self.element).dblclick(function(event) {
- self.open_dir(event);
- });
- $("#g-server-add-tree span.g-file, #g-server-add-tree span.g-directory", this.element).click(function(event) {
- self.select_file(event);
- });
- }
- });
- },
-
- /**
- * Manage file selection state.
- */
- select_file: function (event) {
- $(event.target).toggleClass("selected");
- if ($("#g-server-add span.selected").length) {
- $("#g-server-add-add-button").enable(true).removeClass("ui-state-disabled");
- } else {
- $("#g-server-add-add-button").enable(false).addClass("ui-state-disabled");
- }
- }
- });
-})(jQuery);
diff --git a/modules/server_add/views/admin_server_add.html.php b/modules/server_add/views/admin_server_add.html.php
index 933ab7f8..d921a8a4 100644
--- a/modules/server_add/views/admin_server_add.html.php
+++ b/modules/server_add/views/admin_server_add.html.php
@@ -1,4 +1,19 @@
+= $theme->css("server_add.css") ?>
+= $theme->css("jquery.autocomplete.css") ?>
+= $theme->script("jquery.autocomplete.js") ?>
+= $theme->script("admin.js") ?>
+
+
= t("Add from server administration") ?>
@@ -8,12 +23,17 @@
if (empty($paths)): ?>
= t("No authorized image source paths defined yet") ?>
endif ?>
+
foreach ($paths as $id => $path): ?>
= html::clean($path) ?>
- "
+ ") ?>"
id="icon_= $id ?>"
- class="g-remove-dir g-button">= t("delete") ?>
+ class="g-remove-dir g-button">
+
+ = t("delete") ?>
+
+
endforeach ?>
--
cgit v1.2.3
From efa3466a75856a219e4c282f21037aa186a806b0 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 07:13:55 -0700
Subject: Oops, forgot to remove the reference to admin.js. Follow-on for
#1686.
---
modules/server_add/views/admin_server_add.html.php | 1 -
1 file changed, 1 deletion(-)
(limited to 'modules')
diff --git a/modules/server_add/views/admin_server_add.html.php b/modules/server_add/views/admin_server_add.html.php
index d921a8a4..474ad428 100644
--- a/modules/server_add/views/admin_server_add.html.php
+++ b/modules/server_add/views/admin_server_add.html.php
@@ -2,7 +2,6 @@
= $theme->css("server_add.css") ?>
= $theme->css("jquery.autocomplete.css") ?>
= $theme->script("jquery.autocomplete.js") ?>
-= $theme->script("admin.js") ?>
+
= t("Gallery 2 import") ?>
--
cgit v1.2.3
From 4b01676f323fb280ebaa4c041e6894cbb464d8fe Mon Sep 17 00:00:00 2001
From: Tim Almdal
Date: Sat, 23 Apr 2011 07:25:33 -0700
Subject: Fix for ticket #541
Added a theme_info variable to the theme globals. The properties in the theme.info file are now contained in this theme_info structure.
Access is:
= $theme_info->author ?>
will display the theme author.
---
modules/gallery/libraries/Theme_View.php | 1 +
1 file changed, 1 insertion(+)
(limited to 'modules')
diff --git a/modules/gallery/libraries/Theme_View.php b/modules/gallery/libraries/Theme_View.php
index a507e9c8..152efc37 100644
--- a/modules/gallery/libraries/Theme_View.php
+++ b/modules/gallery/libraries/Theme_View.php
@@ -38,6 +38,7 @@ class Theme_View_Core extends Gallery_View {
$this->item = null;
$this->tag = null;
$this->set_global(array("theme" => $this,
+ "theme_info" => theme::get_info($this->theme_name),
"user" => identity::active_user(),
"page_type" => $page_type,
"page_subtype" => $page_subtype,
--
cgit v1.2.3
From bb23e28035293174f935345178f32638c09d0421 Mon Sep 17 00:00:00 2001
From: Chad Kieffer
Date: Sat, 23 Apr 2011 10:28:39 -0400
Subject: Remove enumeration unordered list class, it's no longer needed.
---
modules/g2_import/views/admin_g2_import.html.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'modules')
diff --git a/modules/g2_import/views/admin_g2_import.html.php b/modules/g2_import/views/admin_g2_import.html.php
index 20b243d5..fb2b58c9 100644
--- a/modules/g2_import/views/admin_g2_import.html.php
+++ b/modules/g2_import/views/admin_g2_import.html.php
@@ -36,7 +36,7 @@
if (isset($g2_version)): ?>
-
+
= t("Gallery version %version detected", array("version" => $g2_version)) ?>
--
cgit v1.2.3
From 171e4fd0ee6493bb82bb1de3017b83319e7fc5e4 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 07:41:44 -0700
Subject: Remove displayed blocks from the admin block list. If there are no
available blocks to add, just hide the block adder block. Fixes #1689.
---
modules/gallery/helpers/gallery_block.php | 25 ++++++++++++++++++++-----
1 file changed, 20 insertions(+), 5 deletions(-)
(limited to 'modules')
diff --git a/modules/gallery/helpers/gallery_block.php b/modules/gallery/helpers/gallery_block.php
index 0ba7c936..49d16246 100644
--- a/modules/gallery/helpers/gallery_block.php
+++ b/modules/gallery/helpers/gallery_block.php
@@ -82,9 +82,13 @@ class gallery_block_Core {
break;
case "block_adder":
- $block->css_id = "g-block-adder";
- $block->title = t("Dashboard content");
- $block->content = gallery_block::get_add_block_form();
+ if ($form = gallery_block::get_add_block_form()) {
+ $block->css_id = "g-block-adder";
+ $block->title = t("Dashboard content");
+ $block->content = $form;
+ } else {
+ $block = "";
+ }
break;
case "language":
@@ -118,11 +122,22 @@ class gallery_block_Core {
}
static function get_add_block_form() {
+ $available_blocks = block_manager::get_available_admin_blocks();
+
+ $active = array();
+ foreach (array_merge(block_manager::get_active("dashboard_sidebar"),
+ block_manager::get_active("dashboard_center")) as $b) {
+ unset($available_blocks[implode(":", $b)]);
+ }
+
+ if (!$available_blocks) {
+ return;
+ }
+
$form = new Forge("admin/dashboard/add_block", "", "post",
array("id" => "g-add-dashboard-block-form"));
$group = $form->group("add_block")->label(t("Add Block"));
- $group->dropdown("id")->label(t("Available Blocks"))
- ->options(block_manager::get_available_admin_blocks());
+ $group->dropdown("id")->label(t("Available blocks"))->options($available_blocks);
$group->submit("center")->value(t("Add to center"));
$group->submit("sidebar")->value(t("Add to sidebar"));
return $form;
--
cgit v1.2.3
From 9dd91b55b03923ef3058fb965b0c927d101a396f Mon Sep 17 00:00:00 2001
From: Tim Almdal
Date: Sat, 23 Apr 2011 07:42:28 -0700
Subject: Insure that the tag count to display is always greater than 1.
Refixes #1649.
---
modules/tag/helpers/tag.php | 1 +
1 file changed, 1 insertion(+)
(limited to 'modules')
diff --git a/modules/tag/helpers/tag.php b/modules/tag/helpers/tag.php
index 733215b3..742783d1 100644
--- a/modules/tag/helpers/tag.php
+++ b/modules/tag/helpers/tag.php
@@ -48,6 +48,7 @@ class tag_Core {
* @return ORM_Iterator of Tag_Model in descending tag count order
*/
static function popular_tags($count) {
+ $count = $count >= 1 ? $count : 30;
return ORM::factory("tag")
->order_by("count", "DESC")
->limit($count)
--
cgit v1.2.3
From 0ec819d38161ead063c4dbd953b4b55a33a42f80 Mon Sep 17 00:00:00 2001
From: Tim Almdal
Date: Sat, 23 Apr 2011 07:46:38 -0700
Subject: Insure that the tag count to display is always greater than 0.
Refixes #1649.
---
modules/tag/helpers/tag.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'modules')
diff --git a/modules/tag/helpers/tag.php b/modules/tag/helpers/tag.php
index 742783d1..c21104ee 100644
--- a/modules/tag/helpers/tag.php
+++ b/modules/tag/helpers/tag.php
@@ -48,7 +48,7 @@ class tag_Core {
* @return ORM_Iterator of Tag_Model in descending tag count order
*/
static function popular_tags($count) {
- $count = $count >= 1 ? $count : 30;
+ $count = max($count, 1);
return ORM::factory("tag")
->order_by("count", "DESC")
->limit($count)
--
cgit v1.2.3
From 3312009319d69dc834e705166ac08ad8bdc4c18e Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 08:07:58 -0700
Subject: Revive server_add.js which I accidentally removed in
80af9f0f17ce5ac10ceefc9d3d0736b3d4c1c2aa as part of #1686.
---
modules/server_add/js/server_add.js | 125 ++++++++++++++++++++++++++++++++++++
1 file changed, 125 insertions(+)
create mode 100644 modules/server_add/js/server_add.js
(limited to 'modules')
diff --git a/modules/server_add/js/server_add.js b/modules/server_add/js/server_add.js
new file mode 100644
index 00000000..02dda4c0
--- /dev/null
+++ b/modules/server_add/js/server_add.js
@@ -0,0 +1,125 @@
+(function($) {
+ $.widget("ui.gallery_server_add", {
+ _init: function() {
+ var self = this;
+ $("#g-server-add-add-button", this.element).click(function(event) {
+ event.preventDefault();
+ $(".g-progress-bar", this.element).
+ progressbar().
+ progressbar("value", 0);
+ $("#g-server-add-progress", this.element).slideDown("fast", function() { self.start_add(); });
+ });
+ $("#g-server-add-pause-button", this.element).click(function(event) {
+ self.pause = true;
+ $("#g-server-add-pause-button", this.element).hide();
+ $("#g-server-add-continue-button", this.element).show();
+ });
+ $("#g-server-add-continue-button", this.element).click(function(event) {
+ self.pause = false;
+ $("#g-server-add-pause-button", this.element).show();
+ $("#g-server-add-continue-button", this.element).hide();
+ self.run_add();
+ });
+ $("#g-server-add-close-button", this.element).click(function(event) {
+ $("#g-dialog").dialog("close");
+ window.location.reload();
+ });
+ $("#g-server-add-tree span.g-directory", this.element).dblclick(function(event) {
+ self.open_dir(event);
+ });
+ $("#g-server-add-tree span.g-file, #g-server-add-tree span.g-directory", this.element).click(function(event) {
+ self.select_file(event);
+ });
+ $("#g-server-add-tree span.g-directory", this.element).dblclick(function(event) {
+ self.open_dir(event);
+ });
+ $("#g-dialog").bind("dialogclose", function(event, ui) {
+ window.location.reload();
+ });
+ },
+
+ taskURL: null,
+ pause: false,
+
+ start_add: function() {
+ var self = this;
+ var paths = [];
+ $.each($("span.selected", self.element), function () {
+ paths.push($(this).attr("ref"));
+ });
+
+ $("#g-server-add-add-button", this.element).hide();
+ $("#g-server-add-pause-button", this.element).show();
+
+ $.ajax({
+ url: START_URL,
+ type: "POST",
+ async: false,
+ data: { "paths[]": paths },
+ dataType: "json",
+ success: function(data, textStatus) {
+ $("#g-status").html(data.status);
+ $(".g-progress-bar", self.element).progressbar("value", data.percent_complete);
+ self.taskURL = data.url;
+ setTimeout(function() { self.run_add(); }, 25);
+ }
+ });
+ return false;
+ },
+
+ run_add: function () {
+ var self = this;
+ $.ajax({
+ url: self.taskURL,
+ async: false,
+ dataType: "json",
+ success: function(data, textStatus) {
+ $("#g-status").html(data.status);
+ $(".g-progress-bar", self.element).progressbar("value", data.percent_complete);
+ if (data.done) {
+ $("#g-server-add-progress", this.element).slideUp();
+ $("#g-server-add-add-button", this.element).show();
+ $("#g-server-add-pause-button", this.element).hide();
+ $("#g-server-add-continue-button", this.element).hide();
+ } else {
+ if (!self.pause) {
+ setTimeout(function() { self.run_add(); }, 25);
+ }
+ }
+ }
+ });
+ },
+
+ /**
+ * Load a new directory
+ */
+ open_dir: function(event) {
+ var self = this;
+ var path = $(event.target).attr("ref");
+ $.ajax({
+ url: GET_CHILDREN_URL.replace("__PATH__", path),
+ success: function(data, textStatus) {
+ $("#g-server-add-tree", self.element).html(data);
+ $("#g-server-add-tree span.g-directory", self.element).dblclick(function(event) {
+ self.open_dir(event);
+ });
+ $("#g-server-add-tree span.g-file, #g-server-add-tree span.g-directory", this.element).click(function(event) {
+ self.select_file(event);
+ });
+ }
+ });
+ },
+
+ /**
+ * Manage file selection state.
+ */
+ select_file: function (event) {
+ $(event.target).toggleClass("selected");
+ if ($("#g-server-add span.selected").length) {
+ $("#g-server-add-add-button").enable(true).removeClass("ui-state-disabled");
+ } else {
+ $("#g-server-add-add-button").enable(false).addClass("ui-state-disabled");
+ }
+ }
+ });
+})(jQuery);
--
cgit v1.2.3
From 0235c2062e9d980a4778c4b22678238c525e1cd7 Mon Sep 17 00:00:00 2001
From: Tim Almdal
Date: Sat, 23 Apr 2011 08:13:01 -0700
Subject: Fix for ticket #1681 (and maybe #1625). Change the parameter from -v
to -version.
---
modules/gallery/helpers/graphics.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'modules')
diff --git a/modules/gallery/helpers/graphics.php b/modules/gallery/helpers/graphics.php
index 04501132..f374f9da 100644
--- a/modules/gallery/helpers/graphics.php
+++ b/modules/gallery/helpers/graphics.php
@@ -316,7 +316,7 @@ class graphics_Core {
// ImageMagick & GraphicsMagick
$magick_kits = array(
"imagemagick" => array(
- "name" => "ImageMagick", "binary" => "convert", "version" => "convert -v",
+ "name" => "ImageMagick", "binary" => "convert", "version" => "convert -version",
"version_regex" => "/Version: \S+ (\S+)/"),
"graphicsmagick" => array(
"name" => "GraphicsMagick", "binary" => "gm", "version" => "gm version",
--
cgit v1.2.3
From c101151616033d53587d1435881dae0fa45aeefa Mon Sep 17 00:00:00 2001
From: Andy Lindeman
Date: Sat, 23 Apr 2011 12:04:12 -0400
Subject: Allow tags to be merged by renaming
* Fixes #1628
---
modules/gallery/libraries/InPlaceEdit.php | 8 +++--
modules/tag/controllers/admin_tags.php | 11 +------
modules/tag/models/tag.php | 24 ++++++++++-----
modules/tag/tests/Tag_Test.php | 50 ++++++++++++++++++++++++++++---
4 files changed, 70 insertions(+), 23 deletions(-)
(limited to 'modules')
diff --git a/modules/gallery/libraries/InPlaceEdit.php b/modules/gallery/libraries/InPlaceEdit.php
index 88c30494..739cbb61 100644
--- a/modules/gallery/libraries/InPlaceEdit.php
+++ b/modules/gallery/libraries/InPlaceEdit.php
@@ -56,8 +56,12 @@ class InPlaceEdit_Core {
}
public function validate() {
- $post = Validation::factory($_POST)
- ->add_callbacks("input", $this->callback);
+ $post = Validation::factory($_POST);
+
+ if (!empty($this->callback)) {
+ $post->add_callbacks("input", $this->callback);
+ }
+
foreach ($this->rules as $rule) {
$post->add_rules("input", $rule);
}
diff --git a/modules/tag/controllers/admin_tags.php b/modules/tag/controllers/admin_tags.php
index 73042a55..fd82bc92 100644
--- a/modules/tag/controllers/admin_tags.php
+++ b/modules/tag/controllers/admin_tags.php
@@ -81,9 +81,7 @@ class Admin_Tags_Controller extends Admin_Controller {
$in_place_edit = InPlaceEdit::factory($tag->name)
->action("admin/tags/rename/$tag->id")
- ->rules(array("required", "length[1,64]"))
- ->messages(array("in_use" => t("There is already a tag with that name")))
- ->callback(array($this, "check_for_duplicate"));
+ ->rules(array("required", "length[1,64]"));
if ($in_place_edit->validate()) {
$old_name = $tag->name;
@@ -101,12 +99,5 @@ class Admin_Tags_Controller extends Admin_Controller {
}
}
- public function check_for_duplicate(Validation $post_data, $field) {
- $tag_exists = ORM::factory("tag")->where("name", "=", $post_data[$field])->count_all();
- if ($tag_exists) {
- $post_data->add_error($field, "in_use");
- }
- }
-
}
diff --git a/modules/tag/models/tag.php b/modules/tag/models/tag.php
index bd665667..bb79e707 100644
--- a/modules/tag/models/tag.php
+++ b/modules/tag/models/tag.php
@@ -69,13 +69,23 @@ class Tag_Model_Core extends ORM {
* to this tag.
*/
public function save() {
- $related_item_ids = array();
- foreach (db::build()
- ->select("item_id")
- ->from("items_tags")
- ->where("tag_id", "=", $this->id)
- ->execute() as $row) {
- $related_item_ids[$row->item_id] = 1;
+ // Check to see if another tag exists with the same name
+ $duplicate_tag = ORM::factory("tag")
+ ->where("name", "=", $this->name)
+ ->where("id", "!=", $this->id)
+ ->find();
+ if ($duplicate_tag->loaded()) {
+ // If so, tag its items with this tag so as to merge it
+ $duplicate_tag_items = ORM::factory("item")
+ ->join("items_tags", "items.id", "items_tags.item_id")
+ ->where("items_tags.tag_id", "=", $duplicate_tag->id)
+ ->find_all();
+ foreach ($duplicate_tag_items as $item) {
+ $this->add($item);
+ }
+
+ // ... and remove the duplicate tag
+ $duplicate_tag->delete();
}
if (isset($this->object_relations["items"])) {
diff --git a/modules/tag/tests/Tag_Test.php b/modules/tag/tests/Tag_Test.php
index f5ccb3a2..9e10fa4a 100644
--- a/modules/tag/tests/Tag_Test.php
+++ b/modules/tag/tests/Tag_Test.php
@@ -18,18 +18,60 @@
* Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
*/
class Tag_Test extends Gallery_Unit_Test_Case {
+ public function teardown() {
+ ORM::factory("tag")->delete_all();
+ }
+
public function create_tag_test() {
$album = test::random_album();
tag::add($album, "tag1");
$tag = ORM::factory("tag")->where("name", "=", "tag1")->find();
- $this->assert_true(1, $tag->count);
+ $this->assert_equal(1, $tag->count);
// Make sure adding the tag again doesn't increase the count
tag::add($album, "tag1");
- $this->assert_true(1, $tag->reload()->count);
+ $this->assert_equal(1, $tag->reload()->count);
tag::add(test::random_album(), "tag1");
- $this->assert_true(2, $tag->reload()->count);
+ $this->assert_equal(2, $tag->reload()->count);
+ }
+
+ public function rename_merge_tag_test() {
+ $album1 = test::random_album();
+ $album2 = test::random_album();
+
+ tag::add($album1, "tag1");
+ tag::add($album2, "tag2");
+
+ $tag1 = ORM::factory("tag")->where("name", "=", "tag1")->find();
+ $tag1->name = "tag2";
+ $tag1->save();
+
+ // Tags should be merged; $tag2 should be deleted
+ $tag1->reload();
+
+ $this->assert_equal(2, $tag1->count);
+ $this->assert_true($tag1->has($album1));
+ $this->assert_true($tag1->has($album2));
+ $this->assert_equal(1, ORM::factory("tag")->count_all());
+ }
+
+ public function rename_merge_tag_with_same_items_test() {
+ $album = test::random_album();
+
+ tag::add($album, "tag1");
+ tag::add($album, "tag2");
+
+ $tag1 = ORM::factory("tag")->where("name", "=", "tag1")->find();
+ $tag1->name = "tag2";
+ $tag1->save();
+
+ // Tags should be merged
+ $tag1->reload();
+
+ $this->assert_equal(1, $tag1->count);
+ $this->assert_true($tag1->has($album));
+ $this->assert_equal(1, ORM::factory("tag")->count_all());
}
-}
\ No newline at end of file
+}
--
cgit v1.2.3
From ce2c6c3ada2854777891a7a8edec66b7b5be72ad Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 10:06:17 -0700
Subject: Add convert_to_human_readable and tests for both. Resolves #1693.
---
modules/gallery/helpers/MY_num.php | 14 ++++++++++++++
modules/gallery/tests/Num_Helper_Test.php | 32 +++++++++++++++++++++++++++++++
2 files changed, 46 insertions(+)
create mode 100644 modules/gallery/tests/Num_Helper_Test.php
(limited to 'modules')
diff --git a/modules/gallery/helpers/MY_num.php b/modules/gallery/helpers/MY_num.php
index 9787044c..842a2ee3 100644
--- a/modules/gallery/helpers/MY_num.php
+++ b/modules/gallery/helpers/MY_num.php
@@ -37,4 +37,18 @@ class num extends num_Core {
return $val;
}
+
+ /**
+ * Convert a size value as accepted by PHP's shorthand to bytes.
+ * ref: http://us2.php.net/manual/en/function.ini-get.php
+ * ref: http://us2.php.net/manual/en/faq.using.php#faq.using.shorthandbytes
+ */
+ static function convert_to_human_readable($num) {
+ foreach (array("G" => 1e9, "M" => 1e6, "K" => 1e3) as $k => $v) {
+ if ($num > $v) {
+ $num = round($num / $v) . $k;
+ }
+ }
+ return $num;
+ }
}
diff --git a/modules/gallery/tests/Num_Helper_Test.php b/modules/gallery/tests/Num_Helper_Test.php
new file mode 100644
index 00000000..a22f9359
--- /dev/null
+++ b/modules/gallery/tests/Num_Helper_Test.php
@@ -0,0 +1,32 @@
+assert_equal(5 * 1024, num::convert_to_bytes("5K"));
+ $this->assert_equal(3 * 1024*1024, num::convert_to_bytes("3M"));
+ $this->assert_equal(4 * 1024*1024*1024, num::convert_to_bytes("4G"));
+ }
+
+ public function convert_to_human_readable_test() {
+ $this->assert_equal("6K", num::convert_to_human_readable(5615));
+ $this->assert_equal("1M", num::convert_to_human_readable(1205615));
+ $this->assert_equal("3G", num::convert_to_human_readable(3091205615));
+ }
+}
\ No newline at end of file
--
cgit v1.2.3
From 76a7ad3161be0994d7ba98e9dff9b317b2430bb3 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 10:07:32 -0700
Subject: Overhaul of the uploader code: - Propagate size limits (including
detecting memory limits from GD) down to the Flash so that we don't even
start uploads that won't work - Improve the error messages to be more user
meaningful and provide links to the codex for errors - Tell the user up
front what the file size limit is.
Fixes #1638
---
modules/gallery/css/gallery.css | 6 ++---
modules/gallery/helpers/graphics.php | 19 ++++++++++++++
modules/gallery/libraries/Form_Uploadify.php | 14 +++++++++++
modules/gallery/views/form_uploadify.html.php | 36 ++++++++++++++-------------
4 files changed, 55 insertions(+), 20 deletions(-)
(limited to 'modules')
diff --git a/modules/gallery/css/gallery.css b/modules/gallery/css/gallery.css
index 275a3d7d..97d09454 100644
--- a/modules/gallery/css/gallery.css
+++ b/modules/gallery/css/gallery.css
@@ -29,12 +29,12 @@
#g-add-photos-canvas object,
#g-add-photos-button {
- left: 137px;
- margin: .5em 0;
+ left: 93px;
+ margin: .5em 0;
padding: .4em 1em;
position: absolute;
top: 0;
- width: 175px;
+ width: auto;
}
#g-add-photos-canvas object {
diff --git a/modules/gallery/helpers/graphics.php b/modules/gallery/helpers/graphics.php
index 04501132..d19392cf 100644
--- a/modules/gallery/helpers/graphics.php
+++ b/modules/gallery/helpers/graphics.php
@@ -423,4 +423,23 @@ class graphics_Core {
return true;
}
+
+ /**
+ * Return the max file size that this graphics toolkit can handle.
+ */
+ static function max_filesize() {
+ if (module::get_var("gallery", "graphics_toolkit") == "gd") {
+ $memory_limit = trim(ini_get("memory_limit"));
+ $memory_limit_bytes = num::convert_to_bytes($memory_limit);
+
+ // GD expands images in memory and uses 4 bytes of RAM for every byte
+ // in the file.
+ $max_filesize = $memory_limit_bytes / 4;
+ $max_filesize_human_readable = num::convert_to_human_readable($max_filesize);
+ return array($max_filesize, $max_filesize_human_readable);
+ }
+
+ // Some arbitrarily large size
+ return array(1000000000, "1G");
+ }
}
diff --git a/modules/gallery/libraries/Form_Uploadify.php b/modules/gallery/libraries/Form_Uploadify.php
index 27ab9684..3e35e380 100644
--- a/modules/gallery/libraries/Form_Uploadify.php
+++ b/modules/gallery/libraries/Form_Uploadify.php
@@ -48,6 +48,20 @@ class Form_Uploadify_Core extends Form_Input {
$v->simultaneous_upload_limit = module::get_var("gallery", "simultaneous_upload_limit");
$v->movies_allowed = (bool) movie::find_ffmpeg();
$v->suhosin_session_encrypt = (bool) ini_get("suhosin.session.encrypt");
+
+ list ($toolkit_max_filesize_bytes, $toolkit_max_filesize) = graphics::max_filesize();
+
+ $upload_max_filesize = trim(ini_get("upload_max_filesize"));
+ $upload_max_filesize_bytes = num::convert_to_bytes($upload_max_filesize);
+
+ if ($upload_max_filesize_bytes < $toolkit_max_filesize_bytes) {
+ $v->size_limit_bytes = $upload_max_filesize_bytes;
+ $v->size_limit = $upload_max_filesize;
+ } else {
+ $v->size_limit_bytes = $toolkit_max_filesize_bytes;
+ $v->size_limit = $toolkit_max_filesize;
+ }
+
return $v;
}
diff --git a/modules/gallery/views/form_uploadify.html.php b/modules/gallery/views/form_uploadify.html.php
index 77b6d493..83dfcc68 100644
--- a/modules/gallery/views/form_uploadify.html.php
+++ b/modules/gallery/views/form_uploadify.html.php
@@ -32,6 +32,7 @@
fileDesc: = t("Photos and movies")->for_js() ?>,
cancelImg: "= url::file("lib/uploadify/cancel.png") ?>",
simUploadLimit: = $simultaneous_upload_limit ?>,
+ sizeLimit: = $size_limit_bytes ?>,
wmode: "transparent",
hideButton: true, /* should be true */
auto: true,
@@ -66,26 +67,30 @@
return true;
},
onError: function(event, queueID, fileObj, errorObj) {
- var msg = " - ";
if (errorObj.type == "HTTP") {
if (errorObj.info == "500") {
- msg += = t("Unable to process this file")->for_js() ?>;
- // Server error - check server logs
+ error_msg = = t("Unable to process this photo")->for_js() ?>;
} else if (errorObj.info == "404") {
- msg += = t("The upload script was not found.")->for_js() ?>;
- // Server script not found
+ error_msg = = t("The upload script was not found")->for_js() ?>;
+ } else if (errorObj.info == "400") {
+ error_msg = = t("This photo is too large (max is %size bytes)",
+ array("size" => $size_limit))->for_js() ?>;
} else {
- // Server Error: status: errorObj.info
- msg += (= t("Server error: __INFO__")->for_js() ?>.replace("__INFO__", errorObj.info));
+ msg += (= t("Server error: __INFO__ (__TYPE__)")->for_js() ?>
+ .replace("__INFO__", errorObj.info)
+ .replace("__TYPE__", errorObj.type));
}
} else if (errorObj.type == "File Size") {
- var sizelimit = $("#g-uploadify").uploadifySettings(sizeLimit);
- msg += fileObj.name+' '+errorObj.type+' Limit: '+Math.round(d.sizeLimit/1024)+'KB';
+ error_msg = = t("This photo is too large (max is %size bytes)",
+ array("size" => $size_limit))->for_js() ?>;
} else {
- msg += (= t("Server error: __INFO__ (__TYPE__)")->for_js() ?>
- .replace("__INFO__", errorObj.info)
- .replace("__TYPE__", errorObj.type));
+ error_msg = = t("Server error: __INFO__ (__TYPE__)")->for_js() ?>
+ .replace("__INFO__", errorObj.info)
+ .replace("__TYPE__", errorObj.type);
}
+ msg = " - " +
+ error_msg + " ";
+
$("#g-add-photos-status ul").append(
"" + fileObj.name + msg + " ");
$("#g-uploadify").uploadifyCancel(queueID);
@@ -131,10 +136,7 @@
endif ?>
-
- = t("Photos will be uploaded to album: ") ?>
-
-
+
foreach ($album->parents() as $i => $parent): ?>
> = html::clean($parent->title) ?>
endforeach ?>
@@ -143,7 +145,7 @@
- = t("Select photos...") ?>
+ = t("Select photos (%size max per file)...", array("size" => $size_limit)) ?>
--
cgit v1.2.3
From 466f2a657ef4b22346e2232f50bc5cca4ab6e540 Mon Sep 17 00:00:00 2001
From: Tim Almdal
Date: Sat, 23 Apr 2011 12:16:06 -0700
Subject: Fix ticket #1694. Correct Spelling of mininum_password_length to
minimum_password_length
---
installer/install.sql | 146 ++++++++++++++++----------------
modules/user/controllers/password.php | 2 +-
modules/user/helpers/user_installer.php | 7 ++
modules/user/models/user.php | 2 +-
modules/user/module.info | 2 +-
5 files changed, 84 insertions(+), 75 deletions(-)
(limited to 'modules')
diff --git a/installer/install.sql b/installer/install.sql
index de5250d1..7f9eda59 100644
--- a/installer/install.sql
+++ b/installer/install.sql
@@ -1,6 +1,6 @@
DROP TABLE IF EXISTS {access_caches};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {access_caches} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`item_id` int(9) DEFAULT NULL,
@@ -13,11 +13,11 @@ CREATE TABLE {access_caches} (
PRIMARY KEY (`id`),
KEY `item_id` (`item_id`)
) AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {access_caches} VALUES (1,1,'1','0','0','1','0','0');
DROP TABLE IF EXISTS {access_intents};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {access_intents} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`item_id` int(9) DEFAULT NULL,
@@ -31,11 +31,11 @@ CREATE TABLE {access_intents} (
`add_2` binary(1) DEFAULT NULL,
PRIMARY KEY (`id`)
) AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {access_intents} VALUES (1,1,'1','1','0','0','1','1','0','0');
DROP TABLE IF EXISTS {caches};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {caches} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`key` varchar(255) NOT NULL,
@@ -46,10 +46,10 @@ CREATE TABLE {caches} (
UNIQUE KEY `key` (`key`),
KEY `tags` (`tags`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {comments};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {comments} (
`author_id` int(9) DEFAULT NULL,
`created` int(9) NOT NULL,
@@ -75,10 +75,10 @@ CREATE TABLE {comments} (
`updated` int(9) NOT NULL,
PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {failed_auths};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {failed_auths} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`count` int(9) NOT NULL,
@@ -86,10 +86,10 @@ CREATE TABLE {failed_auths} (
`time` int(9) NOT NULL,
PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {graphics_rules};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {graphics_rules} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`active` tinyint(1) DEFAULT '0',
@@ -100,12 +100,12 @@ CREATE TABLE {graphics_rules} (
`target` varchar(32) NOT NULL,
PRIMARY KEY (`id`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {graphics_rules} VALUES (1,1,'a:3:{s:5:\"width\";i:200;s:6:\"height\";i:200;s:6:\"master\";i:2;}','gallery','gallery_graphics::resize',100,'thumb');
INSERT INTO {graphics_rules} VALUES (2,1,'a:3:{s:5:\"width\";i:640;s:6:\"height\";i:640;s:6:\"master\";i:2;}','gallery','gallery_graphics::resize',100,'resize');
DROP TABLE IF EXISTS {groups};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {groups} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`name` char(64) DEFAULT NULL,
@@ -113,25 +113,25 @@ CREATE TABLE {groups} (
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {groups} VALUES (1,'Everybody',1);
INSERT INTO {groups} VALUES (2,'Registered Users',1);
DROP TABLE IF EXISTS {groups_users};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {groups_users} (
`group_id` int(9) NOT NULL,
`user_id` int(9) NOT NULL,
PRIMARY KEY (`group_id`,`user_id`),
UNIQUE KEY `user_id` (`user_id`,`group_id`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {groups_users} VALUES (1,1);
INSERT INTO {groups_users} VALUES (1,2);
INSERT INTO {groups_users} VALUES (2,2);
DROP TABLE IF EXISTS {incoming_translations};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {incoming_translations} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`key` char(32) NOT NULL,
@@ -143,10 +143,10 @@ CREATE TABLE {incoming_translations} (
UNIQUE KEY `key` (`key`,`locale`),
KEY `locale_key` (`locale`,`key`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {items};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {items} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`album_cover_item_id` int(9) DEFAULT NULL,
@@ -188,11 +188,11 @@ CREATE TABLE {items} (
KEY `weight` (`weight`),
KEY `left_ptr` (`left_ptr`)
) AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {items} VALUES (1,NULL,NULL,UNIX_TIMESTAMP(),'',NULL,1,1,NULL,NULL,2,0,NULL,'','',1,NULL,NULL,2,NULL,'weight','ASC',1,NULL,NULL,'Gallery','album',UNIX_TIMESTAMP(),0,1,NULL,'1','1');
DROP TABLE IF EXISTS {items_tags};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {items_tags} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`item_id` int(9) NOT NULL,
@@ -201,10 +201,10 @@ CREATE TABLE {items_tags} (
KEY `tag_id` (`tag_id`,`id`),
KEY `item_id` (`item_id`,`id`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {logs};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {logs} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`category` varchar(64) DEFAULT NULL,
@@ -217,10 +217,10 @@ CREATE TABLE {logs} (
`user_id` int(9) DEFAULT '0',
PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {messages};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {messages} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`key` varchar(255) DEFAULT NULL,
@@ -228,11 +228,12 @@ CREATE TABLE {messages} (
`value` text,
PRIMARY KEY (`id`),
UNIQUE KEY `key` (`key`)
-) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+) AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
+SET character_set_client = @saved_cs_client;
+INSERT INTO {messages} VALUES (1,'upgrade_now','3','Some of your modules are out of date. Upgrade now! ');
DROP TABLE IF EXISTS {modules};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {modules} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`active` tinyint(1) DEFAULT '0',
@@ -243,7 +244,7 @@ CREATE TABLE {modules} (
UNIQUE KEY `name` (`name`),
KEY `weight` (`weight`)
) AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {modules} VALUES (1,1,'gallery',48,1);
INSERT INTO {modules} VALUES (2,1,'user',3,2);
INSERT INTO {modules} VALUES (3,1,'comment',4,3);
@@ -254,8 +255,8 @@ INSERT INTO {modules} VALUES (7,1,'search',1,7);
INSERT INTO {modules} VALUES (8,1,'slideshow',2,8);
INSERT INTO {modules} VALUES (9,1,'tag',3,9);
DROP TABLE IF EXISTS {outgoing_translations};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {outgoing_translations} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`base_revision` int(9) DEFAULT NULL,
@@ -267,10 +268,10 @@ CREATE TABLE {outgoing_translations} (
UNIQUE KEY `key` (`key`,`locale`),
KEY `locale_key` (`locale`,`key`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {permissions};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {permissions} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`display_name` varchar(64) DEFAULT NULL,
@@ -278,14 +279,14 @@ CREATE TABLE {permissions} (
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {permissions} VALUES (1,'View','view');
INSERT INTO {permissions} VALUES (2,'View full size','view_full');
INSERT INTO {permissions} VALUES (3,'Edit','edit');
INSERT INTO {permissions} VALUES (4,'Add','add');
DROP TABLE IF EXISTS {search_records};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {search_records} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`item_id` int(9) DEFAULT NULL,
@@ -295,21 +296,21 @@ CREATE TABLE {search_records} (
KEY `item_id` (`item_id`),
FULLTEXT KEY `data` (`data`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {search_records} VALUES (1,1,0,' Gallery');
DROP TABLE IF EXISTS {sessions};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {sessions} (
`session_id` varchar(127) NOT NULL,
`data` text NOT NULL,
`last_activity` int(10) unsigned NOT NULL,
PRIMARY KEY (`session_id`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {tags};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {tags} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`name` varchar(128) NOT NULL,
@@ -317,10 +318,10 @@ CREATE TABLE {tags} (
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {tasks};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {tasks} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`callback` varchar(128) DEFAULT NULL,
@@ -335,10 +336,10 @@ CREATE TABLE {tasks} (
PRIMARY KEY (`id`),
KEY `owner_id` (`owner_id`)
) DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS {themes};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {themes} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`name` varchar(64) DEFAULT NULL,
@@ -346,12 +347,12 @@ CREATE TABLE {themes} (
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {themes} VALUES (1,'wind',1);
INSERT INTO {themes} VALUES (2,'admin_wind',1);
DROP TABLE IF EXISTS {users};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {users} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`name` varchar(32) NOT NULL,
@@ -369,12 +370,12 @@ CREATE TABLE {users} (
UNIQUE KEY `name` (`name`),
UNIQUE KEY `hash` (`hash`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+SET character_set_client = @saved_cs_client;
INSERT INTO {users} VALUES (1,'guest','Guest User','',0,0,NULL,0,1,NULL,NULL,NULL);
INSERT INTO {users} VALUES (2,'admin','Gallery Administrator','',0,0,'unknown@unknown.com',1,0,NULL,NULL,NULL);
DROP TABLE IF EXISTS {vars};
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE {vars} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`module_name` varchar(64) NOT NULL,
@@ -382,8 +383,8 @@ CREATE TABLE {vars} (
`value` text,
PRIMARY KEY (`id`),
UNIQUE KEY `module_name` (`module_name`,`name`)
-) AUTO_INCREMENT=43 DEFAULT CHARSET=utf8;
-/*!40101 SET character_set_client = @saved_cs_client */;
+) AUTO_INCREMENT=44 DEFAULT CHARSET=utf8;
+SET character_set_client = @saved_cs_client;
INSERT INTO {vars} VALUES (NULL,'gallery','active_site_theme','wind');
INSERT INTO {vars} VALUES (NULL,'gallery','active_admin_theme','admin_wind');
INSERT INTO {vars} VALUES (NULL,'gallery','page_size','9');
@@ -413,8 +414,9 @@ INSERT INTO {vars} VALUES (NULL,'gallery','email_line_length','70');
INSERT INTO {vars} VALUES (NULL,'gallery','email_header_separator','s:1:\"\n\";');
INSERT INTO {vars} VALUES (NULL,'gallery','show_user_profiles_to','registered_users');
INSERT INTO {vars} VALUES (NULL,'gallery','extra_binary_paths','/usr/local/bin:/opt/local/bin:/opt/bin');
-INSERT INTO {vars} VALUES (NULL,'gallery','timezone','PST8PDT');
+INSERT INTO {vars} VALUES (NULL,'gallery','timezone','System/Localtime');
INSERT INTO {vars} VALUES (NULL,'gallery','blocks_site_sidebar','a:4:{i:10;a:2:{i:0;s:7:\"gallery\";i:1;s:8:\"language\";}i:11;a:2:{i:0;s:4:\"info\";i:1;s:8:\"metadata\";}i:12;a:2:{i:0;s:3:\"rss\";i:1;s:9:\"rss_feeds\";}i:13;a:2:{i:0;s:3:\"tag\";i:1;s:3:\"tag\";}}');
+INSERT INTO {vars} VALUES (NULL,'user','minimum_password_length','5');
INSERT INTO {vars} VALUES (NULL,'gallery','identity_provider','user');
INSERT INTO {vars} VALUES (NULL,'user','mininum_password_length','5');
INSERT INTO {vars} VALUES (NULL,'comment','spam_caught','0');
diff --git a/modules/user/controllers/password.php b/modules/user/controllers/password.php
index 4e93d5ce..cd46bbed 100644
--- a/modules/user/controllers/password.php
+++ b/modules/user/controllers/password.php
@@ -105,7 +105,7 @@ class Password_Controller extends Controller {
if (!empty($hash)) {
$hidden->value($hash);
}
- $minimum_length = module::get_var("user", "mininum_password_length", 5);
+ $minimum_length = module::get_var("user", "minimum_password_length", 5);
$input_password = $group->password("password")->label(t("Password"))->id("g-password")
->rules($minimum_length ? "required|length[$minimum_length, 40]" : "length[40]");
$group->password("password2")->label(t("Confirm Password"))->id("g-password2")
diff --git a/modules/user/helpers/user_installer.php b/modules/user/helpers/user_installer.php
index b889af49..b5e40a24 100644
--- a/modules/user/helpers/user_installer.php
+++ b/modules/user/helpers/user_installer.php
@@ -23,6 +23,7 @@ class user_installer {
}
static function install() {
+ module::set_var("user", "minimum_password_length", 5);
IdentityProvider::change_provider("user");
}
@@ -44,6 +45,12 @@ class user_installer {
->execute();
module::set_version("user", $version = 3);
}
+
+ if ($version == 3) {
+ module::set_var("user", "minimum_password_length", 5);
+ module::clear_var("user", "mininum_password_length");
+ module::set_version("user", $version = 4);
+ }
}
static function uninstall() {
diff --git a/modules/user/models/user.php b/modules/user/models/user.php
index 145738ca..a8a3a0e7 100644
--- a/modules/user/models/user.php
+++ b/modules/user/models/user.php
@@ -147,7 +147,7 @@ class User_Model_Core extends ORM implements User_Definition {
}
if (!$this->loaded() || isset($this->password_length)) {
- $minimum_length = module::get_var("user", "mininum_password_length", 5);
+ $minimum_length = module::get_var("user", "minimum_password_length", 5);
if ($this->password_length < $minimum_length) {
$v->add_error("password", "min_length");
}
diff --git a/modules/user/module.info b/modules/user/module.info
index 185a3e3a..b7594815 100644
--- a/modules/user/module.info
+++ b/modules/user/module.info
@@ -1,4 +1,4 @@
name = "Users and Groups"
description = "Gallery 3 user and group management"
-version = 3
+version = 4
--
cgit v1.2.3
From b30afaeab7d931f4d380a96c4aadd6deb86df5e2 Mon Sep 17 00:00:00 2001
From: Tim Almdal
Date: Sat, 23 Apr 2011 12:27:46 -0700
Subject: Fix ticket #1694 (continued). Reset the corrected user module
variable to the value of the incorrect spelling (don't assume that the
original value was still 5.
---
modules/user/helpers/user_installer.php | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
(limited to 'modules')
diff --git a/modules/user/helpers/user_installer.php b/modules/user/helpers/user_installer.php
index b5e40a24..b9f3c57d 100644
--- a/modules/user/helpers/user_installer.php
+++ b/modules/user/helpers/user_installer.php
@@ -47,7 +47,8 @@ class user_installer {
}
if ($version == 3) {
- module::set_var("user", "minimum_password_length", 5);
+ $password_length = module::get_var("user", "mininum_password_length", 5);
+ module::set_var("user", "minimum_password_length", $password_length);
module::clear_var("user", "mininum_password_length");
module::set_version("user", $version = 4);
}
--
cgit v1.2.3
From 59d5ddc8abe882c3cc3994ca2478d8dd0915f0fe Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 12:48:04 -0700
Subject: Set the default value for gallery.timezone to null so that each
install uses date_default_timezone_get() in modules/gallery/config/locale.php
but it's still overrideable in Admin > Settings > Advanced. Follow on fix
for #1637.
---
installer/install.sql | 142 +++++++++++++-------------
modules/gallery/helpers/gallery_installer.php | 13 +--
modules/gallery/module.info | 2 +-
3 files changed, 79 insertions(+), 78 deletions(-)
(limited to 'modules')
diff --git a/installer/install.sql b/installer/install.sql
index 7f9eda59..bbc2a5c7 100644
--- a/installer/install.sql
+++ b/installer/install.sql
@@ -1,6 +1,6 @@
DROP TABLE IF EXISTS {access_caches};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {access_caches} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`item_id` int(9) DEFAULT NULL,
@@ -13,11 +13,11 @@ CREATE TABLE {access_caches} (
PRIMARY KEY (`id`),
KEY `item_id` (`item_id`)
) AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {access_caches} VALUES (1,1,'1','0','0','1','0','0');
DROP TABLE IF EXISTS {access_intents};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {access_intents} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`item_id` int(9) DEFAULT NULL,
@@ -31,11 +31,11 @@ CREATE TABLE {access_intents} (
`add_2` binary(1) DEFAULT NULL,
PRIMARY KEY (`id`)
) AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {access_intents} VALUES (1,1,'1','1','0','0','1','1','0','0');
DROP TABLE IF EXISTS {caches};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {caches} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`key` varchar(255) NOT NULL,
@@ -46,10 +46,10 @@ CREATE TABLE {caches} (
UNIQUE KEY `key` (`key`),
KEY `tags` (`tags`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {comments};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {comments} (
`author_id` int(9) DEFAULT NULL,
`created` int(9) NOT NULL,
@@ -75,10 +75,10 @@ CREATE TABLE {comments} (
`updated` int(9) NOT NULL,
PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {failed_auths};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {failed_auths} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`count` int(9) NOT NULL,
@@ -86,10 +86,10 @@ CREATE TABLE {failed_auths} (
`time` int(9) NOT NULL,
PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {graphics_rules};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {graphics_rules} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`active` tinyint(1) DEFAULT '0',
@@ -100,12 +100,12 @@ CREATE TABLE {graphics_rules} (
`target` varchar(32) NOT NULL,
PRIMARY KEY (`id`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {graphics_rules} VALUES (1,1,'a:3:{s:5:\"width\";i:200;s:6:\"height\";i:200;s:6:\"master\";i:2;}','gallery','gallery_graphics::resize',100,'thumb');
INSERT INTO {graphics_rules} VALUES (2,1,'a:3:{s:5:\"width\";i:640;s:6:\"height\";i:640;s:6:\"master\";i:2;}','gallery','gallery_graphics::resize',100,'resize');
DROP TABLE IF EXISTS {groups};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {groups} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`name` char(64) DEFAULT NULL,
@@ -113,25 +113,25 @@ CREATE TABLE {groups} (
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {groups} VALUES (1,'Everybody',1);
INSERT INTO {groups} VALUES (2,'Registered Users',1);
DROP TABLE IF EXISTS {groups_users};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {groups_users} (
`group_id` int(9) NOT NULL,
`user_id` int(9) NOT NULL,
PRIMARY KEY (`group_id`,`user_id`),
UNIQUE KEY `user_id` (`user_id`,`group_id`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {groups_users} VALUES (1,1);
INSERT INTO {groups_users} VALUES (1,2);
INSERT INTO {groups_users} VALUES (2,2);
DROP TABLE IF EXISTS {incoming_translations};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {incoming_translations} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`key` char(32) NOT NULL,
@@ -143,10 +143,10 @@ CREATE TABLE {incoming_translations} (
UNIQUE KEY `key` (`key`,`locale`),
KEY `locale_key` (`locale`,`key`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {items};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {items} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`album_cover_item_id` int(9) DEFAULT NULL,
@@ -188,11 +188,11 @@ CREATE TABLE {items} (
KEY `weight` (`weight`),
KEY `left_ptr` (`left_ptr`)
) AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {items} VALUES (1,NULL,NULL,UNIX_TIMESTAMP(),'',NULL,1,1,NULL,NULL,2,0,NULL,'','',1,NULL,NULL,2,NULL,'weight','ASC',1,NULL,NULL,'Gallery','album',UNIX_TIMESTAMP(),0,1,NULL,'1','1');
DROP TABLE IF EXISTS {items_tags};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {items_tags} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`item_id` int(9) NOT NULL,
@@ -201,10 +201,10 @@ CREATE TABLE {items_tags} (
KEY `tag_id` (`tag_id`,`id`),
KEY `item_id` (`item_id`,`id`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {logs};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {logs} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`category` varchar(64) DEFAULT NULL,
@@ -217,10 +217,10 @@ CREATE TABLE {logs} (
`user_id` int(9) DEFAULT '0',
PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {messages};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {messages} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`key` varchar(255) DEFAULT NULL,
@@ -229,11 +229,11 @@ CREATE TABLE {messages} (
PRIMARY KEY (`id`),
UNIQUE KEY `key` (`key`)
) AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {messages} VALUES (1,'upgrade_now','3','Some of your modules are out of date. Upgrade now! ');
DROP TABLE IF EXISTS {modules};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {modules} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`active` tinyint(1) DEFAULT '0',
@@ -244,8 +244,8 @@ CREATE TABLE {modules} (
UNIQUE KEY `name` (`name`),
KEY `weight` (`weight`)
) AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
-INSERT INTO {modules} VALUES (1,1,'gallery',48,1);
+/*!40101 SET character_set_client = @saved_cs_client */;
+INSERT INTO {modules} VALUES (1,1,'gallery',49,1);
INSERT INTO {modules} VALUES (2,1,'user',3,2);
INSERT INTO {modules} VALUES (3,1,'comment',4,3);
INSERT INTO {modules} VALUES (4,1,'organize',4,4);
@@ -255,8 +255,8 @@ INSERT INTO {modules} VALUES (7,1,'search',1,7);
INSERT INTO {modules} VALUES (8,1,'slideshow',2,8);
INSERT INTO {modules} VALUES (9,1,'tag',3,9);
DROP TABLE IF EXISTS {outgoing_translations};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {outgoing_translations} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`base_revision` int(9) DEFAULT NULL,
@@ -268,10 +268,10 @@ CREATE TABLE {outgoing_translations} (
UNIQUE KEY `key` (`key`,`locale`),
KEY `locale_key` (`locale`,`key`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {permissions};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {permissions} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`display_name` varchar(64) DEFAULT NULL,
@@ -279,14 +279,14 @@ CREATE TABLE {permissions} (
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {permissions} VALUES (1,'View','view');
INSERT INTO {permissions} VALUES (2,'View full size','view_full');
INSERT INTO {permissions} VALUES (3,'Edit','edit');
INSERT INTO {permissions} VALUES (4,'Add','add');
DROP TABLE IF EXISTS {search_records};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {search_records} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`item_id` int(9) DEFAULT NULL,
@@ -296,21 +296,21 @@ CREATE TABLE {search_records} (
KEY `item_id` (`item_id`),
FULLTEXT KEY `data` (`data`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {search_records} VALUES (1,1,0,' Gallery');
DROP TABLE IF EXISTS {sessions};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {sessions} (
`session_id` varchar(127) NOT NULL,
`data` text NOT NULL,
`last_activity` int(10) unsigned NOT NULL,
PRIMARY KEY (`session_id`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {tags};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {tags} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`name` varchar(128) NOT NULL,
@@ -318,10 +318,10 @@ CREATE TABLE {tags} (
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {tasks};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {tasks} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`callback` varchar(128) DEFAULT NULL,
@@ -336,10 +336,10 @@ CREATE TABLE {tasks} (
PRIMARY KEY (`id`),
KEY `owner_id` (`owner_id`)
) DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS {themes};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {themes} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`name` varchar(64) DEFAULT NULL,
@@ -347,12 +347,12 @@ CREATE TABLE {themes} (
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {themes} VALUES (1,'wind',1);
INSERT INTO {themes} VALUES (2,'admin_wind',1);
DROP TABLE IF EXISTS {users};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {users} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`name` varchar(32) NOT NULL,
@@ -370,12 +370,12 @@ CREATE TABLE {users} (
UNIQUE KEY `name` (`name`),
UNIQUE KEY `hash` (`hash`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {users} VALUES (1,'guest','Guest User','',0,0,NULL,0,1,NULL,NULL,NULL);
INSERT INTO {users} VALUES (2,'admin','Gallery Administrator','',0,0,'unknown@unknown.com',1,0,NULL,NULL,NULL);
DROP TABLE IF EXISTS {vars};
-SET @saved_cs_client = @@character_set_client;
-SET character_set_client = utf8;
+/*!40101 SET @saved_cs_client = @@character_set_client */;
+/*!40101 SET character_set_client = utf8 */;
CREATE TABLE {vars} (
`id` int(9) NOT NULL AUTO_INCREMENT,
`module_name` varchar(64) NOT NULL,
@@ -384,7 +384,7 @@ CREATE TABLE {vars} (
PRIMARY KEY (`id`),
UNIQUE KEY `module_name` (`module_name`,`name`)
) AUTO_INCREMENT=44 DEFAULT CHARSET=utf8;
-SET character_set_client = @saved_cs_client;
+/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {vars} VALUES (NULL,'gallery','active_site_theme','wind');
INSERT INTO {vars} VALUES (NULL,'gallery','active_admin_theme','admin_wind');
INSERT INTO {vars} VALUES (NULL,'gallery','page_size','9');
@@ -414,7 +414,7 @@ INSERT INTO {vars} VALUES (NULL,'gallery','email_line_length','70');
INSERT INTO {vars} VALUES (NULL,'gallery','email_header_separator','s:1:\"\n\";');
INSERT INTO {vars} VALUES (NULL,'gallery','show_user_profiles_to','registered_users');
INSERT INTO {vars} VALUES (NULL,'gallery','extra_binary_paths','/usr/local/bin:/opt/local/bin:/opt/bin');
-INSERT INTO {vars} VALUES (NULL,'gallery','timezone','System/Localtime');
+INSERT INTO {vars} VALUES (NULL,'gallery','timezone',NULL);
INSERT INTO {vars} VALUES (NULL,'gallery','blocks_site_sidebar','a:4:{i:10;a:2:{i:0;s:7:\"gallery\";i:1;s:8:\"language\";}i:11;a:2:{i:0;s:4:\"info\";i:1;s:8:\"metadata\";}i:12;a:2:{i:0;s:3:\"rss\";i:1;s:9:\"rss_feeds\";}i:13;a:2:{i:0;s:3:\"tag\";i:1;s:3:\"tag\";}}');
INSERT INTO {vars} VALUES (NULL,'user','minimum_password_length','5');
INSERT INTO {vars} VALUES (NULL,'gallery','identity_provider','user');
diff --git a/modules/gallery/helpers/gallery_installer.php b/modules/gallery/helpers/gallery_installer.php
index 83c5ed71..7a9af402 100644
--- a/modules/gallery/helpers/gallery_installer.php
+++ b/modules/gallery/helpers/gallery_installer.php
@@ -311,9 +311,9 @@ class gallery_installer {
module::set_var("gallery", "email_header_separator", serialize("\n"));
module::set_var("gallery", "show_user_profiles_to", "registered_users");
module::set_var("gallery", "extra_binary_paths", "/usr/local/bin:/opt/local/bin:/opt/bin");
- module::set_var("gallery", "timezone", Kohana::config("locale.timezone"));
+ module::set_var("gallery", "timezone", null);
- module::set_version("gallery", 48);
+ module::set_version("gallery", 49);
}
static function upgrade($version) {
@@ -685,11 +685,12 @@ class gallery_installer {
module::set_version("gallery", $version = 47);
}
- if ($version == 47) {
+ if ($version == 47 || $version == 48) {
// Add configuration variable to set timezone. Defaults to the currently
- // used timezone (from PHP configuration).
- module::set_var("gallery", "timezone", Kohana::config("locale.timezone"));
- module::set_version("gallery", $version = 48);
+ // used timezone (from PHP configuration). Note that in v48 we werew
+ // setting this value incorrectly, so we're going to stomp this value for v49.
+ module::set_var("gallery", "timezone", null);
+ module::set_version("gallery", $version = 49);
}
}
diff --git a/modules/gallery/module.info b/modules/gallery/module.info
index 807d08fd..74c0658f 100644
--- a/modules/gallery/module.info
+++ b/modules/gallery/module.info
@@ -1,3 +1,3 @@
name = "Gallery 3"
description = "Gallery core application"
-version = 48
+version = 49
--
cgit v1.2.3
From 4d38c505cb0412eb4b470bdf95c6b317ef5a691d Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 12:55:30 -0700
Subject: Further cleanup for minimum_password_length -- update
user_installer::initialize() with the right module version number for the
user module and fix the misspelling there then rebuild the installer.sql.
#1694.
---
installer/install.sql | 10 ++++------
modules/user/helpers/user_installer.php | 6 +++---
2 files changed, 7 insertions(+), 9 deletions(-)
(limited to 'modules')
diff --git a/installer/install.sql b/installer/install.sql
index bbc2a5c7..2b8ec11e 100644
--- a/installer/install.sql
+++ b/installer/install.sql
@@ -228,9 +228,8 @@ CREATE TABLE {messages} (
`value` text,
PRIMARY KEY (`id`),
UNIQUE KEY `key` (`key`)
-) AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
+) DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;
-INSERT INTO {messages} VALUES (1,'upgrade_now','3','Some of your modules are out of date. Upgrade now! ');
DROP TABLE IF EXISTS {modules};
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
@@ -246,7 +245,7 @@ CREATE TABLE {modules} (
) AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {modules} VALUES (1,1,'gallery',49,1);
-INSERT INTO {modules} VALUES (2,1,'user',3,2);
+INSERT INTO {modules} VALUES (2,1,'user',4,2);
INSERT INTO {modules} VALUES (3,1,'comment',4,3);
INSERT INTO {modules} VALUES (4,1,'organize',4,4);
INSERT INTO {modules} VALUES (5,1,'info',2,5);
@@ -383,7 +382,7 @@ CREATE TABLE {vars} (
`value` text,
PRIMARY KEY (`id`),
UNIQUE KEY `module_name` (`module_name`,`name`)
-) AUTO_INCREMENT=44 DEFAULT CHARSET=utf8;
+) AUTO_INCREMENT=43 DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO {vars} VALUES (NULL,'gallery','active_site_theme','wind');
INSERT INTO {vars} VALUES (NULL,'gallery','active_admin_theme','admin_wind');
@@ -416,9 +415,8 @@ INSERT INTO {vars} VALUES (NULL,'gallery','show_user_profiles_to','registered_us
INSERT INTO {vars} VALUES (NULL,'gallery','extra_binary_paths','/usr/local/bin:/opt/local/bin:/opt/bin');
INSERT INTO {vars} VALUES (NULL,'gallery','timezone',NULL);
INSERT INTO {vars} VALUES (NULL,'gallery','blocks_site_sidebar','a:4:{i:10;a:2:{i:0;s:7:\"gallery\";i:1;s:8:\"language\";}i:11;a:2:{i:0;s:4:\"info\";i:1;s:8:\"metadata\";}i:12;a:2:{i:0;s:3:\"rss\";i:1;s:9:\"rss_feeds\";}i:13;a:2:{i:0;s:3:\"tag\";i:1;s:3:\"tag\";}}');
-INSERT INTO {vars} VALUES (NULL,'user','minimum_password_length','5');
INSERT INTO {vars} VALUES (NULL,'gallery','identity_provider','user');
-INSERT INTO {vars} VALUES (NULL,'user','mininum_password_length','5');
+INSERT INTO {vars} VALUES (NULL,'user','minimum_password_length','5');
INSERT INTO {vars} VALUES (NULL,'comment','spam_caught','0');
INSERT INTO {vars} VALUES (NULL,'comment','access_permissions','everybody');
INSERT INTO {vars} VALUES (NULL,'info','show_title','1');
diff --git a/modules/user/helpers/user_installer.php b/modules/user/helpers/user_installer.php
index b9f3c57d..9b582773 100644
--- a/modules/user/helpers/user_installer.php
+++ b/modules/user/helpers/user_installer.php
@@ -23,8 +23,8 @@ class user_installer {
}
static function install() {
- module::set_var("user", "minimum_password_length", 5);
IdentityProvider::change_provider("user");
+ // Set the latest version in initialize() below
}
static function upgrade($version) {
@@ -137,7 +137,7 @@ class user_installer {
access::allow($registered, "view", $root);
access::allow($registered, "view_full", $root);
- module::set_var("user", "mininum_password_length", 5);
- module::set_version("user", 3);
+ module::set_var("user", "minimum_password_length", 5);
+ module::set_version("user", 4);
}
}
\ No newline at end of file
--
cgit v1.2.3
From c1df782a75193d4ee33ec1d0be10739f9320705f Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 13:04:23 -0700
Subject: Use an absolute url for the upgrader link. Also, clear the
upgrade_now site status message every time we go to Admin > Modules. Fixes
#1695.
---
modules/gallery/controllers/admin_modules.php | 6 +++---
modules/gallery/helpers/module.php | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
(limited to 'modules')
diff --git a/modules/gallery/controllers/admin_modules.php b/modules/gallery/controllers/admin_modules.php
index 787785ea..b712d14f 100644
--- a/modules/gallery/controllers/admin_modules.php
+++ b/modules/gallery/controllers/admin_modules.php
@@ -19,6 +19,9 @@
*/
class Admin_Modules_Controller extends Admin_Controller {
public function index() {
+ // If modules need upgrading, this will get recreated in module::available()
+ site_status::clear("upgrade_now");
+
$view = new Admin_View("admin.html");
$view->page_title = t("Modules");
$view->content = new View("admin_modules.html");
@@ -103,9 +106,6 @@ class Admin_Modules_Controller extends Admin_Controller {
module::event("module_change", $changes);
- // If modules need upgrading, this will get recreated
- site_status::clear("upgrade_now");
-
// @todo this type of collation is questionable from an i18n perspective
if ($activated_names) {
message::success(t("Activated: %names", array("names" => join(", ", $activated_names))));
diff --git a/modules/gallery/helpers/module.php b/modules/gallery/helpers/module.php
index 37f7f68a..4b7d4a5f 100644
--- a/modules/gallery/helpers/module.php
+++ b/modules/gallery/helpers/module.php
@@ -101,7 +101,7 @@ class module_Core {
$m->locked = false;
if ($m->active && $m->version != $m->code_version) {
- site_status::warning(t("Some of your modules are out of date. Upgrade now! ", array("upgrader_url" => url::site("upgrader"))), "upgrade_now");
+ site_status::warning(t("Some of your modules are out of date. Upgrade now! ", array("upgrader_url" => url::abs_site("upgrader"))), "upgrade_now");
}
}
--
cgit v1.2.3
From 5ce85636329b14673718836b3631a3e46efdc3bb Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 13:20:22 -0700
Subject: Move the calculation for item_related_update ahead of the duplicate
tag merge so that we don't trigger an item_related_update on items who
semantically have the same tag after the merge. Follow-on for #1628.
---
modules/tag/models/tag.php | 22 ++++++++++++----------
1 file changed, 12 insertions(+), 10 deletions(-)
(limited to 'modules')
diff --git a/modules/tag/models/tag.php b/modules/tag/models/tag.php
index bb79e707..d4e385a2 100644
--- a/modules/tag/models/tag.php
+++ b/modules/tag/models/tag.php
@@ -69,13 +69,24 @@ class Tag_Model_Core extends ORM {
* to this tag.
*/
public function save() {
+ // Figure out what items have changed in this tag for our item_related_update event below
+ if (isset($this->object_relations["items"])) {
+ $added = array_diff($this->changed_relations["items"], $this->object_relations["items"]);
+ $removed = array_diff($this->object_relations["items"], $this->changed_relations["items"]);
+ if (isset($this->changed_relations["items"])) {
+ $changed = array_merge($added, $removed);
+ }
+ $this->count = count($this->object_relations["items"]) + count($added) - count($removed);
+ }
+
// Check to see if another tag exists with the same name
$duplicate_tag = ORM::factory("tag")
->where("name", "=", $this->name)
->where("id", "!=", $this->id)
->find();
if ($duplicate_tag->loaded()) {
- // If so, tag its items with this tag so as to merge it
+ // If so, tag its items with this tag so as to merge it. Do this after we figure out what's
+ // changed so that we don't notify on this change to keep churn down.
$duplicate_tag_items = ORM::factory("item")
->join("items_tags", "items.id", "items_tags.item_id")
->where("items_tags.tag_id", "=", $duplicate_tag->id)
@@ -88,15 +99,6 @@ class Tag_Model_Core extends ORM {
$duplicate_tag->delete();
}
- if (isset($this->object_relations["items"])) {
- $added = array_diff($this->changed_relations["items"], $this->object_relations["items"]);
- $removed = array_diff($this->object_relations["items"], $this->changed_relations["items"]);
- if (isset($this->changed_relations["items"])) {
- $changed = array_merge($added, $removed);
- }
- $this->count = count($this->object_relations["items"]) + count($added) - count($removed);
- }
-
$result = parent::save();
if (!empty($changed)) {
--
cgit v1.2.3
From cc8d881973cf82dc4681ad4ceeae9b6eaa139f86 Mon Sep 17 00:00:00 2001
From: Andy Lindeman
Date: Sat, 23 Apr 2011 15:48:10 -0400
Subject: Add iPad/iPhone support for video playback
* Resolves #1634
---
lib/flowplayer.controls.swf | Bin 27007 -> 36843 bytes
lib/flowplayer.js | 216 ++++++++++++++++++++---------
lib/flowplayer.pseudostreaming.swf | Bin 3763 -> 4477 bytes
lib/flowplayer.swf | Bin 110762 -> 120221 bytes
modules/gallery/views/movieplayer.html.php | 2 +-
5 files changed, 153 insertions(+), 65 deletions(-)
(limited to 'modules')
diff --git a/lib/flowplayer.controls.swf b/lib/flowplayer.controls.swf
index aacdcd30..5507a531 100644
Binary files a/lib/flowplayer.controls.swf and b/lib/flowplayer.controls.swf differ
diff --git a/lib/flowplayer.js b/lib/flowplayer.js
index 57f00e65..3bbdc1d3 100644
--- a/lib/flowplayer.js
+++ b/lib/flowplayer.js
@@ -10,13 +10,13 @@ function el(id){return document.getElementById(id);}
function extend(to,from,skipFuncs){if(typeof from!='object'){return to;}
if(to&&from){each(from,function(name,value){if(!skipFuncs||typeof value!='function'){to[name]=value;}});}
return to;}
-function select(query){var index=query.indexOf(".");if(index!=-1){var tag=query.substring(0,index)||"*";var klass=query.substring(index+1,query.length);var els=[];each(document.getElementsByTagName(tag),function(){if(this.className&&this.className.indexOf(klass)!=-1){els.push(this);}});return els;}}
+function select(query){var index=query.indexOf(".");if(index!=-1){var tag=query.slice(0,index)||"*";var klass=query.slice(index+1,query.length);var els=[];each(document.getElementsByTagName(tag),function(){if(this.className&&this.className.indexOf(klass)!=-1){els.push(this);}});return els;}}
function stopEvent(e){e=e||window.event;if(e.preventDefault){e.stopPropagation();e.preventDefault();}else{e.returnValue=false;e.cancelBubble=true;}
return false;}
function bind(to,evt,fn){to[evt]=to[evt]||[];to[evt].push(fn);}
-function makeId(){return"_"+(""+Math.random()).substring(2,10);}
-var Clip=function(json,index,player){var self=this;var cuepoints={};var listeners={};self.index=index;if(typeof json=='string'){json={url:json};}
-extend(this,json,true);each(("Begin*,Start,Pause*,Resume*,Seek*,Stop*,Finish*,LastSecond,Update,BufferFull,BufferEmpty,BufferStop").split(","),function(){var evt="on"+this;if(evt.indexOf("*")!=-1){evt=evt.substring(0,evt.length-1);var before="onBefore"+evt.substring(2);self[before]=function(fn){bind(listeners,before,fn);return self;};}
+function makeId(){return"_"+(""+Math.random()).slice(2,10);}
+var Clip=function(json,index,player){var self=this,cuepoints={},listeners={};self.index=index;if(typeof json=='string'){json={url:json};}
+extend(this,json,true);each(("Begin*,Start,Pause*,Resume*,Seek*,Stop*,Finish*,LastSecond,Update,BufferFull,BufferEmpty,BufferStop").split(","),function(){var evt="on"+this;if(evt.indexOf("*")!=-1){evt=evt.slice(0,evt.length-1);var before="onBefore"+evt.slice(2);self[before]=function(fn){bind(listeners,before,fn);return self;};}
self[evt]=function(fn){bind(listeners,evt,fn);return self;};if(index==-1){if(self[before]){player[before]=self[before];}
if(self[evt]){player[evt]=self[evt];}}});extend(this,{onCuepoint:function(points,fn){if(arguments.length==1){cuepoints.embedded=[null,points];return self;}
if(typeof points=='number'){points=[points];}
@@ -26,7 +26,7 @@ var conf=player.getConfig();var clip=(index==-1)?conf.clip:conf.playlist[index];
target=target||self;if(evt=='onCuepoint'){var fn=cuepoints[arg1];if(fn){return fn[1].call(player,target,arg2);}}
if(arg1&&"onBeforeBegin,onMetaData,onStart,onUpdate,onResume".indexOf(evt)!=-1){extend(target,arg1);if(arg1.metaData){if(!target.duration){target.duration=arg1.metaData.duration;}else{target.fullDuration=arg1.metaData.duration;}}}
var ret=true;each(listeners[evt],function(){ret=this.call(player,target,arg1,arg2);});return ret;}});if(json.onCuepoint){var arg=json.onCuepoint;self.onCuepoint.apply(self,typeof arg=='function'?[arg]:arg);delete json.onCuepoint;}
-each(json,function(key,val){if(typeof val=='function'){bind(listeners,key,val);delete json[key];}});if(index==-1){player.onCuepoint=this.onCuepoint;}};var Plugin=function(name,json,player,fn){var listeners={};var self=this;var hasMethods=false;if(fn){extend(listeners,fn);}
+each(json,function(key,val){if(typeof val=='function'){bind(listeners,key,val);delete json[key];}});if(index==-1){player.onCuepoint=this.onCuepoint;}};var Plugin=function(name,json,player,fn){var self=this,listeners={},hasMethods=false;if(fn){extend(listeners,fn);}
each(json,function(key,val){if(typeof val=='function'){listeners[key]=val;delete json[key];}});extend(this,{animate:function(props,speed,fn){if(!props){return self;}
if(typeof speed=='function'){fn=speed;speed=500;}
if(typeof props=='string'){var key=props;props={};props[key]=speed;speed=500;}
@@ -37,32 +37,37 @@ json=player._api().fp_css(name,props);extend(self,json);return self;},show:funct
if(fn){var fnId=makeId();listeners[fnId]=fn;}
this.display=player._api().fp_fadeTo(name,o,speed,fnId);this.opacity=o;return self;},fadeIn:function(speed,fn){return self.fadeTo(1,speed,fn);},fadeOut:function(speed,fn){return self.fadeTo(0,speed,fn);},getName:function(){return name;},getPlayer:function(){return player;},_fireEvent:function(evt,arg,arg2){if(evt=='onUpdate'){var json=player._api().fp_getPlugin(name);if(!json){return;}
extend(self,json);delete self.methods;if(!hasMethods){each(json.methods,function(){var method=""+this;self[method]=function(){var a=[].slice.call(arguments);var ret=player._api().fp_invoke(name,method,a);return ret==='undefined'||ret===undefined?self:ret;};});hasMethods=true;}}
-var fn=listeners[evt];if(fn){fn.apply(self,arg);if(evt.substring(0,1)=="_"){delete listeners[evt];}}}});};function Player(wrapper,params,conf){var
-self=this,api=null,html,commonClip,playlist=[],plugins={},listeners={},playerId,apiId,playerIndex,activeIndex,swfHeight,wrapperHeight;extend(self,{id:function(){return playerId;},isLoaded:function(){return(api!==null);},getParent:function(){return wrapper;},hide:function(all){if(all){wrapper.style.height="0px";}
-if(api){api.style.height="0px";}
-return self;},show:function(){wrapper.style.height=wrapperHeight+"px";if(api){api.style.height=swfHeight+"px";}
-return self;},isHidden:function(){return api&&parseInt(api.style.height,10)===0;},load:function(fn){if(!api&&self._fireEvent("onBeforeLoad")!==false){each(players,function(){this.unload();});html=wrapper.innerHTML;if(html&&!flashembed.isSupported(params.version)){wrapper.innerHTML="";}
-flashembed(wrapper,params,{config:conf});if(fn){fn.cached=true;bind(listeners,"onLoad",fn);}}
-return self;},unload:function(){if(html.replace(/\s/g,'')!==''){if(self._fireEvent("onBeforeUnload")===false){return self;}
-try{if(api){api.fp_close();self._fireEvent("onUnload");}}catch(error){}
-api=null;wrapper.innerHTML=html;}
+var fn=listeners[evt];if(fn){var ret=fn.apply(self,arg);if(evt.slice(0,1)=="_"){delete listeners[evt];}
+return ret;}
+return self;}});};function Player(wrapper,params,conf){var self=this,api=null,isUnloading=false,html,commonClip,playlist=[],plugins={},listeners={},playerId,apiId,playerIndex,activeIndex,swfHeight,wrapperHeight;extend(self,{id:function(){return playerId;},isLoaded:function(){return(api!==null&&api.fp_play!==undefined&&!isUnloading);},getParent:function(){return wrapper;},hide:function(all){if(all){wrapper.style.height="0px";}
+if(self.isLoaded()){api.style.height="0px";}
+return self;},show:function(){wrapper.style.height=wrapperHeight+"px";if(self.isLoaded()){api.style.height=swfHeight+"px";}
+return self;},isHidden:function(){return self.isLoaded()&&parseInt(api.style.height,10)===0;},load:function(fn){if(!self.isLoaded()&&self._fireEvent("onBeforeLoad")!==false){var onPlayersUnloaded=function(){html=wrapper.innerHTML;if(html&&!flashembed.isSupported(params.version)){wrapper.innerHTML="";}
+if(fn){fn.cached=true;bind(listeners,"onLoad",fn);}
+flashembed(wrapper,params,{config:conf});};var unloadedPlayersNb=0;each(players,function(){this.unload(function(wasUnloaded){if(++unloadedPlayersNb==players.length){onPlayersUnloaded();}});});}
+return self;},unload:function(fn){if(this.isFullscreen()&&/WebKit/i.test(navigator.userAgent)){if(fn){fn(false);}
+return self;}
+if(html.replace(/\s/g,'')!==''){if(self._fireEvent("onBeforeUnload")===false){if(fn){fn(false);}
+return self;}
+isUnloading=true;try{if(api){api.fp_close();self._fireEvent("onUnload");}}catch(error){}
+var clean=function(){api=null;wrapper.innerHTML=html;isUnloading=false;if(fn){fn(true);}};setTimeout(clean,50);}
+else if(fn){fn(false);}
return self;},getClip:function(index){if(index===undefined){index=activeIndex;}
return playlist[index];},getCommonClip:function(){return commonClip;},getPlaylist:function(){return playlist;},getPlugin:function(name){var plugin=plugins[name];if(!plugin&&self.isLoaded()){var json=self._api().fp_getPlugin(name);if(json){plugin=new Plugin(name,json,self);plugins[name]=plugin;}}
-return plugin;},getScreen:function(){return self.getPlugin("screen");},getControls:function(){return self.getPlugin("controls");},getConfig:function(copy){return copy?clone(conf):conf;},getFlashParams:function(){return params;},loadPlugin:function(name,url,props,fn){if(typeof props=='function'){fn=props;props={};}
-var fnId=fn?makeId():"_";self._api().fp_loadPlugin(name,url,props,fnId);var arg={};arg[fnId]=fn;var p=new Plugin(name,null,self,arg);plugins[name]=p;return p;},getState:function(){return api?api.fp_getState():-1;},play:function(clip,instream){function play(){if(clip!==undefined){self._api().fp_play(clip,instream);}else{self._api().fp_play();}}
-if(api){play();}else{self.load(function(){play();});}
-return self;},getVersion:function(){var js="flowplayer.js 3.1.4";if(api){var ver=api.fp_getVersion();ver.push(js);return ver;}
-return js;},_api:function(){if(!api){throw"Flowplayer "+self.id()+" not loaded when calling an API method";}
-return api;},setClip:function(clip){self.setPlaylist([clip]);return self;},getIndex:function(){return playerIndex;}});each(("Click*,Load*,Unload*,Keypress*,Volume*,Mute*,Unmute*,PlaylistReplace,ClipAdd,Fullscreen*,FullscreenExit,Error,MouseOver,MouseOut").split(","),function(){var name="on"+this;if(name.indexOf("*")!=-1){name=name.substring(0,name.length-1);var name2="onBefore"+name.substring(2);self[name2]=function(fn){bind(listeners,name2,fn);return self;};}
-self[name]=function(fn){bind(listeners,name,fn);return self;};});each(("pause,resume,mute,unmute,stop,toggle,seek,getStatus,getVolume,setVolume,getTime,isPaused,isPlaying,startBuffering,stopBuffering,isFullscreen,toggleFullscreen,reset,close,setPlaylist,addClip,playFeed").split(","),function(){var name=this;self[name]=function(a1,a2){if(!api){return self;}
+return plugin;},getScreen:function(){return self.getPlugin("screen");},getControls:function(){return self.getPlugin("controls")._fireEvent("onUpdate");},getLogo:function(){try{return self.getPlugin("logo")._fireEvent("onUpdate");}catch(ignored){}},getPlay:function(){return self.getPlugin("play")._fireEvent("onUpdate");},getConfig:function(copy){return copy?clone(conf):conf;},getFlashParams:function(){return params;},loadPlugin:function(name,url,props,fn){if(typeof props=='function'){fn=props;props={};}
+var fnId=fn?makeId():"_";self._api().fp_loadPlugin(name,url,props,fnId);var arg={};arg[fnId]=fn;var p=new Plugin(name,null,self,arg);plugins[name]=p;return p;},getState:function(){return self.isLoaded()?api.fp_getState():-1;},play:function(clip,instream){var p=function(){if(clip!==undefined){self._api().fp_play(clip,instream);}else{self._api().fp_play();}};if(self.isLoaded()){p();}else if(isUnloading){setTimeout(function(){self.play(clip,instream);},50);}else{self.load(function(){p();});}
+return self;},getVersion:function(){var js="flowplayer.js 3.2.6";if(self.isLoaded()){var ver=api.fp_getVersion();ver.push(js);return ver;}
+return js;},_api:function(){if(!self.isLoaded()){throw"Flowplayer "+self.id()+" not loaded when calling an API method";}
+return api;},setClip:function(clip){self.setPlaylist([clip]);return self;},getIndex:function(){return playerIndex;},_swfHeight:function(){return api.clientHeight;}});each(("Click*,Load*,Unload*,Keypress*,Volume*,Mute*,Unmute*,PlaylistReplace,ClipAdd,Fullscreen*,FullscreenExit,Error,MouseOver,MouseOut").split(","),function(){var name="on"+this;if(name.indexOf("*")!=-1){name=name.slice(0,name.length-1);var name2="onBefore"+name.slice(2);self[name2]=function(fn){bind(listeners,name2,fn);return self;};}
+self[name]=function(fn){bind(listeners,name,fn);return self;};});each(("pause,resume,mute,unmute,stop,toggle,seek,getStatus,getVolume,setVolume,getTime,isPaused,isPlaying,startBuffering,stopBuffering,isFullscreen,toggleFullscreen,reset,close,setPlaylist,addClip,playFeed,setKeyboardShortcutsEnabled,isKeyboardShortcutsEnabled").split(","),function(){var name=this;self[name]=function(a1,a2){if(!self.isLoaded()){return self;}
var ret=null;if(a1!==undefined&&a2!==undefined){ret=api["fp_"+name](a1,a2);}else{ret=(a1===undefined)?api["fp_"+name]():api["fp_"+name](a1);}
return ret==='undefined'||ret===undefined?self:ret;};});self._fireEvent=function(a){if(typeof a=='string'){a=[a];}
var evt=a[0],arg0=a[1],arg1=a[2],arg2=a[3],i=0;if(conf.debug){log(a);}
-if(!api&&evt=='onLoad'&&arg0=='player'){api=api||el(apiId);swfHeight=api.clientHeight;each(playlist,function(){this._fireEvent("onLoad");});each(plugins,function(name,p){p._fireEvent("onUpdate");});commonClip._fireEvent("onLoad");}
+if(!self.isLoaded()&&evt=='onLoad'&&arg0=='player'){api=api||el(apiId);swfHeight=self._swfHeight();each(playlist,function(){this._fireEvent("onLoad");});each(plugins,function(name,p){p._fireEvent("onUpdate");});commonClip._fireEvent("onLoad");}
if(evt=='onLoad'&&arg0!='player'){return;}
if(evt=='onError'){if(typeof arg0=='string'||(typeof arg0=='number'&&typeof arg1=='number')){arg0=arg1;arg1=arg2;}}
if(evt=='onContextMenu'){each(conf.contextMenu[arg0],function(key,fn){fn.call(self);});return;}
-if(evt=='onPluginEvent'){var name=arg0.name||arg0;var p=plugins[name];if(p){p._fireEvent("onUpdate",arg0);p._fireEvent(arg1,a.slice(3));}
+if(evt=='onPluginEvent'||evt=='onBeforePluginEvent'){var name=arg0.name||arg0;var p=plugins[name];if(p){p._fireEvent("onUpdate",arg0);return p._fireEvent(arg1,a.slice(3));}
return;}
if(evt=='onPlaylistReplace'){playlist=[];var index=0;each(arg0,function(){playlist.push(new Clip(this,index++,self));});}
if(evt=='onClipAdd'){if(arg0.isInStream){return;}
@@ -72,60 +77,143 @@ if(!clip||ret!==false){ret=commonClip._fireEvent(evt,arg1,arg2,clip);}}
each(listeners[evt],function(){ret=this.call(self,arg0,arg1);if(this.cached){listeners[evt].splice(i,1);}
if(ret===false){return false;}
i++;});return ret;};function init(){if($f(wrapper)){$f(wrapper).getParent().innerHTML="";playerIndex=$f(wrapper).getIndex();players[playerIndex]=self;}else{players.push(self);playerIndex=players.length-1;}
-wrapperHeight=parseInt(wrapper.style.height,10)||wrapper.clientHeight;if(typeof params=='string'){params={src:params};}
-playerId=wrapper.id||"fp"+makeId();apiId=params.id||playerId+"_api";params.id=apiId;conf.playerId=playerId;if(typeof conf=='string'){conf={clip:{url:conf}};}
+wrapperHeight=parseInt(wrapper.style.height,10)||wrapper.clientHeight;playerId=wrapper.id||"fp"+makeId();apiId=params.id||playerId+"_api";params.id=apiId;conf.playerId=playerId;if(typeof conf=='string'){conf={clip:{url:conf}};}
if(typeof conf.clip=='string'){conf.clip={url:conf.clip};}
conf.clip=conf.clip||{};if(wrapper.getAttribute("href",2)&&!conf.clip.url){conf.clip.url=wrapper.getAttribute("href",2);}
commonClip=new Clip(conf.clip,-1,self);conf.playlist=conf.playlist||[conf.clip];var index=0;each(conf.playlist,function(){var clip=this;if(typeof clip=='object'&&clip.length){clip={url:""+clip};}
each(conf.clip,function(key,val){if(val!==undefined&&clip[key]===undefined&&typeof val!='function'){clip[key]=val;}});conf.playlist[index]=clip;clip=new Clip(clip,index,self);playlist.push(clip);index++;});each(conf,function(key,val){if(typeof val=='function'){if(commonClip[key]){commonClip[key](val);}else{bind(listeners,key,val);}
delete conf[key];}});each(conf.plugins,function(name,val){if(val){plugins[name]=new Plugin(name,val,self);}});if(!conf.plugins||conf.plugins.controls===undefined){plugins.controls=new Plugin("controls",null,self);}
-plugins.canvas=new Plugin("canvas",null,self);params.bgcolor=params.bgcolor||"#000000";params.version=params.version||[9,0];params.expressInstall='http://www.flowplayer.org/swf/expressinstall.swf';function doClick(e){if(!self.isLoaded()&&self._fireEvent("onBeforeClick")!==false){self.load();}
+plugins.canvas=new Plugin("canvas",null,self);html=wrapper.innerHTML;function doClick(e){var hasiPadSupport=self.hasiPadSupport&&self.hasiPadSupport();if(/iPad|iPhone|iPod/i.test(navigator.userAgent)&&!/.flv$/i.test(playlist[0].url)&&!hasiPadSupport){return true;}
+if(!self.isLoaded()&&self._fireEvent("onBeforeClick")!==false){self.load();}
return stopEvent(e);}
-html=wrapper.innerHTML;if(html.replace(/\s/g,'')!==''){if(wrapper.addEventListener){wrapper.addEventListener("click",doClick,false);}else if(wrapper.attachEvent){wrapper.attachEvent("onclick",doClick);}}else{if(wrapper.addEventListener){wrapper.addEventListener("click",stopEvent,false);}
+function installPlayer(){if(html.replace(/\s/g,'')!==''){if(wrapper.addEventListener){wrapper.addEventListener("click",doClick,false);}else if(wrapper.attachEvent){wrapper.attachEvent("onclick",doClick);}}else{if(wrapper.addEventListener){wrapper.addEventListener("click",stopEvent,false);}
self.load();}}
-if(typeof wrapper=='string'){flashembed.domReady(function(){var node=el(wrapper);if(!node){throw"Flowplayer cannot access element: "+wrapper;}else{wrapper=node;init();}});}else{init();}}
+setTimeout(installPlayer,0);}
+if(typeof wrapper=='string'){var node=el(wrapper);if(!node){throw"Flowplayer cannot access element: "+wrapper;}
+wrapper=node;init();}else{init();}}
var players=[];function Iterator(arr){this.length=arr.length;this.each=function(fn){each(arr,fn);};this.size=function(){return arr.length;};}
window.flowplayer=window.$f=function(){var instance=null;var arg=arguments[0];if(!arguments.length){each(players,function(){if(this.isLoaded()){instance=this;return false;}});return instance||players[0];}
if(arguments.length==1){if(typeof arg=='number'){return players[arg];}else{if(arg=='*'){return new Iterator(players);}
each(players,function(){if(this.id()==arg.id||this.id()==arg||this.getParent()==arg){instance=this;return false;}});return instance;}}
-if(arguments.length>1){var swf=arguments[1];var conf=(arguments.length==3)?arguments[2]:{};if(typeof arg=='string'){if(arg.indexOf(".")!=-1){var instances=[];each(select(arg),function(){instances.push(new Player(this,clone(swf),clone(conf)));});return new Iterator(instances);}else{var node=el(arg);return new Player(node!==null?node:arg,swf,conf);}}else if(arg){return new Player(arg,swf,conf);}}
-return null;};extend(window.$f,{fireEvent:function(){var a=[].slice.call(arguments);var p=$f(a[0]);return p?p._fireEvent(a.slice(1)):null;},addPlugin:function(name,fn){Player.prototype[name]=fn;return $f;},each:each,extend:extend});if(typeof jQuery=='function'){jQuery.prototype.flowplayer=function(params,conf){if(!arguments.length||typeof arguments[0]=='number'){var arr=[];this.each(function(){var p=$f(this);if(p){arr.push(p);}});return arguments.length?arr[arguments[0]]:new Iterator(arr);}
-return this.each(function(){$f(this,clone(params),conf?clone(conf):{});});};}})();(function(){var jQ=typeof jQuery=='function';var options={width:'100%',height:'100%',allowfullscreen:true,allowscriptaccess:'always',quality:'high',version:null,onFail:null,expressInstall:null,w3c:false,cachebusting:false};if(jQ){jQuery.tools=jQuery.tools||{};jQuery.tools.flashembed={version:'1.0.4',conf:options};}
-function isDomReady(){if(domReady.done){return false;}
-var d=document;if(d&&d.getElementsByTagName&&d.getElementById&&d.body){clearInterval(domReady.timer);domReady.timer=null;for(var i=0;i1){var params=arguments[1],conf=(arguments.length==3)?arguments[2]:{};if(typeof params=='string'){params={src:params};}
+params=extend({bgcolor:"#000000",version:[9,0],expressInstall:"http://static.flowplayer.org/swf/expressinstall.swf",cachebusting:false},params);if(typeof arg=='string'){if(arg.indexOf(".")!=-1){var instances=[];each(select(arg),function(){instances.push(new Player(this,clone(params),clone(conf)));});return new Iterator(instances);}else{var node=el(arg);return new Player(node!==null?node:arg,params,conf);}}else if(arg){return new Player(arg,params,conf);}}
+return null;};extend(window.$f,{fireEvent:function(){var a=[].slice.call(arguments);var p=$f(a[0]);return p?p._fireEvent(a.slice(1)):null;},addPlugin:function(name,fn){Player.prototype[name]=fn;return $f;},each:each,extend:extend});if(typeof jQuery=='function'){jQuery.fn.flowplayer=function(params,conf){if(!arguments.length||typeof arguments[0]=='number'){var arr=[];this.each(function(){var p=$f(this);if(p){arr.push(p);}});return arguments.length?arr[arguments[0]]:new Iterator(arr);}
+return this.each(function(){$f(this,clone(params),conf?clone(conf):{});});};}})();(function(){var IE=document.all,URL='http://www.adobe.com/go/getflashplayer',JQUERY=typeof jQuery=='function',RE=/(\d+)[^\d]+(\d+)[^\d]*(\d*)/,GLOBAL_OPTS={width:'100%',height:'100%',id:"_"+(""+Math.random()).slice(9),allowfullscreen:true,allowscriptaccess:'always',quality:'high',version:[3,0],onFail:null,expressInstall:null,w3c:false,cachebusting:false};if(window.attachEvent){window.attachEvent("onbeforeunload",function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};});}
+function extend(to,from){if(from){for(var key in from){if(from.hasOwnProperty(key)){to[key]=from[key];}}}
return to;}
-var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},rep;function string2JsonString(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==='string'?c:'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4);})+'"':'"'+string+'"';}
-function asString(obj){switch(typeOf(obj)){case'string':return string2JsonString(obj);case'array':return'['+map(obj,function(el){return asString(el);}).join(',')+']';case'function':return'"function()"';case'object':var str=[];for(var prop in obj){if(obj.hasOwnProperty(prop)){str.push('"'+prop+'":'+asString(obj[prop]));}}
-return'{'+str.join(',')+'}';}
-return String(obj).replace(/\s/g," ").replace(/\'/g,"\"");}
-function typeOf(obj){if(obj===null||obj===undefined){return false;}
-var type=typeof obj;return(type=='object'&&obj.push)?'array':type;}
-if(window.attachEvent){window.attachEvent("onbeforeunload",function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};});}
function map(arr,func){var newArr=[];for(var i in arr){if(arr.hasOwnProperty(i)){newArr[i]=func(arr[i]);}}
return newArr;}
-function getHTML(p,c){var e=extend({},p);var ie=document.all;var html='';if(e.w3c||ie){html+=' ';}
-e.width=e.height=e.id=e.w3c=e.src=null;for(var k in e){if(e[k]!==null){html+=' ';}}
-var vars="";if(c){for(var key in c){if(c[key]!==null){vars+=encodeURIComponent(key)+'='
-+encodeURIComponent(typeof c[key]=='object'?asString(c[key]):c[key])
+window.flashembed=function(root,opts,conf){if(typeof root=='string'){root=document.getElementById(root.replace("#",""));}
+if(!root){return;}
+if(typeof opts=='string'){opts={src:opts};}
+return new Flash(root,extend(extend({},GLOBAL_OPTS),opts),conf);};var f=extend(window.flashembed,{conf:GLOBAL_OPTS,getVersion:function(){var fo,ver;try{ver=navigator.plugins["Shockwave Flash"].description.slice(16);}catch(e){try{fo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");ver=fo&&fo.GetVariable("$version");}catch(err){try{fo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");ver=fo&&fo.GetVariable("$version");}catch(err2){}}}
+ver=RE.exec(ver);return ver?[ver[1],ver[3]]:[0,0];},asString:function(obj){if(obj===null||obj===undefined){return null;}
+var type=typeof obj;if(type=='object'&&obj.push){type='array';}
+switch(type){case'string':return string2JsonString(obj);case'array':return'['+map(obj,function(el){return f.asString(el);}).join(',')+']';case'function':return'"function()"';case'object':var str=[];for(var prop in obj){if(obj.hasOwnProperty(prop)){str.push('"'+prop+'":'+f.asString(obj[prop]));}}
+return'{'+str.join(',')+'}';}
+return String(obj).replace(/\s/g," ").replace(/\'/g,"\"");},getHTML:function(opts,conf){opts=extend({},opts);var html='';if(opts.w3c||IE){html+=' ';}
+opts.width=opts.height=opts.id=opts.w3c=opts.src=null;opts.onFail=opts.version=opts.expressInstall=null;for(var key in opts){if(opts[key]){html+=' ';}}
+var vars="";if(conf){for(var k in conf){if(conf[k]){var val=conf[k];vars+=encodeURIComponent(k)+'='
++encodeURIComponent(/function|object/.test(typeof val)?f.asString(val):val)
+'&';}}
-vars=vars.substring(0,vars.length-1);html+=' ';}
-html+=" ";return html;}
-function Flash(root,opts,flashvars){var version=flashembed.getVersion();extend(this,{getContainer:function(){return root;},getConf:function(){return opts;},getVersion:function(){return version;},getFlashvars:function(){return flashvars;},getApi:function(){return root.firstChild;},getHTML:function(){return getHTML(opts,flashvars);}});var required=opts.version;var express=opts.expressInstall;var ok=!required||flashembed.isSupported(required);if(ok){opts.onFail=opts.version=opts.expressInstall=null;root.innerHTML=getHTML(opts,flashvars);}else if(required&&express&&flashembed.isSupported([6,65])){extend(opts,{src:express});flashvars={MMredirectURL:location.href,MMplayerType:'PlugIn',MMdoctitle:document.title};root.innerHTML=getHTML(opts,flashvars);}else{if(root.innerHTML.replace(/\s/g,'')!==''){}else{root.innerHTML="Flash version "+required+" or greater is required "+""+
-(version[0]>0?"Your version is "+version:"You have no flash plugin installed")+" "+
-(root.tagName=='A'?"Click here to download latest version
":"Download latest version from here
");if(root.tagName=='A'){root.onclick=function(){location.href='http://www.adobe.com/go/getflashplayer';};}}}
-if(!ok&&opts.onFail){var ret=opts.onFail.call(this);if(typeof ret=='string'){root.innerHTML=ret;}}
-if(document.all){window[opts.id]=document.getElementById(opts.id);}}
-window.flashembed=function(root,conf,flashvars){if(typeof root=='string'){var el=document.getElementById(root);if(el){root=el;}else{domReady(function(){flashembed(root,conf,flashvars);});return;}}
+vars=vars.slice(0,-1);html+=' ';}
+html+=" ";return html;},isSupported:function(ver){return VERSION[0]>ver[0]||VERSION[0]==ver[0]&&VERSION[1]>=ver[1];}});var VERSION=f.getVersion();function Flash(root,opts,conf){if(f.isSupported(opts.version)){root.innerHTML=f.getHTML(opts,conf);}else if(opts.expressInstall&&f.isSupported([6,65])){root.innerHTML=f.getHTML(extend(opts,{src:opts.expressInstall}),{MMredirectURL:location.href,MMplayerType:'PlugIn',MMdoctitle:document.title});}else{if(!root.innerHTML.replace(/\s/g,'')){root.innerHTML="Flash version "+opts.version+" or greater is required "+""+
+(VERSION[0]>0?"Your version is "+VERSION:"You have no flash plugin installed")+" "+
+(root.tagName=='A'?"Click here to download latest version
":"Download latest version from here
");if(root.tagName=='A'){root.onclick=function(){location.href=URL;};}}
+if(opts.onFail){var ret=opts.onFail.call(this);if(typeof ret=='string'){root.innerHTML=ret;}}}
+if(IE){window[opts.id]=document.getElementById(opts.id);}
+extend(this,{getRoot:function(){return root;},getOptions:function(){return opts;},getConf:function(){return conf;},getApi:function(){return root.firstChild;}});}
+var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},rep;function string2JsonString(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==='string'?c:'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4);})+'"':'"'+string+'"';}
+if(JQUERY){jQuery.tools=jQuery.tools||{version:'3.2.6'};jQuery.tools.flashembed={conf:GLOBAL_OPTS};jQuery.fn.flashembed=function(opts,conf){return this.each(function(){jQuery(this).data("flashembed",flashembed(this,opts,conf));});};}})();$f.addPlugin("ipad",function(options){var STATE_UNLOADED=-1;var STATE_LOADED=0;var STATE_UNSTARTED=1;var STATE_BUFFERING=2;var STATE_PLAYING=3;var STATE_PAUSED=4;var STATE_ENDED=5;var self=this;var currentVolume=1;var onStartFired=false;var stopping=false;var playAfterSeek=false;var activeIndex=0;var activePlaylist=[];var clipDefaults={accelerated:false,autoBuffering:false,autoPlay:true,baseUrl:null,bufferLength:3,connectionProvider:null,cuepointMultiplier:1000,cuepoints:[],controls:{},duration:0,extension:'',fadeInSpeed:1000,fadeOutSpeed:1000,image:false,linkUrl:null,linkWindow:'_self',live:false,metaData:{},originalUrl:null,position:0,playlist:[],provider:'http',scaling:'scale',seekableOnBegin:false,start:0,url:null,urlResolvers:[]};var currentState=STATE_UNLOADED;var previousState=STATE_UNLOADED;var isiDevice=/iPad|iPhone|iPod/i.test(navigator.userAgent);var video=null;function extend(to,from,includeFuncs){if(from){for(key in from){if(key){if(from[key]&&typeof from[key]=="function"&&!includeFuncs)
+continue;if(from[key]&&typeof from[key]=="object"&&from[key].length==undefined){var cp={};extend(cp,from[key]);to[key]=cp;}else{to[key]=from[key];}}}}
+return to;}
+var opts={simulateiDevice:false,controlsSizeRatio:1.5,controls:true,debug:false,validExtensions:/mov|m4v|mp4|avi/gi};extend(opts,options);function log(){if(opts.debug){if(isiDevice){var str=[].splice.call(arguments,0).join(', ');console.log.apply(console,[str]);}else{console.log.apply(console,arguments);}}}
+function stateDescription(state){switch(state){case-1:return"UNLOADED";case 0:return"LOADED";case 1:return"UNSTARTED";case 2:return"BUFFERING";case 3:return"PLAYING";case 4:return"PAUSED";case 5:return"ENDED";}
+return"UNKOWN";}
+function actionAllowed(eventName){var ret=$f.fireEvent(self.id(),"onBefore"+eventName,activeIndex);return ret!==false;}
+function stopEvent(e){e.stopPropagation();e.preventDefault();return false;}
+function setState(state,force){if(currentState==STATE_UNLOADED&&!force)
+return;previousState=currentState;currentState=state;stopPlayTimeTracker();if(state==STATE_PLAYING)
+startPlayTimeTracker();log(stateDescription(state));}
+function resetState(){video.fp_stop();onStartFired=false;stopping=false;playAfterSeek=false;setState(STATE_UNSTARTED);setState(STATE_UNSTARTED);}
+var _playTimeTracker=null;function startPlayTimeTracker(){if(_playTimeTracker)
+return;console.log("starting tracker");_playTimeTracker=setInterval(onTimeTracked,100);onTimeTracked();}
+function stopPlayTimeTracker(){clearInterval(_playTimeTracker);_playTimeTracker=null;}
+function onTimeTracked(){var currentTime=Math.floor(video.fp_getTime()*10)*100;var duration=Math.floor(video.duration*10)*100;var fireTime=(new Date()).time;function fireCuePointsIfNeeded(time,cues){time=time>=0?time:duration-Math.abs(time);for(var i=0;ifireTime){cues[i].lastTimeFired=-1;}else if(cues[i].lastTimeFired+500>fireTime){continue;}else{if(time==currentTime||(currentTime-500time)){cues[i].lastTimeFired=fireTime;$f.fireEvent(self.id(),'onCuepoint',activeIndex,cues[i].fnId,cues[i].parameters);}}}}
+$f.each(self.getCommonClip()._cuepoints,fireCuePointsIfNeeded);$f.each(activePlaylist[activeIndex]._cuepoints,fireCuePointsIfNeeded);}
+function replay(){resetState();playAfterSeek=true;video.fp_seek(0);}
+function scaleVideo(clip){}
+function addAPI(){function fixClip(clip){var extendedClip={};extend(extendedClip,clipDefaults);extend(extendedClip,self.getCommonClip());extend(extendedClip,clip);if(extendedClip.ipadUrl)
+url=decodeURIComponent(extendedClip.ipadUrl);else if(extendedClip.url)
+url=extendedClip.url;if(url&&url.indexOf('://')==-1&&extendedClip.baseUrl)
+url=extendedClip.baseUrl+'/'+url;extendedClip.originalUrl=extendedClip.url;extendedClip.completeUrl=url;extendedClip.extension=extendedClip.completeUrl.substr(extendedClip.completeUrl.lastIndexOf('.'));extendedClip.type='video';delete extendedClip.index;log("fixed clip",extendedClip);return extendedClip;}
+video.fp_play=function(clip,inStream,forcePlay){var url=null;var autoBuffering=true;var autoPlay=true;log("Calling play() "+clip,clip);if(inStream){log("ERROR: inStream clips not yet supported");return;}
+if(clip!==undefined){if(typeof clip=="number"){if(activeIndex>=activePlaylist.length)
+return;activeIndex=clip;clip=activePlaylist[activeIndex];}else{if(typeof clip=="string"){clip={url:clip};}
+video.fp_setPlaylist(clip.length!==undefined?clip:[clip]);}
+if(!opts.validExtensions.test(activePlaylist[activeIndex].extension)){if(activePlaylist.length>1&&activeIndex<(activePlaylist.length-1)){log("Not last clip in the playlist, moving to next one");video.fp_play(++activeIndex,false,true);}
+return;}
+clip=activePlaylist[activeIndex];url=clip.completeUrl;if(clip.autoBuffering!==undefined&&clip.autoBuffering===false)
+autoBuffering=false;if(clip.autoPlay===undefined||clip.autoPlay===true||forcePlay===true){autoBuffering=true;autoPlay=true;}else{autoPlay=false;}}else{log("clip was not given, simply calling video.play, if not already buffering");if(currentState!=STATE_BUFFERING)
+video.play();return;}
+log("about to play "+url,autoBuffering,autoPlay);resetState();if(url){log("Changing SRC attribute"+url);video.setAttribute('src',url);}
+if(autoBuffering){if(!actionAllowed('Begin'))
+return false;$f.fireEvent(self.id(),'onBegin',activeIndex);log("calling video.load()");video.load();}
+if(autoPlay){log("calling video.play()");video.play();}}
+video.fp_pause=function(){log("pause called");if(!actionAllowed('Pause'))
+return false;video.pause();};video.fp_resume=function(){log("resume called");if(!actionAllowed('Resume'))
+return false;video.play();};video.fp_stop=function(){log("stop called");if(!actionAllowed('Stop'))
+return false;stopping=true;video.pause();try{video.currentTime=0;}catch(ignored){}};video.fp_seek=function(position){log("seek called "+position);if(!actionAllowed('Seek'))
+return false;var seconds=0;var position=position+"";if(position.charAt(position.length-1)=='%'){var percentage=parseInt(position.substr(0,position.length-1))/100;var duration=video.duration;seconds=duration*percentage;}else{seconds=position;}
+try{video.currentTime=seconds;}catch(e){log("Wrong seek time");}};video.fp_getTime=function(){return video.currentTime;};video.fp_mute=function(){log("mute called");if(!actionAllowed('Mute'))
+return false;currentVolume=video.volume;video.volume=0;};video.fp_unmute=function(){if(!actionAllowed('Unmute'))
+return false;video.volume=currentVolume;};video.fp_getVolume=function(){return video.volume*100;};video.fp_setVolume=function(volume){if(!actionAllowed('Volume'))
+return false;video.volume=volume/100;};video.fp_toggle=function(){log('toggle called');if(self.getState()==STATE_ENDED){replay();return;}
+if(video.paused)
+video.fp_play();else
+video.fp_pause();};video.fp_isPaused=function(){return video.paused;};video.fp_isPlaying=function(){return!video.paused;};video.fp_getPlugin=function(name){if(name=='canvas'||name=='controls'){var config=self.getConfig();return config['plugins']&&config['plugins'][name]?config['plugins'][name]:null;}
+log("ERROR: no support for "+name+" plugin on iDevices");return null;};video.fp_close=function(){setState(STATE_UNLOADED);video.parentNode.removeChild(video);video=null;};video.fp_getStatus=function(){var bufferStart=0;var bufferEnd=0;try{bufferStart=video.buffered.start();bufferEnd=video.buffered.end();}catch(ignored){}
+return{bufferStart:bufferStart,bufferEnd:bufferEnd,state:currentState,time:video.fp_getTime(),muted:video.muted,volume:video.fp_getVolume()};};video.fp_getState=function(){return currentState;};video.fp_startBuffering=function(){if(currentState==STATE_UNSTARTED)
+video.load();};video.fp_setPlaylist=function(playlist){log("Setting playlist");activeIndex=0;for(var i=0;i1&&activeIndex<(activePlaylist.length-1)){log("Not last clip in the playlist, moving to next one");video.fp_play(++activeIndex,false,true);}};video.addEventListener('ended',onFinish,false);var onError=function(e){setState(STATE_LOADED,true);$f.fireEvent(self.id(),'onError',activeIndex,201);if(opts.onFail&&opts.onFail instanceof Function)
+opts.onFail.apply(self,[]);};video.addEventListener('error',onError,false);var onPause=function(e){log("got pause event from player"+self.id());if(stopping)
+return;if(currentState==STATE_BUFFERING&&previousState==STATE_UNSTARTED){log("forcing play");setTimeout(function(){video.play();},0);return;}
+if(!actionAllowed('Pause')){video.fp_resume();return stopEvent(e);}
+setState(STATE_PAUSED);$f.fireEvent(self.id(),'onPause',activeIndex);}
+video.addEventListener('pause',onPause,false);var onSeek=function(e){$f.fireEvent(self.id(),'onBeforeSeek',activeIndex);};video.addEventListener('seeking',onSeek,false);var onSeekDone=function(e){if(stopping){stopping=false;$f.fireEvent(self.id(),'onStop',activeIndex);}
+else
+$f.fireEvent(self.id(),'onSeek',activeIndex);log("seek done, currentState",stateDescription(currentState));if(playAfterSeek){playAfterSeek=false;video.fp_play();}else if(currentState!=STATE_PLAYING)
+video.fp_pause();};video.addEventListener('seeked',onSeekDone,false);var onVolumeChange=function(e){$f.fireEvent(self.id(),'onVolume',video.fp_getVolume());};video.addEventListener('volumechange',onVolumeChange,false);}
+function onPlayerLoaded(){video.fp_play(0);}
+function installControlbar(){}
+if(isiDevice||opts.simulateiDevice){if(!window.flashembed.__replaced){var realFlashembed=window.flashembed;window.flashembed=function(root,opts,conf){if(typeof root=='string'){root=document.getElementById(root.replace("#",""));}
if(!root){return;}
-if(typeof conf=='string'){conf={src:conf};}
-var opts=extend({},options);extend(opts,conf);return new Flash(root,opts,flashvars);};extend(window.flashembed,{getVersion:function(){var version=[0,0];if(navigator.plugins&&typeof navigator.plugins["Shockwave Flash"]=="object"){var _d=navigator.plugins["Shockwave Flash"].description;if(typeof _d!="undefined"){_d=_d.replace(/^.*\s+(\S+\s+\S+$)/,"$1");var _m=parseInt(_d.replace(/^(.*)\..*$/,"$1"),10);var _r=/r/.test(_d)?parseInt(_d.replace(/^.*r(.*)$/,"$1"),10):0;version=[_m,_r];}}else if(window.ActiveXObject){try{var _a=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{_a=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");version=[6,0];_a.AllowScriptAccess="always";}catch(ee){if(version[0]==6){return version;}}
-try{_a=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(eee){}}
-if(typeof _a=="object"){_d=_a.GetVariable("$version");if(typeof _d!="undefined"){_d=_d.replace(/^\S+\s+(.*)$/,"$1").split(",");version=[parseInt(_d[0],10),parseInt(_d[2],10)];}}}
-return version;},isSupported:function(version){var now=flashembed.getVersion();var ret=(now[0]>version[0])||(now[0]==version[0]&&now[1]>=version[1]);return ret;},domReady:domReady,asString:asString,getHTML:getHTML});if(jQ){jQuery.fn.flashembed=function(conf,flashvars){var el=null;this.each(function(){el=flashembed(this,conf,flashvars);});return conf.api===false?this:el;};}})();
\ No newline at end of file
+var style=window.getComputedStyle(root,null);var width=parseInt(style.width);var height=parseInt(style.height);while(root.firstChild)
+root.removeChild(root.firstChild);var container=document.createElement('div');var api=document.createElement('video');container.appendChild(api);root.appendChild(container);container.style.height=height+'px';container.style.width=width+'px';container.style.display='block';container.style.position='relative';container.style.background='-webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.7)))';container.style.cursor='default';container.style.webkitUserDrag='none';api.style.height='100%';api.style.width='100%';api.style.display='block';api.id=opts.id;api.name=opts.id;api.style.cursor='pointer';api.style.webkitUserDrag='none';api.type="video/mp4";api.playerConfig=conf.config;$f.fireEvent(conf.config.playerId,'onLoad','player');};flashembed.getVersion=realFlashembed.getVersion;flashembed.asString=realFlashembed.asString;flashembed.isSupported=function(){return true;}
+flashembed.__replaced=true;}
+var __fireEvent=self._fireEvent;self._fireEvent=function(a){if(a[0]=='onLoad'&&a[1]=='player'){video=self.getParent().querySelector('video');if(opts.controls)
+video.controls="controls";addAPI();addListeners();setState(STATE_LOADED,true);video.fp_setPlaylist(video.playerConfig.playlist);onPlayerLoaded();__fireEvent.apply(self,[a]);}
+var shouldFireEvent=currentState!=STATE_UNLOADED;if(currentState==STATE_UNLOADED&&typeof a=='string')
+shouldFireEvent=true;if(shouldFireEvent)
+return __fireEvent.apply(self,[a]);}
+self._swfHeight=function(){return parseInt(video.style.height);}
+self.hasiPadSupport=function(){return true;}}
+return self;});
\ No newline at end of file
diff --git a/lib/flowplayer.pseudostreaming.swf b/lib/flowplayer.pseudostreaming.swf
index 91b3fdd6..28f5d72a 100644
Binary files a/lib/flowplayer.pseudostreaming.swf and b/lib/flowplayer.pseudostreaming.swf differ
diff --git a/lib/flowplayer.swf b/lib/flowplayer.swf
index 63f3934a..20a41193 100644
Binary files a/lib/flowplayer.swf and b/lib/flowplayer.swf differ
diff --git a/modules/gallery/views/movieplayer.html.php b/modules/gallery/views/movieplayer.html.php
index 5c280a36..96d6532c 100644
--- a/modules/gallery/views/movieplayer.html.php
+++ b/modules/gallery/views/movieplayer.html.php
@@ -22,5 +22,5 @@
}
}
}
- )
+ ).ipad();
--
cgit v1.2.3
From 7ec0cc748ac4c2a3b3d11abfbfd0ba50eb63f182 Mon Sep 17 00:00:00 2001
From: Tim Almdal
Date: Sat, 23 Apr 2011 13:55:23 -0700
Subject: Fix for ticket #1699. Make the link to return to the gallery
installation clearer.
---
modules/gallery/views/upgrader.html.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'modules')
diff --git a/modules/gallery/views/upgrader.html.php b/modules/gallery/views/upgrader.html.php
index ad2e3421..70d37dd1 100644
--- a/modules/gallery/views/upgrader.html.php
+++ b/modules/gallery/views/upgrader.html.php
@@ -27,7 +27,7 @@
= t("That's it!") ?>
- = t("Your Gallery is up to date.",
+ = t("Your Gallery is up to date.Return to your Gallery ",
array("url" => html::mark_clean(url::base()))) ?>
--
cgit v1.2.3
From a469146084e7ba064f171609849c4d8590424f88 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 14:43:33 -0700
Subject: module.info and theme.info files now support author name, author url,
info url and discussion url fields. Those fields show up in the Admin >
Modules and Admin > Appearance > Theme Choice pages. All official modules
and themes updated to contain these values. Fixes #1696, #1698.
---
modules/gallery/module.info | 4 ++
modules/gallery/views/admin_modules.html.php | 52 +++++++++++++++++++++-
modules/gallery/views/admin_themes.html.php | 12 +++--
.../gallery/views/admin_themes_buttonset.html.php | 47 +++++++++++++++++++
4 files changed, 110 insertions(+), 5 deletions(-)
create mode 100644 modules/gallery/views/admin_themes_buttonset.html.php
(limited to 'modules')
diff --git a/modules/gallery/module.info b/modules/gallery/module.info
index 74c0658f..fc522d78 100644
--- a/modules/gallery/module.info
+++ b/modules/gallery/module.info
@@ -1,3 +1,7 @@
name = "Gallery 3"
description = "Gallery core application"
version = 49
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:gallery"
+discuss_url = "http://gallery.menalto.com/forum_module_gallery"
diff --git a/modules/gallery/views/admin_modules.html.php b/modules/gallery/views/admin_modules.html.php
index 2cc81b0d..ecd51d30 100644
--- a/modules/gallery/views/admin_modules.html.php
+++ b/modules/gallery/views/admin_modules.html.php
@@ -43,7 +43,7 @@
= t("Gallery Modules") ?>
- = t("Power up your Gallery by adding more modules! Each module provides new cool features.") ?>
+ = t("Power up your Gallery by adding more modules ! Each module provides new cool features.", array("url" => "http://codex.gallery2.org/Category:Gallery_3:Modules")) ?>
@@ -55,6 +55,7 @@
= t("Name") ?>
= t("Version") ?>
= t("Description") ?>
+
= t("Details") ?>
foreach ($available as $module_name => $module_info): ?>
">
@@ -64,6 +65,55 @@
= t($module_info->name) ?>
= $module_info->version ?>
= t($module_info->description) ?>
+
+
+
endforeach ?>
diff --git a/modules/gallery/views/admin_themes.html.php b/modules/gallery/views/admin_themes.html.php
index d14e8bd4..7d947b28 100644
--- a/modules/gallery/views/admin_themes.html.php
+++ b/modules/gallery/views/admin_themes.html.php
@@ -10,7 +10,7 @@
= t("Theme choice") ?>
- = t("Gallery allows you to choose a theme for browsing your Gallery, as well as a special theme for the administration interface. Click a theme to preview and activate it.") ?>
+ = t("Make your Gallery beautiful with a new theme ! There are separate themes for the regular site and for the administration interface. Click a theme below to preview and activate it.", array("url" => "http://codex.gallery2.org/Category:Gallery_3:Themes")) ?>
@@ -23,6 +23,7 @@
= $themes[$site]->description ?>
+ $v = new View("admin_themes_buttonset.html"); $v->info = $themes[$site]; print $v; ?>
= t("Available Gallery themes") ?>
@@ -40,13 +41,14 @@
= $info->description ?>
+ $v = new View("admin_themes_buttonset.html"); $v->info = $info; print $v; ?>
$count++ ?>
endforeach ?>
if (!$count): ?>
- = t("There are no other site themes available.") ?>
+ = t("There are no other site themes available. Download one now! ", array("url" => "http://codex.gallery2.org/Category:Gallery_3:Modules")) ?>
endif ?>
@@ -61,6 +63,7 @@
= $themes[$admin]->description ?>
+ $v = new View("admin_themes_buttonset.html"); $v->info = $themes[$admin]; print $v; ?>
= t("Available admin themes") ?>
@@ -78,17 +81,18 @@
= $info->description ?>
+ $v = new View("admin_themes_buttonset.html"); $v->info = $info; print $v; ?>
$count++ ?>
endforeach ?>
if (!$count): ?>
- = t("There are no other admin themes available.") ?>
+ = t("There are no other admin themes available. Download one now! ", array("url" => "http://codex.gallery2.org/Category:Gallery_3:Modules")) ?>
endif ?>
-
\ No newline at end of file
+
diff --git a/modules/gallery/views/admin_themes_buttonset.html.php b/modules/gallery/views/admin_themes_buttonset.html.php
new file mode 100644
index 00000000..5166f36c
--- /dev/null
+++ b/modules/gallery/views/admin_themes_buttonset.html.php
@@ -0,0 +1,47 @@
+
--
cgit v1.2.3
From ba20d5a500fbc724376a2fc749ee2c645041a6e1 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 14:46:07 -0700
Subject: Oops, this is the rest of the modules and themes for #1696 and #1698.
---
modules/akismet/module.info | 4 ++++
modules/comment/module.info | 4 ++++
modules/digibug/module.info | 4 ++++
modules/exif/module.info | 4 ++++
modules/g2_import/module.info | 4 ++++
modules/image_block/module.info | 4 ++++
modules/info/module.info | 4 ++++
modules/notification/module.info | 4 ++++
modules/organize/module.info | 4 ++++
modules/recaptcha/module.info | 4 ++++
modules/rest/module.info | 4 ++++
modules/rss/module.info | 4 ++++
modules/search/module.info | 4 ++++
modules/server_add/module.info | 4 ++++
modules/slideshow/module.info | 4 ++++
modules/tag/module.info | 4 ++++
modules/user/module.info | 4 ++++
modules/watermark/module.info | 4 ++++
themes/admin_wind/theme.info | 4 ++++
themes/wind/theme.info | 4 ++++
20 files changed, 80 insertions(+)
(limited to 'modules')
diff --git a/modules/akismet/module.info b/modules/akismet/module.info
index b61ed107..afc649d3 100644
--- a/modules/akismet/module.info
+++ b/modules/akismet/module.info
@@ -1,3 +1,7 @@
name = "Akismet"
description = "Filter comments through the Akismet web service to detect and eliminate spam (http://akismet.com). You'll need a WordPress.com API key to use it."
version = 1
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:akismet"
+discuss_url = "http://gallery.menalto.com/forum_module_akismet"
diff --git a/modules/comment/module.info b/modules/comment/module.info
index e5aa454d..63c6af1c 100644
--- a/modules/comment/module.info
+++ b/modules/comment/module.info
@@ -1,3 +1,7 @@
name = "Comments"
description = "Allows users and guests to leave comments on photos and albums."
version = 4
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:comment"
+discuss_url = "http://gallery.menalto.com/forum_module_comment"
diff --git a/modules/digibug/module.info b/modules/digibug/module.info
index be4e880a..ce437611 100644
--- a/modules/digibug/module.info
+++ b/modules/digibug/module.info
@@ -1,3 +1,7 @@
name = "Digibug"
description = "Digibug Photo Printing Module"
version = 2
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:digibug"
+discuss_url = "http://gallery.menalto.com/forum_module_digibug"
diff --git a/modules/exif/module.info b/modules/exif/module.info
index c8ae688e..c2ffbfa7 100644
--- a/modules/exif/module.info
+++ b/modules/exif/module.info
@@ -1,3 +1,7 @@
name = "Exif Data"
description = "Extract Exif data and display it on photo pages."
version = 1
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:exif"
+discuss_url = "http://gallery.menalto.com/forum_module_exif"
diff --git a/modules/g2_import/module.info b/modules/g2_import/module.info
index 977af251..0e766255 100644
--- a/modules/g2_import/module.info
+++ b/modules/g2_import/module.info
@@ -1,3 +1,7 @@
name = "Gallery2 Import"
description = "Import your Gallery 2 content into Gallery 3"
version = 2
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:g2_import"
+discuss_url = "http://gallery.menalto.com/forum_module_g2_import"
diff --git a/modules/image_block/module.info b/modules/image_block/module.info
index 6836fabc..aa3c5461 100644
--- a/modules/image_block/module.info
+++ b/modules/image_block/module.info
@@ -1,3 +1,7 @@
name = "Image Block"
description = "Display a random image in the sidebar"
version = 3
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:image_block"
+discuss_url = "http://gallery.menalto.com/forum_module_image_block"
diff --git a/modules/info/module.info b/modules/info/module.info
index 5f84cbb9..e8f30594 100644
--- a/modules/info/module.info
+++ b/modules/info/module.info
@@ -1,3 +1,7 @@
name = "Info"
description = "Display extra information about photos and albums"
version = 2
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:info"
+discuss_url = "http://gallery.menalto.com/forum_module_info"
diff --git a/modules/notification/module.info b/modules/notification/module.info
index 8c5e1162..dacc00f9 100644
--- a/modules/notification/module.info
+++ b/modules/notification/module.info
@@ -1,3 +1,7 @@
name = "Notification"
description = "Send notifications to users when changes are made to watched albums."
version = 2
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:notification"
+discuss_url = "http://gallery.menalto.com/forum_module_notification"
diff --git a/modules/organize/module.info b/modules/organize/module.info
index 0d16144d..31d24379 100644
--- a/modules/organize/module.info
+++ b/modules/organize/module.info
@@ -1,3 +1,7 @@
name = "Organize"
description = "Visually rearrange and move photos in your gallery"
version = 4
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:organize"
+discuss_url = "http://gallery.menalto.com/forum_module_organize"
diff --git a/modules/recaptcha/module.info b/modules/recaptcha/module.info
index cfa1bf7a..2a0b419b 100644
--- a/modules/recaptcha/module.info
+++ b/modules/recaptcha/module.info
@@ -1,3 +1,7 @@
name = "reCAPTCHA"
description = "reCAPTCHA displays a graphical verification that protects the input form from abuse from 'bots,' or automated programs usually written to generate spam (http://recaptcha.net)."
version = 1
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:recaptcha"
+discuss_url = "http://gallery.menalto.com/forum_module_recaptcha"
diff --git a/modules/rest/module.info b/modules/rest/module.info
index 5aaffc28..c71c64f9 100644
--- a/modules/rest/module.info
+++ b/modules/rest/module.info
@@ -2,3 +2,7 @@ name = "REST API Module"
description = "A REST-based API that allows desktop clients and other apps to interact with Gallery 3"
version = 3
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:rest"
+discuss_url = "http://gallery.menalto.com/forum_module_rest"
diff --git a/modules/rss/module.info b/modules/rss/module.info
index 48375da1..5ebae9e7 100644
--- a/modules/rss/module.info
+++ b/modules/rss/module.info
@@ -1,3 +1,7 @@
name = "RSS"
description = "Provides RSS feeds"
version = 1
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:rss"
+discuss_url = "http://gallery.menalto.com/forum_module_rss"
diff --git a/modules/search/module.info b/modules/search/module.info
index f417c4fa..a1c58af5 100644
--- a/modules/search/module.info
+++ b/modules/search/module.info
@@ -1,3 +1,7 @@
name = "Search"
description = "Allows users to search their Gallery"
version = 1
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:search"
+discuss_url = "http://gallery.menalto.com/forum_module_search"
diff --git a/modules/server_add/module.info b/modules/server_add/module.info
index 87b317b1..754e06c1 100644
--- a/modules/server_add/module.info
+++ b/modules/server_add/module.info
@@ -1,3 +1,7 @@
name = "Server Add"
description = "Allows authorized users to load images directly from your web server"
version = 4
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:server_add"
+discuss_url = "http://gallery.menalto.com/forum_module_server_add"
diff --git a/modules/slideshow/module.info b/modules/slideshow/module.info
index b56eac81..55cdf9b8 100644
--- a/modules/slideshow/module.info
+++ b/modules/slideshow/module.info
@@ -1,3 +1,7 @@
name = "Slideshow"
description = "Allows users to view a slideshow of photos"
version = 2
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:slideshow"
+discuss_url = "http://gallery.menalto.com/forum_module_slideshow"
diff --git a/modules/tag/module.info b/modules/tag/module.info
index d9d34386..59d8dfbd 100644
--- a/modules/tag/module.info
+++ b/modules/tag/module.info
@@ -1,3 +1,7 @@
name = "Tags"
description = "Allows users to tag photos and albums"
version = 3
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:tag"
+discuss_url = "http://gallery.menalto.com/forum_module_tag"
diff --git a/modules/user/module.info b/modules/user/module.info
index b7594815..f6dd9529 100644
--- a/modules/user/module.info
+++ b/modules/user/module.info
@@ -2,3 +2,7 @@ name = "Users and Groups"
description = "Gallery 3 user and group management"
version = 4
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:user"
+discuss_url = "http://gallery.menalto.com/forum_module_user"
diff --git a/modules/watermark/module.info b/modules/watermark/module.info
index 41a871bd..1f440016 100644
--- a/modules/watermark/module.info
+++ b/modules/watermark/module.info
@@ -1,3 +1,7 @@
name = "Watermarks"
description = "Allows users to watermark their photos"
version = 2
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Module:watermark"
+discuss_url = "http://gallery.menalto.com/forum_module_watermark"
diff --git a/themes/admin_wind/theme.info b/themes/admin_wind/theme.info
index 4034b64a..aca5c6c5 100644
--- a/themes/admin_wind/theme.info
+++ b/themes/admin_wind/theme.info
@@ -4,3 +4,7 @@ version = 1
author = "Gallery Team"
admin = 1
site = 0
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Theme:admin_wind"
+discuss_url = "http://gallery.menalto.com/forum_theme_admin_wind"
diff --git a/themes/wind/theme.info b/themes/wind/theme.info
index 17ea7c20..c2344c48 100644
--- a/themes/wind/theme.info
+++ b/themes/wind/theme.info
@@ -4,3 +4,7 @@ version = 1
author = "Gallery Team"
site = 1
admin = 0
+author_name = "Gallery Team"
+author_url = "http://codex.gallery2.org/Gallery:Team"
+info_url = "http://codex.gallery2.org/Gallery3:Theme:wind"
+discuss_url = "http://gallery.menalto.com/forum_theme_wind"
--
cgit v1.2.3
From c07af35a19905f3241fb77662e8b7c84e41e9a62 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 14:53:34 -0700
Subject: Oops, fix broken codex urls. For #1698.
---
modules/akismet/module.info | 2 +-
modules/comment/module.info | 2 +-
modules/digibug/module.info | 2 +-
modules/exif/module.info | 2 +-
modules/g2_import/module.info | 2 +-
modules/gallery/module.info | 2 +-
modules/image_block/module.info | 2 +-
modules/info/module.info | 2 +-
modules/notification/module.info | 2 +-
modules/organize/module.info | 2 +-
modules/recaptcha/module.info | 2 +-
modules/rest/module.info | 2 +-
modules/rss/module.info | 2 +-
modules/search/module.info | 2 +-
modules/server_add/module.info | 2 +-
modules/slideshow/module.info | 2 +-
modules/tag/module.info | 2 +-
modules/user/module.info | 2 +-
modules/watermark/module.info | 2 +-
themes/admin_wind/theme.info | 2 +-
themes/wind/theme.info | 2 +-
21 files changed, 21 insertions(+), 21 deletions(-)
(limited to 'modules')
diff --git a/modules/akismet/module.info b/modules/akismet/module.info
index afc649d3..63473468 100644
--- a/modules/akismet/module.info
+++ b/modules/akismet/module.info
@@ -3,5 +3,5 @@ description = "Filter comments through the Akismet web service to detect and eli
version = 1
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:akismet"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:akismet"
discuss_url = "http://gallery.menalto.com/forum_module_akismet"
diff --git a/modules/comment/module.info b/modules/comment/module.info
index 63c6af1c..4e7df6f1 100644
--- a/modules/comment/module.info
+++ b/modules/comment/module.info
@@ -3,5 +3,5 @@ description = "Allows users and guests to leave comments on photos and albums."
version = 4
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:comment"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:comment"
discuss_url = "http://gallery.menalto.com/forum_module_comment"
diff --git a/modules/digibug/module.info b/modules/digibug/module.info
index ce437611..781d5f01 100644
--- a/modules/digibug/module.info
+++ b/modules/digibug/module.info
@@ -3,5 +3,5 @@ description = "Digibug Photo Printing Module"
version = 2
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:digibug"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:digibug"
discuss_url = "http://gallery.menalto.com/forum_module_digibug"
diff --git a/modules/exif/module.info b/modules/exif/module.info
index c2ffbfa7..e266e20e 100644
--- a/modules/exif/module.info
+++ b/modules/exif/module.info
@@ -3,5 +3,5 @@ description = "Extract Exif data and display it on photo pages."
version = 1
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:exif"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:exif"
discuss_url = "http://gallery.menalto.com/forum_module_exif"
diff --git a/modules/g2_import/module.info b/modules/g2_import/module.info
index 0e766255..30fb46d4 100644
--- a/modules/g2_import/module.info
+++ b/modules/g2_import/module.info
@@ -3,5 +3,5 @@ description = "Import your Gallery 2 content into Gallery 3"
version = 2
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:g2_import"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:g2_import"
discuss_url = "http://gallery.menalto.com/forum_module_g2_import"
diff --git a/modules/gallery/module.info b/modules/gallery/module.info
index fc522d78..42345531 100644
--- a/modules/gallery/module.info
+++ b/modules/gallery/module.info
@@ -3,5 +3,5 @@ description = "Gallery core application"
version = 49
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:gallery"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:gallery"
discuss_url = "http://gallery.menalto.com/forum_module_gallery"
diff --git a/modules/image_block/module.info b/modules/image_block/module.info
index aa3c5461..6722cc8f 100644
--- a/modules/image_block/module.info
+++ b/modules/image_block/module.info
@@ -3,5 +3,5 @@ description = "Display a random image in the sidebar"
version = 3
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:image_block"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:image_block"
discuss_url = "http://gallery.menalto.com/forum_module_image_block"
diff --git a/modules/info/module.info b/modules/info/module.info
index e8f30594..f8964a78 100644
--- a/modules/info/module.info
+++ b/modules/info/module.info
@@ -3,5 +3,5 @@ description = "Display extra information about photos and albums"
version = 2
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:info"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:info"
discuss_url = "http://gallery.menalto.com/forum_module_info"
diff --git a/modules/notification/module.info b/modules/notification/module.info
index dacc00f9..84be8f99 100644
--- a/modules/notification/module.info
+++ b/modules/notification/module.info
@@ -3,5 +3,5 @@ description = "Send notifications to users when changes are made to watched albu
version = 2
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:notification"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:notification"
discuss_url = "http://gallery.menalto.com/forum_module_notification"
diff --git a/modules/organize/module.info b/modules/organize/module.info
index 31d24379..07b9dc38 100644
--- a/modules/organize/module.info
+++ b/modules/organize/module.info
@@ -3,5 +3,5 @@ description = "Visually rearrange and move photos in your gallery"
version = 4
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:organize"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:organize"
discuss_url = "http://gallery.menalto.com/forum_module_organize"
diff --git a/modules/recaptcha/module.info b/modules/recaptcha/module.info
index 2a0b419b..ebaff7de 100644
--- a/modules/recaptcha/module.info
+++ b/modules/recaptcha/module.info
@@ -3,5 +3,5 @@ description = "reCAPTCHA displays a graphical verification that protects the inp
version = 1
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:recaptcha"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:recaptcha"
discuss_url = "http://gallery.menalto.com/forum_module_recaptcha"
diff --git a/modules/rest/module.info b/modules/rest/module.info
index c71c64f9..33c9f1cf 100644
--- a/modules/rest/module.info
+++ b/modules/rest/module.info
@@ -4,5 +4,5 @@ description = "A REST-based API that allows desktop clients and other apps to in
version = 3
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:rest"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:rest"
discuss_url = "http://gallery.menalto.com/forum_module_rest"
diff --git a/modules/rss/module.info b/modules/rss/module.info
index 5ebae9e7..cd13c1b0 100644
--- a/modules/rss/module.info
+++ b/modules/rss/module.info
@@ -3,5 +3,5 @@ description = "Provides RSS feeds"
version = 1
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:rss"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:rss"
discuss_url = "http://gallery.menalto.com/forum_module_rss"
diff --git a/modules/search/module.info b/modules/search/module.info
index a1c58af5..1389798d 100644
--- a/modules/search/module.info
+++ b/modules/search/module.info
@@ -3,5 +3,5 @@ description = "Allows users to search their Gallery"
version = 1
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:search"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:search"
discuss_url = "http://gallery.menalto.com/forum_module_search"
diff --git a/modules/server_add/module.info b/modules/server_add/module.info
index 754e06c1..4ce0a97d 100644
--- a/modules/server_add/module.info
+++ b/modules/server_add/module.info
@@ -3,5 +3,5 @@ description = "Allows authorized users to load images directly from your web ser
version = 4
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:server_add"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:server_add"
discuss_url = "http://gallery.menalto.com/forum_module_server_add"
diff --git a/modules/slideshow/module.info b/modules/slideshow/module.info
index 55cdf9b8..8c9a3176 100644
--- a/modules/slideshow/module.info
+++ b/modules/slideshow/module.info
@@ -3,5 +3,5 @@ description = "Allows users to view a slideshow of photos"
version = 2
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:slideshow"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:slideshow"
discuss_url = "http://gallery.menalto.com/forum_module_slideshow"
diff --git a/modules/tag/module.info b/modules/tag/module.info
index 59d8dfbd..75d16bf0 100644
--- a/modules/tag/module.info
+++ b/modules/tag/module.info
@@ -3,5 +3,5 @@ description = "Allows users to tag photos and albums"
version = 3
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:tag"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:tag"
discuss_url = "http://gallery.menalto.com/forum_module_tag"
diff --git a/modules/user/module.info b/modules/user/module.info
index f6dd9529..503bcd0d 100644
--- a/modules/user/module.info
+++ b/modules/user/module.info
@@ -4,5 +4,5 @@ version = 4
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:user"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:user"
discuss_url = "http://gallery.menalto.com/forum_module_user"
diff --git a/modules/watermark/module.info b/modules/watermark/module.info
index 1f440016..58efa43f 100644
--- a/modules/watermark/module.info
+++ b/modules/watermark/module.info
@@ -3,5 +3,5 @@ description = "Allows users to watermark their photos"
version = 2
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Module:watermark"
+info_url = "http://codex.gallery2.org/Gallery3:Modules:watermark"
discuss_url = "http://gallery.menalto.com/forum_module_watermark"
diff --git a/themes/admin_wind/theme.info b/themes/admin_wind/theme.info
index aca5c6c5..466d8e43 100644
--- a/themes/admin_wind/theme.info
+++ b/themes/admin_wind/theme.info
@@ -6,5 +6,5 @@ admin = 1
site = 0
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Theme:admin_wind"
+info_url = "http://codex.gallery2.org/Gallery3:Themes:admin_wind"
discuss_url = "http://gallery.menalto.com/forum_theme_admin_wind"
diff --git a/themes/wind/theme.info b/themes/wind/theme.info
index c2344c48..e0be78b9 100644
--- a/themes/wind/theme.info
+++ b/themes/wind/theme.info
@@ -6,5 +6,5 @@ site = 1
admin = 0
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
-info_url = "http://codex.gallery2.org/Gallery3:Theme:wind"
+info_url = "http://codex.gallery2.org/Gallery3:Themes:wind"
discuss_url = "http://gallery.menalto.com/forum_theme_wind"
--
cgit v1.2.3
From 92c23ea92d7c943d330c12a1c84fdcbdf2678202 Mon Sep 17 00:00:00 2001
From: Tim Almdal
Date: Sat, 23 Apr 2011 15:10:04 -0700
Subject: Set the width of the information column to 60px to prevent icon wrap
---
modules/gallery/views/admin_modules.html.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'modules')
diff --git a/modules/gallery/views/admin_modules.html.php b/modules/gallery/views/admin_modules.html.php
index ecd51d30..03993bb2 100644
--- a/modules/gallery/views/admin_modules.html.php
+++ b/modules/gallery/views/admin_modules.html.php
@@ -55,7 +55,7 @@
= t("Name") ?>
= t("Version") ?>
= t("Description") ?>
- = t("Details") ?>
+ = t("Details") ?>
foreach ($available as $module_name => $module_info): ?>
">
--
cgit v1.2.3
From dfd50a6c1f2afc4b4e971ab6899aa69f43397e1c Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 15:18:23 -0700
Subject: Partially revert the CSS change in
76a7ad3161be0994d7ba98e9dff9b317b2430bb3 to center the "Select..." button
because it was causing the SWF object to vanish in Firefox. #1638.
---
modules/gallery/css/gallery.css | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
(limited to 'modules')
diff --git a/modules/gallery/css/gallery.css b/modules/gallery/css/gallery.css
index 97d09454..ecf89565 100644
--- a/modules/gallery/css/gallery.css
+++ b/modules/gallery/css/gallery.css
@@ -29,12 +29,12 @@
#g-add-photos-canvas object,
#g-add-photos-button {
- left: 93px;
+ left: 90px;
margin: .5em 0;
padding: .4em 1em;
position: absolute;
top: 0;
- width: auto;
+ width: 300px;
}
#g-add-photos-canvas object {
--
cgit v1.2.3
From 67d2e8081c6e5f0b679881bca3fdc81fe1e78ccc Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 16:12:10 -0700
Subject: Undo the change made in 5ce85636329b14673718836b3631a3e46efdc3bb
because it messes up tag counts (and makes the test fail-- I should have run
that!).
Also, use Tag_Model::items() in save() to avoid code duplication. Follow-on for #1628.
---
modules/tag/models/tag.php | 29 ++++++++++++-----------------
1 file changed, 12 insertions(+), 17 deletions(-)
(limited to 'modules')
diff --git a/modules/tag/models/tag.php b/modules/tag/models/tag.php
index d4e385a2..13e253ba 100644
--- a/modules/tag/models/tag.php
+++ b/modules/tag/models/tag.php
@@ -69,29 +69,14 @@ class Tag_Model_Core extends ORM {
* to this tag.
*/
public function save() {
- // Figure out what items have changed in this tag for our item_related_update event below
- if (isset($this->object_relations["items"])) {
- $added = array_diff($this->changed_relations["items"], $this->object_relations["items"]);
- $removed = array_diff($this->object_relations["items"], $this->changed_relations["items"]);
- if (isset($this->changed_relations["items"])) {
- $changed = array_merge($added, $removed);
- }
- $this->count = count($this->object_relations["items"]) + count($added) - count($removed);
- }
-
// Check to see if another tag exists with the same name
$duplicate_tag = ORM::factory("tag")
->where("name", "=", $this->name)
->where("id", "!=", $this->id)
->find();
if ($duplicate_tag->loaded()) {
- // If so, tag its items with this tag so as to merge it. Do this after we figure out what's
- // changed so that we don't notify on this change to keep churn down.
- $duplicate_tag_items = ORM::factory("item")
- ->join("items_tags", "items.id", "items_tags.item_id")
- ->where("items_tags.tag_id", "=", $duplicate_tag->id)
- ->find_all();
- foreach ($duplicate_tag_items as $item) {
+ // If so, tag its items with this tag so as to merge it.
+ foreach ($duplicate_tag->items() as $item) {
$this->add($item);
}
@@ -99,6 +84,16 @@ class Tag_Model_Core extends ORM {
$duplicate_tag->delete();
}
+ // Figure out what items have changed in this tag for our item_related_update event below
+ if (isset($this->object_relations["items"])) {
+ $added = array_diff($this->changed_relations["items"], $this->object_relations["items"]);
+ $removed = array_diff($this->object_relations["items"], $this->changed_relations["items"]);
+ if (isset($this->changed_relations["items"])) {
+ $changed = array_merge($added, $removed);
+ }
+ $this->count = count($this->object_relations["items"]) + count($added) - count($removed);
+ }
+
$result = parent::save();
if (!empty($changed)) {
--
cgit v1.2.3
From c3b0c96460da336bf720db0de2b396517004f514 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sat, 23 Apr 2011 19:59:54 -0700
Subject: Revert 0235c2062e9d980a4778c4b22678238c525e1cd7 and instead apply the
fix from iptox.net listed here:
http://gallery.menalto.com/node/98768#comment-372398
Fixes for #1681, #1625
---
modules/gallery/helpers/graphics.php | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
(limited to 'modules')
diff --git a/modules/gallery/helpers/graphics.php b/modules/gallery/helpers/graphics.php
index 8d8853b0..acb11bfb 100644
--- a/modules/gallery/helpers/graphics.php
+++ b/modules/gallery/helpers/graphics.php
@@ -316,10 +316,10 @@ class graphics_Core {
// ImageMagick & GraphicsMagick
$magick_kits = array(
"imagemagick" => array(
- "name" => "ImageMagick", "binary" => "convert", "version" => "convert -version",
+ "name" => "ImageMagick", "binary" => "convert", "version_arg" => "-v",
"version_regex" => "/Version: \S+ (\S+)/"),
"graphicsmagick" => array(
- "name" => "GraphicsMagick", "binary" => "gm", "version" => "gm version",
+ "name" => "GraphicsMagick", "binary" => "gm", "version_arg" => "version",
"version_regex" => "/\S+ (\S+)/"));
// Loop through the kits
foreach ($magick_kits as $index => $settings) {
@@ -328,7 +328,8 @@ class graphics_Core {
$toolkits->$index->name = $settings["name"];
if ($path) {
if (@is_file($path) &&
- preg_match($settings["version_regex"], shell_exec($settings["version"]), $matches)) {
+ preg_match(
+ $settings["version_regex"], shell_exec($path . " " . $settings["version_arg"]), $matches)) {
$version = $matches[1];
$toolkits->$index->installed = true;
--
cgit v1.2.3
From c01a0eac9a09e0fc2ef4ba45a74c23a8a70f51b7 Mon Sep 17 00:00:00 2001
From: Tim Almdal
Date: Sat, 23 Apr 2011 20:30:30 -0700
Subject: Allow the tag rename function to split a tag into multiple tags if a
comma is used to delinate the seperate tags.
---
modules/tag/controllers/admin_tags.php | 26 ++++++++++++++++++++++----
1 file changed, 22 insertions(+), 4 deletions(-)
(limited to 'modules')
diff --git a/modules/tag/controllers/admin_tags.php b/modules/tag/controllers/admin_tags.php
index fd82bc92..5dc181bd 100644
--- a/modules/tag/controllers/admin_tags.php
+++ b/modules/tag/controllers/admin_tags.php
@@ -85,11 +85,23 @@ class Admin_Tags_Controller extends Admin_Controller {
if ($in_place_edit->validate()) {
$old_name = $tag->name;
- $tag->name = $in_place_edit->value();
+ $tag_name = $in_place_edit->value();
+ Kohana_Log::add("error", $tag_name);
+ $tags = explode(",", $tag_name);
+ $tag_count = count($tags);
+
+ $tag->name = array_shift($tags);
$tag->save();
- $message = t("Renamed tag %old_name to %new_name ",
- array("old_name" => $old_name, "new_name" => $tag->name));
+ if (!empty($tags)) {
+ $this->_copy_items_for_tags($tag, $tags);
+ $message = t("Split tag %old_name into %new_tags ",
+ array("old_name" => $old_name, "new_tags" => $tag_name));
+ } else {
+ $message = t("Renamed tag %old_name to %new_name ",
+ array("old_name" => $old_name, "new_name" => $tag->name));
+ }
+
message::success($message);
log::success("tags", $message);
@@ -99,5 +111,11 @@ class Admin_Tags_Controller extends Admin_Controller {
}
}
+ private function _copy_items_for_tags($tag, $tags) {
+ foreach ($tag->items() as $item) {
+ foreach ($tags as $idx => $new_tag) {
+ tag::add($item, trim($new_tag));
+ }
+ }
+ }
}
-
--
cgit v1.2.3
From 41f90e669f75e8e93bd31bf649011d5d315ac326 Mon Sep 17 00:00:00 2001
From: Tim Almdal
Date: Sun, 24 Apr 2011 07:04:11 -0700
Subject: Clarify the meaning of variable names.
---
modules/tag/controllers/admin_tags.php | 23 +++++++++++------------
1 file changed, 11 insertions(+), 12 deletions(-)
(limited to 'modules')
diff --git a/modules/tag/controllers/admin_tags.php b/modules/tag/controllers/admin_tags.php
index 5dc181bd..7a64f7ab 100644
--- a/modules/tag/controllers/admin_tags.php
+++ b/modules/tag/controllers/admin_tags.php
@@ -85,18 +85,17 @@ class Admin_Tags_Controller extends Admin_Controller {
if ($in_place_edit->validate()) {
$old_name = $tag->name;
- $tag_name = $in_place_edit->value();
- Kohana_Log::add("error", $tag_name);
- $tags = explode(",", $tag_name);
- $tag_count = count($tags);
+ $new_name_or_list = $in_place_edit->value();
+ $tag_list = explode(",", $new_name_or_list);
+ $tag_count = count($tag_list);
- $tag->name = array_shift($tags);
+ $tag->name = array_shift($tag_list);
$tag->save();
- if (!empty($tags)) {
- $this->_copy_items_for_tags($tag, $tags);
- $message = t("Split tag %old_name into %new_tags ",
- array("old_name" => $old_name, "new_tags" => $tag_name));
+ if (!empty($tag_list)) {
+ $this->_copy_items_for_tags($tag, $tag_list);
+ $message = t("Split tag %old_name into %tag_list ",
+ array("old_name" => $old_name, "tag_list" => $new_name_or_list));
} else {
$message = t("Renamed tag %old_name to %new_name ",
array("old_name" => $old_name, "new_name" => $tag->name));
@@ -111,10 +110,10 @@ class Admin_Tags_Controller extends Admin_Controller {
}
}
- private function _copy_items_for_tags($tag, $tags) {
+ private function _copy_items_for_tags($tag, $tag_list) {
foreach ($tag->items() as $item) {
- foreach ($tags as $idx => $new_tag) {
- tag::add($item, trim($new_tag));
+ foreach ($tag_list as $new_tag_name) {
+ tag::add($item, trim($new_tag_name));
}
}
}
--
cgit v1.2.3
From 7f48671186a4bf3a4745cd7a31b48a891dd83078 Mon Sep 17 00:00:00 2001
From: Tim Almdal
Date: Sun, 24 Apr 2011 07:15:30 -0700
Subject: For ticket #1701. Remove unused variable.
---
modules/tag/controllers/admin_tags.php | 1 -
1 file changed, 1 deletion(-)
(limited to 'modules')
diff --git a/modules/tag/controllers/admin_tags.php b/modules/tag/controllers/admin_tags.php
index 7a64f7ab..77b5f20a 100644
--- a/modules/tag/controllers/admin_tags.php
+++ b/modules/tag/controllers/admin_tags.php
@@ -87,7 +87,6 @@ class Admin_Tags_Controller extends Admin_Controller {
$old_name = $tag->name;
$new_name_or_list = $in_place_edit->value();
$tag_list = explode(",", $new_name_or_list);
- $tag_count = count($tag_list);
$tag->name = array_shift($tag_list);
$tag->save();
--
cgit v1.2.3
From b89c40242f85ecb49393e4fe6aeb3659550f60a4 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sun, 24 Apr 2011 07:49:41 -0700
Subject: Sentence-case the url. Fixes #1706.
---
modules/g2_import/helpers/g2_import_event.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'modules')
diff --git a/modules/g2_import/helpers/g2_import_event.php b/modules/g2_import/helpers/g2_import_event.php
index 0e078d08..0afa62d8 100644
--- a/modules/g2_import/helpers/g2_import_event.php
+++ b/modules/g2_import/helpers/g2_import_event.php
@@ -34,7 +34,7 @@ class g2_import_event_Core {
->get("settings_menu")
->append(Menu::factory("link")
->id("g2_import")
- ->label(t("Gallery 2 Import"))
+ ->label(t("Gallery 2 import"))
->url(url::site("admin/g2_import")));
}
}
--
cgit v1.2.3
From b4cdd016dc97f2df608bb14d2088cb4ddbd32c35 Mon Sep 17 00:00:00 2001
From: Chad Kieffer
Date: Sun, 24 Apr 2011 11:53:29 -0400
Subject: Third times the charm. Rethink unordered lists and bullets. Revert to
turning them off by default and provide a new class, g-text, to define a list
or a section of text as needing to display bullets.
---
modules/g2_import/views/admin_g2_import.html.php | 4 ++--
modules/gallery/views/admin_block_welcome.html.php | 2 +-
themes/admin_wind/css/screen.css | 17 ++---------------
3 files changed, 5 insertions(+), 18 deletions(-)
(limited to 'modules')
diff --git a/modules/g2_import/views/admin_g2_import.html.php b/modules/g2_import/views/admin_g2_import.html.php
index cf5e4755..2f4a1b28 100644
--- a/modules/g2_import/views/admin_g2_import.html.php
+++ b/modules/g2_import/views/admin_g2_import.html.php
@@ -112,8 +112,8 @@ $("document").ready(function() {
endif ?>
-
-
+
+
= t("Gallery 3 does not support per-user / per-item permissions. Review permissions! ") ?>
diff --git a/modules/gallery/views/admin_block_welcome.html.php b/modules/gallery/views/admin_block_welcome.html.php
index d8c96187..d3765d19 100644
--- a/modules/gallery/views/admin_block_welcome.html.php
+++ b/modules/gallery/views/admin_block_welcome.html.php
@@ -2,7 +2,7 @@
= t("This is your administration dashboard and it provides a quick overview of status messages, recent updates, and frequently used options. Add or remove blocks and rearrange them to tailor to your needs. The admin menu provides quick access to all of Gallery 3's options and settings. Here are a few of the most used options to get you started.") ?>
-
+
= t("General Settings - choose your graphics and language settings.",
array("graphics_url" => html::mark_clean(url::site("admin/graphics")),
diff --git a/themes/admin_wind/css/screen.css b/themes/admin_wind/css/screen.css
index f01c2a94..6f1c0962 100644
--- a/themes/admin_wind/css/screen.css
+++ b/themes/admin_wind/css/screen.css
@@ -92,25 +92,12 @@ a:hover,
/* Lists ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
-#g-content ul li {
+ul.g-text li,
+.g-text ul li {
list-style-type: disc;
margin-left: 1em;
}
-form ul li,
-#g-action-status li,
-#g-log-entries li,
-#g-tag-admin li,
-.g-buttonset li,
-.g-buttonset-vertical li,
-.g-paginator li,
-.ui-sortable li,
-.ui-widget-header li {
- list-style: none !important;
- margin-left: 0 !important;
-}
-
-
/* Forms ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
form {
--
cgit v1.2.3
From f8493a1df26f242959e931d862c5f1282dd324e8 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sun, 24 Apr 2011 08:57:09 -0700
Subject: Revert my two "fixes" on top of Andy's tag combine change. Leave
Tag_Model::items() calling Item_Model::viewable() because it's too dangerous
to separate that out, and it's fragile to rely on only admins doing tag
combines.
Revert "Undo the change made in 5ce85636329b14673718836b3631a3e46efdc3bb because it messes up tag counts"
- This reverts commit 67d2e8081c6e5f0b679881bca3fdc81fe1e78ccc.
Revert "Move the calculation for item_related_update ahead of the duplicate"
- This reverts commit 5ce85636329b14673718836b3631a3e46efdc3bb.
---
modules/tag/models/tag.php | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
(limited to 'modules')
diff --git a/modules/tag/models/tag.php b/modules/tag/models/tag.php
index 13e253ba..bb79e707 100644
--- a/modules/tag/models/tag.php
+++ b/modules/tag/models/tag.php
@@ -75,8 +75,12 @@ class Tag_Model_Core extends ORM {
->where("id", "!=", $this->id)
->find();
if ($duplicate_tag->loaded()) {
- // If so, tag its items with this tag so as to merge it.
- foreach ($duplicate_tag->items() as $item) {
+ // If so, tag its items with this tag so as to merge it
+ $duplicate_tag_items = ORM::factory("item")
+ ->join("items_tags", "items.id", "items_tags.item_id")
+ ->where("items_tags.tag_id", "=", $duplicate_tag->id)
+ ->find_all();
+ foreach ($duplicate_tag_items as $item) {
$this->add($item);
}
@@ -84,7 +88,6 @@ class Tag_Model_Core extends ORM {
$duplicate_tag->delete();
}
- // Figure out what items have changed in this tag for our item_related_update event below
if (isset($this->object_relations["items"])) {
$added = array_diff($this->changed_relations["items"], $this->object_relations["items"]);
$removed = array_diff($this->object_relations["items"], $this->changed_relations["items"]);
--
cgit v1.2.3
From f4d76a8abe04612efe01f146617d760ffdd4b69f Mon Sep 17 00:00:00 2001
From: Chad Kieffer
Date: Sun, 24 Apr 2011 13:56:39 -0400
Subject: Don't put the Admin > Theme Options Save button in a fieldset.
---
modules/gallery/controllers/admin_theme_options.php | 1 -
1 file changed, 1 deletion(-)
(limited to 'modules')
diff --git a/modules/gallery/controllers/admin_theme_options.php b/modules/gallery/controllers/admin_theme_options.php
index a968a56d..d9323ea0 100644
--- a/modules/gallery/controllers/admin_theme_options.php
+++ b/modules/gallery/controllers/admin_theme_options.php
@@ -108,7 +108,6 @@ class Admin_Theme_Options_Controller extends Admin_Controller {
module::event("theme_edit_form", $form);
- $group = $form->group("buttons");
$group->submit("")->value(t("Save"));
return $form;
}
--
cgit v1.2.3
From ea2127c3b2ddef5709e02b4804c074bd1f942159 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sun, 24 Apr 2011 21:02:34 -0700
Subject: Fix a bug introduced in f2477703faa7cd05ff1aa16da3ecef7b666bef40
which was a fix for #1581 that caused us to skip adding highlights for any
albums that had no sub-albums.
---
modules/g2_import/helpers/g2_import.php | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
(limited to 'modules')
diff --git a/modules/g2_import/helpers/g2_import.php b/modules/g2_import/helpers/g2_import.php
index 23fb29e5..e9c19c9d 100644
--- a/modules/g2_import/helpers/g2_import.php
+++ b/modules/g2_import/helpers/g2_import.php
@@ -518,12 +518,11 @@ class g2_import_Core {
static function set_album_highlight(&$queue) {
// Dequeue the current album and enqueue its children
list($g2_album_id, $children) = each($queue);
- if (empty($children)) {
- return;
- }
unset($queue[$g2_album_id]);
- foreach ($children as $key => $value) {
- $queue[$key] = $value;
+ if (!empty($children)) {
+ foreach ($children as $key => $value) {
+ $queue[$key] = $value;
+ }
}
$messages = array();
--
cgit v1.2.3
From 701c1fb12f2f254d8d7e7756a09cb5e825123a2f Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sun, 24 Apr 2011 22:45:45 -0700
Subject: Ignore the presort when transferring over sort orders. Fixes #1710.
---
modules/g2_import/helpers/g2_import.php | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
(limited to 'modules')
diff --git a/modules/g2_import/helpers/g2_import.php b/modules/g2_import/helpers/g2_import.php
index e9c19c9d..50ab8a23 100644
--- a/modules/g2_import/helpers/g2_import.php
+++ b/modules/g2_import/helpers/g2_import.php
@@ -475,9 +475,10 @@ class g2_import_Core {
1 => "ASC",
ORDER_ASCENDING => "ASC",
ORDER_DESCENDING => "DESC");
- // Only consider G2's first sort order
+ // G2 sorts can either be or |. Right now we can't
+ // map presorts so ignore them.
$g2_order = explode("|", $g2_album->getOrderBy() . "");
- $g2_order = $g2_order[0];
+ $g2_order = end($g2_order);
if (empty($g2_order)) {
$g2_order = g2(GalleryCoreApi::getPluginParameter('module', 'core', 'default.orderBy'));
}
--
cgit v1.2.3
From 953be781dc91254599224fa6e95fcc435e787975 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sun, 24 Apr 2011 22:51:14 -0700
Subject: Refactor the meat of g2_import::import_album() off into a separate
function so taht we can call it on the root album as well. Fixes
---
modules/g2_import/helpers/g2_import.php | 96 +++++++++++++++-------------
modules/g2_import/helpers/g2_import_task.php | 6 ++
2 files changed, 58 insertions(+), 44 deletions(-)
(limited to 'modules')
diff --git a/modules/g2_import/helpers/g2_import.php b/modules/g2_import/helpers/g2_import.php
index 50ab8a23..22a054ac 100644
--- a/modules/g2_import/helpers/g2_import.php
+++ b/modules/g2_import/helpers/g2_import.php
@@ -448,50 +448,8 @@ class g2_import_Core {
$album = ORM::factory("item");
$album->type = "album";
$album->parent_id = self::map($g2_album->getParentId());
- $album->name = $g2_album->getPathComponent();
- $album->title = self::_decode_html_special_chars($g2_album->getTitle());
- $album->title or $album->title = $album->name;
- $album->description = self::_decode_html_special_chars(self::extract_description($g2_album));
- $album->owner_id = self::map($g2_album->getOwnerId());
- try {
- $album->view_count = (int) g2(GalleryCoreApi::fetchItemViewCount($g2_album_id));
- } catch (Exception $e) {
- // @todo log
- $album->view_count = 0;
- }
- $album->created = $g2_album->getCreationTimestamp();
-
- $order_map = array(
- "originationTimestamp" => "captured",
- "creationTimestamp" => "created",
- "description" => "description",
- "modificationTimestamp" => "updated",
- "orderWeight" => "weight",
- "pathComponent" => "name",
- "summary" => "description",
- "title" => "title",
- "viewCount" => "view_count");
- $direction_map = array(
- 1 => "ASC",
- ORDER_ASCENDING => "ASC",
- ORDER_DESCENDING => "DESC");
- // G2 sorts can either be or |. Right now we can't
- // map presorts so ignore them.
- $g2_order = explode("|", $g2_album->getOrderBy() . "");
- $g2_order = end($g2_order);
- if (empty($g2_order)) {
- $g2_order = g2(GalleryCoreApi::getPluginParameter('module', 'core', 'default.orderBy'));
- }
- $g2_order_direction = explode("|", $g2_album->getOrderDirection() . "");
- $g2_order_direction = $g2_order_direction[0];
- if (empty($g2_order_direction)) {
- $g2_order_direction =
- g2(GalleryCoreApi::getPluginParameter('module', 'core', 'default.orderDirection'));
- }
- if (array_key_exists($g2_order, $order_map)) {
- $album->sort_column = $order_map[$g2_order];
- $album->sort_order = $direction_map[$g2_order_direction];
- }
+
+ g2_import::set_album_values($album, $g2_album);
try {
$album->save();
@@ -513,6 +471,56 @@ class g2_import_Core {
self::_import_permissions($g2_album, $album);
}
+ /**
+ * Transfer over all the values from a G2 album to a G3 album.
+ */
+ static function set_album_values($album, $g2_album) {
+ $album->name = $g2_album->getPathComponent();
+ $album->title = self::_decode_html_special_chars($g2_album->getTitle());
+ $album->title or $album->title = $album->name;
+ $album->description = self::_decode_html_special_chars(self::extract_description($g2_album));
+ $album->owner_id = self::map($g2_album->getOwnerId());
+ try {
+ $album->view_count = (int) g2(GalleryCoreApi::fetchItemViewCount($g2_album_id));
+ } catch (Exception $e) {
+ // @todo log
+ $album->view_count = 0;
+ }
+ $album->created = $g2_album->getCreationTimestamp();
+
+ $order_map = array(
+ "originationTimestamp" => "captured",
+ "creationTimestamp" => "created",
+ "description" => "description",
+ "modificationTimestamp" => "updated",
+ "orderWeight" => "weight",
+ "pathComponent" => "name",
+ "summary" => "description",
+ "title" => "title",
+ "viewCount" => "view_count");
+ $direction_map = array(
+ 1 => "ASC",
+ ORDER_ASCENDING => "ASC",
+ ORDER_DESCENDING => "DESC");
+ // G2 sorts can either be or |. Right now we can't
+ // map presorts so ignore them.
+ $g2_order = explode("|", $g2_album->getOrderBy() . "");
+ $g2_order = end($g2_order);
+ if (empty($g2_order)) {
+ $g2_order = g2(GalleryCoreApi::getPluginParameter('module', 'core', 'default.orderBy'));
+ }
+ $g2_order_direction = explode("|", $g2_album->getOrderDirection() . "");
+ $g2_order_direction = $g2_order_direction[0];
+ if (empty($g2_order_direction)) {
+ $g2_order_direction =
+ g2(GalleryCoreApi::getPluginParameter('module', 'core', 'default.orderDirection'));
+ }
+ if (array_key_exists($g2_order, $order_map)) {
+ $album->sort_column = $order_map[$g2_order];
+ $album->sort_order = $direction_map[$g2_order_direction];
+ }
+ }
+
/**
* Set the highlight properly for a single album
*/
diff --git a/modules/g2_import/helpers/g2_import_task.php b/modules/g2_import/helpers/g2_import_task.php
index 5e908676..31615a55 100644
--- a/modules/g2_import/helpers/g2_import_task.php
+++ b/modules/g2_import/helpers/g2_import_task.php
@@ -127,6 +127,12 @@ class g2_import_task_Core {
$g2_root_id = g2(GalleryCoreApi::getDefaultAlbumId());
$tree = g2(GalleryCoreApi::fetchAlbumTree());
$task->set("queue", $queue = array($g2_root_id => $tree));
+
+ // Update the root album to reflect the Gallery2 root album.
+ $root_album = item::root();
+ g2_import::set_album_values(
+ $root_album, g2(GalleryCoreApi::loadEntitiesById($g2_root_id)));
+ $root_album->save();
}
$log_message = g2_import::import_album($queue);
if ($log_message) {
--
cgit v1.2.3
From 8533420f5d307e81a90c3d26a75b666350aee0f2 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sun, 24 Apr 2011 22:55:01 -0700
Subject: Look for and return embed.php files in the autocomplete list if we
can find them. Fixes #1708.
---
modules/g2_import/controllers/admin_g2_import.php | 5 +++++
1 file changed, 5 insertions(+)
(limited to 'modules')
diff --git a/modules/g2_import/controllers/admin_g2_import.php b/modules/g2_import/controllers/admin_g2_import.php
index cf68d911..5c4995c9 100644
--- a/modules/g2_import/controllers/admin_g2_import.php
+++ b/modules/g2_import/controllers/admin_g2_import.php
@@ -100,6 +100,11 @@ class Admin_g2_import_Controller extends Admin_Controller {
foreach (glob("{$path_prefix}*") as $file) {
if (is_dir($file) && !is_link($file)) {
$directories[] = $file;
+
+ // If we find an embed.php, include it as well
+ if (file_exists("$file/embed.php")) {
+ $directories[] = "$file/embed.php";
+ }
}
}
--
cgit v1.2.3
From 4e7524664a24dd2ca2309c9d67843a19e74b48e0 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Sun, 24 Apr 2011 23:04:50 -0700
Subject: Show the tabs after the page has loaded to prevent Firefox from
rendering the unstyled page and then flashing. Fixes #1705.
---
modules/g2_import/views/admin_g2_import.html.php | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
(limited to 'modules')
diff --git a/modules/g2_import/views/admin_g2_import.html.php b/modules/g2_import/views/admin_g2_import.html.php
index 2f4a1b28..9c4eb840 100644
--- a/modules/g2_import/views/admin_g2_import.html.php
+++ b/modules/g2_import/views/admin_g2_import.html.php
@@ -30,9 +30,13 @@ $("document").ready(function() {
.tabs("select", 1)
endif ?>
;
+
+ // Show the tabs after the page has loaded to prevent Firefox from rendering the
+ // unstyled page and then flashing.
+ $("#g-admin-g2-import-tabs").show();
});
-
+
= t("1. Configure Gallery2 path") ?>
--
cgit v1.2.3
From b0285f770e72a03591939533485c90c63af00f1b Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Mon, 25 Apr 2011 22:06:36 -0700
Subject: Add appropriate preamble. #1696, #1698
---
.../gallery/views/admin_themes_buttonset.html.php | 93 +++++++++++-----------
1 file changed, 47 insertions(+), 46 deletions(-)
(limited to 'modules')
diff --git a/modules/gallery/views/admin_themes_buttonset.html.php b/modules/gallery/views/admin_themes_buttonset.html.php
index 5166f36c..bf474a26 100644
--- a/modules/gallery/views/admin_themes_buttonset.html.php
+++ b/modules/gallery/views/admin_themes_buttonset.html.php
@@ -1,47 +1,48 @@
-
--
cgit v1.2.3
From 11af2bc93f5966c4851d6752ded1da5de8450626 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Mon, 25 Apr 2011 22:06:44 -0700
Subject: Update test golden files.
---
modules/gallery/tests/controller_auth_data.txt | 1 +
modules/gallery/tests/xss_data.txt | 131 ++++++++++++++-----------
2 files changed, 73 insertions(+), 59 deletions(-)
(limited to 'modules')
diff --git a/modules/gallery/tests/controller_auth_data.txt b/modules/gallery/tests/controller_auth_data.txt
index f1192071..e35708c0 100644
--- a/modules/gallery/tests/controller_auth_data.txt
+++ b/modules/gallery/tests/controller_auth_data.txt
@@ -1,6 +1,7 @@
modules/comment/controllers/admin_manage_comments.php queue DIRTY_CSRF
modules/comment/helpers/comment_rss.php feed DIRTY_AUTH
modules/digibug/controllers/digibug.php print_proxy DIRTY_CSRF|DIRTY_AUTH
+modules/g2_import/controllers/admin_g2_import.php autocomplete DIRTY_CSRF
modules/g2_import/controllers/g2.php map DIRTY_CSRF
modules/gallery/controllers/admin.php __call DIRTY_AUTH
modules/gallery/controllers/albums.php index DIRTY_AUTH
diff --git a/modules/gallery/tests/xss_data.txt b/modules/gallery/tests/xss_data.txt
index 0c812fb4..7da79b23 100644
--- a/modules/gallery/tests/xss_data.txt
+++ b/modules/gallery/tests/xss_data.txt
@@ -42,7 +42,8 @@ modules/digibug/views/digibug_form.html.php 4 DIRTY form::
modules/digibug/views/digibug_form.html.php 6 DIRTY form::hidden($key,$value)
modules/exif/views/exif_dialog.html.php 14 DIRTY $details[$i]["caption"]
modules/exif/views/exif_dialog.html.php 21 DIRTY $details[$i]["caption"]
-modules/g2_import/views/admin_g2_import.html.php 9 DIRTY $form
+modules/g2_import/views/admin_g2_import.html.php 7 DIRTY_JS url::site("__ARGS__")
+modules/g2_import/views/admin_g2_import.html.php 52 DIRTY $form
modules/gallery/views/admin_advanced_settings.html.php 21 DIRTY_ATTR text::alternate("g-odd","g-even")
modules/gallery/views/admin_advanced_settings.html.php 22 DIRTY $var->module_name
modules/gallery/views/admin_block_log_entries.html.php 4 DIRTY_ATTR log::severity_class($entry->severity)
@@ -77,30 +78,35 @@ modules/gallery/views/admin_languages.html.php 62 DIRTY form::
modules/gallery/views/admin_languages.html.php 63 DIRTY $display_name
modules/gallery/views/admin_languages.html.php 65 DIRTY form::radio("default_locale",$code,($default_locale==$code),((isset($installed_locales[$code]))?'':'disabled="disabled"'))
modules/gallery/views/admin_languages.html.php 113 DIRTY $share_translations_form
-modules/gallery/views/admin_maintenance.html.php 40 DIRTY_ATTR text::alternate("g-odd","g-even")
-modules/gallery/views/admin_maintenance.html.php 40 DIRTY_ATTR log::severity_class($task->severity)
-modules/gallery/views/admin_maintenance.html.php 41 DIRTY_ATTR log::severity_class($task->severity)
-modules/gallery/views/admin_maintenance.html.php 42 DIRTY $task->name
-modules/gallery/views/admin_maintenance.html.php 45 DIRTY $task->description
-modules/gallery/views/admin_maintenance.html.php 86 DIRTY_ATTR text::alternate("g-odd","g-even")
-modules/gallery/views/admin_maintenance.html.php 86 DIRTY_ATTR $task->state=="stalled"?"g-warning":""
-modules/gallery/views/admin_maintenance.html.php 87 DIRTY_ATTR $task->state=="stalled"?"g-warning":""
-modules/gallery/views/admin_maintenance.html.php 88 DIRTY gallery::date_time($task->updated)
-modules/gallery/views/admin_maintenance.html.php 91 DIRTY $task->name
-modules/gallery/views/admin_maintenance.html.php 106 DIRTY $task->status
-modules/gallery/views/admin_maintenance.html.php 162 DIRTY_ATTR text::alternate("g-odd","g-even")
-modules/gallery/views/admin_maintenance.html.php 162 DIRTY_ATTR $task->state=="success"?"g-success":"g-error"
-modules/gallery/views/admin_maintenance.html.php 163 DIRTY_ATTR $task->state=="success"?"g-success":"g-error"
-modules/gallery/views/admin_maintenance.html.php 164 DIRTY gallery::date_time($task->updated)
-modules/gallery/views/admin_maintenance.html.php 167 DIRTY $task->name
-modules/gallery/views/admin_maintenance.html.php 179 DIRTY $task->status
+modules/gallery/views/admin_maintenance.html.php 42 DIRTY_ATTR text::alternate("g-odd","g-even")
+modules/gallery/views/admin_maintenance.html.php 42 DIRTY_ATTR log::severity_class($task->severity)
+modules/gallery/views/admin_maintenance.html.php 43 DIRTY_ATTR log::severity_class($task->severity)
+modules/gallery/views/admin_maintenance.html.php 44 DIRTY $task->name
+modules/gallery/views/admin_maintenance.html.php 47 DIRTY $task->description
+modules/gallery/views/admin_maintenance.html.php 88 DIRTY_ATTR text::alternate("g-odd","g-even")
+modules/gallery/views/admin_maintenance.html.php 88 DIRTY_ATTR $task->state=="stalled"?"g-warning":""
+modules/gallery/views/admin_maintenance.html.php 89 DIRTY_ATTR $task->state=="stalled"?"g-warning":""
+modules/gallery/views/admin_maintenance.html.php 90 DIRTY gallery::date_time($task->updated)
+modules/gallery/views/admin_maintenance.html.php 93 DIRTY $task->name
+modules/gallery/views/admin_maintenance.html.php 108 DIRTY $task->status
+modules/gallery/views/admin_maintenance.html.php 164 DIRTY_ATTR text::alternate("g-odd","g-even")
+modules/gallery/views/admin_maintenance.html.php 164 DIRTY_ATTR $task->state=="success"?"g-success":"g-error"
+modules/gallery/views/admin_maintenance.html.php 165 DIRTY_ATTR $task->state=="success"?"g-success":"g-error"
+modules/gallery/views/admin_maintenance.html.php 166 DIRTY gallery::date_time($task->updated)
+modules/gallery/views/admin_maintenance.html.php 169 DIRTY $task->name
+modules/gallery/views/admin_maintenance.html.php 181 DIRTY $task->status
modules/gallery/views/admin_maintenance_show_log.html.php 8 DIRTY_JS url::site("admin/maintenance/save_log/$task->id?csrf=$csrf")
modules/gallery/views/admin_maintenance_show_log.html.php 13 DIRTY $task->name
modules/gallery/views/admin_maintenance_task.html.php 75 DIRTY $task->name
modules/gallery/views/admin_modules.html.php 51 DIRTY access::csrf_form_field()
-modules/gallery/views/admin_modules.html.php 60 DIRTY_ATTR text::alternate("g-odd","g-even")
-modules/gallery/views/admin_modules.html.php 63 DIRTY form::checkbox($data,'1',module::is_active($module_name))
-modules/gallery/views/admin_modules.html.php 65 DIRTY $module_info->version
+modules/gallery/views/admin_modules.html.php 61 DIRTY_ATTR text::alternate("g-odd","g-even")
+modules/gallery/views/admin_modules.html.php 64 DIRTY form::checkbox($data,'1',module::is_active($module_name))
+modules/gallery/views/admin_modules.html.php 66 DIRTY $module_info->version
+modules/gallery/views/admin_modules.html.php 74 DIRTY_JS $module_info->author_url
+modules/gallery/views/admin_modules.html.php 81 DIRTY_ATTR $module_info->author_name
+modules/gallery/views/admin_modules.html.php 85 DIRTY $module_info->author_name
+modules/gallery/views/admin_modules.html.php 93 DIRTY_JS $module_info->info_url
+modules/gallery/views/admin_modules.html.php 106 DIRTY_JS $module_info->discuss_url
modules/gallery/views/admin_modules_confirm.html.php 11 DIRTY_ATTR $css_class
modules/gallery/views/admin_modules_confirm.html.php 11 DIRTY $message
modules/gallery/views/admin_modules_confirm.html.php 16 DIRTY access::csrf_form_field()
@@ -114,12 +120,17 @@ modules/gallery/views/admin_themes.html.php 3 DIRTY_JS url::s
modules/gallery/views/admin_themes.html.php 5 DIRTY_JS $csrf
modules/gallery/views/admin_themes.html.php 22 DIRTY $themes[$site]->name
modules/gallery/views/admin_themes.html.php 24 DIRTY $themes[$site]->description
-modules/gallery/views/admin_themes.html.php 38 DIRTY $info->name
-modules/gallery/views/admin_themes.html.php 40 DIRTY $info->description
-modules/gallery/views/admin_themes.html.php 60 DIRTY $themes[$admin]->name
-modules/gallery/views/admin_themes.html.php 62 DIRTY $themes[$admin]->description
-modules/gallery/views/admin_themes.html.php 76 DIRTY $info->name
-modules/gallery/views/admin_themes.html.php 78 DIRTY $info->description
+modules/gallery/views/admin_themes.html.php 39 DIRTY $info->name
+modules/gallery/views/admin_themes.html.php 41 DIRTY $info->description
+modules/gallery/views/admin_themes.html.php 62 DIRTY $themes[$admin]->name
+modules/gallery/views/admin_themes.html.php 64 DIRTY $themes[$admin]->description
+modules/gallery/views/admin_themes.html.php 79 DIRTY $info->name
+modules/gallery/views/admin_themes.html.php 81 DIRTY $info->description
+modules/gallery/views/admin_themes_buttonset.html.php 7 DIRTY_JS $info['author_url']
+modules/gallery/views/admin_themes_buttonset.html.php 14 DIRTY_ATTR $info['author_name']
+modules/gallery/views/admin_themes_buttonset.html.php 18 DIRTY $info['author_name']
+modules/gallery/views/admin_themes_buttonset.html.php 26 DIRTY_JS $info['info_url']
+modules/gallery/views/admin_themes_buttonset.html.php 39 DIRTY_JS $info['discuss_url']
modules/gallery/views/admin_themes_preview.html.php 8 DIRTY_ATTR $url
modules/gallery/views/error_404.html.php 14 DIRTY $login_form
modules/gallery/views/error_admin.html.php 178 DIRTY @gallery_block::get("platform_info")
@@ -174,7 +185,8 @@ modules/gallery/views/form_uploadify.html.php 28 DIRTY_JS url::f
modules/gallery/views/form_uploadify.html.php 29 DIRTY_JS url::site("uploader/add_photo/{$album->id}")
modules/gallery/views/form_uploadify.html.php 33 DIRTY_JS url::file("lib/uploadify/cancel.png")
modules/gallery/views/form_uploadify.html.php 34 DIRTY_JS $simultaneous_upload_limit
-modules/gallery/views/form_uploadify.html.php 160 DIRTY_ATTR request::protocol()
+modules/gallery/views/form_uploadify.html.php 35 DIRTY_JS $size_limit_bytes
+modules/gallery/views/form_uploadify.html.php 162 DIRTY_ATTR request::protocol()
modules/gallery/views/in_place_edit.html.php 2 DIRTY form::open($action,array("method"=>"post","id"=>"g-in-place-edit-form","class"=>"g-short-form"))
modules/gallery/views/in_place_edit.html.php 3 DIRTY access::csrf_form_field()
modules/gallery/views/in_place_edit.html.php 6 DIRTY form::input("input",$form["input"]," class=\"textbox\"")
@@ -248,7 +260,7 @@ modules/gallery/views/permissions_form.html.php 80 DIRTY_JS $permi
modules/gallery/views/permissions_form.html.php 80 DIRTY_JS $item->id
modules/gallery/views/quick_delete_confirm.html.php 11 DIRTY $form
modules/gallery/views/reauthenticate.html.php 9 DIRTY $form
-modules/gallery/views/upgrade_checker_block.html.php 17 DIRTY $new_version
+modules/gallery/views/upgrade_checker_block.html.php 19 DIRTY $new_version
modules/gallery/views/upgrader.html.php 76 DIRTY_ATTR $done?"muted":""
modules/gallery/views/upgrader.html.php 94 DIRTY_ATTR $done?"muted":""
modules/gallery/views/upgrader.html.php 102 DIRTY_ATTR $module->version==$module->code_version?"current":"upgradeable"
@@ -330,8 +342,9 @@ modules/search/views/search.html.php 27 DIRTY_ATTR $ite
modules/search/views/search.html.php 28 DIRTY_JS $item->url()
modules/search/views/search.html.php 29 DIRTY $item->thumb_img()
modules/search/views/search.html.php 40 DIRTY $theme->paginator()
-modules/server_add/views/admin_server_add.html.php 5 DIRTY $form
-modules/server_add/views/admin_server_add.html.php 15 DIRTY_ATTR $id
+modules/server_add/views/admin_server_add.html.php 8 DIRTY_JS url::site("__ARGS__")
+modules/server_add/views/admin_server_add.html.php 19 DIRTY $form
+modules/server_add/views/admin_server_add.html.php 30 DIRTY_ATTR $id
modules/server_add/views/server_add_tree.html.php 20 DIRTY_ATTR is_dir($file)?"ui-icon-folder-collapsed":"ui-icon-document"
modules/server_add/views/server_add_tree.html.php 21 DIRTY_ATTR is_dir($file)?"g-directory":"g-file"
modules/server_add/views/server_add_tree_dialog.html.php 3 DIRTY_JS url::site("server_add/children?path=__PATH__")
@@ -365,21 +378,21 @@ modules/watermark/views/admin_watermarks.html.php 20 DIRTY_ATTR $wid
modules/watermark/views/admin_watermarks.html.php 20 DIRTY_ATTR $height
modules/watermark/views/admin_watermarks.html.php 20 DIRTY_ATTR $url
themes/admin_wind/views/admin.html.php 4 DIRTY $theme->html_attributes()
-themes/admin_wind/views/admin.html.php 31 DIRTY $theme->admin_head()
-themes/admin_wind/views/admin.html.php 40 DIRTY_JS $theme->url()
-themes/admin_wind/views/admin.html.php 45 DIRTY $theme->get_combined("script")
-themes/admin_wind/views/admin.html.php 48 DIRTY $theme->get_combined("css")
-themes/admin_wind/views/admin.html.php 52 DIRTY $theme->admin_page_top()
-themes/admin_wind/views/admin.html.php 60 DIRTY $theme->admin_header_top()
-themes/admin_wind/views/admin.html.php 61 DIRTY_JS item::root()->url()
-themes/admin_wind/views/admin.html.php 64 DIRTY $theme->user_menu()
-themes/admin_wind/views/admin.html.php 67 DIRTY $theme->admin_menu()
-themes/admin_wind/views/admin.html.php 70 DIRTY $theme->admin_header_bottom()
-themes/admin_wind/views/admin.html.php 77 DIRTY $content
-themes/admin_wind/views/admin.html.php 83 DIRTY $sidebar
-themes/admin_wind/views/admin.html.php 88 DIRTY $theme->admin_footer()
-themes/admin_wind/views/admin.html.php 91 DIRTY $theme->admin_credits()
-themes/admin_wind/views/admin.html.php 96 DIRTY $theme->admin_page_bottom()
+themes/admin_wind/views/admin.html.php 33 DIRTY $theme->admin_head()
+themes/admin_wind/views/admin.html.php 42 DIRTY_JS $theme->url()
+themes/admin_wind/views/admin.html.php 47 DIRTY $theme->get_combined("css")
+themes/admin_wind/views/admin.html.php 50 DIRTY $theme->get_combined("script")
+themes/admin_wind/views/admin.html.php 54 DIRTY $theme->admin_page_top()
+themes/admin_wind/views/admin.html.php 62 DIRTY $theme->admin_header_top()
+themes/admin_wind/views/admin.html.php 63 DIRTY_JS item::root()->url()
+themes/admin_wind/views/admin.html.php 66 DIRTY $theme->user_menu()
+themes/admin_wind/views/admin.html.php 69 DIRTY $theme->admin_menu()
+themes/admin_wind/views/admin.html.php 72 DIRTY $theme->admin_header_bottom()
+themes/admin_wind/views/admin.html.php 79 DIRTY $content
+themes/admin_wind/views/admin.html.php 85 DIRTY $sidebar
+themes/admin_wind/views/admin.html.php 90 DIRTY $theme->admin_footer()
+themes/admin_wind/views/admin.html.php 93 DIRTY $theme->admin_credits()
+themes/admin_wind/views/admin.html.php 98 DIRTY $theme->admin_page_bottom()
themes/admin_wind/views/block.html.php 3 DIRTY_ATTR $anchor
themes/admin_wind/views/block.html.php 5 DIRTY $id
themes/admin_wind/views/block.html.php 5 DIRTY_ATTR $css_id
@@ -414,19 +427,19 @@ themes/wind/views/page.html.php 4 DIRTY $theme
themes/wind/views/page.html.php 10 DIRTY $page_title
themes/wind/views/page.html.php 13 DIRTY $theme->item()->title
themes/wind/views/page.html.php 17 DIRTY item::root()->title
-themes/wind/views/page.html.php 31 DIRTY $new_width
-themes/wind/views/page.html.php 32 DIRTY $new_height
-themes/wind/views/page.html.php 33 DIRTY $thumb_proportion
-themes/wind/views/page.html.php 70 DIRTY_JS $theme->url()
-themes/wind/views/page.html.php 75 DIRTY $theme->get_combined("script")
-themes/wind/views/page.html.php 78 DIRTY $theme->get_combined("css")
-themes/wind/views/page.html.php 88 DIRTY $header_text
-themes/wind/views/page.html.php 90 DIRTY_JS item::root()->url()
-themes/wind/views/page.html.php 94 DIRTY $theme->user_menu()
-themes/wind/views/page.html.php 115 DIRTY_JS $parent->url($parent->id==$theme->item()->parent_id?"show={$theme->item()->id}":null)
-themes/wind/views/page.html.php 136 DIRTY $content
-themes/wind/views/page.html.php 142 DIRTY newView("sidebar.html")
-themes/wind/views/page.html.php 149 DIRTY $footer_text
+themes/wind/views/page.html.php 32 DIRTY $new_width
+themes/wind/views/page.html.php 33 DIRTY $new_height
+themes/wind/views/page.html.php 34 DIRTY $thumb_proportion
+themes/wind/views/page.html.php 71 DIRTY_JS $theme->url()
+themes/wind/views/page.html.php 76 DIRTY $theme->get_combined("css")
+themes/wind/views/page.html.php 79 DIRTY $theme->get_combined("script")
+themes/wind/views/page.html.php 89 DIRTY $header_text
+themes/wind/views/page.html.php 91 DIRTY_JS item::root()->url()
+themes/wind/views/page.html.php 95 DIRTY $theme->user_menu()
+themes/wind/views/page.html.php 116 DIRTY_JS $parent->url($parent->id==$theme->item()->parent_id?"show={$theme->item()->id}":null)
+themes/wind/views/page.html.php 137 DIRTY $content
+themes/wind/views/page.html.php 143 DIRTY newView("sidebar.html")
+themes/wind/views/page.html.php 150 DIRTY $footer_text
themes/wind/views/paginator.html.php 33 DIRTY_JS $first_page_url
themes/wind/views/paginator.html.php 42 DIRTY_JS $previous_page_url
themes/wind/views/paginator.html.php 70 DIRTY_JS $next_page_url
--
cgit v1.2.3
From 91c83874e518b9106a4d54d8c3bbe28e4c055123 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Mon, 25 Apr 2011 22:15:34 -0700
Subject: Fix a bug introduced in 526859d9605d137ebe053ecbd80f46ca6a331194
where we changed the behavior of the slug code and included the file
extension, not just the name. This broke
Item_Model_Test::move_photo_with_conflicting_target_gets_uniqified_test so
yay for unit tests! #1668
---
modules/gallery/models/item.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'modules')
diff --git a/modules/gallery/models/item.php b/modules/gallery/models/item.php
index f46db696..2a5e6894 100644
--- a/modules/gallery/models/item.php
+++ b/modules/gallery/models/item.php
@@ -336,7 +336,7 @@ class Item_Model_Core extends ORM_MPTT {
// Make an url friendly slug from the name, if necessary
if (empty($this->slug)) {
- $this->slug = item::convert_filename_to_slug($this->name);
+ $this->slug = item::convert_filename_to_slug(pathinfo($this->name, PATHINFO_FILENAME));
// If the filename is all invalid characters, then the slug may be empty here. Pick a
// random value.
--
cgit v1.2.3
From cbd04e1ae02491ab4c213fe03d62d12ca1546251 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Mon, 25 Apr 2011 23:26:43 -0700
Subject: Move random::string() to be test::random_string() and have it return
a random string of any length. Also introduce test::lorem_ipsum() and use
that in places where we want strings of words. Fixes #1713.
---
modules/gallery/helpers/random.php | 10 +-
modules/gallery/tests/Albums_Controller_Test.php | 2 +-
modules/gallery/tests/File_Structure_Test.php | 1 +
modules/gallery/tests/Gallery_Filters.php | 1 +
modules/gallery_unit_test/helpers/test.php | 30 +-
.../gallery_unit_test/vendor/LoremIpsum.class.php | 461 +++++++++++++++++++++
6 files changed, 489 insertions(+), 16 deletions(-)
create mode 100644 modules/gallery_unit_test/vendor/LoremIpsum.class.php
(limited to 'modules')
diff --git a/modules/gallery/helpers/random.php b/modules/gallery/helpers/random.php
index 6016df7b..06542e8c 100644
--- a/modules/gallery/helpers/random.php
+++ b/modules/gallery/helpers/random.php
@@ -19,21 +19,13 @@
*/
class random_Core {
/**
- * Return a random 32 bit hash value.
+ * Return a random 32 byte hash value.
* @param string extra entropy data
*/
static function hash($entropy="") {
return md5($entropy . uniqid(mt_rand(), true));
}
- /**
- * Return a random hexadecimal string of the given length.
- * @param int the desired length of the string
- */
- static function string($length) {
- return substr(random::hash(), 0, $length);
- }
-
/**
* Return a random floating point number between 0 and 1
*/
diff --git a/modules/gallery/tests/Albums_Controller_Test.php b/modules/gallery/tests/Albums_Controller_Test.php
index d9983cc2..2ff017d7 100644
--- a/modules/gallery/tests/Albums_Controller_Test.php
+++ b/modules/gallery/tests/Albums_Controller_Test.php
@@ -31,7 +31,7 @@ class Albums_Controller_Test extends Gallery_Unit_Test_Case {
$album = test::random_album();
// Randomize to avoid conflicts.
- $new_name = "new_name_" . random::string(6);
+ $new_name = "new_name_" . test::random_string(6);
$_POST["name"] = $new_name;
$_POST["title"] = "new title";
diff --git a/modules/gallery/tests/File_Structure_Test.php b/modules/gallery/tests/File_Structure_Test.php
index 69c4bbf9..1d1ff5ce 100644
--- a/modules/gallery/tests/File_Structure_Test.php
+++ b/modules/gallery/tests/File_Structure_Test.php
@@ -101,6 +101,7 @@ class File_Structure_Test extends Gallery_Unit_Test_Case {
$expected_4 = array("type = "album";
@@ -34,7 +34,7 @@ class test_Core {
}
static function random_photo_unsaved($parent=null) {
- $rand = random::string(6);
+ $rand = test::random_string(6);
$photo = ORM::factory("item");
$photo->type = "photo";
$photo->parent_id = $parent ? $parent->id : 1;
@@ -49,16 +49,16 @@ class test_Core {
}
static function random_user($password="password") {
- $rand = "name_" . random::string(6);
+ $rand = "name_" . test::random_string(6);
return identity::create_user($rand, $rand, $password, "$rand@rand.com");
}
static function random_group() {
- return identity::create_group(random::string(6));
+ return identity::create_group(test::random_string(6));
}
static function random_name($item=null) {
- $rand = "name_" . random::string(6);
+ $rand = "name_" . test::random_string(6);
if ($item && $item->is_photo()) {
$rand .= ".jpg";
}
@@ -77,7 +77,7 @@ class test_Core {
static function random_tag() {
$tag = ORM::factory("tag");
- $tag->name = random::string(6);
+ $tag->name = test::lorem_ipsum(rand(2, 4));
// Reload so that ORM coerces all fields into strings.
return $tag->save()->reload();
@@ -88,4 +88,22 @@ class test_Core {
fwrite(fopen($b_name = tempnam("/tmp", "test"), "w"), $b);
return `diff $a_name $b_name`;
}
+
+ static function random_string($length) {
+ $buf = "";
+ do {
+ $buf .= random::hash();
+ } while (strlen($buf) < $length);
+ return substr($buf, 0, $length);
+ }
+
+ static function lorem_ipsum($num) {
+ static $lorem_ipsum = null;
+ if (!$lorem_ipsum) {
+ require_once(MODPATH . "gallery_unit_test/vendor/LoremIpsum.class.php");
+ $lorem_ipsum = new LoremIpsumGenerator();
+ }
+ // skip past initial 'lorem ipsum'
+ return substr($lorem_ipsum->getContent($num + 2, "txt"), 13);
+ }
}
diff --git a/modules/gallery_unit_test/vendor/LoremIpsum.class.php b/modules/gallery_unit_test/vendor/LoremIpsum.class.php
new file mode 100644
index 00000000..07050fe5
--- /dev/null
+++ b/modules/gallery_unit_test/vendor/LoremIpsum.class.php
@@ -0,0 +1,461 @@
+ BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+ private $words, $wordsPerParagraph, $wordsPerSentence;
+
+ function __construct($wordsPer = 100)
+ {
+ $this->wordsPerParagraph = $wordsPer;
+ $this->wordsPerSentence = 24.460;
+ $this->words = array(
+ 'lorem',
+ 'ipsum',
+ 'dolor',
+ 'sit',
+ 'amet',
+ 'consectetur',
+ 'adipiscing',
+ 'elit',
+ 'curabitur',
+ 'vel',
+ 'hendrerit',
+ 'libero',
+ 'eleifend',
+ 'blandit',
+ 'nunc',
+ 'ornare',
+ 'odio',
+ 'ut',
+ 'orci',
+ 'gravida',
+ 'imperdiet',
+ 'nullam',
+ 'purus',
+ 'lacinia',
+ 'a',
+ 'pretium',
+ 'quis',
+ 'congue',
+ 'praesent',
+ 'sagittis',
+ 'laoreet',
+ 'auctor',
+ 'mauris',
+ 'non',
+ 'velit',
+ 'eros',
+ 'dictum',
+ 'proin',
+ 'accumsan',
+ 'sapien',
+ 'nec',
+ 'massa',
+ 'volutpat',
+ 'venenatis',
+ 'sed',
+ 'eu',
+ 'molestie',
+ 'lacus',
+ 'quisque',
+ 'porttitor',
+ 'ligula',
+ 'dui',
+ 'mollis',
+ 'tempus',
+ 'at',
+ 'magna',
+ 'vestibulum',
+ 'turpis',
+ 'ac',
+ 'diam',
+ 'tincidunt',
+ 'id',
+ 'condimentum',
+ 'enim',
+ 'sodales',
+ 'in',
+ 'hac',
+ 'habitasse',
+ 'platea',
+ 'dictumst',
+ 'aenean',
+ 'neque',
+ 'fusce',
+ 'augue',
+ 'leo',
+ 'eget',
+ 'semper',
+ 'mattis',
+ 'tortor',
+ 'scelerisque',
+ 'nulla',
+ 'interdum',
+ 'tellus',
+ 'malesuada',
+ 'rhoncus',
+ 'porta',
+ 'sem',
+ 'aliquet',
+ 'et',
+ 'nam',
+ 'suspendisse',
+ 'potenti',
+ 'vivamus',
+ 'luctus',
+ 'fringilla',
+ 'erat',
+ 'donec',
+ 'justo',
+ 'vehicula',
+ 'ultricies',
+ 'varius',
+ 'ante',
+ 'primis',
+ 'faucibus',
+ 'ultrices',
+ 'posuere',
+ 'cubilia',
+ 'curae',
+ 'etiam',
+ 'cursus',
+ 'aliquam',
+ 'quam',
+ 'dapibus',
+ 'nisl',
+ 'feugiat',
+ 'egestas',
+ 'class',
+ 'aptent',
+ 'taciti',
+ 'sociosqu',
+ 'ad',
+ 'litora',
+ 'torquent',
+ 'per',
+ 'conubia',
+ 'nostra',
+ 'inceptos',
+ 'himenaeos',
+ 'phasellus',
+ 'nibh',
+ 'pulvinar',
+ 'vitae',
+ 'urna',
+ 'iaculis',
+ 'lobortis',
+ 'nisi',
+ 'viverra',
+ 'arcu',
+ 'morbi',
+ 'pellentesque',
+ 'metus',
+ 'commodo',
+ 'ut',
+ 'facilisis',
+ 'felis',
+ 'tristique',
+ 'ullamcorper',
+ 'placerat',
+ 'aenean',
+ 'convallis',
+ 'sollicitudin',
+ 'integer',
+ 'rutrum',
+ 'duis',
+ 'est',
+ 'etiam',
+ 'bibendum',
+ 'donec',
+ 'pharetra',
+ 'vulputate',
+ 'maecenas',
+ 'mi',
+ 'fermentum',
+ 'consequat',
+ 'suscipit',
+ 'aliquam',
+ 'habitant',
+ 'senectus',
+ 'netus',
+ 'fames',
+ 'quisque',
+ 'euismod',
+ 'curabitur',
+ 'lectus',
+ 'elementum',
+ 'tempor',
+ 'risus',
+ 'cras' );
+ }
+
+ function getContent($count, $format = 'html', $loremipsum = true)
+ {
+ $format = strtolower($format);
+
+ if($count <= 0)
+ return '';
+
+ switch($format)
+ {
+ case 'txt':
+ return $this->getText($count, $loremipsum);
+ case 'plain':
+ return $this->getPlain($count, $loremipsum);
+ default:
+ return $this->getHTML($count, $loremipsum);
+ }
+ }
+
+ private function getWords(&$arr, $count, $loremipsum)
+ {
+ $i = 0;
+ if($loremipsum)
+ {
+ $i = 2;
+ $arr[0] = 'lorem';
+ $arr[1] = 'ipsum';
+ }
+
+ for($i; $i < $count; $i++)
+ {
+ $index = array_rand($this->words);
+ $word = $this->words[$index];
+ //echo $index . '=>' . $word . ' ';
+
+ if($i > 0 && $arr[$i - 1] == $word)
+ $i--;
+ else
+ $arr[$i] = $word;
+ }
+ }
+
+ private function getPlain($count, $loremipsum, $returnStr = true)
+ {
+ $words = array();
+ $this->getWords($words, $count, $loremipsum);
+ //print_r($words);
+
+ $delta = $count;
+ $curr = 0;
+ $sentences = array();
+ while($delta > 0)
+ {
+ $senSize = $this->gaussianSentence();
+ //echo $curr . ' ';
+ if(($delta - $senSize) < 4)
+ $senSize = $delta;
+
+ $delta -= $senSize;
+
+ $sentence = array();
+ for($i = $curr; $i < ($curr + $senSize); $i++)
+ $sentence[] = $words[$i];
+
+ $this->punctuate($sentence);
+ $curr = $curr + $senSize;
+ $sentences[] = $sentence;
+ }
+
+ if($returnStr)
+ {
+ $output = '';
+ foreach($sentences as $s)
+ foreach($s as $w)
+ $output .= $w . ' ';
+
+ return $output;
+ }
+ else
+ return $sentences;
+ }
+
+ private function getText($count, $loremipsum)
+ {
+ $sentences = $this->getPlain($count, $loremipsum, false);
+ $paragraphs = $this->getParagraphArr($sentences);
+
+ $paragraphStr = array();
+ foreach($paragraphs as $p)
+ {
+ $paragraphStr[] = $this->paragraphToString($p);
+ }
+
+ $paragraphStr[0] = "\t" . $paragraphStr[0];
+ return implode("\n\n\t", $paragraphStr);
+ }
+
+ private function getParagraphArr($sentences)
+ {
+ $wordsPer = $this->wordsPerParagraph;
+ $sentenceAvg = $this->wordsPerSentence;
+ $total = count($sentences);
+
+ $paragraphs = array();
+ $pCount = 0;
+ $currCount = 0;
+ $curr = array();
+
+ for($i = 0; $i < $total; $i++)
+ {
+ $s = $sentences[$i];
+ $currCount += count($s);
+ $curr[] = $s;
+ if($currCount >= ($wordsPer - round($sentenceAvg / 2.00)) || $i == $total - 1)
+ {
+ $currCount = 0;
+ $paragraphs[] = $curr;
+ $curr = array();
+ //print_r($paragraphs);
+ }
+ //print_r($paragraphs);
+ }
+
+ return $paragraphs;
+ }
+
+ private function getHTML($count, $loremipsum)
+ {
+ $sentences = $this->getPlain($count, $loremipsum, false);
+ $paragraphs = $this->getParagraphArr($sentences);
+ //print_r($paragraphs);
+
+ $paragraphStr = array();
+ foreach($paragraphs as $p)
+ {
+ $paragraphStr[] = "\n" . $this->paragraphToString($p, true) . '
';
+ }
+
+ //add new lines for the sake of clean code
+ return implode("\n", $paragraphStr);
+ }
+
+ private function paragraphToString($paragraph, $htmlCleanCode = false)
+ {
+ $paragraphStr = '';
+ foreach($paragraph as $sentence)
+ {
+ foreach($sentence as $word)
+ $paragraphStr .= $word . ' ';
+
+ if($htmlCleanCode)
+ $paragraphStr .= "\n";
+ }
+ return $paragraphStr;
+ }
+
+ /*
+ * Inserts commas and periods in the given
+ * word array.
+ */
+ private function punctuate(& $sentence)
+ {
+ $count = count($sentence);
+ $sentence[$count - 1] = $sentence[$count - 1] . '.';
+
+ if($count < 4)
+ return $sentence;
+
+ $commas = $this->numberOfCommas($count);
+
+ for($i = 1; $i <= $commas; $i++)
+ {
+ $index = (int) round($i * $count / ($commas + 1));
+
+ if($index < ($count - 1) && $index > 0)
+ {
+ $sentence[$index] = $sentence[$index] . ',';
+ }
+ }
+ }
+
+ /*
+ * Determines the number of commas for a
+ * sentence of the given length. Average and
+ * standard deviation are determined superficially
+ */
+ private function numberOfCommas($len)
+ {
+ $avg = (float) log($len, 6);
+ $stdDev = (float) $avg / 6.000;
+
+ return (int) round($this->gauss_ms($avg, $stdDev));
+ }
+
+ /*
+ * Returns a number on a gaussian distribution
+ * based on the average word length of an english
+ * sentence.
+ * Statistics Source:
+ * http://hearle.nahoo.net/Academic/Maths/Sentence.html
+ * Average: 24.46
+ * Standard Deviation: 5.08
+ */
+ private function gaussianSentence()
+ {
+ $avg = (float) 24.460;
+ $stdDev = (float) 5.080;
+
+ return (int) round($this->gauss_ms($avg, $stdDev));
+ }
+
+ /*
+ * The following three functions are used to
+ * compute numbers with a guassian distrobution
+ * Source:
+ * http://us.php.net/manual/en/function.rand.php#53784
+ */
+ private function gauss()
+ { // N(0,1)
+ // returns random number with normal distribution:
+ // mean=0
+ // std dev=1
+
+ // auxilary vars
+ $x=$this->random_0_1();
+ $y=$this->random_0_1();
+
+ // two independent variables with normal distribution N(0,1)
+ $u=sqrt(-2*log($x))*cos(2*pi()*$y);
+ $v=sqrt(-2*log($x))*sin(2*pi()*$y);
+
+ // i will return only one, couse only one needed
+ return $u;
+ }
+
+ private function gauss_ms($m=0.0,$s=1.0)
+ {
+ return $this->gauss()*$s+$m;
+ }
+
+ private function random_0_1()
+ {
+ return (float)rand()/(float)getrandmax();
+ }
+
+}
\ No newline at end of file
--
cgit v1.2.3
From 5cf38ed816006af52fa08475d2957a6f18846887 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Tue, 26 Apr 2011 09:48:21 -0700
Subject: Stop using Pagination() and instead use $theme->pager() in views.
Move the pager() function up to Gallery_View and replace
themes/admin_wind/views/pager.html.php (Pagination based) with a modified
version from the wind theme in themes/admin_wind/views/paginator.html.php.
Fixes #1718.
---
.../comment/controllers/admin_manage_comments.php | 13 ++--
.../comment/views/admin_manage_comments.html.php | 2 +-
modules/gallery/libraries/Gallery_View.php | 46 +++++++++++
modules/gallery/libraries/MY_Pagination.php | 35 ---------
modules/gallery/libraries/Theme_View.php | 46 -----------
modules/user/controllers/admin_users.php | 8 ++
modules/user/views/admin_users.html.php | 2 +-
themes/admin_wind/views/pager.html.php | 44 -----------
themes/admin_wind/views/paginator.html.php | 88 ++++++++++++++++++++++
9 files changed, 151 insertions(+), 133 deletions(-)
delete mode 100644 modules/gallery/libraries/MY_Pagination.php
delete mode 100644 themes/admin_wind/views/pager.html.php
create mode 100644 themes/admin_wind/views/paginator.html.php
(limited to 'modules')
diff --git a/modules/comment/controllers/admin_manage_comments.php b/modules/comment/controllers/admin_manage_comments.php
index 9bd1d7f6..effefcbb 100644
--- a/modules/comment/controllers/admin_manage_comments.php
+++ b/modules/comment/controllers/admin_manage_comments.php
@@ -45,6 +45,8 @@ class Admin_Manage_Comments_Controller extends Admin_Controller {
$view = new Admin_View("admin.html");
$view->page_title = t("Manage comments");
+ $view->page_type = "collection";
+ $view->page_subtype = "admin_comments";
$view->content = new View("admin_manage_comments.html");
$view->content->counts = $this->_counts();
$view->content->menu = $this->_menu($view->content->counts);
@@ -56,13 +58,12 @@ class Admin_Manage_Comments_Controller extends Admin_Controller {
->limit(self::$items_per_page)
->offset(($page - 1) * self::$items_per_page)
->find_all();
- $view->content->pager = new Pagination();
- $view->content->pager->initialize(
- array("query_string" => "page",
- "total_items" => $view->content->counts->$state,
- "items_per_page" => self::$items_per_page,
- "style" => "classic"));
+ // Pagination info
+ $view->page = $page;
+ $view->page_size = self::$items_per_page;
+ $view->children_count = $this->_counts()->$state;
+ $view->max_pages = ceil($view->children_count / $view->page_size);
print $view;
}
diff --git a/modules/comment/views/admin_manage_comments.html.php b/modules/comment/views/admin_manage_comments.html.php
index 34a28986..e7a61837 100644
--- a/modules/comment/views/admin_manage_comments.html.php
+++ b/modules/comment/views/admin_manage_comments.html.php
@@ -194,7 +194,7 @@
- = $pager ?>
+ = $theme->paginator() ?>
diff --git a/modules/gallery/libraries/Gallery_View.php b/modules/gallery/libraries/Gallery_View.php
index 1395686c..e04b9169 100644
--- a/modules/gallery/libraries/Gallery_View.php
+++ b/modules/gallery/libraries/Gallery_View.php
@@ -30,6 +30,52 @@ class Gallery_View_Core extends View {
return $absolute_url ? url::abs_file($arg) : url::file($arg);
}
+ /**
+ * Set up the data and render a pager.
+ *
+ * See themes/wind/views/pager.html for documentation on the variables generated here.
+ */
+ public function paginator() {
+ $v = new View("paginator.html");
+ $v->page_type = $this->page_type;
+ $v->page_subtype = $this->page_subtype;
+ $v->first_page_url = null;
+ $v->previous_page_url = null;
+ $v->next_page_url = null;
+ $v->last_page_url = null;
+
+ if ($this->page_type == "collection") {
+ $v->page = $this->page;
+ $v->max_pages = $this->max_pages;
+ $v->total = $this->children_count;
+
+ if ($this->page != 1) {
+ $v->first_page_url = url::site(url::merge(array("page" => 1)));
+ $v->previous_page_url = url::site(url::merge(array("page" => $this->page - 1)));
+ }
+
+ if ($this->page != $this->max_pages) {
+ $v->next_page_url = url::site(url::merge(array("page" => $this->page + 1)));
+ $v->last_page_url = url::site(url::merge(array("page" => $this->max_pages)));
+ }
+
+ $v->first_visible_position = ($this->page - 1) * $this->page_size + 1;
+ $v->last_visible_position = min($this->page * $this->page_size, $v->total);
+ } else if ($this->page_type == "item") {
+ $v->position = $this->position;
+ $v->total = $this->sibling_count;
+ if ($this->previous_item) {
+ $v->previous_page_url = $this->previous_item->url();
+ }
+
+ if ($this->next_item) {
+ $v->next_page_url = $this->next_item->url();
+ }
+ }
+
+ return $v;
+ }
+
/**
* Begin gather up scripts or css files so that they can be combined into a single request.
*
diff --git a/modules/gallery/libraries/MY_Pagination.php b/modules/gallery/libraries/MY_Pagination.php
deleted file mode 100644
index e697c0bd..00000000
--- a/modules/gallery/libraries/MY_Pagination.php
+++ /dev/null
@@ -1,35 +0,0 @@
-auto_hide === TRUE AND $this->total_pages <= 1) {
- return "";
- }
-
- if ($style === NULL) {
- // Use default style
- $style = $this->style;
- }
-
- // Return rendered pagination view
- return View::factory("pager.html", get_object_vars($this))->render();
- }
-}
diff --git a/modules/gallery/libraries/Theme_View.php b/modules/gallery/libraries/Theme_View.php
index 152efc37..d6834464 100644
--- a/modules/gallery/libraries/Theme_View.php
+++ b/modules/gallery/libraries/Theme_View.php
@@ -138,52 +138,6 @@ class Theme_View_Core extends Gallery_View {
return $menu->render();
}
- /**
- * Set up the data and render a pager.
- *
- * See themes/wind/views/pager.html for documentation on the variables generated here.
- */
- public function paginator() {
- $v = new View("paginator.html");
- $v->page_type = $this->page_type;
- $v->page_subtype = $this->page_subtype;
- $v->first_page_url = null;
- $v->previous_page_url = null;
- $v->next_page_url = null;
- $v->last_page_url = null;
-
- if ($this->page_type == "collection") {
- $v->page = $this->page;
- $v->max_pages = $this->max_pages;
- $v->total = $this->children_count;
-
- if ($this->page != 1) {
- $v->first_page_url = url::site(url::merge(array("page" => 1)));
- $v->previous_page_url = url::site(url::merge(array("page" => $this->page - 1)));
- }
-
- if ($this->page != $this->max_pages) {
- $v->next_page_url = url::site(url::merge(array("page" => $this->page + 1)));
- $v->last_page_url = url::site(url::merge(array("page" => $this->max_pages)));
- }
-
- $v->first_visible_position = ($this->page - 1) * $this->page_size + 1;
- $v->last_visible_position = min($this->page * $this->page_size, $v->total);
- } else if ($this->page_type == "item") {
- $v->position = $this->position;
- $v->total = $this->sibling_count;
- if ($this->previous_item) {
- $v->previous_page_url = $this->previous_item->url();
- }
-
- if ($this->next_item) {
- $v->next_page_url = $this->next_item->url();
- }
- }
-
- return $v;
- }
-
/**
* Print out any site wide status information.
*/
diff --git a/modules/user/controllers/admin_users.php b/modules/user/controllers/admin_users.php
index a3633b52..41be6c03 100644
--- a/modules/user/controllers/admin_users.php
+++ b/modules/user/controllers/admin_users.php
@@ -21,6 +21,8 @@ class Admin_Users_Controller extends Admin_Controller {
public function index() {
$view = new Admin_View("admin.html");
$view->page_title = t("Users and groups");
+ $view->page_type = "collection";
+ $view->page_subtype = "admin_users";
$view->content = new View("admin_users.html");
// @todo: add this as a config option
@@ -29,6 +31,12 @@ class Admin_Users_Controller extends Admin_Controller {
$builder = db::build();
$user_count = $builder->from("users")->count_records();
+ // Pagination info
+ $view->page = $page;
+ $view->page_size = $page_size;
+ $view->children_count = $user_count;
+ $view->max_pages = ceil($view->children_count / $view->page_size);
+
$view->content->pager = new Pagination();
$view->content->pager->initialize(
array("query_string" => "page",
diff --git a/modules/user/views/admin_users.html.php b/modules/user/views/admin_users.html.php
index a7bd6b27..033c9dae 100644
--- a/modules/user/views/admin_users.html.php
+++ b/modules/user/views/admin_users.html.php
@@ -110,7 +110,7 @@
- = $pager ?>
+ = $theme->paginator() ?>
diff --git a/themes/admin_wind/views/pager.html.php b/themes/admin_wind/views/pager.html.php
deleted file mode 100644
index 5fff5845..00000000
--- a/themes/admin_wind/views/pager.html.php
+++ /dev/null
@@ -1,44 +0,0 @@
-
- // See http://docs.kohanaphp.com/libraries/pagination ?>
-
diff --git a/themes/admin_wind/views/paginator.html.php b/themes/admin_wind/views/paginator.html.php
new file mode 100644
index 00000000..3cb0223d
--- /dev/null
+++ b/themes/admin_wind/views/paginator.html.php
@@ -0,0 +1,88 @@
+
+
+// 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 ($page_type == "collection"): ?>
+ if (isset($first_page_url)): ?>
+
+ = t("First") ?>
+ else: ?>
+
+ = t("First") ?>
+ endif ?>
+ endif ?>
+
+ if (isset($previous_page_url)): ?>
+
+ = t("Previous") ?>
+ else: ?>
+
+ = t("Previous") ?>
+ endif ?>
+
+
+
+ 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 ?>
+ else: ?>
+ = t("No photos") ?>
+ endif ?>
+
+
+
+ if (isset($next_page_url)): ?>
+
+ = t("Next") ?>
+ else: ?>
+
+ = t("Next") ?>
+ endif ?>
+
+ if ($page_type == "collection"): ?>
+ if (isset($last_page_url)): ?>
+
+ = t("Last") ?>
+ else: ?>
+
+ = t("Last") ?>
+ endif ?>
+ endif ?>
+
+
--
cgit v1.2.3
From 743e2f88d8cbba7ea5f7b3b78ab721c141d1ec99 Mon Sep 17 00:00:00 2001
From: Bharat Mediratta
Date: Tue, 26 Apr 2011 21:02:43 -0700
Subject: Overhaul the Admin > Content > Comments page. Use a tabbed interface
for consistency with other parts of the admin UI (ie: G2 import).
The UI is now Ajax driven because that's how jQuery tabs works best in
this case. This requires a little finagling in JS to get the
paginator links to load properly. While I'm in there, add a paginator
at the top of the table, make the buttons in the delete tab sane and
smooth scroll back to the top of the tab when switching pages.
Fixes #1702
---
.../comment/controllers/admin_manage_comments.php | 32 ++--
.../comment/views/admin_manage_comments.html.php | 211 +++------------------
.../views/admin_manage_comments_queue.html.php | 157 +++++++++++++++
3 files changed, 205 insertions(+), 195 deletions(-)
create mode 100644 modules/comment/views/admin_manage_comments_queue.html.php
(limited to 'modules')
diff --git a/modules/comment/controllers/admin_manage_comments.php b/modules/comment/controllers/admin_manage_comments.php
index effefcbb..72684e70 100644
--- a/modules/comment/controllers/admin_manage_comments.php
+++ b/modules/comment/controllers/admin_manage_comments.php
@@ -28,8 +28,10 @@ class Admin_Manage_Comments_Controller extends Admin_Controller {
->where("updated", "<", db::expr("UNIX_TIMESTAMP() - 86400 * 7"))
->execute();
- // Redirect to the appropriate queue
- url::redirect("admin/manage_comments/queue/unpublished");
+ $view = new Admin_View("admin.html");
+ $view->content = new View("admin_manage_comments.html");
+ $view->content->menu = $this->_menu($this->_counts());
+ print $view;
}
public function menu_labels() {
@@ -43,15 +45,11 @@ class Admin_Manage_Comments_Controller extends Admin_Controller {
public function queue($state) {
$page = max(Input::instance()->get("page"), 1);
- $view = new Admin_View("admin.html");
- $view->page_title = t("Manage comments");
- $view->page_type = "collection";
- $view->page_subtype = "admin_comments";
- $view->content = new View("admin_manage_comments.html");
- $view->content->counts = $this->_counts();
- $view->content->menu = $this->_menu($view->content->counts);
- $view->content->state = $state;
- $view->content->comments = ORM::factory("comment")
+ $view = new Gallery_View("admin_manage_comments_queue.html");
+ $view->counts = $this->_counts();
+ $view->menu = $this->_menu($view->counts);
+ $view->state = $state;
+ $view->comments = ORM::factory("comment")
->order_by("created", "DESC")
->order_by("id", "DESC")
->where("state", "=", $state)
@@ -59,11 +57,21 @@ class Admin_Manage_Comments_Controller extends Admin_Controller {
->offset(($page - 1) * self::$items_per_page)
->find_all();
- // Pagination info
+ // This view is not themed so we can't use $theme->url() in the view and have to
+ // reproduce Gallery_View::url() logic here.
+ $atn = theme::$admin_theme_name;
+ $view->fallback_avatar_url = url::abs_file("themes/$atn/images/avatar.jpg");
+
$view->page = $page;
+ $view->page_type = "collection";
+ $view->page_subtype = "admin_comments";
$view->page_size = self::$items_per_page;
$view->children_count = $this->_counts()->$state;
$view->max_pages = ceil($view->children_count / $view->page_size);
+
+ // Also we want to use $theme->paginator() so we need a dummy theme
+ $view->theme = $view;
+
print $view;
}
diff --git a/modules/comment/views/admin_manage_comments.html.php b/modules/comment/views/admin_manage_comments.html.php
index e7a61837..e3c8546c 100644
--- a/modules/comment/views/admin_manage_comments.html.php
+++ b/modules/comment/views/admin_manage_comments.html.php
@@ -2,200 +2,45 @@
-
-