Changeset 21212 for extensions/Back2Front
- Timestamp:
- Mar 5, 2013, 4:53:11 PM (11 years ago)
- Location:
- extensions/Back2Front
- Files:
-
- 1 deleted
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
extensions/Back2Front/Back2Front.php
r14963 r21212 7 7 * Add verso link on picture page 8 8 */ 9 function Back2Front_picture_content($content, $ image)9 function Back2Front_picture_content($content, $element_info) 10 10 { 11 11 global $template, $user, $conf; … … 13 13 /* search for a verso picture */ 14 14 $query = " 15 SELECT 16 i.id, 17 i.path, 18 i.has_high, 19 i.width, 20 i.height 15 SELECT i.* 21 16 FROM ".IMAGES_TABLE." as i 22 17 INNER JOIN ".B2F_TABLE." as v 23 18 ON i.id = v.verso_id 24 WHERE 25 v.image_id = ".$image['id']." 19 AND v.image_id = ".$element_info['id']." 26 20 ;"; 27 21 $result = pwg_query($query); … … 31 25 $verso = pwg_db_fetch_assoc($result); 32 26 $conf['back2front'] = explode(',',$conf['back2front']); 27 $deriv_type = pwg_get_session_var('picture_deriv', $conf['derivative_default_size']); 28 29 $verso['src_image'] = new SrcImage($verso); 30 $verso['derivatives'] = DerivativeImage::get_all($verso['src_image']); 31 $verso['element_path'] = get_element_path($verso); 32 $verso['selected_derivative'] = $verso['derivatives'][$deriv_type]; 33 33 34 34 /* websize picture */ 35 35 $template->assign(array( 36 36 'B2F_PATH' => B2F_PATH, 37 ' VERSO_URL' => $verso['path'],37 'verso' => $verso, 38 38 )); 39 39 … … 41 41 if (is_admin()) 42 42 { 43 $template->assign('VERSO_U_ADMIN', get_root_url().'admin.php?page=p icture_modify&image_id='.$verso['id']);43 $template->assign('VERSO_U_ADMIN', get_root_url().'admin.php?page=photo-'.$verso['id']); 44 44 $template->set_filename('B2F_admin_button', dirname(__FILE__).'/template/admin_button.tpl'); 45 45 $template->concat('PLUGIN_PICTURE_ACTIONS', $template->parse('B2F_admin_button', true)); 46 }47 48 /* high picture */49 if ($verso['has_high'])50 {51 $template->assign('VERSO_HD', get_high_url($verso));52 46 } 53 47 … … 80 74 $conf['back2front'][4] = array(l10n('See back'), l10n('See front')); 81 75 } 76 77 if ($conf['back2front'][2] == 'fade' and $conf['back2front'][3] == 'bottom') 78 { 79 $conf['back2front'][3] = 'top'; 80 } 81 82 82 83 83 /* template & output */ … … 116 116 global $page, $template, $conf; 117 117 118 if ($page['page'] != 'picture_modify') return; 118 if ($page['page'] != 'photo') return; 119 if (isset($_GET['tab']) && $_GET['tab']!='properties') return; 120 121 119 122 $conf['back2front'] = explode(',',$conf['back2front']); 120 123 … … 164 167 { 165 168 $recto_current_verso['id'] = $all_recto_verso[$_POST['b2f_front_id']]; 166 $recto_current_verso['link'] = get_root_url().'admin.php?page=p icture_modify&image_id='.$recto_current_verso['id'];169 $recto_current_verso['link'] = get_root_url().'admin.php?page=photo-'.$recto_current_verso['id']; 167 170 array_push( 168 171 $page['errors'], … … 236 239 237 240 $verso['id'] = $_POST['b2f_front_id']; 238 $verso['link'] = get_root_url().'admin.php?page=p icture_modify&image_id='.$verso['id'];241 $verso['link'] = get_root_url().'admin.php?page=photo-'.$verso['id']; 239 242 array_push($page['infos'], l10n_args(get_l10n_args('This picture is now the backside of the picture n°%s', '<a href="'.$verso['link'].'">'.$verso['id'].'</a>'))); 240 243 } … … 300 303 $template->assign(array( 301 304 'B2F_VERSO_ID' => $item['verso_id'], 302 'B2F_VERSO_URL' => get_root_url().'admin.php?page=p icture_modify&image_id='.$item['verso_id'],305 'B2F_VERSO_URL' => get_root_url().'admin.php?page=photo-'.$item['verso_id'], 303 306 )); 304 307 } … … 312 315 function Back2front_picture_modify_prefilter($content, &$smarty) 313 316 { 314 $search = '< form id="associations"';315 $replacement = file_get_contents(B2F_PATH.'template/picture_modify.tpl')."\n".$search;317 $search = '</form>'; 318 $replacement = $search."\n\n".file_get_contents(B2F_PATH.'template/picture_modify.tpl'); 316 319 return str_replace($search, $replacement, $content); 317 320 } … … 321 324 * Add mark on thumbnails list 322 325 */ 323 function Back2Front_thumbnails($tpl_thumbnails_var , $pictures)326 function Back2Front_thumbnails($tpl_thumbnails_var) 324 327 { 325 global $conf ;328 global $conf, $selection; 326 329 327 330 $conf['back2front'] = explode(',',$conf['back2front']); 328 331 if (!$conf['back2front'][5]) return $tpl_thumbnails_var; 329 if (empty($pictures)) return $tpl_thumbnails_var; 330 331 $ids = array(); 332 foreach ($pictures as $row) 333 { 334 array_push($ids, $row['id']); 335 } 332 if (empty($tpl_thumbnails_var)) return $tpl_thumbnails_var; 336 333 337 334 /* has the pictures a verso ? */ 338 $query = "SELECT image_id , verso_id335 $query = "SELECT image_id 339 336 FROM ".B2F_TABLE." 340 WHERE image_id IN(".implode(',', $ ids).");";341 $ result = hash_from_query($query, 'image_id');342 343 $ ids = array_keys($result);337 WHERE image_id IN(".implode(',', $selection).");"; 338 $ids = array_from_query($query, 'image_id'); 339 340 $root_path = get_absolute_root_url(); 344 341 345 342 foreach($tpl_thumbnails_var as &$tpl_var) 346 343 { 347 if (in_array($tpl_var[' ID'], $ids))348 { 349 $tpl_var['NAME'].= ' <img class="has_verso" src="'. B2F_PATH.'template/rotate_1.png" title="'.l10n('This picture has a backside :').'"/>';344 if (in_array($tpl_var['id'], $ids)) 345 { 346 $tpl_var['NAME'].= ' <img class="has_verso" src="'.$root_path.B2F_PATH.'template/rotate_1.png" title="'.l10n('This picture has a backside :').'"/>'; 350 347 } 351 348 } -
extensions/Back2Front/main.inc.php
r12361 r21212 21 21 if (script_basename() == 'picture') 22 22 { 23 add_event_handler('render_element_content', 'Back2Front_picture_content', 99, 2);23 add_event_handler('render_element_content', 'Back2Front_picture_content', EVENT_HANDLER_PRIORITY_NEUTRAL+20, 2); 24 24 } 25 25 26 26 if (script_basename() == 'index') 27 27 { 28 add_event_handler('loc_end_index_thumbnails', 'Back2Front_thumbnails' , 99, 2);28 add_event_handler('loc_end_index_thumbnails', 'Back2Front_thumbnails'); 29 29 } 30 30 -
extensions/Back2Front/template/admin_button.tpl
r12361 r21212 1 {strip}<a href="{$VERSO_U_ADMIN}" title="{'Modify backside information'|@translate}" class="pwg-state-default pwg-button" rel="nofollow"> 2 <img src="{$B2F_PATH}template/rotate_edit.png"/><span class="pwg-button-text">{'edit'|@translate}</span> 3 </a>{/strip} 1 {strip}{if isset($VERSO_U_ADMIN)} 2 <a href="{$VERSO_U_ADMIN}" title="{'Modify backside information'|@translate}" class="pwg-state-default pwg-button" rel="nofollow"> 3 <span class="pwg-icon pwg-icon-edit"> </span><span class="pwg-button-text">{'Edit'|@translate}</span> 4 </a> 5 {/if}{/strip} -
extensions/Back2Front/template/picture_content.tpl
r12363 r21212 1 1 {combine_css path=$B2F_PATH|@cat:"template/style.css"} 2 {combine_script id="jquery" load="header" path = "themes/default/js/jquery.min.js"} 2 3 {if !$verso.selected_derivative->is_cached() && $current.selected_derivative->is_cached} 4 {combine_script id='jquery.ajaxmanager' path='themes/default/js/plugins/jquery.ajaxmanager.js' load='footer'} 5 {combine_script id='thumbnails.loader' path='themes/default/js/thumbnails.loader.js' require='jquery.ajaxmanager' load='footer'} 6 {footer_script}var error_icon = "{$ROOT_URL}{$themeconf.icon_dir}/errors_small.png"{/footer_script} 7 {/if} 8 9 10 {if $b2f_position != "toolbar"}<div>{/if} 11 <a class="reverse" data-what="front" rel="nofollow" class="pwg-state-default pwg-button" title="{$b2f_see_back}" {if $b2f_position == "toolbar"}style="border:none !important;"{/if}> 12 <img src="{$ROOT_URL}{$B2F_PATH}template/rotate_1.png"/> {$b2f_see_back} 13 </a> 14 {if $b2f_position != "toolbar"}</div>{/if} 15 16 <img {if $verso.selected_derivative->is_cached()}src="{$verso.selected_derivative->get_url()}" {$verso.selected_derivative->get_size_htm()}{else}src="{$ROOT_URL}{$themeconf.img_dir}/ajax_loader.gif" data-src="{$verso.selected_derivative->get_url()}"{/if} alt="{$ALT_IMG}" id="theVersoImage" usemap="#map{$current.selected_derivative->get_type()}" title="{if isset($COMMENT_IMG)}{$COMMENT_IMG|@strip_tags:false|@replace:'"':' '}{else}{$current.TITLE|@replace:'"':' '} - {$ALT_IMG}{/if}"> 17 3 18 4 19 {footer_script require="jquery"} 5 jQuery(document).ready(function () {ldelim} 20 jQuery("#derivativeSwitchLink").hide(); 21 jQuery(".reverse").css("display", "inline-block"); 22 jQuery("img#theVersoImage").insertAfter(jQuery("img#theMainImage")); 6 23 7 {if $b2f_switch_mode == 'click'}8 jQuery( '.reverse').click(function() {ldelim}9 if (jQuery(this). attr('rel') == 'front') {ldelim}24 {if $b2f_switch_mode == "click"} 25 jQuery(".reverse").click(function() {ldelim} 26 if (jQuery(this).data("what") == "front") {ldelim} 10 27 {else} 11 jQuery( '.reverse').hover(function() {ldelim}28 jQuery(".reverse").hover(function() {ldelim} 12 29 {/if} 13 30 14 /* picture switch */ 15 {if $b2f_transition == 'fade'} 16 jQuery('img#theMainImage').animate({ldelim} 17 opacity:0 18 }, 400, function() {ldelim} 19 jQuery(this).attr({ldelim} 20 src: '{$VERSO_URL}', 21 style: 'max-width:{$WIDTH_IMG}px;max-height:{$HEIGHT_IMG}px;', 22 }); 23 jQuery(this).animate({ldelim} 24 opacity:1 25 }, 400); 31 $("img#theVersoImage").hide(); 32 33 {if $b2f_transition == "fade"} 34 $("img#theMainImage").fadeOut(400, function() {ldelim} 35 $("img#theVersoImage").fadeIn(400); 26 36 }); 27 37 {else} 28 jQuery('img#theMainImage').attr({ldelim} 29 src: '{$VERSO_URL}', 30 style: 'max-width:{$WIDTH_IMG}px;max-height:{$HEIGHT_IMG}px;', 31 }); 38 $("img#theMainImage").hide(); 39 $("img#theVersoImage").show(); 32 40 {/if} 33 41 34 {if $b2f_switch_mode == 'click'} 35 /* hd link */ 36 {if isset($VERSO_HD)} 37 jQuery('img#theMainImage').parent('a').attr({ldelim} 38 href: "javascript:phpWGOpenWindow('{$VERSO_HD}','{$high.UUID}','scrollbars=yes,toolbar=no,status=no,resizable=yes')" 39 }); 40 {/if} 41 42 /* B2F link content */ 43 jQuery(this).html('<img src="{$B2F_PATH}template/rotate_2.png"/> {$b2f_see_front}'); 44 jQuery(this).attr('rel', 'back'); 45 {/if} 46 47 {if $b2f_switch_mode == 'click'} 48 } else if (jQuery(this).attr('rel') == 'back') {ldelim} 42 $(this).data("what", "back"); 43 $(this).html('<img src="{$ROOT_URL}{$B2F_PATH}template/rotate_2.png"/> {$b2f_see_front}'); 44 45 {if $b2f_switch_mode == "click"} 46 } else if (jQuery(this).data("what") == "back") {ldelim} 49 47 {else} 50 48 }, function() {ldelim} 51 49 {/if} 52 53 /* picture switch */ 54 {if $b2f_transition == 'fade'} 55 jQuery('img#theMainImage').animate({ldelim} 56 opacity:0 57 }, 400, function() {ldelim} 58 jQuery(this).attr({ldelim} 59 src: '{$SRC_IMG}', 60 style: 'width:{$WIDTH_IMG}px;height:{$HEIGHT_IMG}px;', 61 }); 62 jQuery(this).animate({ldelim} 63 opacity:1 64 }, 400); 50 51 $("img#theMainImage").hide(); 52 53 {if $b2f_transition == "fade"} 54 $("img#theVersoImage").fadeOut(400, function() {ldelim} 55 $("img#theMainImage").fadeIn(400); 65 56 }); 66 57 {else} 67 jQuery('img#theMainImage').attr({ldelim} 68 src: '{$SRC_IMG}', 69 style: 'width:{$WIDTH_IMG}px;height:{$HEIGHT_IMG}px;', 70 }); 58 $("img#theVersoImage").hide(); 59 $("img#theMainImage").show(); 71 60 {/if} 72 73 {if $b2f_switch_mode == 'click'} 74 /* hd link */ 75 {if isset($high.U_HIGH)} 76 jQuery('img#theMainImage').parent('a').attr({ldelim} 77 href: "javascript:phpWGOpenWindow('{$high.U_HIGH}','{$high.UUID}','scrollbars=yes,toolbar=no,status=no,resizable=yes')" 78 }); 79 {/if} 80 81 /* B2F link content */ 82 jQuery(this).html('<img src="{$B2F_PATH}template/rotate_1.png"/> {$b2f_see_back}'); 83 jQuery(this).attr('rel', 'front'); 84 {/if} 85 86 {if $b2f_switch_mode == 'click'} 61 62 $(this).data("what", "front"); 63 $(this).html('<img src="{$ROOT_URL}{$B2F_PATH}template/rotate_1.png"/> {$b2f_see_back}'); 64 65 {if $b2f_switch_mode == "click"} 87 66 } 88 67 }); … … 90 69 }); 91 70 {/if} 92 93 });94 71 {/footer_script} 95 96 <img src="{$VERSO_URL}" style="display:none;"/> {* <!-- force preload the verso --> *}97 98 {if $b2f_position != 'toolbar'}<div>{/if}99 <a class="reverse" rel="front" class="pwg-state-default pwg-button" title="{$b2f_see_back}" {if $b2f_position == 'toolbar'}style="border:none !important;"{/if}100 {if $b2f_switch_mode == 'hover' and isset($VERSO_HD)}href="javascript:phpWGOpenWindow('{$VERSO_HD}','{$high.UUID}','scrollbars=yes,toolbar=no,status=no,resizable=yes')"{/if}>101 <img src="{$B2F_PATH}template/rotate_1.png"/> {$b2f_see_back}102 </a>103 {if $b2f_position != 'toolbar'}</div>{/if} -
extensions/Back2Front/template/picture_modify.tpl
r10852 r21212 17 17 <tr> 18 18 <td><b>{'This picture has a backside :'|@translate}</b></td> 19 <td><a href="{$B2F_VERSO_URL}"> {$B2F_VERSO_ID}</a></td>19 <td><a href="{$B2F_VERSO_URL}">#{$B2F_VERSO_ID}</a></td> 20 20 </tr> 21 21 </table> -
extensions/Back2Front/template/style.css
r12361 r21212 1 1 a.reverse { 2 display: inline-block;2 display:none; 3 3 border:1px solid #666 !important; 4 4 padding:5px 5px; 5 5 margin-bottom:10px; 6 6 font-size:15px; 7 font-style:italic; 7 font-style:italic; 8 cursor:pointer; 8 9 } 9 10 a.reverse img { 10 11 vertical-align:top; 11 12 } 13 14 #theVersoImage { 15 display:none; 16 } 17 18 12 19 .lang_help { 13 20 display:inline-block;
Note: See TracChangeset
for help on using the changeset viewer.