Verzeichnisstruktur phpBB-3.1.0


Veröffentlicht
27.10.2014

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.92 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 $db, $user, $auth, $template;
057          global $config, $phpbb_root_path, $phpbb_admin_path, $phpEx;
058   
059          $user->add_lang('acp/board');
060   
061          $config_vars = array(
062              'enable_confirm'        => 'REG_ENABLE',
063              'enable_post_confirm'    => 'POST_ENABLE',
064              'confirm_refresh'        => 'CONFIRM_REFRESH',
065              'captcha_gd'            => 'CAPTCHA_GD',
066          );
067   
068          $module->tpl_name = 'captcha_gd_acp';
069          $module->page_title = 'ACP_VC_SETTINGS';
070          $form_key = 'acp_captcha';
071          add_form_key($form_key);
072   
073          $submit = request_var('submit', '');
074   
075          if ($submit && check_form_key($form_key))
076          {
077              $captcha_vars = array_keys($this->captcha_vars);
078              foreach ($captcha_vars as $captcha_var)
079              {
080                  $value = request_var($captcha_var, 0);
081                  if ($value >= 0)
082                  {
083                      set_config($captcha_var, $value);
084                  }
085              }
086   
087              add_log('admin', 'LOG_CONFIG_VISUAL');
088              trigger_error($user->lang['CONFIG_UPDATED'] . adm_back_link($module->u_action));
089          }
090          else if ($submit)
091          {
092              trigger_error($user->lang['FORM_INVALID'] . adm_back_link($module->u_action));
093          }
094          else
095          {
096              foreach ($this->captcha_vars as $captcha_var => $template_var)
097              {
098                  $var = (isset($_REQUEST[$captcha_var])) ? request_var($captcha_var, 0) : $config[$captcha_var];
099                  $template->assign_var($template_var, $var);
100              }
101   
102              $template->assign_vars(array(
103                  'CAPTCHA_PREVIEW'    => $this->get_demo_template($id),
104                  'CAPTCHA_NAME'        => $this->get_service_name(),
105                  'U_ACTION'            => $module->u_action,
106              ));
107          }
108      }
109   
110      function execute_demo()
111      {
112          global $config;
113   
114          $config_old = $config;
115   
116          $config = new \phpbb\config\config(array());
117          foreach ($config_old as $key => $value)
118          {
119              $config->set($key, $value);
120          }
121   
122          foreach ($this->captcha_vars as $captcha_var => $template_var)
123          {
124              $config->set($captcha_var, request_var($captcha_var, (int) $config[$captcha_var]));
125          }
126          parent::execute_demo();
127          $config = $config_old;
128      }
129   
130  }
131