Version 3.4.5

This commit is contained in:
Neo committed 2025-12-19 00:38:12 -08:00
1 parent fb6b5baabc
commit e4478369d8
1360 files changed
+228921 -179445

No files matched your search

+53 -21
View File
@@ -3,9 +3,9 @@
/**
* <pre>
* Invision Power Services
* IP.Board v3.3.4
* IP.Board v3.4.5
* Core variables file: defines caches, resets, etc.
* Last Updated: $Date: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
* Last Updated: $Date: 2013-03-19 18:24:44 -0400 (Tue, 19 Mar 2013) $
* </pre>
*
* @author $Author: bfarber $
@@ -13,7 +13,7 @@
* @license http://www.invisionpower.com/company/standards.php#license
* @package IP.Board
* @link http://www.invisionpower.com
* @version $Rev: 10914 $
* @version $Rev: 12088 $
* @since 3.0.0
*
*/
@@ -301,6 +301,33 @@ class coreVariables
'recache_class' => 'reportLibrary',
'recache_function' => 'updateCacheTime'
);
/* SEO */
$CACHE['meta_tags'] = array(
'array' => 1,
'allow_unload' => 0,
'default_load' => 1,
'recache_file' => IPSLib::getAppDir( 'core' ) . '/modules_admin/templates/meta.php',
'recache_class' => 'admin_core_templates_meta',
'recache_function' => 'rebuildMetaTagCache'
);
$CACHE['ipseo_acronyms'] = array(
'array' => 1,
'allow_unload' => 0,
'default_load' => 1,
'recache_file' => IPSLib::getAppDir( 'core' ) . '/modules_admin/posts/acronyms.php',
'recache_class' => 'admin_core_posts_acronyms',
'recache_function' => 'recache'
);
$CACHE['ipseo_ignore_messages'] = array(
'array' => 1,
'allow_unload' => 0,
'default_load' => 0,
'recache_file' => IPSLib::getAppDir( 'core' ) . '/modules_admin/seo/advice.php',
'recache_class' => 'admin_core_seo_advice',
'recache_function' => 'recache'
);
if ( IN_DEV )
{
@@ -333,7 +360,7 @@ class coreVariables
$_RESET = array();
/* Make old skin selectors work */
if ( $_REQUEST['k'] && $_REQUEST['settingNewSkin'] )
if ( isset($_REQUEST['k']) && $_REQUEST['k'] && isset($_REQUEST['settingNewSkin']) && $_REQUEST['settingNewSkin'] )
{
$_RESET['app'] = 'core';
$_RESET['module'] = 'global';
@@ -343,7 +370,7 @@ class coreVariables
/* Return here to stop other rules parsing */
return $_RESET;
}
else if ( $_REQUEST['setAsMobile'] )
else if ( isset($_REQUEST['setAsMobile']) && $_REQUEST['setAsMobile'] )
{
$_RESET['app'] = 'core';
$_RESET['module'] = 'global';
@@ -357,7 +384,7 @@ class coreVariables
###### New IPB 3.0.0 Redirects ######
/* Share links */
if ( isset( $_REQUEST['sharelink'] ) AND ! isset( $_REQUEST['app'] ) )
if ( isset( $_REQUEST['sharelink'] ) AND is_string( $_REQUEST['sharelink'] ) AND ! isset( $_REQUEST['app'] ) )
{
/* Some set ups parse ; automagically (bah) */
if ( ! strstr( $_REQUEST['sharelink'], ';' ) )
@@ -565,8 +592,10 @@ class coreVariables
'__data__' => array( 'start' => '-',
'end' => '/',
'varBlock' => '/page__',
'varSep' => '__' ),
'varBlock' => '?',
'varPage' => 'page-',
'varSep' => '&',
'varJoin' => '=' ),
);
return $templates;
@@ -583,19 +612,22 @@ class coreVariables
{
$_BITWISE = array( 'facebook' => array( 'fbc_s_pic', 'fbc_s_status', 'fbc_s_aboutme', 'fbc_si_status' ), // facebook == profile_portal.fb_bwoptions
'twitter' => array( 'tc_s_pic', 'tc_s_status', 'tc_s_aboutme', 'tc_s_bgimg', 'tc_si_status' ), // twitter = profile_portal.tc_bwoptions
'members' => array( 'bw_is_spammer',
'bw_from_sfs',
'bw_vnc_type', # 1 based on topic marking table, 0 based on last_visit
'bw_forum_result_type', # 1 is list, 0 is forum
'bw_no_status_update', # 1 is yes ban, 0 is no, allow
'bw_status_email_mine', # 1 is 'send me an email when anyone replies to my status updates', 0 is DO NOT DO WHAT 1 DOES OR ELSE
'bw_status_email_all', # 1 is 'send me an email when anyone replies to any status update I replied to', 0 is OMG DO NOT DO THAT
'bw_disable_customization', # 1 yeah, 0 nah boi
'bw_local_password_set', # 1 means "user was created by remote, but has local password set", 0 means not, or not local user
'bw_disable_tagging', # 1 means no tagging for this dude
'bw_disable_prefixes', # 1 means no prefixes
'bw_using_skin_gen', # 1 means yes. 0 means.. well, I think you can figure that out
'bw_disable_gravatar', # If 1, Gravatar will not be used for this user
'vkontakte' => array( 'vc_s_pic', 'vc_s_status' ), //vkontakte
'members' => array( 'bw_is_spammer', #1
'bw_from_sfs', #2
'bw_vnc_type', #4 # 1 based on topic marking table, 0 based on last_visit
'bw_forum_result_type', #8 # 1 is list, 0 is forum
'bw_no_status_update', #16 # 1 is yes ban, 0 is no, allow
'bw_status_email_mine', #32 # 1 is 'send me an email when anyone replies to my status updates', 0 is DO NOT DO WHAT 1 DOES OR ELSE
'bw_status_email_all', #64 # 1 is 'send me an email when anyone replies to any status update I replied to', 0 is OMG DO NOT DO THAT
'bw_disable_customization', #128 # 1 yeah, 0 nah boi
'bw_local_password_set', #256 # 1 means "user was created by remote, but has local password set", 0 means not, or not local user
'bw_disable_tagging', #512 # 1 means no tagging for this dude
'bw_disable_prefixes', #1024 # 1 means no prefixes
'bw_using_skin_gen', #2048 # 1 means yes. 0 means.. well, I think you can figure that out
'bw_disable_gravatar', #4096 # If 1, Gravatar will not be used for this user
'bw_paste_plain', #8192 # If 1, editor will paste as plain text
'bw_html_sig' #16384 # If 1, signature is HTML
),
'groups' => array(
@@ -0,0 +1,153 @@
<?php
/**
* Make sure you rename this file to 'romanization.php'!
*/
class core_romanization
{
/**
* Process the string, romanizing the characters
* @param string Input string with extended chars
* @return string String
*/
public function process( $string )
{
/* Edit the chr(xxx) values to suit
The default is a duplication of the default code */
if ( IPSText::isUTF8( $string) )
{
$_chr = array(
/* Latin-1 Supplement */
chr(195).chr(128) => 'Ae', chr(195).chr(129) => 'A',
chr(195).chr(130) => 'A', chr(195).chr(131) => 'A',
chr(195).chr(132) => 'A', chr(195).chr(133) => 'A',
chr(195).chr(135) => 'C', chr(195).chr(136) => 'E',
chr(195).chr(137) => 'E', chr(195).chr(138) => 'E',
chr(195).chr(139) => 'E', chr(195).chr(140) => 'I',
chr(195).chr(141) => 'I', chr(195).chr(142) => 'I',
chr(195).chr(143) => 'I', chr(195).chr(145) => 'N',
chr(195).chr(146) => 'O', chr(195).chr(147) => 'O',
chr(195).chr(148) => 'O', chr(195).chr(149) => 'O',
chr(195).chr(150) => 'Oe', chr(195).chr(153) => 'U',
chr(195).chr(154) => 'U', chr(195).chr(155) => 'U',
chr(195).chr(156) => 'Ue', chr(195).chr(157) => 'Y',
chr(195).chr(159) => 'ss', chr(195).chr(160) => 'a',
chr(195).chr(161) => 'a', chr(195).chr(162) => 'a',
chr(195).chr(163) => 'a', chr(195).chr(164) => 'ae',
chr(195).chr(165) => 'a', chr(195).chr(167) => 'c',
chr(195).chr(168) => 'e', chr(195).chr(169) => 'e',
chr(195).chr(170) => 'e', chr(195).chr(171) => 'e',
chr(195).chr(172) => 'i', chr(195).chr(173) => 'i',
chr(195).chr(174) => 'i', chr(195).chr(175) => 'i',
chr(195).chr(177) => 'n', chr(195).chr(178) => 'o',
chr(195).chr(179) => 'o', chr(195).chr(180) => 'o',
chr(195).chr(181) => 'o', chr(195).chr(182) => 'oe',
chr(195).chr(185) => 'u', chr(195).chr(186) => 'u',
chr(195).chr(187) => 'u', chr(195).chr(188) => 'ue',
chr(195).chr(189) => 'y', chr(195).chr(191) => 'y',
/* Latin Extended-A */
chr(196).chr(128) => 'A', chr(196).chr(129) => 'a',
chr(196).chr(130) => 'A', chr(196).chr(131) => 'a',
chr(196).chr(132) => 'A', chr(196).chr(133) => 'a',
chr(196).chr(134) => 'C', chr(196).chr(135) => 'c',
chr(196).chr(136) => 'C', chr(196).chr(137) => 'c',
chr(196).chr(138) => 'C', chr(196).chr(139) => 'c',
chr(196).chr(140) => 'C', chr(196).chr(141) => 'c',
chr(196).chr(142) => 'D', chr(196).chr(143) => 'd',
chr(196).chr(144) => 'D', chr(196).chr(145) => 'd',
chr(196).chr(146) => 'E', chr(196).chr(147) => 'e',
chr(196).chr(148) => 'E', chr(196).chr(149) => 'e',
chr(196).chr(150) => 'E', chr(196).chr(151) => 'e',
chr(196).chr(152) => 'E', chr(196).chr(153) => 'e',
chr(196).chr(154) => 'E', chr(196).chr(155) => 'e',
chr(196).chr(156) => 'G', chr(196).chr(157) => 'g',
chr(196).chr(158) => 'G', chr(196).chr(159) => 'g',
chr(196).chr(160) => 'G', chr(196).chr(161) => 'g',
chr(196).chr(162) => 'G', chr(196).chr(163) => 'g',
chr(196).chr(164) => 'H', chr(196).chr(165) => 'h',
chr(196).chr(166) => 'H', chr(196).chr(167) => 'h',
chr(196).chr(168) => 'I', chr(196).chr(169) => 'i',
chr(196).chr(170) => 'I', chr(196).chr(171) => 'i',
chr(196).chr(172) => 'I', chr(196).chr(173) => 'i',
chr(196).chr(174) => 'I', chr(196).chr(175) => 'i',
chr(196).chr(176) => 'I', chr(196).chr(177) => 'i',
chr(196).chr(178) => 'IJ',chr(196).chr(179) => 'ij',
chr(196).chr(180) => 'J', chr(196).chr(181) => 'j',
chr(196).chr(182) => 'K', chr(196).chr(183) => 'k',
chr(196).chr(184) => 'k', chr(196).chr(185) => 'L',
chr(196).chr(186) => 'l', chr(196).chr(187) => 'L',
chr(196).chr(188) => 'l', chr(196).chr(189) => 'L',
chr(196).chr(190) => 'l', chr(196).chr(191) => 'L',
chr(197).chr(128) => 'l', chr(197).chr(129) => 'L',
chr(197).chr(130) => 'l', chr(197).chr(131) => 'N',
chr(197).chr(132) => 'n', chr(197).chr(133) => 'N',
chr(197).chr(134) => 'n', chr(197).chr(135) => 'N',
chr(197).chr(136) => 'n', chr(197).chr(137) => 'N',
chr(197).chr(138) => 'n', chr(197).chr(139) => 'N',
chr(197).chr(140) => 'O', chr(197).chr(141) => 'o',
chr(197).chr(142) => 'O', chr(197).chr(143) => 'o',
chr(197).chr(144) => 'O', chr(197).chr(145) => 'o',
chr(197).chr(146) => 'OE', chr(197).chr(147) => 'oe',
chr(197).chr(148) => 'R', chr(197).chr(149) => 'r',
chr(197).chr(150) => 'R', chr(197).chr(151) => 'r',
chr(197).chr(152) => 'R', chr(197).chr(153) => 'r',
chr(197).chr(154) => 'S', chr(197).chr(155) => 's',
chr(197).chr(156) => 'S', chr(197).chr(157) => 's',
chr(197).chr(158) => 'S', chr(197).chr(159) => 's',
chr(197).chr(160) => 'S', chr(197).chr(161) => 's',
chr(197).chr(162) => 'T', chr(197).chr(163) => 't',
chr(197).chr(164) => 'T', chr(197).chr(165) => 't',
chr(197).chr(166) => 'T', chr(197).chr(167) => 't',
chr(197).chr(168) => 'U', chr(197).chr(169) => 'u',
chr(197).chr(170) => 'U', chr(197).chr(171) => 'u',
chr(197).chr(172) => 'U', chr(197).chr(173) => 'u',
chr(197).chr(174) => 'U', chr(197).chr(175) => 'u',
chr(197).chr(176) => 'U', chr(197).chr(177) => 'u',
chr(197).chr(178) => 'U', chr(197).chr(179) => 'u',
chr(197).chr(180) => 'W', chr(197).chr(181) => 'w',
chr(197).chr(182) => 'Y', chr(197).chr(183) => 'y',
chr(197).chr(184) => 'Y', chr(197).chr(185) => 'Z',
chr(197).chr(186) => 'z', chr(197).chr(187) => 'Z',
chr(197).chr(188) => 'z', chr(197).chr(189) => 'Z',
chr(197).chr(190) => 'z', chr(197).chr(191) => 's',
/* Euro Sign */
chr(226).chr(130).chr(172) => 'E',
/* GBP (Pound) Sign */
chr(194).chr(163) => '' );
$string = strtr($string, $_chr);
}
else
{
$_chr = array();
$_dblChars = array();
/* We assume ISO-8859-1 if not UTF-8 */
$_chr['in'] = chr(128).chr(131).chr(138).chr(142).chr(154).chr(158)
.chr(159).chr(162).chr(165).chr(181).chr(192).chr(193).chr(194)
.chr(195).chr(199).chr(200).chr(201).chr(202)
.chr(203).chr(204).chr(205).chr(206).chr(207).chr(209).chr(210)
.chr(211).chr(212).chr(213).chr(217).chr(218)
.chr(219).chr(220).chr(221).chr(224).chr(225).chr(226).chr(227)
.chr(231).chr(232).chr(233).chr(234).chr(235)
.chr(236).chr(237).chr(238).chr(239).chr(241).chr(242).chr(243)
.chr(244).chr(245).chr(249).chr(250).chr(251)
.chr(252).chr(253).chr(255).chr(191).chr(182).chr(179).chr(166)
.chr(230).chr(198).chr(175).chr(172).chr(188)
.chr(163).chr(161).chr(177);
$_chr['out'] = "EfSZszYcYuAAAACEEEEIIIINOOOOUUUUYaaaaceeeeiiiinoooouuuuyyzslScCZZzLAa";
$string = strtr( $string, $_chr['in'], $_chr['out'] );
$_dblChars['in'] = array( chr(140), chr(156), chr(196), chr(197), chr(198), chr(208), chr(214), chr(216), chr(222), chr(223), chr(228), chr(229), chr(230), chr(240), chr(246), chr(248), chr(254));
$_dblChars['out'] = array('Oe', 'oe', 'Ae', 'Aa', 'Ae', 'DH', 'Oe', 'Oe', 'TH', 'ss', 'ae', 'aa', 'ae', 'dh', 'oe', 'oe', 'th');
$string = str_replace($_dblChars['in'], $_dblChars['out'], $string);
}
return $string;
}
}
?>
+3 -3
View File
@@ -3,9 +3,9 @@
/**
* <pre>
* Invision Power Services
* IP.Board v3.3.4
* IP.Board v3.4.5
* Sphinx template file
* Last Updated: $Date: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
* Last Updated: $Date: 2012-05-10 16:10:13 -0400 (Thu, 10 May 2012) $
* </pre>
*
* @author $Author: bfarber $
@@ -13,7 +13,7 @@
* @license http://www.invisionpower.com/company/standards.php#license
* @package IP.Board
* @link http://www.invisionpower.com
* @version $Rev: 10914 $
* @version $Rev: 10721 $
* @since 3.0.0
*
*/
+98 -18
View File
@@ -3,17 +3,17 @@
/**
* <pre>
* Invision Power Services
* IP.Board v3.3.4
* IP.Board v3.4.5
* User agent (browser and spider) mappings
* Last Updated: $Date: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
* Last Updated: $Date: 2013-04-04 10:48:30 -0400 (Thu, 04 Apr 2013) $
* </pre>
*
* @author $Author: bfarber $
* @author $Author: mmecham $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/company/standards.php#license
* @package IP.Board
* @link http://www.invisionpower.com
* @version $Rev: 10914 $
* @version $Rev: 12150 $
* @since 3.0.0
*
*/
@@ -28,19 +28,20 @@ if ( ! defined( 'IN_IPB' ) )
$MOBILESKIN = array(
'groups' => array(),
'uagents' => array(
'android' => '',
'blackberry' => '',
'iphone' => '',
'ipodtouch' => '',
'sonyericsson' => '',
'nokia' => '',
'motorola' => '',
'samsung' => '',
'htc' => '',
'lg' => '',
'palm' => '',
'windows7' => '',
'operamini' => '' )
'android' => '',
'blackberry' => '',
'firefoxmobile' => '',
'iphone' => '',
'ipodtouch' => '',
'sonyericsson' => '',
'nokia' => '',
'motorola' => '',
'samsung' => '',
'htc' => '',
'lg' => '',
'palm' => '',
'windows7' => '',
'operamini' => '' )
);
@@ -54,10 +55,21 @@ $BROWSERS['transformer'] = array(
'b_regex' => array( ";\s+?Transformer\s+?" => "0" )
);
$BROWSERS['android'] = array(
'b_title' => "Android",
'b_regex' => array( "\sandroid\s+?([A-Za-z0-9.]{1,10}).+?mobile" => "1" )
);
$BROWSERS['firefoxmobile'] = array(
'b_title' => 'Firefox Mobile',
'b_regex' => array( "Mozilla(?:[^\(]+?)\((?:android|tablet)" => "0" )
);
$BROWSERS['androidtablet'] = array(
'b_title' => "Android Tablet",
'b_regex' => array( "\sandroid\s+?([A-Za-z0-9.]{1,10})" => "1" )
);
$BROWSERS['blackberry'] = array(
'b_title' => "Blackberry",
@@ -128,6 +140,11 @@ $BROWSERS['windows7'] = array(
'b_title' => "Windows 7",
'b_regex' => array( "Windows Phone OS ([^;]+);" => "1" )
);
$BROWSERS['windows8'] = array(
'b_title' => "Windows Phone 8",
'b_regex' => array( "Windows Phone ([^;]+);" => "1" )
);
//-----------------------------------------
// Browsers
@@ -218,6 +235,10 @@ $BROWSERS['mozilla'] = array(
'b_title' => "Mozilla",
'b_regex' => array( "^mozilla/([5-9]\.[0-9a-z.]{1,10})" => "1" )
);
$BROWSERS['xbox'] = array(
'b_title' => "Xbox",
'b_regex' => array( "\(compatible; MSIE[ /]([0-9.]{1,10})(.*)Xbox" => "1" )
);
//-----------------------------------------
// SEARCH ENGINES
@@ -305,4 +326,63 @@ $ENGINES['websense'] = array(
$ENGINES['yahoo'] = array(
'b_title' => "Yahoo",
'b_regex' => array( "Yahoo(.*?)(Slurp|FeedSeeker)" => "" )
);
);
$ENGINES['AdSense'] = array(
'b_title' => "Mediapartners(AdSense)",
'b_regex' => array( "Mediapartners-Google" => "" )
);
$ENGINES['BrandWatch'] = array(
'b_title' => "BrandWatch",
'b_regex' => array( "magpie-crawler[ /]([0-9.]{1,10})" => "1" )
);
$ENGINES['Ahrefs'] = array(
'b_title' => "Ahrefs",
'b_regex' => array( "AhrefsBot[ /]([0-9.]{1,10})" => "1" )
);
$ENGINES['MSNMedia'] = array(
'b_title' => "MSN",
'b_regex' => array( "msnbot-media[ /]([0-9.]{1,10})" => "1" )
);
$ENGINES['integrome'] = array(
'b_title' => "Integrome",
'b_regex' => array( "www\.integromedb\.org/Crawler" => "" )
);
$ENGINES['Baidu'] = array(
'b_title' => "Baidu",
'b_regex' => array( "Baiduspider[ /]([0-9.]{1,10})" => "1" )
);
$ENGINES['Solomono'] = array(
'b_title' => "Solomono",
'b_regex' => array( "SolomonoBot[ /]([0-9.]{1,10})" => "1" )
);
$ENGINES['Ezoom'] = array(
'b_title' => "Ezoom!",
'b_regex' => array( "Ezoom[ /]([0-9.]{1,10})" => "1" )
);
//Russian Search Engine Crawlers
$ENGINES['yandex'] = array(
'b_title' => "Yandex",
'b_regex' => array( "Yandex(Blogs|Blog|Bot|Images|Video|Media|Favicons|Webmaster|Pagechecker|ImageResizer|Direct|Metrika|News|Newslinks|Catalog|Antivirus|Zakladki|Sitelinks|Vertis)?[ /]([0-9.]{1,10})" => "2" )
);
$ENGINES['rambler'] = array(
'b_title' => "Rambler",
'b_regex' => array( "StackRambler[ /]([0-9.]{1,10})" => "1" )
);
$ENGINES['aport'] = array(
'b_title' => "Aport",
'b_regex' => array( "Aport" => "" )
);
$ENGINES['nigma'] = array(
'b_title' => "Nigma",
'b_regex' => array( "Nigma[ /]([0-9.]{1,10})" => "1" )
);
$ENGINES['webalta'] = array(
'b_title' => "Webalta",
'b_regex' => array( "Webalta([ /]Crawler)?" => "" )
);
$ENGINES['mailru'] = array(
'b_title' => "Mail.ru",
'b_regex' => array( "Mail.(RU|ru|Ru)[ /]([0-9.]{1,10})" => "2" )
);