Ignore:
Timestamp:
Nov 13, 2011, 12:34:07 AM (12 years ago)
Author:
mistic100
Message:

rewrite some prefilters, replace CryptograPHP by Securimage (not abandoned project!)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • extensions/CryptograPHP/admin.php

    r11316 r12617  
    22if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');
    33
     4$conf['cryptographp'] = unserialize($conf['cryptographp']);
    45load_language('plugin.lang', CRYPTO_PATH);
    5 $conf['cryptographp_theme'] = explode(',', $conf['cryptographp_theme']);
    66
    77if ( isset($_POST['submit']))
    88{
    9   $conf['cryptographp_theme'] = array(
    10     $_POST['cryptographp_theme'],
    11     $_POST['comments_action'],
     9  $conf['cryptographp'] = array(
     10    'comments_action' => $_POST['comments_action'],
     11    'theme'           => $_POST['theme'],
     12    'captcha_type'    => $_POST['captcha_type'],
     13    'case_sensitive'  => $conf['cryptographp']['case_sensitive'], //not used, problem with some fonts
     14    'width'           => (int)$_POST['width'],
     15    'height'          => (int)$_POST['height'],
     16    'perturbation'    => (float)$_POST['perturbation'],
     17    'image_bg_color'  => $_POST['image_bg_color'],
     18    'code_length'     => (int)$_POST['code_length'],
     19    'text_color'      => $_POST['text_color'],
     20    'num_lines'       => (float)$_POST['num_lines'],
     21    'line_color'      => $_POST['line_color'],
     22    'noise_level'     => (float)$_POST['noise_level'],
     23    'noise_color'     => $_POST['noise_color'],
     24    'ttf_file'        => $_POST['ttf_file'],
    1225    );
    13   conf_update_param('cryptographp_theme', implode(',', $conf['cryptographp_theme']));
     26 
     27  conf_update_param('cryptographp', serialize($conf['cryptographp']));
    1428  array_push($page['infos'], l10n('Information data registered in database'));
    1529}
    1630
    17 $template->set_filename('plugin_admin_content', dirname(__FILE__).'/admin.tpl');
     31$presets = array(
     32  'bluenoise' => array('perturbation'=>0.25, 'image_bg_color'=>'ffffff', 'text_color'=>'0000ff', 'num_lines'=>2, 'line_color'=>'0000ff', 'noise_level'=>2, 'noise_color'=>'0000ff', 'ttf_file'=>'AlteHassGroteskB'),
     33  'gray' => array('perturbation'=>1, 'image_bg_color'=>'ffffff', 'text_color'=>'8a8a8a', 'num_lines'=>2, 'line_color'=>'8a8a8a', 'noise_level'=>0.1, 'noise_color'=>'8a8a8a', 'ttf_file'=>'TopSecret'),
     34  'xcolor' => array('perturbation'=>0.5, 'image_bg_color'=>'ffffff', 'text_color'=>'random', 'num_lines'=>1, 'line_color'=>'ffffff', 'noise_level'=>2, 'noise_color'=>'ffffff', 'ttf_file'=>'Dread'),
     35  'pencil' => array('perturbation'=>0.8, 'image_bg_color'=>'9e9e9e', 'text_color'=>'363636', 'num_lines'=>0, 'line_color'=>'ffffff', 'noise_level'=>0, 'noise_color'=>'ffffff', 'ttf_file'=>'AllStar'),
     36  );
     37 
     38function list_fonts($dir)
     39{
     40  $dir = rtrim($dir, '/');
     41  $dh = opendir($dir);
     42  $fonts = array();
     43 
     44  while (($file = readdir($dh)) !== false )
     45  {
     46    if ($file !== '.' && $file !== '..') $fonts[] = str_replace('.ttf', null, $file);
     47  }
     48 
     49  closedir($dh);
     50  return $fonts;
     51}
     52
     53function presets_to_js($presets)
     54{
     55  $out = null;
     56 
     57  foreach ($presets as $name => $param)
     58  {
     59    $out.= '
     60function apply_'.$name.'() {
     61  $("input[name=perturbation]").val("'.$param['perturbation'].'");
     62  $("input[name=image_bg_color]").val("'.$param['image_bg_color'].'");
     63  $("input[name=text_color]").val("'.$param['text_color'].'");
     64  $("input[name=num_lines]").val("'.$param['num_lines'].'");
     65  $("input[name=line_color]").val("'.$param['line_color'].'");
     66  $("input[name=noise_level]").val("'.$param['noise_level'].'");
     67  $("input[name=noise_color]").val("'.$param['noise_color'].'");
     68  $("input[name=ttf_file]").val(["'.$param['ttf_file'].'"]);
     69
     70}';
     71  }
     72   
     73  return $out;
     74}
     75
     76$template->set_filename('plugin_admin_content', dirname(__FILE__).'/template/admin.tpl');
    1877
    1978$template->assign(array(
    20   'cryptographp_theme' => $conf['cryptographp_theme'][0],
    21   'comments_action' => $conf['cryptographp_theme'][1],
    22   'available_themes' => array('cryptographp', 'bluenoise', 'gray', 'pencil', 'xcolor'),
     79  'crypto' => $conf['cryptographp'],
     80  'fonts' => list_fonts(CRYPTO_PATH.'securimage/fonts'),
     81  'presets' => array_keys($presets),
     82  'PRESETS_FUNC' => presets_to_js($presets),
    2383  'CRYPTO_PATH' => CRYPTO_PATH,
    24   )
    25 );
     84  ));
    2685
    2786$template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content');
Note: See TracChangeset for help on using the changeset viewer.