source: extensions/stripped_responsive/template/picture.tpl @ 31575

Revision 31575, 16.8 KB checked in by plg, 4 years ago (diff)

equivalent to stripped r31389

compatibility with formats in Piwigo 2.8

  • Property svn:executable set to *
Line 
1{combine_script id='core.switchbox' load='async' require='jquery' path='themes/default/js/switchbox.js'}
2
3{assign var=derivative value=$pwg->derivative($stripped_responsive.imageSize, $current.src_image)}
4{assign var='size' value=$derivative->get_size()}
5{literal}
6<script type="text/javascript">
7var image_w = {/literal}{$size[0]}{literal}
8var image_h = {/literal}{$size[1]}{literal}
9</script>
10{/literal}
11
12{include file='infos_errors.tpl'}
13
14<div class="titrePage" id="imageHeaderBar">
15    <ul class="randomButtons">
16                <li id="imageToolBar">
17                        {include file='picture_nav_buttons.tpl'|@get_extent:'picture_nav_buttons'}
18                </li>
19                {strip}{if isset($U_SLIDESHOW_START) }
20                        <li>
21              <a href="{$U_SLIDESHOW_START}" title="{'slideshow'|@translate}" rel="nofollow">
22                <span class="pwg-icon pwg-icon-slideshow"></span>
23                <span class="pwg-button-text">{'slideshow'|@translate}</span>
24              </a>
25            </li>
26                {/if}{/strip}
27        {strip}{if isset($U_PHOTO_ADMIN) }
28                        <li><a href="{$U_PHOTO_ADMIN}" title="{'Modify information'|@translate}">{'edit'|@translate}</a></li>
29        {/if}{/strip}
30                {strip}{if isset($U_CADDIE)}
31                        <li><a href="{$U_CADDIE}" onclick="addToCadie(this, '{$ROOT_URL}', {$current.id}); return false;" title="{'add to caddie'|@translate}" rel="nofollow">{'caddie'|@translate}</a></li>
32        {/if}{/strip}
33                {strip}{if isset($favorite) }
34                        <li><a href="{$favorite.U_FAVORITE}" title="{$favorite.FAVORITE_HINT}">{'Favorites'|@translate}</a></li>
35        {/if}{/strip}
36        {strip}{if !empty($U_SET_AS_REPRESENTATIVE) }
37                        <li><a href="{$U_SET_AS_REPRESENTATIVE}" title="{'set as album representative'|@translate}">{'representative'|@translate}</a></li>
38        {/if}{/strip}
39                {strip}{if isset($current.U_DOWNLOAD)}
40          <li>
41            <a id="downloadSwitchLink" href="{$current.U_DOWNLOAD}" title="{'Download this file'|@translate}">
42              <span class="pwg-icon pwg-icon-download"></span>
43              <span class="pwg-button-text">{'Download'|@translate}</span>
44            </a>
45          </li>
46                {/if}{/strip}
47
48{if !empty($current.formats)}
49{footer_script require='jquery'}{literal}
50jQuery().ready(function() {
51  jQuery("#downloadSwitchLink").removeAttr("href");
52 
53  (window.SwitchBox=window.SwitchBox||[]).push("#downloadSwitchLink", "#downloadSwitchBox");
54});
55{/literal}{/footer_script}
56 
57<div id="downloadSwitchBox" class="switchBox">
58  <div class="switchBoxTitle">{'Download'|translate} - {'Formats'|translate}</div>
59  <ul>
60  {foreach from=$current.formats item=format}
61    <li><a href="{$format.download_url}" rel="nofollow">{$format.label}<span class="downloadformatDetails"> ({$format.filesize})</span></a></li>
62  {/foreach}
63  </ul>
64</div>
65{/if} {* has formats *}
66
67                {strip}{if isset($PLUGIN_PICTURE_ACTIONS)}
68                        <li class="plugin_buttons plugin_buttons_group1">{$PLUGIN_PICTURE_ACTIONS}</li>
69                {/if}
70    {/strip}
71    {if isset($PLUGIN_PICTURE_BUTTONS)}{foreach from=$PLUGIN_PICTURE_BUTTONS item=button}<li class="plugin_buttons plugin_buttons_group1">{$button}</li>{/foreach}{/if}
72                {strip}{if isset($U_CADDIE)}{*caddie management BEGIN*}
73                        {footer_script}
74                                {literal}
75                                        function addToCadie(aElement, rootUrl, id)
76                                        {
77                                                if (aElement.disabled) return;
78                                                aElement.disabled=true;
79                                                var y = new PwgWS(rootUrl);
80                                                y.callService(
81                                                        "pwg.caddie.add", {image_id: id} ,
82                                                        {
83                                                                onFailure: function(num, text) { alert(num + " " + text); document.location=aElement.href; },
84                                                                onSuccess: function(result) { aElement.disabled = false; }
85                                                        }
86                                                );
87                                        }
88                                {/literal}
89                        {/footer_script}
90                {/if}{/strip}
91                <li class="plugin_buttons plugin_buttons_group2">{*caddie management END*}</li>
92    </ul>
93        {if ($GMaps_loaded)}<div id="text_gmaps" style="display:none">{'GMap'|@translate}</div>{/if}
94        <div class="browsePath">
95                {$SECTION_TITLE}
96                {if ($stripped_responsive.showTitleOnBrowsePath)}{$LEVEL_SEPARATOR}{$current.TITLE}{/if}
97        </div>
98        <div style="clear:both;"></div>
99</div> <!-- imageHeaderBar -->
100
101{if !empty($PLUGIN_PICTURE_BEFORE)}{$PLUGIN_PICTURE_BEFORE}{/if}
102<div id="content">
103        <div class="hideTabsZone hideTabs">&nbsp;</div>
104
105 <!-- Image HD -->
106  <div id="theImageHigh" style="display:none;">
107    <div id="theImgHighBg"></div>
108    <div id="theImgHighContainer">
109      <div id="theImgHighCloseButton" onclick="closeDisplayHigh();"></div>
110      <div id="theImgHighZoomButton" class="fit" onclick="switchZoomHigh();"></div>
111      <div id="theImgHighContainer2">
112        <img id="theImgHigh" src="" style="display:none;" alt="{$ALT_IMG}">
113      </div>
114    </div>
115  </div>
116
117        {assign var='display_description_tab' value=false}
118        {if (($stripped_responsive.imageCaption != 'description') && isset($COMMENT_IMG))}
119                {assign var='display_description_tab' value=true}
120        {/if}
121
122        {assign var='showTitle' value=false}
123        {if isset($COMMENT_IMG) and $stripped_responsive.imageCaption == 'description'}
124                {assign var='showTitle' value=true}
125        {/if}
126        {if isset($current.TITLE) and $stripped_responsive.imageCaption == 'title'}
127                {assign var='showTitle' value=true}
128        {/if}
129
130<div id="theImageAndTitle">
131        <div id="theImageBox" >
132                <div class="hideTabsZone hideTabs">&nbsp;</div>
133                <div id="theImage">
134                        {$ELEMENT_CONTENT}
135                </div>
136        </div>
137        {if $showTitle }
138                <div id="imageTitleContainer"><div id="imageTitle">
139                        {if ($stripped_responsive.imageCaption == 'description' )}
140                                {$COMMENT_IMG}
141                        {/if}
142                        {if ($stripped_responsive.imageCaption == 'title' )}
143                                {$current.TITLE}
144                        {/if}
145                </div></div>
146        {/if}
147 </div> <!-- theImage -->
148 <div style="clear: both;"></div>
149
150        <div id="tabZone">
151
152                {assign var='display_info_panel' value=false}
153                {assign var='display_count' value='0'}
154                {if $display_info.author}{assign var='display_count' value=$display_count+1}{/if}
155                {if $display_info.created_on}{assign var='display_count' value=$display_count+1}{/if}
156                {if $display_info.posted_on}{assign var='display_count' value=$display_count+1}{/if}
157                {if $display_info.dimensions}{assign var='display_count' value=$display_count+1}{/if}
158                {if $display_info.file}{assign var='display_count' value=$display_count+1}{/if}
159                {if $display_info.filesize}{assign var='display_count' value=$display_count+1}{/if}
160                {if $display_info.categories}{assign var='display_count' value=$display_count+1}{/if}
161                {if $display_info.visits}{assign var='display_count' value=$display_count+1}{/if}
162                {if $display_info.rating_score and isset($rate_summary) }{assign var='display_count' value=$display_count+1}{/if}
163                {if isset($rating)}{assign var='display_count' value=$display_count+1}{/if}
164                {if $display_info.privacy_level and isset($available_permission_levels) }{assign var='display_count' value=$display_count+1}{/if}
165                {if (($display_count > 0) && ((isset($U_ADMIN)) || ($stripped_responsive.infoTabAdminOnly == false)))}
166                        {assign var='display_info_panel' value=true}
167                {/if}
168                <div id="tabTitleBar">
169                        <ul id="tabTitles">
170                                {if $display_description_tab}
171                                        <li id="tabTcaption" class="tabTitle" name="caption">{'Description'|@translate}</li>
172                                {/if}
173                                {if ($display_info.tags && (isset($related_tags) || ($usertags)))}
174                                        <li id="tabTtags" class="tabTitle" name="tags">{'Tags'|@translate}</li>
175                                {/if}
176                                {if isset($metadata)}
177                                        {foreach from=$metadata item=meta key=id}
178                                                <li id="tabTmeta{$id}" class="tabTitle" name="meta{$id}">{$meta.TITLE}</li>
179                                        {/foreach}
180                                {/if}
181                                {if $display_info_panel}
182                                        <li id="tabTinfo" class="tabTitle" name="info">{'Information'|@translate}</li>
183                                {/if}
184                                {if (isset($COMMENT_COUNT) and ($COMMENT_COUNT>0)) or isset($comment_add) }
185                                        <li id="tabTcomments" class="tabTitle" title="{'Add a comment'|@translate}" name="comments">{$COMMENT_COUNT|translate_dec:'%d comment':'%d comments'}</li>
186                                {/if}
187                        </ul>
188                </div>
189                <div id="tabs">
190                        {if $display_description_tab}
191                                <div id="Tcaption" class="tabBlock"><div class="tabBlockContent">
192                                        {$COMMENT_IMG}
193                                </div></div>
194                        {/if}
195                        {if ($display_info.tags && (isset($related_tags) || ($usertags)))}
196                                <div id="Ttags" class="tabBlock"><div class="tabBlockContent">
197                                {if ($usertags)}<table id="TagsTable"><tr id="Tags" ><td class="label"></td><td class="value">{/if}
198                                {foreach from=$related_tags item=tag name=tag_loop}{if !$smarty.foreach.tag_loop.first}, {/if}
199                                        <a href="{$tag.URL}">{$tag.name}</a>
200                                {/foreach}
201                                {if ($usertags)}</td></tr></table>{/if}
202                                </div></div>
203                        {/if}
204                        {if isset($metadata)}
205                                {foreach from=$metadata item=meta key=id}
206                                        <div id="Tmeta{$id}" class="tabBlock"><div class="tabBlockContent">
207                                                {if count($meta.lines)>0 and !array_key_exists('<!--rawContent-->', $meta.lines)}
208                                                        <table id="table_meta{$id}" class="infoTable2">
209                                                                {foreach from=$meta.lines item=value key=label}
210                                                                          <tr>
211                                                                                <td class="label">{$label|@translate}</td>
212                                                                                <td class="value">{$value}</td>
213                                                                          </tr>
214                                                                {/foreach}
215                                                        </table>
216                                                {else}
217                                                          {assign var='empty' value='<!--rawContent-->'}
218                                                          {$meta.lines.$empty}
219                                                {/if}
220                                        </div></div>
221                                {/foreach}
222                        {/if}
223                        {if $display_info_panel}
224                                <div id="Tinfo" class="tabBlock"><div class="tabBlockContent">
225                               
226<dl id="standard" class="imageInfoTable">
227{strip}
228        {if $display_info.author and isset($INFO_AUTHOR)}
229        <div id="Author" class="imageInfo">
230                <dt>{'Author'|@translate}</dt>
231                <dd>{$INFO_AUTHOR}</dd>
232        </div>
233        {/if}
234        {if $display_info.created_on and isset($INFO_CREATION_DATE)}
235        <div id="datecreate" class="imageInfo">
236                <dt>{'Created on'|@translate}</dt>
237                <dd>{$INFO_CREATION_DATE}</dd>
238        </div>
239        {/if}
240        {if $display_info.posted_on}
241        <div id="datepost" class="imageInfo">
242                <dt>{'Posted on'|@translate}</dt>
243                <dd>{$INFO_POSTED_DATE}</dd>
244        </div>
245        {/if}
246        {if $display_info.dimensions and isset($INFO_DIMENSIONS)}
247        <div id="Dimensions" class="imageInfo">
248                <dt>{'Dimensions'|@translate}</dt>
249                <dd>{$INFO_DIMENSIONS}</dd>
250        </div>
251        {/if}
252        {if $display_info.file}
253        <div id="File" class="imageInfo">
254                <dt>{'File'|@translate}</dt>
255                <dd>{$INFO_FILE}</dd>
256        </div>
257        {/if}
258        {if $display_info.filesize and isset($INFO_FILESIZE)}
259        <div id="Filesize" class="imageInfo">
260                <dt>{'Filesize'|@translate}</dt>
261                <dd>{$INFO_FILESIZE}</dd>
262        </div>
263        {/if}
264        {if $display_info.tags and isset($related_tags)}
265        <div id="Tags" class="imageInfo">
266                <dt>{'Tags'|@translate}</dt>
267                <dd>
268                {foreach from=$related_tags item=tag name=tag_loop}{if !$smarty.foreach.tag_loop.first}, {/if}<a href="{$tag.URL}">{$tag.name}</a>{/foreach}
269                </dd>
270        </div>
271        {/if}
272        {if $display_info.categories and isset($related_categories)}
273        <div id="Categories" class="imageInfo">
274                <dt>{'Albums'|@translate}</dt>
275                <dd>
276                        <ul>
277                                {foreach from=$related_categories item=cat}
278                                <li>{$cat}</li>
279                                {/foreach}
280                        </ul>
281                </dd>
282        </div>
283        {/if}
284        {if $display_info.visits}
285        <div id="Visits" class="imageInfo">
286                <dt>{'Visits'|@translate}</dt>
287                <dd>{$INFO_VISITS}</dd>
288        </div>
289        {/if}
290{if $display_info.rating_score and isset($rate_summary)}
291        <div id="Average" class="imageInfo">
292                <dt>{'Rating score'|@translate}</dt>
293                <dd>
294                {if $rate_summary.count}
295                        <span id="ratingScore">{$rate_summary.score}</span> <span id="ratingCount">({$rate_summary.count|@translate_dec:'%d rate':'%d rates'})</span>
296                {else}
297                        <span id="ratingScore">{'no rate'|@translate}</span> <span id="ratingCount"></span>
298                {/if}
299                </dd>
300        </div>
301{/if}
302{if isset($rating)}
303        <div id="rating" class="imageInfo">
304                <dt>
305                        <span id="updateRate">{if isset($rating.USER_RATE)}{'Update your rating'|@translate}{else}{'Rate this photo'|@translate}{/if}</span>
306                </dt>
307                <dd>
308                                                                        <form action="{$rating.F_ACTION}" method="post" id="rateForm" style="margin:0;">
309                                                                                <div>
310                                                                                        {foreach from=$rating.marks item=mark name=rate_loop}
311                                                                                                {if isset($rating.USER_RATE) && $mark==$rating.USER_RATE}
312                                                                                                        <input type="button" name="rate" value="{$mark}" class="rateButtonSelected" title="{$mark}">
313                                                                                                {else}
314                                                                                                        <input type="submit" name="rate" value="{$mark}" class="rateButton" title="{$mark}">
315                                                                                                {/if}
316                                                                                        {/foreach}
317                                                                                        {strip}{combine_script id='core.scripts' load='async' path='themes/default/js/scripts.js'}
318                                                                                        {combine_script id='rating' load='async' require='core.scripts' path='themes/default/js/rating.js'}
319                                                                                        {footer_script}
320                                                                                                var _pwgRatingAutoQueue = _pwgRatingAutoQueue||[];
321                                                                                                _pwgRatingAutoQueue.push( {ldelim}rootUrl: '{$ROOT_URL}', image_id: {$current.id},
322                                                                                                        updateRateText: "{'Update your rating'|@translate|@escape:'javascript'}", updateRateElement: document.getElementById("updateRate"),
323                                                                                                        ratingSummaryText: "{'%.2f (rated %d times)'|@translate|@escape:'javascript'}", ratingSummaryElement: document.getElementById("ratingSummary"){rdelim} );
324                                                                                        {/footer_script}
325                                                                                        {/strip}
326                                                                                </div>
327                                                                        </form>
328                </dd>
329        </div>
330{/if}
331{/strip}
332</dl>
333                               
334                                        <table id="standard" class="infoTable">
335                                                {if $display_info.privacy_level and isset($available_permission_levels)}
336                                                        <tr id="Privacy">
337                                                                <td class="label">{'Who can see this photo?'|@translate}</td>
338                                                                <td class="value">
339                                                                        {combine_script id='core.scripts' load='async' path='themes/default/js/scripts.js'}
340                                                                        {footer_script}
341                                                                                {literal}function setPrivacyLevel(selectElement, rootUrl, id, level)
342                                                                                {
343                                                                                        selectElement.disabled = true;
344                                                                                        var y = new PwgWS(rootUrl);
345                                                                                        y.callService(
346                                                                                        "pwg.images.setPrivacyLevel", {image_id: id, level:level} ,
347                                                                                        {
348                                                                                                method: "POST",
349                                                                                                onFailure: function(num, text) { selectElement.disabled = false; alert(num + " " + text); },
350                                                                                                onSuccess: function(result) { selectElement.disabled = false; }
351                                                                                        }
352                                                                                );
353                                                                                }{/literal}
354                                                                        {/footer_script}
355                                                                        <select onchange="setPrivacyLevel(this, '{$ROOT_URL}', {$current.id}, this.options[selectedIndex].value)">
356                                                                                {foreach from=$available_permission_levels item=label key=level}
357                                                                                        <option label="{$label}" value="{$level}"{if $level == $current.level} selected="selected"{/if}>{$label}</option>
358                                                                                {/foreach}
359                                                                        </select>
360                                                                </td>
361                                                        </tr>
362                                                {/if}
363                                        </table>
364                                </div></div>
365                        {/if}
366                        {if (isset($COMMENT_COUNT) and ($COMMENT_COUNT>0)) or isset($comment_add) }
367                                <div id="Tcomments" class="tabBlock"><div id="theComments" class="tabBlockContent">
368                                        <div id="theCommentsBlock">
369                                                {if !empty($COMMENT_NAV_BAR)}
370                                                        <div class="navigationBar">{$COMMENT_NAV_BAR}</div>
371                                                {/if}
372                                                {if isset($comment_add)}
373                                                        <div id="commentAdd">
374                                                                <h4>{'Add a comment'|@translate}</h4>
375                                                                <form  method="post" action="{$comment_add.F_ACTION}" class="filter" id="addComment" >
376                  {if $comment_add.SHOW_AUTHOR}
377                    <p><label for="author">{'Author'|@translate}{if $comment_add.AUTHOR_MANDATORY} ({'mandatory'|@translate}){/if} :</label></p>
378                    <p><input type="text" name="author" id="author" value="{$comment_add.AUTHOR}"></p>
379                  {/if}
380                  {if $comment_add.SHOW_EMAIL}
381                    <p><label for="email">{'Email'|@translate}{if $comment_add.EMAIL_MANDATORY} ({'mandatory'|@translate}){/if} :</label></p>
382                    <p><input type="text" name="email" id="email" value="{$comment_add.EMAIL}"></p>
383                  {/if}
384                  {if $comment_add.SHOW_WEBSITE}
385                    <p><label for="website_url">{'Website'|@translate} :</label></p>
386                    <p><input type="text" name="website_url" id="website_url" value="{$comment_add.WEBSITE_URL}"></p>
387                  {/if}
388                  <p><label for="contentid">{'Comment'|@translate} ({'mandatory'|@translate}) :</label></p>
389                  <p><textarea name="content" id="contentid" rows="5" cols="50">{$comment_add.CONTENT}</textarea></p>
390                  <p><input type="hidden" name="key" value="{$comment_add.KEY}">
391                    <input class="submit" type="submit" value="{'Submit'|@translate}"></p>
392                </form>
393                                                        </div>
394                                                {/if}
395                                                {if !empty($navbar) }{include file='navigation_bar.tpl'|@get_extent:'navbar'}{/if}
396                                                {if isset($comments)}
397                                                        <div id="commentList">
398                                                                {include file='comment_list.tpl'}
399                                                        </div>
400                                                {/if}
401                                                <div style="clear: both;"></div>
402                                        </div>
403                                </div></div>
404                        {/if}
405                </div>
406        </div>
407    <div style="clear: both;"></div>
408</div>
409{if isset($stripped_responsive.imagePreload)}
410<div id="image_urls" style="display:none;">
411        {foreach from=$U_IMGNEXT item=u_img key=id}
412                {if isset($u_img)}<div class="next{$id} preload">{$u_img}</div>{/if}
413        {/foreach}
414</div>
415{/if}
416{if !empty($PLUGIN_PICTURE_AFTER)}{$PLUGIN_PICTURE_AFTER}{/if}
Note: See TracBrowser for help on using the repository browser.