Verzeichnisstruktur phpBB-3.2.0


Veröffentlicht
06.01.2017

So funktioniert es


Auf das letzte Element klicken. Dies geht jeweils ein Schritt zurück

Auf das Icon klicken, dies öffnet das Verzeichnis. Nochmal klicken schließt das Verzeichnis.
Auf den Verzeichnisnamen klicken, dies zeigt nur das Verzeichnis mit Inhalt an

(Beispiel Datei-Icons)

Auf das Icon klicken um den Quellcode anzuzeigen

gd.php

Zuletzt modifiziert: 09.10.2024, 12:54 - Dateigröße: 2.78 KiB


001  <?php
002  /**
003  *
004  * This file is part of the phpBB Forum Software package.
005  *
006  * @copyright (c) phpBB Limited <https://www.phpbb.com>
007  * @license GNU General Public License, version 2 (GPL-2.0)
008  *
009  * For full copyright and license information, please see
010  * the docs/CREDITS.txt file.
011  *
012  */
013   
014  namespace phpbb\captcha\plugins;
015   
016  class gd extends captcha_abstract
017  {
018      var $captcha_vars = array(
019          'captcha_gd_x_grid'                => 'CAPTCHA_GD_X_GRID',
020          'captcha_gd_y_grid'                => 'CAPTCHA_GD_Y_GRID',
021          'captcha_gd_foreground_noise'    => 'CAPTCHA_GD_FOREGROUND_NOISE',
022  //        'captcha_gd'                    => 'CAPTCHA_GD_PREVIEWED',
023          'captcha_gd_wave'                => 'CAPTCHA_GD_WAVE',
024          'captcha_gd_3d_noise'            => 'CAPTCHA_GD_3D_NOISE',
025          'captcha_gd_fonts'                => 'CAPTCHA_GD_FONTS',
026      );
027   
028      public function is_available()
029      {
030          return @extension_loaded('gd');
031      }
032   
033      /**
034      * @return string the name of the class used to generate the captcha
035      */
036      function get_generator_class()
037      {
038          return '\\phpbb\\captcha\\gd';
039      }
040   
041      /**
042      *  API function
043      */
044      function has_config()
045      {
046          return true;
047      }
048   
049      public function get_name()
050      {
051          return 'CAPTCHA_GD';
052      }
053   
054      function acp_page($id, &$module)
055      {
056          global $user, $template, $phpbb_log, $request;
057          global $config;
058   
059          $user->add_lang('acp/board');
060   
061          $module->tpl_name = 'captcha_gd_acp';
062          $module->page_title = 'ACP_VC_SETTINGS';
063          $form_key = 'acp_captcha';
064          add_form_key($form_key);
065   
066          $submit = $request->variable('submit', '');
067   
068          if ($submit && check_form_key($form_key))
069          {
070              $captcha_vars = array_keys($this->captcha_vars);
071              foreach ($captcha_vars as $captcha_var)
072              {
073                  $value = $request->variable($captcha_var, 0);
074                  if ($value >= 0)
075                  {
076                      $config->set($captcha_var, $value);
077                  }
078              }
079   
080              $phpbb_log->add('admin', $user->data['user_id'], $user->ip, 'LOG_CONFIG_VISUAL');
081              trigger_error($user->lang['CONFIG_UPDATED'] . adm_back_link($module->u_action));
082          }
083          else if ($submit)
084          {
085              trigger_error($user->lang['FORM_INVALID'] . adm_back_link($module->u_action));
086          }
087          else
088          {
089              foreach ($this->captcha_vars as $captcha_var => $template_var)
090              {
091                  $var = (isset($_REQUEST[$captcha_var])) ? $request->variable($captcha_var, 0) : $config[$captcha_var];
092                  $template->assign_var($template_var, $var);
093              }
094   
095              $template->assign_vars(array(
096                  'CAPTCHA_PREVIEW'    => $this->get_demo_template($id),
097                  'CAPTCHA_NAME'        => $this->get_service_name(),
098                  'U_ACTION'            => $module->u_action,
099              ));
100          }
101      }
102   
103      function execute_demo()
104      {
105          global $config, $request;
106   
107          $config_old = $config;
108   
109          $config = new \phpbb\config\config(array());
110          foreach ($config_old as $key => $value)
111          {
112              $config->set($key, $value);
113          }
114   
115          foreach ($this->captcha_vars as $captcha_var => $template_var)
116          {
117              $config->set($captcha_var, $request->variable($captcha_var, (int) $config[$captcha_var]));
118          }
119          parent::execute_demo();
120          $config = $config_old;
121      }
122   
123  }
124