Changeset 16392
- Timestamp:
- Jul 6, 2012, 1:03:39 PM (12 years ago)
- Location:
- extensions/BatchDownloader
- Files:
-
- 3 added
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
extensions/BatchDownloader/admin.php
r16379 r16392 19 19 // template 20 20 $template->assign(array( 21 'BATCH_DOWNLOAD_PATH' => BATCH_DOWNLOAD_PATH,21 'BATCH_DOWNLOAD_PATH' => BATCH_DOWNLOAD_PATH, 22 22 'BATCH_DOWNLOAD_ADMIN' => BATCH_DOWNLOAD_ADMIN, 23 23 )); -
extensions/BatchDownloader/admin/config.php
r16379 r16392 41 41 $sizes_options['original'] = l10n('Original'); 42 42 43 // max values 44 $conf['batch_download']['max_elements_value'] = isset($conf['batch_download_max_elements']) ? $conf['batch_download_max_elements'] : 1000; 45 $conf['batch_download']['max_size_value'] = isset($conf['batch_download_max_size']) ? $conf['batch_download_max_size'] : 1000; 46 43 47 $template->assign(array( 44 48 'group_options' => $group_options, -
extensions/BatchDownloader/admin/template/config.tpl
r16379 r16392 1 1 {combine_css path=$BATCH_DOWNLOAD_PATH|@cat:"admin/template/style.css"} 2 2 3 {combine_script id='jquery.ui.slider' require='jquery.ui' load='footer' path='themes/default/js/ui/jquery.ui.slider.js'} 4 {combine_css path="themes/default/js/ui/theme/jquery.ui.slider.css"} 3 5 {combine_script id='jquery.chosen' load='footer' path='themes/default/js/plugins/chosen.jquery.min.js'} 4 6 {combine_css path="themes/default/js/plugins/chosen.css"} 5 7 6 {footer_script}{literal} 7 jQuery(document).ready(function() { 8 jQuery(".chzn-select").chosen(); 8 {footer_script} 9 jQuery(".chzn-select").chosen(); 10 11 $("#max_size").slider({ldelim} 12 range: "min", 13 value: {$batch_download.max_size}, 14 min: 10, 15 max: {$batch_download.max_size_value}, 16 slide: function(event, ui) {ldelim} 17 $("input[name='max_size']").val(ui.value); 18 } 9 19 }); 10 {/literal}{/footer_script} 20 $("input[name='max_size']").change(function() {ldelim} 21 $("#max_size").slider("value", $(this).val()); 22 }); 23 24 $("#max_elements").slider({ldelim} 25 range: "min", 26 value: {$batch_download.max_elements}, 27 min: 10, 28 max: {$batch_download.max_elements_value}, 29 slide: function(event, ui) {ldelim} 30 $("input[name='max_elements']").val(ui.value); 31 } 32 }); 33 $("input[name='max_elements']").change(function() {ldelim} 34 $("#max_elements").slider("value", $(this).val()); 35 }); 36 {/footer_script} 11 37 12 38 <div class="titrePage"> 13 <h2> AdvancedDownloader</h2>39 <h2>Batch Downloader</h2> 14 40 </div> 15 41 16 42 <form method="post" action="" class="properties"> 17 43 <fieldset> 18 <legend>{'Download access'|@translate}</legend>44 <legend>{'Download permissions'|@translate}</legend> 19 45 20 46 <ul> 21 47 <li> 22 48 <label> 49 {if $group_options} 23 50 <span class="property">{'User groups'|@translate}</span> 24 51 <select name="groups[]" data-placeholder="{'Everybody'|@translate}" class="chzn-select" multiple="multiple" style="width:370px;"> 25 52 {html_options options=$group_options selected=$batch_download.groups} 26 53 </select> 54 {else} 55 {'There is no group in this gallery.'|@translate} <a href="admin.php?page=group_list">{'Groups management'|@translate}</a> 56 {/if} 27 57 </label> 28 58 </li> … … 39 69 40 70 <fieldset> 41 <legend>{'Archives configuration'|@translate}</legend>71 <legend>{'Archives'|@translate}</legend> 42 72 43 73 <ul> … … 53 83 <li> 54 84 <label> 85 <span class="property">{'Delete unterminated downloads after'|@translate}</span> 86 <input type="text" name="archive_timeout" value="{$batch_download.archive_timeout}" size="3"> {'hours'|@translate} 87 </label> 88 </li> 89 <li> 90 <label> 91 <span class="property">{'Maximum number of photos per download set'|@translate}</span> 92 <div id="max_elements""></div> 93 <input type="text" name="max_elements" value="{$batch_download.max_elements}" size="5"> 94 </label> 95 </li> 96 <li> 97 <label> 98 <span class="property">{'Maximum size of each archive (in Megabytes)'|@translate}</span> 99 <div id="max_size"></div> 100 <input type="text" name="max_size" value="{$batch_download.max_size}" size="5"> 101 </label> 102 </li> 103 <li> 104 <label> 55 105 <span class="property">{'Archive prefix'|@translate}</span> 56 106 <input type="text" name="archive_prefix" value="{$batch_download.archive_prefix}"> … … 59 109 <li> 60 110 <label> 61 <span class="property">{'Archive comment'|@translate}</span> 62 <input type="text" name="archive_comment" value="{$batch_download.archive_comment}" size="80"> 63 </label> 64 </li> 65 <li> 66 <label> 67 <span class="property">{'Delete unterminated downloads after'|@translate}</span> 68 <input type="text" name="archive_timeout" value="{$batch_download.archive_timeout}" size="3">{'hours'|@translate} 69 </label> 70 </li> 71 <li> 72 <label> 73 <span class="property">{'Maximum number if photos in each set'|@translate}</span> 74 <input type="text" name="max_elements" value="{$batch_download.max_elements}" size="3"> 75 </label> 76 </li> 77 <li> 78 <label> 79 <span class="property">{'Maximum size of each archive'|@translate}</span> 80 <input type="text" name="max_size" value="{$batch_download.max_size}" size="4">MB 111 <span class="property">{'Archive comment'|@translate} :</span><br> 112 <textarea name="archive_comment" rows="5" style="width:450px;">{$batch_download.archive_comment}</textarea> 81 113 </label> 82 114 </li> … … 84 116 </fieldset> 85 117 86 <p ><input type="submit" name="save_config" value="{'Save Settings'|@translate}"></p>118 <p class="formButtons"><input type="submit" name="save_config" value="{'Save Settings'|@translate}"></p> 87 119 </form> -
extensions/BatchDownloader/admin/template/sets.tpl
r16379 r16392 2 2 3 3 <div class="titrePage"> 4 <h2> AdvancedDownloader</h2>4 <h2>Batch Downloader</h2> 5 5 </div> 6 6 -
extensions/BatchDownloader/admin/template/style.css
r16379 r16392 2 2 clear:none !important; 3 3 } 4 5 .property { 6 width:auto !important; 7 } 8 9 input[name='max_size'], input[name='max_elements'] { 10 border:none; 11 background:none; 12 font-weight:bold; 13 margin-left:5px; 14 } 15 16 #max_size, #max_elements { 17 display:inline-block; 18 width:300px; 19 } -
extensions/BatchDownloader/include/BatchDownloader.class.php
r16379 r16392 260 260 * createNextArchive 261 261 */ 262 function createNextArchive( )262 function createNextArchive($force_one_archive=false) 263 263 { 264 264 // set already downloaded … … 329 329 330 330 $total_size+= $row['filesize']; 331 if ($total_size >= $this->conf['max_size']*1024 ) break;331 if ($total_size >= $this->conf['max_size']*1024 and !$force_one_archive) break; 332 332 } 333 333 … … 358 358 { 359 359 $this->updateParam('status', 'done'); 360 $this->clear(false); 360 361 } 361 362 … … 417 418 $nb_archives = $this->getEstimatedArchiveNumber(); 418 419 419 $out = ' <ul id="download_list">';420 if ($this->data['status'] == 'done')420 $out = ''; 421 /*if ($this->data['status'] == 'done') 421 422 { 422 423 $out.= '<li id="zip-1">Already downloaded</li>'; 423 } 424 else424 }*/ 425 if (true) 425 426 { 426 427 for ($i=1; $i<=$this->data['nb_zip']; $i++) … … 430 431 if ($i < $this->data['last_zip']+1) 431 432 { 432 $out.= ' Archive #'.$i.' (already downloaded)';433 $out.= '<img src="'.BATCH_DOWNLOAD_PATH.'template/drive.png"> Archive #'.$i.' (already downloaded)'; 433 434 } 434 435 else if ($i == $this->data['last_zip']+1) 435 436 { 436 $out.= '<a href="'.add_url_params($url, array('set_id'=>$this->data['set_id'],'zip'=>$i)).'" rel="nofollow" '437 $out.= '<a href="'.add_url_params($url, array('set_id'=>$this->data['set_id'],'zip'=>$i)).'" rel="nofollow" style="font-weight:bold;"' 437 438 .($i!=1 ? 'onClick="return confirm(\'Starting download Archive #'.$i.' will destroy Archive #'.($i-1).', be sure you finish the download. Continue ?\');"' : null). 438 '> Archive #'.$i.' (ready)</a>';439 '><img src="'.BATCH_DOWNLOAD_PATH.'template/drive_go.png"> Archive #'.$i.' (ready)</a>'; 439 440 } 440 441 else 441 442 { 442 $out.= ' Archive #'.$i.' (pending)';443 $out.= '<img src="'.BATCH_DOWNLOAD_PATH.'template/drive.png"> Archive #'.$i.' (pending)'; 443 444 } 444 445 … … 446 447 } 447 448 } 448 $out.= '</ul>';449 449 450 450 return $out; … … 472 472 $this->data['type'] .'-'. $this->data['type_id'] .'_'. 473 473 $this->data['user_id'] . $this->data['set_id'] .'_'. 474 'part'. $i .'.zip'; 474 ($this->data['nb_zip']!=1 ? 'part'. $i : null). 475 '.zip'; 475 476 } 476 477 … … 505 506 { 506 507 $category = get_cat_info($this->data['type_id']); 507 $set['NAME'] = get_cat_display_name($category['upper_names']);508 $set['sNAME'] = $category['name'];509 $set['COMMENT'] = trigger_ action('render_category_description', $category['comment']);508 $set['NAME'] = l10n('Album').': '.get_cat_display_name($category['upper_names']); 509 $set['sNAME'] = l10n('Album').': '.trigger_event('render_category_name', $category['name']); 510 $set['COMMENT'] = trigger_event('render_category_description', $category['comment']); 510 511 break; 511 512 } … … 532 533 .'</a>'; 533 534 } 535 536 $set['sNAME'] = l10n('Tags').': '.strip_tags($set['COMMENT']); 534 537 break; 535 538 } -
extensions/BatchDownloader/include/download.inc.php
r16379 r16392 15 15 $BatchDownloader = new BatchDownloader($_GET['set_id']); 16 16 17 if ( $BatchDownloader->getParam('status') != 'done')17 if ( isset($_GET['cancel']) ) 18 18 { 19 if (isset($_GET['zip'])) 20 { 21 $BatchDownloader->deleteLastArchive(); 22 $next_file = $BatchDownloader->createNextArchive(); 23 } 24 else 25 { 26 $BatchDownloader->getEstimatedArchiveNumber(); 27 } 19 $BatchDownloader->deleteLastArchive(); 20 $BatchDownloader->clear(); 21 pwg_query('DELETE FROM '.BATCH_DOWNLOAD_TSETS.' WHERE id = '.$_GET['set_id'].';'); 22 $_SESSION['page_infos'][] = l10n('Download set deleted'); 23 redirect('index.php'); 24 } 25 26 if ( isset($_GET['zip']) and $BatchDownloader->getParam('status') != 'done' and $_GET['zip'] > $BatchDownloader->getParam('last_zip') ) 27 { 28 $BatchDownloader->deleteLastArchive(); 29 $next_file = $BatchDownloader->createNextArchive(); 28 30 } 29 31 … … 33 35 { 34 36 $set['U_DOWNLOAD'] = BATCH_DOWNLOAD_PATH . 'download.php?set_id='.$_GET['set_id'].'&zip='.$_GET['zip']; 35 array_push($page['infos'], sprintf(l10n(' Archive #%d is downloading, if the download doesn\'t start automatically please <a href="%s">click here</a>'), $_GET['zip'], $set['U_DOWNLOAD']));37 array_push($page['infos'], sprintf(l10n('The archive is downloading, if the download doesn\'t start automatically please <a href="%s">click here</a>'), $set['U_DOWNLOAD'])); 36 38 } 37 39 38 40 if ($BatchDownloader->getParam('nb_images') > $conf['batch_download']['max_elements']) 39 41 { 40 array_push($page['errors'], sprintf(42 $template->assign('elements_error', sprintf( 41 43 l10n('You choose to download %d pictures, but the system is limited to %d. You can edit the set, or the last %d pictures will not be downloaded.'), 42 44 $BatchDownloader->getParam('nb_images'), … … 44 46 $BatchDownloader->getParam('nb_images') - $conf['batch_download']['max_elements'] 45 47 )); 48 } 49 50 if ($BatchDownloader->getParam('status') == 'new') 51 { 52 $set['U_CANCEL'] = BATCH_DOWNLOAD_PUBLIC . 'init_zip&set_id='.$_GET['set_id'].'&cancel'; 46 53 } 47 54 … … 102 109 } 103 110 111 $template->assign('BATCH_DOWNLOAD_PATH', BATCH_DOWNLOAD_PATH); 112 104 113 105 114 function batch_download_thumbnails_list_prefilter($content, &$smarty) -
extensions/BatchDownloader/include/events.inc.php
r16379 r16392 24 24 25 25 $page['section'] = 'download'; 26 $page['title'] = l10n(' AdvancedDownloader').$conf['level_separator'].' ';26 $page['title'] = l10n('Batch Downloader').$conf['level_separator'].' '; 27 27 28 28 switch (@$tokens[1]) … … 57 57 function batch_download_index_button() 58 58 { 59 global $page, $template, $user ;59 global $page, $template, $user, $conf; 60 60 61 61 if ( !count($page['items']) or !isset($page['section']) ) return; … … 71 71 { 72 72 $BatchDownloader = new BatchDownloader('new', $page['items'], $set['type'], $set['id']); 73 redirect(BATCH_DOWNLOAD_PUBLIC . 'init_zip&set_id='.$BatchDownloader->getParam('set_id')); 73 $BatchDownloader->getEstimatedArchiveNumber(); 74 75 if ( 76 $BatchDownloader->getParam('nb_images') <= $conf['batch_download']['max_elements'] 77 and $BatchDownloader->getParam('nb_zip') == 1 78 ) 79 { 80 $BatchDownloader->createNextArchive(true); 81 82 $u_download = BATCH_DOWNLOAD_PATH . 'download.php?set_id='.$BatchDownloader->getParam('set_id').'&zip=1'; 83 84 $null = null; 85 $template->block_footer_script(null, 'setTimeout("document.location.href = \''.$u_download.'\';", 1000);', $null, $null); 86 87 array_push($page['infos'], sprintf(l10n('The archive is downloading, if the download doesn\'t start automatically please <a href="%s">click here</a>'), $u_download)); 88 } 89 else 90 { 91 redirect(BATCH_DOWNLOAD_PUBLIC . 'init_zip&set_id='.$BatchDownloader->getParam('set_id')); 92 } 74 93 } 75 94 } -
extensions/BatchDownloader/template/init_zip.tpl
r16379 r16392 1 {combine_css path=$BATCH_DOWNLOAD_PATH|@cat:"template/style.css"} 2 1 3 {$MENUBAR} 2 4 … … 18 20 19 21 20 <p> 21 <h3>{$set.NAME}</h3> 22 {if $set.COMMENT}<blockquote>{$set.COMMENT}</blockquote>{/if} 23 <span>{'%d images'|@translate|@sprintf:$set.NB_IMAGES}{if $set.U_EDIT_SET}, <a href="{$set.U_EDIT_SET}" rel="nofollow">{'Edit the set'|@translate}</a>{/if}</span> 24 </p> 22 <fieldset> 23 <legend>{'Download info'|@translate}</legend> 24 <h2>{$set.NAME}</h2> 25 {if $set.COMMENT}<blockquote class="comment">{$set.COMMENT}</blockquote>{/if} 26 27 <ul class="set-infos"> 28 <li class="error">{$elements_error}</li> 29 <li><b>{'%d images'|@translate|@sprintf:$set.NB_IMAGES}</b>{if $set.U_EDIT_SET}, <a href="{$set.U_EDIT_SET}" rel="nofollow">{'Edit the set'|@translate}</a>{/if}</li> 30 <li><b>{'Estimated size'|@translate}:</b> {$set.TOTAL_SIZE} MB</li> 31 <li><b>{'Estimated number of archives'|@translate}:</b> {$set.NB_ARCHIVES} <i>({'real number of archives can differ'|@translate})</i></li> 32 </ul> 33 34 35 </fieldset> 25 36 26 <p>27 <b>{'Estimated size'|@translate}:</b> {$set.TOTAL_SIZE} MB<br>28 <b>{'Estimated number of archives'|@translate}:</b> {$set.NB_ARCHIVES}<br>29 <i>{'These datas are an estimation, real specs can differ'|@translate}</i>30 </p>31 37 32 <p> 33 <b>Download links:</b> 34 {$set.LINKS} 35 </p> 36 37 <p class="infos"> 38 {'<b>Warning:</b> all files will be deleted within %d hours'|@translate|@sprintf:$archive_timeout} 39 </p> 38 <fieldset> 39 <legend>{'Download links'|@translate}</legend> 40 41 <ul class="download-links"> 42 {$set.LINKS} 43 <li class="warning">{'<b>Warning:</b> all files will be deleted within %d hours'|@translate|@sprintf:$archive_timeout}</li> 44 </ul> 45 46 {if $set.U_CANCEL}<a href="{$set.U_CANCEL}" class="cancel-down" onClick="return confirm('{'Are you sure?'|@translate}');">{'Cancel this download'|@translate}</a>{/if} 47 </fieldset> 40 48 41 49 </div>{* <!-- content --> *}
Note: See TracChangeset
for help on using the changeset viewer.