source: extensions/greydragon/template/picture.tpl @ 30643

Last change on this file since 30643 was 30643, checked in by SergeD, 9 years ago

version 1.0.15 - please refer to changelog for more details

File size: 19.5 KB
Line 
1{include file='include/colorbox.inc.tpl'}
2{combine_script id='picture-js' load='async' require='jquery,jquery.colorbox' path='themes/greydragon/js/theme.photo.js'}
3{assign var=overlay_mode value="off"}
4{if $greydragon.p_pict_tab_mode == "txt-with-overlay" || $greydragon.p_pict_tab_mode == "ico-with-overlay"}{$overlay_mode="on"}{/if}
5{assign var=ico_mode value="off"}
6{if $greydragon.p_pict_tab_mode == "ico-tab-open" || $greydragon.p_pict_tab_mode == "ico-tab-close" || $greydragon.p_pict_tab_mode == "ico-with-overlay"}{$ico_mode="on"}{/if}
7                                                                                           
8{if isset($MENUBAR)}{$MENUBAR}{/if}
9
10<div id="content"{if isset($MENUBAR)} class="contentWithMenu"{/if}>
11{if isset($errors) or not empty($infos)}
12{include file='infos_errors.tpl'}
13{/if}
14
15{if !empty($PLUGIN_PICTURE_BEFORE)}{$PLUGIN_PICTURE_BEFORE}{/if}
16
17<div id="imageHeaderBar">
18  <div class="browsePath">
19    {$SECTION_TITLE}<span class="browsePathSeparator">{$LEVEL_SEPARATOR}</span><h2>{$current.TITLE}</h2>
20  </div>
21</div>
22
23<div id="imageToolBar">
24<div class="imageNumber">{$PHOTO}</div>
25{include file='picture_nav_buttons.tpl'|@get_extent:'picture_nav_buttons'}
26
27<div class="actionButtons">
28{if isset($current.unique_derivatives) && count($current.unique_derivatives)>1}
29{footer_script require='jquery'}{literal}
30function changeImgSrc(url,typeSave,typeMap) {
31  var theImg = document.getElementById("theMainImage");
32  if (theImg)
33  {
34    theImg.removeAttribute("width");theImg.removeAttribute("height");
35    theImg.src = url;
36    theImg.useMap = "#map"+typeMap;
37  }
38  jQuery('#derivativeSwitchBox .switchCheck').css('visibility','hidden');
39  jQuery('#derivativeChecked'+typeMap).css('visibility','visible');
40  document.cookie = 'picture_deriv='+typeSave+';path={/literal}{$COOKIE_PATH}{literal}';
41}
42(SwitchBox=window.SwitchBox||[]).push("#derivativeSwitchLink", "#derivativeSwitchBox");
43{/literal}{/footer_script}
44
45{strip}<a id="derivativeSwitchLink" title="{'Photo sizes'|@translate}" class="pwg-state-default pwg-button" rel="nofollow">
46  <span class="pwg-icon pwg-icon-sizes"></span><span class="pwg-button-text">{'Photo sizes'|@translate}</span>
47</a>
48<div id="derivativeSwitchBox" class="switchBox">
49  <div class="switchBoxTitle">{'Photo sizes'|@translate}</div>
50  {foreach from=$current.unique_derivatives item=derivative key=derivative_type}
51  <span class="switchCheck" id="derivativeChecked{$derivative->get_type()}"{if $derivative->get_type() ne $current.selected_derivative->get_type()} style="visibility:hidden"{/if}>&#x2714; </span>
52  <a href="javascript:changeImgSrc('{$derivative->get_url()|@escape:javascript}','{$derivative_type}','{$derivative->get_type()}')">
53    {$derivative->get_type()|@translate}<span class="derivativeSizeDetails"> ({$derivative->get_size_hr()})</span>
54  </a><br>
55  {/foreach}
56  {if isset($U_ORIGINAL)}
57    {combine_script id='core.scripts' load='async' path='themes/default/js/scripts.js'}
58  <a href="javascript:phpWGOpenWindow('{$U_ORIGINAL}','xxx','scrollbars=yes,toolbar=no,status=no,resizable=yes')" rel="nofollow">{'Original'|@translate}</a>
59  {/if}
60</div>
61{/strip}
62{/if}
63{strip}{if isset($U_SLIDESHOW_START)}
64  <a href="{$U_SLIDESHOW_START}" title="{'slideshow'|@translate}" class="pwg-state-default pwg-button" rel="nofollow">
65    <span class="pwg-icon pwg-icon-slideshow"></span><span class="pwg-button-text">{'slideshow'|@translate}</span>
66  </a>
67{/if}{/strip}
68{strip}{if isset($U_METADATA)}
69  <a href="{$U_METADATA}" title="{'Show file metadata'|@translate}" class="pwg-state-default pwg-button" rel="nofollow">
70    <span class="pwg-icon pwg-icon-camera-info"></span><span class="pwg-button-text">{'Show file metadata'|@translate}</span>
71  </a>
72{/if}{/strip}
73{strip}{if isset($current.U_DOWNLOAD)}
74  <a href="{$current.U_DOWNLOAD}" title="{'Download this file'|@translate}" class="pwg-state-default pwg-button" rel="nofollow">
75    <span class="pwg-icon pwg-icon-save"></span><span class="pwg-button-text">{'Download'|@translate}</span>
76  </a>
77{/if}{/strip}
78{if isset($PLUGIN_PICTURE_BUTTONS)}{foreach from=$PLUGIN_PICTURE_BUTTONS item=button}{$button}{/foreach}{/if}
79{if isset($PLUGIN_PICTURE_ACTIONS)}{$PLUGIN_PICTURE_ACTIONS}{/if}
80{strip}{if isset($favorite)}
81  <a href="{$favorite.U_FAVORITE}" title="{if $favorite.IS_FAVORITE}{'delete this photo from your favorites'|@translate}{else}{'add this photo to your favorites'|@translate}{/if}" class="pwg-state-default pwg-button" rel="nofollow">
82    <span class="pwg-icon pwg-icon-favorite-{if $favorite.IS_FAVORITE}del{else}add{/if}"></span><span class="pwg-button-text">{'Favorites'|@translate}</span>
83  </a>
84{/if}{/strip}
85{strip}{if isset($U_SET_AS_REPRESENTATIVE)}
86  <a id="cmdSetRepresentative" href="{$U_SET_AS_REPRESENTATIVE}" title="{'set as album representative'|@translate}" class="pwg-state-default pwg-button" rel="nofollow">
87    <span class="pwg-icon pwg-icon-representative"></span><span class="pwg-button-text">{'representative'|@translate}</span>
88  </a>
89{/if}{/strip}
90{strip}{if isset($U_PHOTO_ADMIN)}
91  <a id="cmdEditPhoto" href="{$U_PHOTO_ADMIN}" title="{'Modify information'|@translate}" class="pwg-state-default pwg-button" rel="nofollow">
92    <span class="pwg-icon pwg-icon-edit"></span><span class="pwg-button-text">{'Edit'|@translate}</span>
93  </a>
94{/if}{/strip}
95{strip}{if isset($U_CADDIE)}{*caddie management BEGIN*}
96{footer_script}
97{literal}function addToCadie(aElement, rootUrl, id) {
98  if (aElement.disabled) return;
99  aElement.disabled=true;
100  var y = new PwgWS(rootUrl);
101  y.callService("pwg.caddie.add", {image_id: id}, { onFailure: function(num, text) { alert(num + " " + text); document.location=aElement.href; }, onSuccess: function(result) { aElement.disabled = false; }});
102}{/literal}
103{/footer_script}
104  <a href="{$U_CADDIE}" onclick="addToCadie(this, '{$ROOT_URL}', {$current.id}); return false;" title="{'Add to caddie'|@translate}" class="pwg-state-default pwg-button" rel="nofollow">
105    <span class="pwg-icon pwg-icon-caddie-add"> </span><span class="pwg-button-text">{'Caddie'|@translate}</span>
106  </a>
107{/if}{/strip}{*caddie management END*}
108</div>
109</div>{*<!-- imageToolBar -->*}
110
111<div id="theImageAndInfos">
112<div id="theImage">
113{$ELEMENT_CONTENT}
114
115{if isset($U_SLIDESHOW_STOP)}
116<p>
117  [ <a href="{$U_SLIDESHOW_STOP}">{'stop the slideshow'|@translate}</a> ]
118</p>
119{/if}
120
121</div>
122{* {if $DISPLAY_NAV_THUMB}
123<div id="imageInfos">
124  <div class="navThumbs">
125    {if isset($previous)}
126      <a class="navThumb" id="linkPrev" href="{$previous.U_IMG}" title="{'Previous'|@translate} : {$previous.TITLE_ESC}" rel="prev">
127        <span class="thumbHover prevThumbHover"></span>
128        <img src="{$previous.derivatives.square->get_url()}" alt="{$previous.TITLE_ESC}">
129      </a>
130    {elseif isset($U_UP)}
131      <a class="navThumb" id="linkPrev" href="{$U_UP}" title="{'Thumbnails'|@translate}">
132        <div class="thumbHover">{'First Page'|@translate}<br><br>{'Go back to the album'|@translate}</div>
133      </a>
134    {/if}
135    {if isset($next)}
136      <a class="navThumb" id="linkNext" href="{$next.U_IMG}" title="{'Next'|@translate} : {$next.TITLE_ESC}" rel="next">
137        <span class="thumbHover nextThumbHover"></span>
138        <img src="{$next.derivatives.square->get_url()}" alt="{$next.TITLE_ESC}">
139      </a>
140    {elseif isset($U_UP)}
141      <a class="navThumb" id="linkNext"  href="{$U_UP}"  title="{'Thumbnails'|@translate}">
142        <div class="thumbHover">{'Last Page'|@translate}<br><br>{'Go back to the album'|@translate}</div>
143      </a>
144    {/if}
145  </div>
146</div>
147{/if} *}
148{if $greydragon.p_pict_tab_mode !== "hide" && $overlay_mode == "on"}
149<div id="image-metadata-ico">
150  <ul class="image-metadata-ico">
151    {if isset( $COMMENT_IMG )}<li class="meta-desc{if $ico_mode=="on"} glyphicon glyphicon-eye-open{/if}{if $def_tab == 'desc'} active{/if}">{if $ico_mode=="off"}{'Description'|@translate}{/if}</li>{/if}
152    <li class="meta-info {if $ico_mode=="on"} glyphicon glyphicon-info-sign{/if}{if $def_tab == 'info'} active{/if}">{if $ico_mode=="off"}{'Info'|@translate}{/if}</li>
153    {if isset($metadata)}<li class="meta-exif{if $ico_mode=="on"} glyphicon glyphicon-camera{/if}{if $def_tab == 'exif'} active{/if}">{if $ico_mode=="off"}{'Exif'|@translate}{/if}</li>{/if}
154    {if ($display_info.tags && (isset($related_tags) || ($greydragon.hasUserTags)))}<li class="meta-tags{if $ico_mode=="on"} glyphicon glyphicon-tags{/if}{if $def_tab == 'tags'} active{/if}" >{if $ico_mode=="off"}{'Tags'|@translate}{/if}</li>{/if}
155    {if isset($COMMENT_COUNT)}<li class="meta-comment{if $ico_mode=="on"} glyphicon glyphicon-comment{/if}{if $def_tab == 'comments'} active{/if}">{if $ico_mode=="off"}{$COMMENT_COUNT|@translate_dec:'%d comment':'%d comments'}{else}&nbsp;{$COMMENT_COUNT}{/if}</li>{/if}
156    {if isset($ppppp_e_mail)}<li class="meta-cart{if $ico_mode=="on"} glyphicon glyphicon-shopping-cart{/if}{if $def_tab == 'cart'} active{/if}" >{if $ico_mode=="off"}{'Cart'|@translate}{/if}</li>{/if}
157  </ul>
158</div>
159{/if}
160
161</div>
162
163{assign var=def_tab value="{$greydragon.p_pict_tab_default}"}
164{if !isset($metadata) && $def_tab == 'exif'}{$def_tab="desc"}{/if}
165{if !isset($COMMENT_COUNT) && $def_tab == 'comments'}{$def_tab="desc"}{/if}
166{if !isset( $COMMENT_IMG ) && $def_tab == 'desc'}{$def_tab="info"}{/if}
167{if $greydragon.p_pict_tab_mode !== "hide" && $overlay_mode == "off"}
168<ul class="image-metadata"> 
169  {if isset( $COMMENT_IMG )}<li class="{if $ico_mode=="on"}glyphicon glyphicon-eye-open{/if}{if $def_tab == 'desc'} active{/if}" rel="tab-desc">{if $ico_mode=="off"}{'Description'|@translate}{/if}</li>{/if}
170  <li class="{if $ico_mode=="on"}glyphicon glyphicon-info-sign{/if}{if $def_tab == 'info'} active{/if}" rel="tab-meta">{if $ico_mode=="off"}{'Info'|@translate}{/if}</li>
171  {if isset($metadata)}<li class="{if $ico_mode=="on"}glyphicon glyphicon-camera{/if}{if $def_tab == 'exif'} active{/if}" rel="tab-exif">{if $ico_mode=="off"}{'Exif'|@translate}{/if}</li>{/if}
172  {if ($display_info.tags && (isset($related_tags) || ($greydragon.hasUserTags)))}<li class="{if $ico_mode=="on"}glyphicon glyphicon-tags{/if}{if $def_tab == 'tags'} active{/if}" rel="tab-tags">{if $ico_mode=="off"}{'Tags'|@translate}{/if}</li>{/if}
173  {if isset($COMMENT_COUNT)}<li class="{if $ico_mode=="on"}glyphicon glyphicon-comment{/if}{if $def_tab == 'comments'} active{/if}" rel="tab-comment">{if $ico_mode=="off"}{$COMMENT_COUNT|@translate_dec:'%d comment':'%d comments'}{else}&nbsp;{$COMMENT_COUNT}{/if}</li>{/if}
174  {if isset($ppppp_e_mail)}<li class="{if $ico_mode=="on"}glyphicon glyphicon-shopping-cart{/if}{if $def_tab == 'cart'} active{/if}" rel="tab-cart">{if $ico_mode=="off"}{'Cart'|@translate}{/if}</li>{/if}
175  <li id="image-metadata-toggle" class="glyphicon {if $greydragon.p_pict_tab_mode == "txt-tab-close" || $greydragon.p_pict_tab_mode == "ico-tab-close"}glyphicon-chevron-down{else}glyphicon-chevron-up{/if}" ></li>
176</ul>
177{/if}
178{if $greydragon.p_pict_tab_mode !== "hide"}
179<div class="image-metadata-tabs{if $overlay_mode=="on"} overlay{/if}" {if $greydragon.p_pict_tab_mode == "txt-tab-close" || $greydragon.p_pict_tab_mode == "ico-tab-close" || $overlay_mode=="on"}style="display: none;"{/if}> 
180  {if isset( $COMMENT_IMG )}
181  <div id="tab-desc" class="image-metadata-tab">
182    {$COMMENT_IMG}
183  </div>
184  {/if}
185
186  <div id="tab-meta" class="image-metadata-tab">
187    <dl id="standard" class="imageInfoTable dl-horizontal">
188    {strip}
189      {if $display_info.author and isset($INFO_AUTHOR)}
190      <dt id="Author" class="imageInfo">{'Author'|@translate}</dt>
191      <dd>{$INFO_AUTHOR}</dd>
192      {/if}
193      {if $display_info.created_on and isset($INFO_CREATION_DATE)}
194      <dt id="datecreate">{'Created on'|@translate}</dt>
195      <dd>{$INFO_CREATION_DATE}</dd>
196      {/if}
197      {if $display_info.posted_on}
198      <dt id="datepost">{'Posted on'|@translate}</dt>
199      <dd>{$INFO_POSTED_DATE}</dd>
200      {/if}
201      {if $display_info.dimensions and isset($INFO_DIMENSIONS)}
202      <dt id="Dimensions">{'Dimensions'|@translate}</dt>
203      <dd>{$INFO_DIMENSIONS}</dd>
204      {/if}
205      {if $display_info.file}
206      <dt id="File">{'File'|@translate}</dt>
207      <dd>{$INFO_FILE}</dd>
208      {/if}
209      {if $display_info.filesize and isset($INFO_FILESIZE)}
210      <dt id="Filesize">{'Filesize'|@translate}</dt>
211      <dd>{$INFO_FILESIZE}</dd>
212      {/if}
213      {if $display_info.categories and isset($related_categories)}
214      <dt id="Categories">{'Albums'|@translate}</dt>
215      <dd>
216        <ul>
217          {foreach from=$related_categories item=cat}
218          <li>{$cat}</li>
219          {/foreach}
220        </ul>
221      </dd>
222      {/if}
223      {if $display_info.visits}
224      <dt id="Visits">{'Visits'|@translate}</dt>
225      <dd>{$INFO_VISITS}</dd>
226      {/if}
227      {if $display_info.rating_score and isset($rate_summary)}
228      <dt id="Average">{'Rating score'|@translate}</dt>
229      <dd>
230        {if $rate_summary.count}
231        <span id="ratingScore">{$rate_summary.score}</span> <span id="ratingCount">({$rate_summary.count|@translate_dec:'%d rate':'%d rates'})</span>
232        {else}
233        <span id="ratingScore">{'no rate'|@translate}</span> <span id="ratingCount"></span>
234        {/if}
235      </dd>
236      {/if}
237
238      {if isset($rating)}
239      <dt id="rating" >
240        <span id="updateRate">{if isset($rating.USER_RATE)}{'Update your rating'|@translate}{else}{'Rate this photo'|@translate}{/if}</span>
241      </dt>
242      <dd>
243        <form action="{$rating.F_ACTION}" method="post" id="rateForm" style="margin:0;">
244          {foreach from=$rating.marks item=mark name=rate_loop}
245            {if isset($rating.USER_RATE) && $mark==$rating.USER_RATE}
246            <input type="button" name="rate" value="{$mark}" class="rateButtonSelected" title="{$mark}">
247            {else}
248            <input type="submit" name="rate" value="{$mark}" class="rateButton" title="{$mark}">
249            {/if}
250          {/foreach}
251          {strip}{combine_script id='core.scripts' load='async' path='themes/default/js/scripts.js'}
252            {combine_script id='rating' load='async' require='core.scripts' path='themes/default/js/rating.js'}
253            {footer_script}
254              var _pwgRatingAutoQueue = _pwgRatingAutoQueue||[];
255              _pwgRatingAutoQueue.push( {ldelim}rootUrl: '{$ROOT_URL}', image_id: {$current.id},
256                onSuccess : function(rating) {ldelim}
257                  var e = document.getElementById("updateRate");
258                  if (e) e.innerHTML = "{'Update your rating'|@translate|@escape:'javascript'}";
259                  e = document.getElementById("ratingScore");
260                  if (e) e.innerHTML = rating.score;
261                  e = document.getElementById("ratingCount");
262                  if (e) {ldelim}
263                    if (rating.count == 1) {ldelim}
264                      e.innerHTML = "({'%d rate'|@translate|@escape:'javascript'})".replace( "%d", rating.count);
265                    } else {ldelim}
266                      e.innerHTML = "({'%d rates'|@translate|@escape:'javascript'})".replace( "%d", rating.count);
267                    }
268                  {rdelim}
269              {rdelim}{rdelim} );
270            {/footer_script}
271          {/strip}
272        </form>
273      </dd>
274      {/if}
275
276      {if $display_info.privacy_level and isset($available_permission_levels)}
277      <dt id="Privacy">{'Who can see this photo?'|@translate}</dt>
278      <dd>
279        <a id="privacyLevelLink" href>{$available_permission_levels[$current.level]}</a>
280{combine_script id='core.scripts' load='async' path='themes/default/js/scripts.js'}
281{footer_script require='jquery'}{strip}
282  function setPrivacyLevel(id, level){
283    (new PwgWS('{$ROOT_URL}')).callService(
284      "pwg.images.setPrivacyLevel", { image_id:id, level:level},
285        {
286          method: "POST",
287          onFailure: function(num, text) { alert(num + " " + text); },
288          onSuccess: function(result) {
289          jQuery('#privacyLevelBox .switchCheck').css('visibility','hidden');
290          jQuery('#switchLevel'+level).prev('.switchCheck').css('visibility','visible');
291          jQuery('#privacyLevelLink').text(jQuery('#switchLevel'+level).text());
292        }
293      }
294    );
295  }
296  (SwitchBox=window.SwitchBox||[]).push("#privacyLevelLink", "#privacyLevelBox");
297{/strip}{/footer_script}
298        <div id="privacyLevelBox" class="switchBox" style="display:none">
299          {foreach from=$available_permission_levels item=label key=level}
300            <span class="switchCheck"{if $level != $current.level} style="visibility:hidden"{/if}>&#x2714; </span>
301            <a id="switchLevel{$level}" href="javascript:setPrivacyLevel({$current.id},{$level})">{$label}</a><br>
302          {/foreach}
303        </div>
304      </dd>
305      {/if}
306    {/strip}
307    </dl>
308  </div>
309
310  {if isset($metadata)}
311  <div id="tab-exif" class="image-metadata-tab">
312    <dl id="Metadata" class="imageInfoTable dl-horizontal">
313    {foreach from=$metadata item=meta}
314      {foreach from=$meta.lines item=value key=label}
315        <dt>{$label}</dt>
316        <dd>{$value}</dd>
317      {/foreach}
318    {/foreach}
319    </dl>
320  </div>
321  {/if}
322
323  {if ($display_info.tags && (isset($related_tags) || ($greydragon.hasUserTags)))}
324  <div id="tab-tags" class="image-metadata-tab">
325    {if ($greydragon.hasUserTags)}<table id="TagsTable"><tr id="Tags" ><td class="label"></td><td class="value">{/if}
326    {foreach from=$related_tags item=tag name=tag_loop}{if !$smarty.foreach.tag_loop.first}, {/if}<a href="{$tag.URL}">{$tag.name}</a>{/foreach}
327    {if ($greydragon.hasUserTags)}</td></tr></table>{/if}
328  </div>
329  {/if}
330
331  {if isset($COMMENT_COUNT)}
332  <div id="tab-comment" class="image-metadata-tab">
333    <div id="comments" {if (!isset($comment_add) && ($COMMENT_COUNT == 0))}class="noCommentContent"{else}class="commentContent"{/if}>
334      <div id="pictureComments">
335        {if isset($comment_add)}
336        <div id="commentAdd">
337          <h4>{'Add a comment'|@translate}</h4>
338          <form method="post" action="{$comment_add.F_ACTION}" id="addComment">
339            {if $comment_add.SHOW_AUTHOR}
340            <p><label for="author">{'Author'|@translate}{if $comment_add.AUTHOR_MANDATORY} ({'mandatory'|@translate}){/if} :</label></p>
341            <p><input type="text" name="author" id="author" value="{$comment_add.AUTHOR}"></p>
342            {/if}
343            {if $comment_add.SHOW_EMAIL}
344            <p><label for="email">{'Email address'|@translate}{if $comment_add.EMAIL_MANDATORY} ({'mandatory'|@translate}){/if} :</label></p>
345            <p><input type="text" name="email" id="email" value="{$comment_add.EMAIL}"></p>
346            {/if}
347            <p><label for="website_url">{'Website'|@translate} :</label></p>
348            <p><input type="text" name="website_url" id="website_url" value="{$comment_add.WEBSITE_URL}"></p>
349            <p><label for="contentid">{'Comment'|@translate} ({'mandatory'|@translate}) :</label></p>
350            <p><textarea name="content" id="contentid" rows="5" cols="50">{$comment_add.CONTENT}</textarea></p>
351            <p><input type="hidden" name="key" value="{$comment_add.KEY}">
352            <input type="submit" value="{'Submit'|@translate}"></p>
353          </form>
354        </div>
355        {/if}
356        {if isset($comments)}
357        <div id="pictureCommentList">
358          {if (($COMMENT_COUNT > 2) || !empty($navbar))}
359          <div id="pictureCommentNavBar">
360            {if $COMMENT_COUNT > 2}
361            <a href="{$COMMENTS_ORDER_URL}#comments" rel="nofollow" class="commentsOrder">{$COMMENTS_ORDER_TITLE}</a>
362            {/if}
363            {if !empty($navbar) }{include file='navigation_bar.tpl'|@get_extent:'navbar'}{/if}
364          </div>
365          {/if}
366          {include file='comment_list.tpl'}
367        </div>
368        {/if}
369      </div>
370    </div>
371  </div>
372  {/if}
373
374  {if isset($ppppp_e_mail)}
375  <div id="tab-cart" class="image-metadata-tab">
376    {if isset($COMMENT_IMG)}
377    {/if}
378  </div>
379  {/if}
380</div>
381{/if}
382</div>
383{if !empty($PLUGIN_PICTURE_AFTER)}{$PLUGIN_PICTURE_AFTER}{/if}
Note: See TracBrowser for help on using the repository browser.