mirror of
https://github.com/phpbb/phpbb.git
synced 2025-08-15 05:04:09 +02:00
Merge pull request #2088 from nickvergessen/ticket/12236
Ticket/12236 Convert AOL and Yahoo to custom profile fields
This commit is contained in:
51
phpBB/phpbb/db/migration/data/v310/profilefield_aol.php
Normal file
51
phpBB/phpbb/db/migration/data/v310/profilefield_aol.php
Normal file
@@ -0,0 +1,51 @@
|
||||
<?php
|
||||
/**
|
||||
*
|
||||
* @package migration
|
||||
* @copyright (c) 2014 phpBB Group
|
||||
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\migration\data\v310;
|
||||
|
||||
class profilefield_aol extends \phpbb\db\migration\profilefield_base_migration
|
||||
{
|
||||
static public function depends_on()
|
||||
{
|
||||
return array(
|
||||
'\phpbb\db\migration\data\v310\profilefield_yahoo_cleanup',
|
||||
);
|
||||
}
|
||||
|
||||
protected $profilefield_name = 'phpbb_aol';
|
||||
|
||||
protected $profilefield_database_type = array('VCHAR', '');
|
||||
|
||||
protected $profilefield_data = array(
|
||||
'field_name' => 'phpbb_aol',
|
||||
'field_type' => 'profilefields.type.string',
|
||||
'field_ident' => 'phpbb_aol',
|
||||
'field_length' => '40',
|
||||
'field_minlen' => '5',
|
||||
'field_maxlen' => '255',
|
||||
'field_novalue' => '',
|
||||
'field_default_value' => '',
|
||||
'field_validation' => '.*',
|
||||
'field_required' => 0,
|
||||
'field_show_novalue' => 0,
|
||||
'field_show_on_reg' => 0,
|
||||
'field_show_on_pm' => 1,
|
||||
'field_show_on_vt' => 1,
|
||||
'field_show_on_ml' => 0,
|
||||
'field_show_profile' => 1,
|
||||
'field_hide' => 0,
|
||||
'field_no_view' => 0,
|
||||
'field_active' => 1,
|
||||
'field_is_contact' => 1,
|
||||
'field_contact_desc' => '',
|
||||
'field_contact_url' => '',
|
||||
);
|
||||
|
||||
protected $user_column_name = 'user_aim';
|
||||
}
|
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
/**
|
||||
*
|
||||
* @package migration
|
||||
* @copyright (c) 2014 phpBB Group
|
||||
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\migration\data\v310;
|
||||
|
||||
class profilefield_aol_cleanup extends \phpbb\db\migration\migration
|
||||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return !$this->db_tools->sql_column_exists($this->table_prefix . 'users', 'user_aim');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
{
|
||||
return array(
|
||||
'\phpbb\db\migration\data\v310\profilefield_aol',
|
||||
);
|
||||
}
|
||||
|
||||
public function update_schema()
|
||||
{
|
||||
return array(
|
||||
'drop_columns' => array(
|
||||
$this->table_prefix . 'users' => array(
|
||||
'user_aim',
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
public function revert_schema()
|
||||
{
|
||||
return array(
|
||||
'add_columns' => array(
|
||||
$this->table_prefix . 'users' => array(
|
||||
'user_aim' => array('VCHAR_UNI', ''),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
51
phpBB/phpbb/db/migration/data/v310/profilefield_yahoo.php
Normal file
51
phpBB/phpbb/db/migration/data/v310/profilefield_yahoo.php
Normal file
@@ -0,0 +1,51 @@
|
||||
<?php
|
||||
/**
|
||||
*
|
||||
* @package migration
|
||||
* @copyright (c) 2014 phpBB Group
|
||||
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\migration\data\v310;
|
||||
|
||||
class profilefield_yahoo extends \phpbb\db\migration\profilefield_base_migration
|
||||
{
|
||||
static public function depends_on()
|
||||
{
|
||||
return array(
|
||||
'\phpbb\db\migration\data\v310\profilefield_wlm_cleanup',
|
||||
);
|
||||
}
|
||||
|
||||
protected $profilefield_name = 'phpbb_yahoo';
|
||||
|
||||
protected $profilefield_database_type = array('VCHAR', '');
|
||||
|
||||
protected $profilefield_data = array(
|
||||
'field_name' => 'phpbb_yahoo',
|
||||
'field_type' => 'profilefields.type.string',
|
||||
'field_ident' => 'phpbb_yahoo',
|
||||
'field_length' => '40',
|
||||
'field_minlen' => '5',
|
||||
'field_maxlen' => '255',
|
||||
'field_novalue' => '',
|
||||
'field_default_value' => '',
|
||||
'field_validation' => '.*',
|
||||
'field_required' => 0,
|
||||
'field_show_novalue' => 0,
|
||||
'field_show_on_reg' => 0,
|
||||
'field_show_on_pm' => 1,
|
||||
'field_show_on_vt' => 1,
|
||||
'field_show_on_ml' => 0,
|
||||
'field_show_profile' => 1,
|
||||
'field_hide' => 0,
|
||||
'field_no_view' => 0,
|
||||
'field_active' => 1,
|
||||
'field_is_contact' => 1,
|
||||
'field_contact_desc' => 'SEND_YIM_MESSAGE',
|
||||
'field_contact_url' => 'http://edit.yahoo.com/config/send_webmesg?.target=%s&.src=pg',
|
||||
);
|
||||
|
||||
protected $user_column_name = 'user_yim';
|
||||
}
|
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
/**
|
||||
*
|
||||
* @package migration
|
||||
* @copyright (c) 2014 phpBB Group
|
||||
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\migration\data\v310;
|
||||
|
||||
class profilefield_yahoo_cleanup extends \phpbb\db\migration\migration
|
||||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return !$this->db_tools->sql_column_exists($this->table_prefix . 'users', 'user_yim');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
{
|
||||
return array(
|
||||
'\phpbb\db\migration\data\v310\profilefield_yahoo',
|
||||
);
|
||||
}
|
||||
|
||||
public function update_schema()
|
||||
{
|
||||
return array(
|
||||
'drop_columns' => array(
|
||||
$this->table_prefix . 'users' => array(
|
||||
'user_yim',
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
public function revert_schema()
|
||||
{
|
||||
return array(
|
||||
'add_columns' => array(
|
||||
$this->table_prefix . 'users' => array(
|
||||
'user_yim' => array('VCHAR_UNI', ''),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
@@ -69,7 +69,7 @@ abstract class type_string_common extends type_base
|
||||
$field_validate = ($field_type != 'text') ? $field_value : bbcode_nl2br($field_value);
|
||||
if (!preg_match('#^' . str_replace('\\\\', '\\', $field_data['field_validation']) . '$#i', $field_validate))
|
||||
{
|
||||
switch ($row['field_validation'])
|
||||
switch ($field_data['field_validation'])
|
||||
{
|
||||
case '[0-9]+':
|
||||
return $this->user->lang('FIELD_INVALID_CHARS_NUMBERS_ONLY', $this->get_field_name($field_data['lang_name']));
|
||||
|
Reference in New Issue
Block a user