Permalink
Browse files

bug 2172 fixed: the "sort order" options are removed from the album a…

…dministration main page.

bug 2173 fixed: rename "manual order" into "automatic order" and "by rank" into "manual order"

bug 2174 fixed: only show the automatic order options when it's relevant

new icon for the "manage photo order" screen

hide the numeric rank below the thumbnail (it is confusing for users)

tell users that you can drag'n drop to reorder photos

bug fixed: the "apply to sub-albums" options for photo orders was not working


git-svn-id: http://piwigo.org/svn/trunk@9051 68402e56-0260-453c-a942-63ccdbb3a9ee
  • Loading branch information...
1 parent a8f1054 commit 6ee66d829b5508e4f9a98e33164d32aedfeb9ec9 @plegall plegall committed Feb 2, 2011
View
@@ -44,26 +44,6 @@
//--------------------------------------------------------- form criteria check
if (isset($_POST['submit']))
{
- $image_order = null;
- if ( !isset($_POST['image_order_default']) )
- {
- for ($i=1; $i<=3; $i++)
- {
- if ( !empty($_POST['order_field_'.$i]) )
- {
- if (! empty($image_order) )
- {
- $image_order .= ',';
- }
- $image_order .= $_POST['order_field_'.$i];
- if ($_POST['order_direction_'.$i]=='DESC')
- {
- $image_order .= ' DESC';
- }
- }
- }
- }
-
$data =
array(
'id' => $_GET['cat_id'],
@@ -72,7 +52,6 @@
'comment' =>
$conf['allow_html_descriptions'] ?
@$_POST['comment'] : strip_tags(@$_POST['comment']),
- 'image_order' => $image_order,
);
mass_updates(
@@ -87,14 +66,6 @@
// retrieve cat infos before continuing (following updates are expensive)
$cat_info = get_cat_info($_GET['cat_id']);
- if (isset($_POST['image_order_subcats']))
- {
- $query = '
-UPDATE '.CATEGORIES_TABLE.' SET image_order='.(isset($image_order) ? 'NULL':'\''.$image_order.'\'').'
- WHERE uppercats LIKE \''.$cat_info['uppercats'].',%\'';
- pwg_query($query);
- }
-
if ($cat_info['visible'] != get_boolean( $_POST['visible'] ) )
{
set_cat_visible(array($_GET['cat_id']), $_POST['visible']);
@@ -244,9 +215,6 @@
'CAT_VISIBLE' => boolean_to_string($category['visible']),
'CAT_COMMENTABLE' => boolean_to_string($category['commentable']),
- 'IMG_ORDER_DEFAULT' => empty($category['image_order']) ?
- 'checked="checked"' : '',
-
'U_JUMPTO' => make_index_url(
array(
'category' => $category
@@ -277,12 +245,13 @@
'U_MANAGE_ELEMENTS',
$base_url.'batch_manager&amp;cat='.$category['id']
);
- $template->assign(
- 'U_MANAGE_RANKS',
- $base_url.'element_set_ranks&amp;cat_id='.$category['id']
- );
}
+$template->assign(
+ 'U_MANAGE_RANKS',
+ $base_url.'element_set_ranks&amp;cat_id='.$category['id']
+ );
+
if ($category['is_virtual'])
{
$template->assign(
@@ -303,55 +272,6 @@
);
}
-// image order management
-
-$sort_fields = array(
- '' => '',
- 'date_creation' => l10n('Creation date'),
- 'date_available' => l10n('Post date'),
- 'average_rate' => l10n('Average rate'),
- 'hit' => l10n('Most visited'),
- 'file' => l10n('File name'),
- 'id' => 'Id',
- 'rank' => l10n('Rank'),
- );
-
-$sort_directions = array(
- 'ASC' => l10n('ascending'),
- 'DESC' => l10n('descending'),
- );
-
-$template->assign( 'image_order_field_options', $sort_fields);
-$template->assign( 'image_order_direction_options', $sort_directions);
-
-$matches = array();
-if ( !empty( $category['image_order'] ) )
-{
- preg_match_all('/([a-z_]+) *(?:(asc|desc)(?:ending)?)? *(?:, *|$)/i',
- $category['image_order'], $matches);
-}
-
-for ($i=0; $i<3; $i++) // 3 fields
-{
- $tpl_image_order_select = array(
- 'ID' => $i+1,
- 'FIELD' => array(''),
- 'DIRECTION' => array('ASC'),
- );
-
- if ( isset($matches[1][$i]) )
- {
- $tpl_image_order_select['FIELD'] = array($matches[1][$i]);
- }
-
- if (isset($matches[2][$i]) and strcasecmp($matches[2][$i],'DESC')==0)
- {
- $tpl_image_order_select['DIRECTION'] = array('DESC');
- }
- $template->append( 'image_orders', $tpl_image_order_select);
-}
-
-
// representant management
if ($category['has_images']
or !empty($category['representative_picture_id']))
@@ -89,17 +89,20 @@ function save_images_order($category_id, $images)
if (isset($_POST['submit']))
{
- asort($_POST['rank_of_image'], SORT_NUMERIC);
+ if (isset($_POST['rank_of_image']))
+ {
+ asort($_POST['rank_of_image'], SORT_NUMERIC);
- save_images_order(
- $page['category_id'],
- array_keys($_POST['rank_of_image'])
- );
+ save_images_order(
+ $page['category_id'],
+ array_keys($_POST['rank_of_image'])
+ );
- array_push(
- $page['infos'],
- l10n('Images manual order was saved')
- );
+ array_push(
+ $page['infos'],
+ l10n('Images manual order was saved')
+ );
+ }
$image_order = null;
if (!empty($_POST['image_order_choice'])
@@ -134,6 +137,19 @@ function save_images_order($category_id, $images)
UPDATE '.CATEGORIES_TABLE.' SET image_order=\''.$image_order.'\'
WHERE id='.$page['category_id'];
pwg_query($query);
+
+ if (isset($_POST['image_order_subcats']))
+ {
+ $cat_info = get_cat_info($page['category_id']);
+
+ $query = '
+UPDATE '.CATEGORIES_TABLE.'
+ SET image_order = '.(isset($image_order) ? '\''.$image_order.'\'' : 'NULL').'
+ WHERE uppercats LIKE \''.$cat_info['uppercats'].',%\'';
+ pwg_query($query);
+ }
+
+ array_push($page['infos'], l10n('Your configuration settings are saved'));
}
// +-----------------------------------------------------------------------+
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@@ -261,3 +261,7 @@ display:block; height:85px; left:225px; position:relative; top:-42px; width:313p
.languageBox {background-color:#ddd;}
.languageName {color:black;}
.languageDefault {background-color:#dbe8f3;}
+
+UL.thumbnails li.rank-of-image {
+ background-color: #ddd;
+}
@@ -14,8 +14,8 @@
{/if}
{if isset($U_MANAGE_ELEMENTS) }
<li><a href="{$U_MANAGE_ELEMENTS}" title="{'manage album photos'|@translate}"><img src="{$ROOT_URL}{$themeconf.admin_icon_dir}/category_elements.png" class="button" alt="{'Photos'|@translate}"></a></li>
- <li><a href="{$U_MANAGE_RANKS}" title="{'manage photo ranks'|@translate}"><img src="{$ROOT_URL}{$themeconf.admin_icon_dir}/ranks.png" class="button" alt="{'ranks'|@translate}"></a></li>
{/if}
+ <li><a href="{$U_MANAGE_RANKS}" title="{'manage photo ranks'|@translate}"><img src="{$ROOT_URL}{$themeconf.admin_icon_dir}/ranks.png" class="button" alt="{'ranks'|@translate}"></a></li>
<li><a href="{$U_CHILDREN}" title="{'manage sub-albums'|@translate}"><img src="{$ROOT_URL}{$themeconf.admin_icon_dir}/category_children.png" class="button" alt="{'sub-albums'|@translate}"></a></li>
{if isset($U_MANAGE_PERMISSIONS) }
<li><a href="{$U_MANAGE_PERMISSIONS}" title="{'edit album permissions'|@translate}"><img src="{$ROOT_URL}{$themeconf.admin_icon_dir}/category_permissions.png" class="button" alt="{'Permissions'|@translate}"></a></li>
@@ -88,26 +88,6 @@
</table>
</fieldset>
-<fieldset id="image_order">
- <legend>{'Sort order'|@translate}</legend>
- <input type="checkbox" name="image_order_default" id="image_order_default" {$IMG_ORDER_DEFAULT}>
- <label for="image_order_default">{'Use the default photo sort order (defined in the configuration file)'|@translate}</label>
- <br>
- <input type="checkbox" name="image_order_subcats" id="image_order_subcats">
- <label for="image_order_subcats">{'Apply to sub-albums'|@translate}</label>
- <br>
-
- {foreach from=$image_orders item=order}
- <select name="order_field_{$order.ID}">
- {html_options options=$image_order_field_options selected=$order.FIELD }
- </select>
- <select name="order_direction_{$order.ID}">
- {html_options options=$image_order_direction_options selected=$order.DIRECTION }
- </select><br>
- {/foreach}
-
-</fieldset>
-
<p style="text-align:center;">
<input class="submit" type="submit" value="{'Submit'|@translate}" name="submit">
<input class="submit" type="reset" value="{'Reset'|@translate}" name="reset">
@@ -36,12 +36,13 @@ jQuery(document).ready(function() {
<h3>{$CATEGORIES_NAV}</h3>
-{if !empty($thumbnails)}
<form action="{$F_ACTION}" method="post">
+{if !empty($thumbnails)}
<p><input class="submit" type="submit" value="{'Submit'|@translate}" name="submit"></p>
<fieldset>
- <legend>{'Edit ranks'|@translate}</legend>
+ <legend>{'Manual order'|@translate}</legend>
{if !empty($thumbnails)}
+ <p>{'Drag to re-order'|@translate}</p>
<ul class="thumbnails">
{foreach from=$thumbnails item=thumbnail}
<li class="rank-of-image">
@@ -50,12 +51,13 @@ jQuery(document).ready(function() {
<img src="{$thumbnail.TN_SRC}" class="thumbnail" alt="">
</div>
</div>
- <input type="text" name="rank_of_image[{$thumbnail.ID}]" value="{$thumbnail.RANK}">
+ <input type="text" name="rank_of_image[{$thumbnail.ID}]" value="{$thumbnail.RANK}" style="display:none">
</li>
{/foreach}
</ul>
{/if}
</fieldset>
+{/if}
<fieldset>
<legend>{'Sort order'|@translate}</legend>
@@ -65,11 +67,11 @@ jQuery(document).ready(function() {
</p>
<p class="field">
<input type="radio" name="image_order_choice" id="image_order_rank" value="rank"{if $image_order_choice=='rank'} checked="checked"{/if}>
- <label for="image_order_rank">{'By rank'|@translate}</label>
+ <label for="image_order_rank">{'manual order'|@translate}</label>
</p>
<p class="field">
<input type="radio" name="image_order_choice" id="image_order_user_define" value="user_define"{if $image_order_choice=='user_define'} checked="checked"{/if}>
- <label for="image_order_user_define">{'Manual order'|@translate}</label>
+ <label for="image_order_user_define">{'automatic order'|@translate}</label>
<div id="image_order_user_define_options">
{foreach from=$image_orders item=order}
<p class="field">
@@ -83,10 +85,12 @@ jQuery(document).ready(function() {
{/foreach}
</div>
</fieldset>
- <p><input class="submit" type="submit" value="{'Submit'|@translate}" name="submit"></p>
-</form>
-
+ <p>
+ <input class="submit" type="submit" value="{'Submit'|@translate}" name="submit">
-{else}
-<div class="infos"><p>{'No photo in this album'|@translate}</p></div>
-{/if}
+ <label>
+ <input type="checkbox" name="image_order_subcats" id="image_order_subcats">
+ {'Apply to sub-albums'|@translate}
+ </label>
+ </p>
+</form>
@@ -6,19 +6,18 @@ UL.thumbnails {
UL.thumbnails LI { display: inline }
UL.thumbnails li.rank-of-image {
float: left;
- background-color: #111;
- border: 1px solid #666;
+ background-color: #333;
color: #666;
- -moz-border-radius: 4px;
+ -moz-border-radius: 5px;
display: block;
width: 104px;
- height: 128px;
+ height: 104px;
cursor: move;
margin: 10px;
}
UL.thumbnails li.rank-of-image img {
margin: 0 20px;
- padding: 4px 2px;
+ padding: 8px 2px;
float: left;
}
.clipwrapper {
@@ -30,10 +29,6 @@ UL.thumbnails li.rank-of-image img {
position:absolute;
}
UL.thumbnails li.rank-of-image input {
- height: 12px;
- width: 50px;
- position: relative;
- top: 4px;
}
UL.thumbnails SPAN.wrap1 {
margin: 0 5px 5px 5px;

0 comments on commit 6ee66d8

Please sign in to comment.