diff options
author | Bharat Mediratta <bharat@menalto.com> | 2010-01-15 13:36:16 -0800 |
---|---|---|
committer | Bharat Mediratta <bharat@menalto.com> | 2010-01-15 13:36:16 -0800 |
commit | 916da15cbb7f24a68be27ef4170be864d51027c4 (patch) | |
tree | d4bae77ea1290dd6f25348d488a751c2247aaab5 | |
parent | 1066e64354ff44f88c7dd0de3bb3e50411458523 (diff) | |
parent | 260660b2f61e96372686eacce2ce7b66a40be4a2 (diff) |
Merge branch 'master' of git@github.com:gallery/gallery3 into bharat_dev
-rw-r--r-- | installer/install.sql | 2 | ||||
-rw-r--r-- | modules/gallery/controllers/l10n_client.php | 17 | ||||
-rw-r--r-- | modules/gallery/css/l10n_client.css | 30 | ||||
-rw-r--r-- | modules/gallery/helpers/gallery_installer.php | 18 | ||||
-rw-r--r-- | modules/gallery/js/l10n_client.js | 49 | ||||
-rw-r--r-- | modules/gallery/libraries/MY_ORM.php | 20 | ||||
-rw-r--r-- | modules/gallery/module.info | 2 | ||||
-rw-r--r-- | modules/gallery/tests/Item_Model_Test.php | 1 | ||||
-rw-r--r-- | modules/gallery/views/l10n_client.html.php | 2 | ||||
-rw-r--r-- | modules/notification/helpers/notification.php | 24 |
10 files changed, 110 insertions, 55 deletions
diff --git a/installer/install.sql b/installer/install.sql index 6e7c06a2..95a57d86 100644 --- a/installer/install.sql +++ b/installer/install.sql @@ -89,7 +89,7 @@ CREATE TABLE {graphics_rules} ( ) AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; 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:480;s:6:\"master\";i:2;}','gallery','gallery_graphics::resize',100,'resize'); +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; diff --git a/modules/gallery/controllers/l10n_client.php b/modules/gallery/controllers/l10n_client.php index 71df1cf1..e20bab50 100644 --- a/modules/gallery/controllers/l10n_client.php +++ b/modules/gallery/controllers/l10n_client.php @@ -29,9 +29,9 @@ class L10n_Client_Controller extends Controller { $key = $input->post("l10n-message-key"); $root_message = ORM::factory("incoming_translation") - ->where(array("key" => $key, - "locale" => "root")) - ->find(); + ->where("key", "=", $key) + ->where("locale", "=", "root") + ->find(); if (!$root_message->loaded()) { throw new Exception("@todo bad request data / illegal state"); @@ -56,8 +56,8 @@ class L10n_Client_Controller extends Controller { } $entry = ORM::factory("outgoing_translation") - ->where(array("key" => $key, - "locale" => $locale)) + ->where("key", "=", $key) + ->where("locale", "=", $locale) ->find(); if (!$entry->loaded()) { @@ -70,8 +70,8 @@ class L10n_Client_Controller extends Controller { $entry->translation = serialize($translation); $entry_from_incoming = ORM::factory("incoming_translation") - ->where(array("key" => $key, - "locale" => $locale)) + ->where("key", "=", $key) + ->where("locale", "=", $locale) ->find(); if (!$entry_from_incoming->loaded()) { @@ -102,10 +102,9 @@ class L10n_Client_Controller extends Controller { } private static function _l10n_client_search_form() { - $form = new Forge("l10n_client/search", "", "post", array("id" => "g-l10n-search-form")); + $form = new Forge("#", "", "post", array("id" => "g-l10n-search-form")); $group = $form->group("l10n_search"); $group->input("l10n-search")->id("g-l10n-search"); - $group->submit("l10n-search-filter-clear")->value(t("X")); return $form; } diff --git a/modules/gallery/css/l10n_client.css b/modules/gallery/css/l10n_client.css index 542da8e6..3771c049 100644 --- a/modules/gallery/css/l10n_client.css +++ b/modules/gallery/css/l10n_client.css @@ -86,7 +86,7 @@ } #l10n-client .string-list { - height:17em; + height: 16em; overflow:auto; list-style:none; list-style-image:none; margin:0em; padding:0em;} @@ -129,10 +129,9 @@ font-weight:bold;} #l10n-client #g-l10n-search-form { - background:#eee; - text-align:center; - height:2em; line-height:2em; - margin:0em; padding:.5em .5em; + background: #eee; + margin: 0em; + padding: .25em .25em; } #l10n-client #g-l10n-search-form .form-item, @@ -148,8 +147,14 @@ padding:0em; } -#l10n-client #g-l10n-search-form input.form-text { - width:80%; +#l10n-client #g-l10n-search-form fieldset { + margin-bottom: 0; + padding: .25em .25em; +} + + +#l10n-client #g-l10n-search-form input { + width: 96.75%; } #l10n-client #g-l10n-search-form #search-filter-clear { @@ -164,7 +169,9 @@ #l10n-client-string-editor .source { overflow:hidden; - width:50%; float:left;} + width:50%; + float:left; +} #l10n-client-string-editor .source .source-text { line-height:1.5em; @@ -178,10 +185,13 @@ #l10n-client-string-editor .translation { overflow:hidden; - width:49%; float:right;} + width:49%; + float: right; +} #g-l10n-client-save-form { - padding:0em;} + padding: 0em; +} #l10n-client form ul, #l10n-client form li, diff --git a/modules/gallery/helpers/gallery_installer.php b/modules/gallery/helpers/gallery_installer.php index 410b6413..1e0ad28c 100644 --- a/modules/gallery/helpers/gallery_installer.php +++ b/modules/gallery/helpers/gallery_installer.php @@ -240,7 +240,7 @@ class gallery_installer { 100); graphics::add_rule( "gallery", "resize", "gallery_graphics::resize", - array("width" => 640, "height" => 480, "master" => Image::AUTO), + array("width" => 640, "height" => 640, "master" => Image::AUTO), 100); // Instantiate default themes (site and admin) @@ -440,6 +440,22 @@ class gallery_installer { module::set_var("gallery", "simultaneous_upload_limit", 5); module::set_version("gallery", $version = 21); } + + // Update the graphics rules table so that the maximum height for resizes is 640 not 480. + // Fixes ticket #671 + if ( $version == 21) { + $resize_rule = ORM::factory("graphics_rule") + ->where("id", "=", "2") + ->find(); + // make sure it hasn't been changed already + $args = unserialize($resize_rule->args); + if ($args["height"] == 480 && $args["width"] == 640) { + $args["height"] = 640; + $resize_rule->args = serialize($args); + $resize_rule->save(); + } + module::set_version("gallery", $version = 22); + } } static function uninstall() { diff --git a/modules/gallery/js/l10n_client.js b/modules/gallery/js/l10n_client.js index 9acb6ca8..d0d6f619 100644 --- a/modules/gallery/js/l10n_client.js +++ b/modules/gallery/js/l10n_client.js @@ -17,7 +17,6 @@ $(document).ready(function() { Gallery.attachBehaviors(this); }); - // Store all l10n_client related data + methods in its own object jQuery.extend(Gallery, { l10nClient: new (function() { @@ -51,7 +50,8 @@ jQuery.extend(Gallery, { this.filter(false); break; } - } + }; + // Toggle the l10nclient this.toggle = function(state) { switch(state) { @@ -82,15 +82,21 @@ jQuery.extend(Gallery, { $.cookie('Gallery_l10n_client', '0', {expires: 7, path: '/'}); break; } - } + }; + // Get a string from the DOM tree this.getString = function(index, type) { - return l10n_client_data[index][type]; - } + if (index < l10n_client_data.length) { + return l10n_client_data[index][type]; + } + return ""; + }; + // Set a string in the DOM tree this.setString = function(index, data) { l10n_client_data[index]['translation'] = data; - } + }; + // Display the source message this.showSourceMessage = function(source, is_plural) { if (is_plural) { @@ -101,10 +107,11 @@ jQuery.extend(Gallery, { var pretty_source = $('#source-text-tmp-space').text(source).html(); } $('#l10n-client-string-editor .source-text').html(pretty_source); - } + }; this.isPluralMessage = function(message) { return typeof(message) == 'object'; - } + }; + this.updateTranslationForm = function(translation, is_plural) { $('.translationField').addClass('hidden'); if (is_plural) { @@ -122,10 +129,11 @@ jQuery.extend(Gallery, { $('#plural-' + form).removeClass('hidden'); } } else { - $('#l10n-edit-translation').attr('value', translation); + $('#l10n-edit-translation').attr('value', translation); $('#l10n-edit-translation').removeClass('hidden'); } - } + }; + // Filter the string list by a search string this.filter = function(search) { if(search == false || search == '') { @@ -140,7 +148,7 @@ jQuery.extend(Gallery, { $('#l10n-client #g-l10n-search').val(search); } } - } + }; this.copySourceText = function() { var index = Gallery.l10nClient.selected; @@ -166,7 +174,7 @@ jQuery.extend(Gallery, { } } - } + }; }) }); @@ -205,8 +213,8 @@ Gallery.behaviors.l10nClient = function(context) { Gallery.l10nClient.toggle(0); } }); - - // Close the l10n client using an AJAX call and refreshing the page + + // Close the l10n client using an AJAX call and refreshing the page $('#g-close-l10n').click(function(event) { $.ajax({ type: "GET", @@ -222,10 +230,15 @@ Gallery.behaviors.l10nClient = function(context) { // Register keybindings using jQuery hotkeys // TODO: Either remove hotkeys code or add query.hotkeys.js. if($.hotkeys) { - $.hotkeys.add(Gallery.l10nClient.keys['toggle'], function(){Gallery.l10nClient.key('toggle')}); - $.hotkeys.add(Gallery.l10nClient.keys['clear'], {target:'#l10n-client #g-l10n-search', type:'keyup'}, function(){Gallery.l10nClient.key('clear')}); + $.hotkeys.add(Gallery.l10nClient.keys['toggle'], function(){Gallery.l10nClient.key('toggle');}); + $.hotkeys.add(Gallery.l10nClient.keys['clear'], {target:'#l10n-client #g-l10n-search', type:'keyup'}, function(){Gallery.l10nClient.key('clear');}); } + // never actually submit the form as the search is done in the browser + $('#g-l10n-search-form').submit(function() { + return false; + }); + // Custom listener for l10n_client livesearch $('#l10n-client #g-l10n-search').keyup(function(key) { Gallery.l10nClient.filter($('#l10n-client #g-l10n-search').val()); @@ -246,9 +259,9 @@ Gallery.behaviors.l10nClient = function(context) { var num_plural_forms = plural_forms.length; // Store translation in local js + var translation = {}; if (is_plural) { - var translation = {}; - for (var i = 0; i < num_plural_forms; i++) { + for (var i = 0; i < num_plural_forms; i++) { var form = plural_forms[i]; translation[form] = $('#g-l10n-client-save-form #l10n-edit-plural-translation-' + form).attr('value'); } diff --git a/modules/gallery/libraries/MY_ORM.php b/modules/gallery/libraries/MY_ORM.php index 56c776aa..1bf5dd13 100644 --- a/modules/gallery/libraries/MY_ORM.php +++ b/modules/gallery/libraries/MY_ORM.php @@ -19,12 +19,11 @@ */ class ORM extends ORM_Core { // Track the original value of this ORM so that we can look it up in ORM::original() - protected $original = null; + protected $original; public function save() { model_cache::clear(); $result = parent::save(); - $this->original = clone $this; return $result; } @@ -48,7 +47,24 @@ class ORM extends ORM_Core { return parent::__unset($column); } + public function reload($reload_all=true) { + if ($reload_all) { + parent::reload(); + } + $this->original = clone $this; + return $this; + } + + public function clear() { + parent::clear(); + $this->original = clone $this; + return $this; + } + public function original() { + if (!isset($this->original)) { + $this->original = clone $this; + } return $this->original; } } diff --git a/modules/gallery/module.info b/modules/gallery/module.info index b3366f7d..107d9a12 100644 --- a/modules/gallery/module.info +++ b/modules/gallery/module.info @@ -1,4 +1,4 @@ name = "Gallery 3" description = "Gallery core application" -version = 21 +version = 22 diff --git a/modules/gallery/tests/Item_Model_Test.php b/modules/gallery/tests/Item_Model_Test.php index bf5fca1a..c0ac4436 100644 --- a/modules/gallery/tests/Item_Model_Test.php +++ b/modules/gallery/tests/Item_Model_Test.php @@ -166,6 +166,7 @@ class Item_Model_Test extends Unit_Test_Case { $item = self::_create_random_item(); $item->title = "ORIGINAL_VALUE"; $item->save(); + $item->reload(false); $item->title = "NEW_VALUE"; $this->assert_same("ORIGINAL_VALUE", $item->original()->title); diff --git a/modules/gallery/views/l10n_client.html.php b/modules/gallery/views/l10n_client.html.php index 9d14bbb2..47a45e29 100644 --- a/modules/gallery/views/l10n_client.html.php +++ b/modules/gallery/views/l10n_client.html.php @@ -40,7 +40,7 @@ <form method="post" action="<?= url::site("l10n_client/save") ?>" id="g-l10n-client-save-form"> <?= access::csrf_form_field() ?> <?= form::hidden("l10n-message-key") ?> - <?= form::textarea("l10n-edit-translation", "", ' rows="5" class="translationField"') ?> + <?= form::textarea("l10n-edit-translation", "", ' id="l10n-edit-translation" rows="5" class="translationField"') ?> <div id="plural-zero" class="translationField hidden"> <label for="l10n-edit-plural-translation-zero">[zero]</label> <?= form::textarea("l10n-edit-plural-translation-zero", "", ' rows="2"') ?> diff --git a/modules/notification/helpers/notification.php b/modules/notification/helpers/notification.php index e9fc3f33..a2271b59 100644 --- a/modules/notification/helpers/notification.php +++ b/modules/notification/helpers/notification.php @@ -101,10 +101,10 @@ class notification { $v = new View("item_updated.html"); $v->item = $item; $v->subject = $item->is_album() ? - t("Album %title updated", array("title" => $item->original("title"))) : + t("Album \"%title\" updated", array("title" => $item->original()->title)) : ($item->is_photo() ? - t("Photo %title updated", array("title" => $item->original("title"))) - : t("Movie %title updated", array("title" => $item->original("title")))); + t("Photo \"%title\" updated", array("title" => $item->original()->title)) + : t("Movie \"%title\" updated", array("title" => $item->original()->title))); self::_notify($subscribers, $item, $v->render(), $v->subject); } @@ -119,12 +119,12 @@ class notification { $v = new View("item_added.html"); $v->item = $item; $v->subject = $item->is_album() ? - t("Album %title added to %parent_title", + t("Album \"%title\" added to \"%parent_title\"", array("title" => $item->title, "parent_title" => $parent->title)) : ($item->is_photo() ? - t("Photo %title added to %parent_title", + t("Photo \"%title\" added to \"%parent_title\"", array("title" => $item->title, "parent_title" => $parent->title)) : - t("Movie %title added to %parent_title", + t("Movie \"%title\" added to \"%parent_title\"", array("title" => $item->title, "parent_title" => $parent->title))); self::_notify($subscribers, $item, $v->render(), $v->subject); @@ -140,12 +140,12 @@ class notification { $v = new View("item_deleted.html"); $v->item = $item; $v->subject = $item->is_album() ? - t("Album %title removed from %parent_title", + t("Album \"%title\" removed from \"%parent_title\"", array("title" => $item->title, "parent_title" => $parent->title)) : ($item->is_photo() ? - t("Photo %title removed from %parent_title", + t("Photo \"%title\" removed from \"%parent_title\"", array("title" => $item->title, "parent_title" => $parent->title)) - : t("Movie %title removed from %parent_title", + : t("Movie \"%title\" removed from \"%parent_title\"", array("title" => $item->title, "parent_title" => $parent->title))); self::_notify($subscribers, $item, $v->render(), $v->subject); @@ -161,10 +161,10 @@ class notification { $v = new View("comment_published.html"); $v->comment = $comment; $v->subject = $item->is_album() ? - t("A new comment was published for album %title", array("title" => $item->title)) : + t("A new comment was published for album \"%title\"", array("title" => $item->title)) : ($item->is_photo() ? - t("A new comment was published for photo %title", array("title" => $item->title)) - : t("A new comment was published for movie %title", array("title" => $item->title))); + t("A new comment was published for photo \"%title\"", array("title" => $item->title)) + : t("A new comment was published for movie \"%title\"", array("title" => $item->title))); self::_notify($subscribers, $item, $v->render(), $v->subject); } |