source: extensions/regenerateThumbnails/element_set_global_action.php @ 9937

Last change on this file since 9937 was 9937, checked in by patdenice, 13 years ago

Remove "all photos" language key.
Move prefilter to element_set_global_action.php file.

File size: 3.3 KB
Line 
1<?php
2
3if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');
4check_status(ACCESS_ADMINISTRATOR);
5
6function regenerate_prefilter($content, $smarty)
7{
8  return str_replace('{$thumbnail.TN_SRC}', '{$thumbnail.TN_SRC}?rand='.md5(uniqid(rand(), true)), $content);
9}
10
11global $template, $conf, $page, $pwg_loaded_plugins;
12
13load_language('plugin.lang', REGENERATE_THUMBNAILS_PATH);
14include_once(PHPWG_ROOT_PATH.'admin/include/functions_upload.inc.php');
15$upload_form_config = get_upload_form_config();
16
17$template->set_filename('regenerateThumbnails', realpath(REGENERATE_THUMBNAILS_PATH.'element_set_global_action.tpl'));
18
19if (isset($_POST['submit']) and $_POST['selectAction'] == 'regenerateThumbnails')
20{
21  if ($_POST['regenerateThumbnailsSuccess'] != '0')
22    array_push($page['infos'], sprintf(l10n('%s thumbnails have been regenerated'), $_POST['regenerateThumbnailsSuccess']));
23
24  if ($_POST['regenerateThumbnailsError'] != '0')
25    array_push($page['warnings'], sprintf(l10n('%s thumbnails can not be regenerated'), $_POST['regenerateThumbnailsError']));
26
27  // Update configuration
28  $fields = array('thumb_maxwidth', 'thumb_maxheight', 'thumb_quality');
29  foreach ($fields as $field)
30  {
31    if (!isset($upload_form_config[$field]))
32    {
33      continue;
34    }
35    $value = null;
36    if (!empty($_POST[$field]))
37    {
38      $value = $_POST[$field];
39    }
40
41    $min = $upload_form_config[$field]['min'];
42    $max = $upload_form_config[$field]['max'];
43    $pattern = $upload_form_config[$field]['pattern'];
44
45    if (preg_match($pattern, $value) and $value >= $min and $value <= $max)
46    {
47      $conf['upload_form_'.$field] = $value;
48       $updates[] = array(
49        'param' => 'upload_form_'.$field,
50        'value' => $value
51        );
52    }
53    else
54    {
55      array_push(
56        $page['errors'],
57        sprintf(
58          $upload_form_config[$field]['error_message'],
59          $min,
60          $max
61          )
62        );
63    }
64    $form_values[$field] = $value;
65  }
66  if (count($page['errors']) == 0)
67  {
68    mass_updates(
69      CONFIG_TABLE,
70      array(
71        'primary' => array('param'),
72        'update' => array('value')
73        ),
74      $updates
75      );
76  }
77
78  if (isset($pwg_loaded_plugins['square_thumbnails']))
79  {
80    $conf['upload_form_thumb_square'] = isset($_POST['square']);
81    conf_update_param('upload_form_thumb_square', $conf['upload_form_thumb_square']);
82  }
83
84  $template->delete_compiled_templates();
85}
86
87foreach ($upload_form_config as $param_shortname => $param)
88{
89  $param_name = 'upload_form_'.$param_shortname;
90  $form_values[$param_shortname] = $conf[$param_name];
91}
92
93if (isset($pwg_loaded_plugins['square_thumbnails']))
94{
95  load_language('plugin.lang', SQUARE_THUMB_PATH);
96  $template->assign(array('SQUARE' => @$conf['upload_form_thumb_square']));
97}
98
99$redirect_url = get_root_url().'admin.php?page='.$_GET['page'];
100if ($_GET['page'] == 'plugin')
101  $redirect_url .= '-regenerateThumbnails';
102
103$template->assign(array(
104  'upload_form_settings' => $form_values,
105  'all_elements' => $page['cat_elements_id'],
106  'redirect_url' => $redirect_url,
107  )
108);
109
110$template->append('element_set_global_plugins_actions', array(
111  'ID' => 'regenerateThumbnails',
112  'NAME' => l10n('Regenerate Thumbnails'),
113  'CONTENT' => $template->parse('regenerateThumbnails', true),
114  )
115);
116
117$template->set_prefilter('batch_manager_global', 'regenerate_prefilter');
118
119?>
Note: See TracBrowser for help on using the repository browser.