Skip to content

Commit

Permalink
Merge pull request #3136 from emanuele45/verifications_again
Browse files Browse the repository at this point in the history
Verifications again
  • Loading branch information
Spuds committed Jul 16, 2018
2 parents fb7a61b + 11b980e commit b904019
Show file tree
Hide file tree
Showing 19 changed files with 1,411 additions and 1,137 deletions.
2 changes: 1 addition & 1 deletion install/install_1-1.php
Expand Up @@ -2668,7 +2668,7 @@ public function insert_settings()
array('badbehavior_url_wl', 'a:1:{i:0;s:18:"/subscriptions.php";}'),
array('badbehavior_url_wl_desc', 'a:1:{i:0;s:15:"Payment Gateway";}'),
array('notification_methods', 'a:4:{s:5:"buddy";a:4:{s:12:"notification";s:1:"1";s:5:"email";s:1:"1";s:11:"email_daily";s:1:"1";s:12:"email_weekly";s:1:"1";}s:7:"likemsg";a:1:{s:12:"notification";s:1:"1";}s:10:"mentionmem";a:4:{s:12:"notification";s:1:"1";s:5:"email";s:1:"1";s:11:"email_daily";s:1:"1";s:12:"email_weekly";s:1:"1";}s:9:"quotedmem";a:4:{s:12:"notification";s:1:"1";s:5:"email";s:1:"1";s:11:"email_daily";s:1:"1";s:12:"email_weekly";s:1:"1";}}'),
array('autoload_integrate', 'User_Notification_Integrate,Ila_Integrate'),
array('autoload_integrate', 'User_Notification_Integrate,Ila_Integrate,VerificationControls_Integrate'),
array('usernotif_favicon_bgColor', '#ff0000'),
array('usernotif_favicon_position', 'up'),
array('usernotif_favicon_textColor', '#ffff00'),
Expand Down
3 changes: 0 additions & 3 deletions sources/Autoloader.class.php
Expand Up @@ -325,9 +325,6 @@ private function _handle_basic_cases()
{
switch ($this->_givenname)
{
case 'VerificationControls':
$this->_file_name = SUBSDIR . '/VerificationControls.class.php';
break;
case 'AdminSettings':
$this->_file_name = SUBSDIR . '/AdminSettingsSearch.class.php';
break;
Expand Down
2 changes: 1 addition & 1 deletion sources/Load.php
Expand Up @@ -1588,7 +1588,7 @@ function addJavascriptVar($vars, $escape = false)
*/
function addInlineJavascript($javascript, $defer = false)
{
Errors::instance()->log_deprecated('addInlineJavascript()', 'theme()->getTemplates()->addInlineJavascript().');
Errors::instance()->log_deprecated('addInlineJavascript()', 'theme()->addInlineJavascript().');
theme()->addInlineJavascript($javascript, $defer);
}

Expand Down
14 changes: 0 additions & 14 deletions sources/admin/ManageSecurity.controller.php
Expand Up @@ -432,20 +432,6 @@ private function _spamSettings()
if (!$modSettings['postmod_active'])
unset($config_vars['moderate']);

require_once(SUBSDIR . '/VerificationControls.class.php');
$known_verifications = loadVerificationControls();

foreach ($known_verifications as $verification)
{
$class_name = 'Verification_Controls_' . ucfirst($verification);
$current_instance = new $class_name();

$new_settings = $current_instance->settings();
if (!empty($new_settings) && is_array($new_settings))
foreach ($new_settings as $new_setting)
$config_vars[] = $new_setting;
}

// @todo: it may be removed, it may stay, the two hooks may have different functions
call_integration_hook('integrate_spam_settings', array(&$config_vars));

Expand Down
6 changes: 2 additions & 4 deletions sources/controllers/Emailuser.controller.php
Expand Up @@ -477,11 +477,10 @@ public function action_reporttm()
$context['require_verification'] = $user_info['is_guest'] && !empty($modSettings['guests_report_require_captcha']);
if ($context['require_verification'])
{
require_once(SUBSDIR . '/VerificationControls.class.php');
$verificationOptions = array(
'id' => 'report',
);
$context['require_verification'] = create_control_verification($verificationOptions);
$context['require_verification'] = VerificationControls_Integrate::create($verificationOptions);
$context['visual_verification_id'] = $verificationOptions['id'];
}

Expand Down Expand Up @@ -567,11 +566,10 @@ public function action_reporttm2()
// Could they get the right verification code?
if ($user_info['is_guest'] && !empty($modSettings['guests_report_require_captcha']))
{
require_once(SUBSDIR . '/VerificationControls.class.php');
$verificationOptions = array(
'id' => 'report',
);
$context['require_verification'] = create_control_verification($verificationOptions, true);
$context['require_verification'] = VerificationControls_Integrate::create($verificationOptions, true);

if (is_array($context['require_verification']))
{
Expand Down
3 changes: 1 addition & 2 deletions sources/controllers/PersonalMessage.controller.php
Expand Up @@ -1396,11 +1396,10 @@ public function messagePostError($named_recipients, $recipient_ids = array(), $m
$context['require_verification'] = !$user_info['is_admin'] && !empty($modSettings['pm_posts_verification']) && $user_info['posts'] < $modSettings['pm_posts_verification'];
if ($context['require_verification'] && !isset($this->_req->query->xml))
{
require_once(SUBSDIR . '/VerificationControls.class.php');
$verificationOptions = array(
'id' => 'pm',
);
$context['require_verification'] = create_control_verification($verificationOptions);
$context['require_verification'] = VerificationControls_Integrate::create($verificationOptions);
$context['visual_verification_id'] = $verificationOptions['id'];
}

Expand Down
6 changes: 2 additions & 4 deletions sources/controllers/Search.controller.php
Expand Up @@ -149,12 +149,11 @@ public function action_search()
if ($context['require_verification'])
{
// Build a verification control for the form
require_once(SUBSDIR . '/VerificationControls.class.php');
$verificationOptions = array(
'id' => 'search',
);

$context['require_verification'] = create_control_verification($verificationOptions);
$context['require_verification'] = VerificationControls_Integrate::create($verificationOptions);
$context['visual_verification_id'] = $verificationOptions['id'];
}

Expand Down Expand Up @@ -364,11 +363,10 @@ public function action_results()
$context['search_errors']['need_verification_code'] = true;
else
{
require_once(SUBSDIR . '/VerificationControls.class.php');
$verificationOptions = array(
'id' => 'search',
);
$context['require_verification'] = create_control_verification($verificationOptions, true);
$context['require_verification'] = VerificationControls_Integrate::create($verificationOptions, true);

if (is_array($context['require_verification']))
{
Expand Down
Expand Up @@ -47,11 +47,10 @@ public function topicinfo()
global $context;

// Do we need to show the visual verification image?
require_once(SUBSDIR . '/VerificationControls.class.php');
$verificationOptions = array(
'id' => 'post',
);
$context['require_verification'] = create_control_verification($verificationOptions);
$context['require_verification'] = VerificationControls_Integrate::create($verificationOptions);
$context['visual_verification_id'] = $verificationOptions['id'];
}
}
Expand Up @@ -32,8 +32,6 @@ public static function hooks(\Event_Manager $eventsManager)
// Are controls required?
if (!$user_info['is_admin'] && !empty($modSettings['pm_posts_verification']) && $user_info['posts'] < $modSettings['pm_posts_verification'])
{
require_once(SUBSDIR . '/VerificationControls.class.php');

// Add the events to call for the verification
return array(
array('prepare_send_context', array('Verification_PersonalMessage_Module', 'prepare_send_context'), array()),
Expand All @@ -57,7 +55,7 @@ public function prepare_send_context()
$verificationOptions = array(
'id' => 'pm',
);
$context['require_verification'] = create_control_verification($verificationOptions);
$context['require_verification'] = VerificationControls_Integrate::create($verificationOptions);
$context['visual_verification_id'] = $verificationOptions['id'];
}

Expand All @@ -78,7 +76,7 @@ public function before_sending($post_errors)
$verificationOptions = array(
'id' => 'pm',
);
$context['require_verification'] = create_control_verification($verificationOptions, true);
$context['require_verification'] = VerificationControls_Integrate::create($verificationOptions, true);

if (is_array($context['require_verification']))
{
Expand Down
6 changes: 2 additions & 4 deletions sources/modules/Verification/VerificationPostModule.class.php
Expand Up @@ -32,8 +32,6 @@ public static function hooks(\Event_Manager $eventsManager)
// Using controls and this users is the lucky recipient of them?
if (!$user_info['is_admin'] && !$user_info['is_moderator'] && !empty($modSettings['posts_require_captcha']) && ($user_info['posts'] < $modSettings['posts_require_captcha'] || ($user_info['is_guest'] && $modSettings['posts_require_captcha'] == -1)))
{
require_once(SUBSDIR . '/VerificationControls.class.php');

return array(
array('post_errors', array('Verification_Post_Module', 'post_errors'), array('_post_errors')),
array('prepare_save_post', array('Verification_Post_Module', 'prepare_save_post'), array('_post_errors')),
Expand All @@ -57,7 +55,7 @@ public function post_errors($_post_errors)
$verificationOptions = array(
'id' => 'post',
);
$context['require_verification'] = create_control_verification($verificationOptions);
$context['require_verification'] = VerificationControls_Integrate::create($verificationOptions);
$context['visual_verification_id'] = $verificationOptions['id'];

// If they came from quick reply, and have to enter verification details, give them some notice.
Expand All @@ -79,7 +77,7 @@ public function prepare_save_post($_post_errors)
$verificationOptions = array(
'id' => 'post',
);
$context['require_verification'] = create_control_verification($verificationOptions, true);
$context['require_verification'] = VerificationControls_Integrate::create($verificationOptions, true);

if (is_array($context['require_verification']))
{
Expand Down
Expand Up @@ -31,8 +31,6 @@ public static function hooks(\Event_Manager $eventsManager)

if (!empty($modSettings['reg_verification']))
{
require_once(SUBSDIR . '/VerificationControls.class.php');

return array(
array('prepare_context', array('Verification_Register_Module', 'prepare_context'), array('current_step')),
array('before_complete_register', array('Verification_Register_Module', 'before_complete_register'), array('reg_errors')),
Expand Down Expand Up @@ -60,7 +58,7 @@ public function prepare_context($current_step)
$verificationOptions = array(
'id' => 'register',
);
$context['visual_verification'] = create_control_verification($verificationOptions);
$context['visual_verification'] = VerificationControls_Integrate::create($verificationOptions);
$context['visual_verification_id'] = $verificationOptions['id'];
}
// Otherwise we have nothing to show.
Expand All @@ -82,7 +80,7 @@ public function before_complete_register($reg_errors)
$verificationOptions = array(
'id' => 'register',
);
$context['visual_verification'] = create_control_verification($verificationOptions, true);
$context['visual_verification'] = VerificationControls_Integrate::create($verificationOptions, true);

if (is_array($context['visual_verification']))
{
Expand All @@ -102,7 +100,7 @@ public function verify_contact()
$verificationOptions = array(
'id' => 'contactform',
);
$context['require_verification'] = create_control_verification($verificationOptions, true);
$context['require_verification'] = VerificationControls_Integrate::create($verificationOptions, true);

if (is_array($context['require_verification']))
{
Expand All @@ -121,7 +119,7 @@ public function setup_contact()
$verificationOptions = array(
'id' => 'contactform',
);
$context['require_verification'] = create_control_verification($verificationOptions);
$context['require_verification'] = VerificationControls_Integrate::create($verificationOptions);
$context['visual_verification_id'] = $verificationOptions['id'];
}
}
42 changes: 42 additions & 0 deletions sources/subs/SessionIndex.php
@@ -0,0 +1,42 @@
<?php

/**
*
*
* @name ElkArte Forum
* @copyright ElkArte Forum contributors
* @license BSD http://opensource.org/licenses/BSD-3-Clause
*
* @version 2.0 dev
*
*/

namespace ElkArte\sources\subs;

use \ElkArte\ValuesContainer;

/**
*
*/
class SessionIndex extends ValuesContainer
{
protected $_idx = '';

/**
* Constructor
*
* @param string $idx The index of to be used in $_SESSION
* @param mixed[]|null $data Any array of data used to initialize the object (optional)
*/
public function __construct($idx, $data = null)
{
$this->_idx = $idx;

if (!isset($_SESSION[$this->_idx]))
{
$_SESSION[$this->_idx] = $data === null ? array() : (array) $data;
}

$this->data = &$_SESSION[$this->_idx];
}
}

0 comments on commit b904019

Please sign in to comment.