Version 4.1.19

This commit is contained in:
Neo committed 2025-12-19 05:38:56 -08:00
1 parent 28bd025b35
commit 2bd5025018
2674 files changed
+233518 -77766

No files matched your search

+35 -3
View File
@@ -43,6 +43,12 @@
"controller": "menu",
"do": "",
"restriction": "menu_manage"
},
"api": {
"tab": "core",
"controller": "api",
"do": "",
"restriction": "api_manage"
}
},
"settings": {
@@ -82,6 +88,18 @@
"do": "",
"restriction": "login_manage"
},
"contactus": {
"tab": "core",
"controller": "contactus",
"do": "",
"restriction": "contactus_manage"
},
"mfa": {
"tab": "core",
"controller": "mfa",
"do": "",
"restriction": "mfa_manage"
},
"advanced": {
"tab": "core",
"controller": "advanced",
@@ -101,6 +119,12 @@
"controller": "streams",
"do": "",
"restriction": "streams_manage"
},
"rss": {
"tab": "core",
"controller": "rss",
"do": "",
"restriction": "rss_manage"
}
},
"promotion": {
@@ -116,6 +140,12 @@
"do": "",
"restriction": "seo_manage"
},
"analytics": {
"tab": "core",
"controller": "analytics",
"do": "",
"restriction": "analytics_manage"
},
"sharelinks": {
"tab": "core",
"controller": "sharelinks",
@@ -260,7 +290,7 @@
"tab": "customization",
"controller": "languages",
"do": "",
"restriction": "lang_packs"
"restriction": "lang_words"
}
},
"support": {
@@ -276,13 +306,15 @@
"tab": "stats",
"controller": "registrationstats",
"do": "",
"restriction": "registrations_manage"
"restriction": "registrations_manage",
"restriction_module": "members"
},
"pmstats": {
"tab": "stats",
"controller": "pmstats",
"do": "",
"restriction": null
"restriction": "messages_manage",
"restriction_module": "members"
}
}
}
+29 -5
View File
@@ -17,6 +17,16 @@
},
"menu": {
"menu_manage": "menu_manage"
},
"api": {
"api_manage": "api_manage",
"api_add": "api_add",
"api_edit": "api_edit",
"api_delete": "api_delete",
"api_reference": "api_reference",
"api_logs": "api_logs",
"api_logs_settings": "api_logs_settings",
"api_logs_delete": "api_logs_delete"
}
},
"promotion": {
@@ -31,6 +41,9 @@
"advertisements_add": "advertisements_add",
"advertisements_edit": "advertisements_edit",
"advertisements_delete": "advertisements_delete"
},
"analytics": {
"analytics_manage": "analytics_manage"
}
},
"settings": {
@@ -73,6 +86,12 @@
"advanced_manage_tasks": "advanced_manage_tasks",
"advanced_manage_furls": "advanced_manage_furls",
"datastore": "datastore"
},
"contactus": {
"contactus_manage": "contactus_manage"
},
"mfa": {
"mfa_manage": "mfa_manage"
}
},
"discovery": {
@@ -81,15 +100,18 @@
},
"streams": {
"streams_manage": "streams_manage"
},
"rss_exports": {
"rss_export_manage": "rss_export_manage"
}
},
"members": {
"members": {
"member_view": "member_view",
"member_add": "member_add",
"member_add_admin": "member_add_admin",
"member_edit": "member_edit",
"member_edit_admin": "member_edit_admin",
"member_mfa": "member_mfa",
"member_delete": "member_delete",
"member_delete_admin": "member_delete_admin",
"member_login": "member_login",
@@ -104,7 +126,8 @@
"membertools_locked": "membertools_locked",
"membertools_delete": "membertools_delete",
"membertools_ip": "membertools_ip",
"member_recount_content": "member_recount_content"
"member_recount_content": "member_recount_content",
"member_export": "member_export"
},
"groups": {
"groups_manage": "groups_manage",
@@ -207,7 +230,7 @@
"emoticons_manage": "emoticons_manage",
"emoticons_add": "emoticons_add",
"emoticons_edit": "emoticons_edit",
"delete": "emoticons_delete"
"emoticons_delete": "emoticons_delete"
},
"settings": {
"settings_manage": "settings_manage"
@@ -259,7 +282,7 @@
"files_settings": "files_settings",
"orphaned_files": "orphaned_files"
},
"upgrade": {
"upgrade": {
"upgrade_manage": "upgrade_manage"
}
},
@@ -267,7 +290,8 @@
"support": {
"get_support": "get_support",
"diagnostic_log_settings": "diagnostic_log_settings",
"sql_toolbox": "sql_toolbox"
"sql_toolbox": "sql_toolbox",
"system_logs_view": "system_logs_view"
}
}
}
File diff suppressed because it is too large. Load diff
@@ -3,7 +3,7 @@
* @brief {subpackage} Application Class
* @author <a href='{website}'>{author}</a>
* @copyright (c) {year} {author}
* @package IPS Social Suite
* @package IPS Community Suite
* @subpackage {subpackage}
* @since {date}
* @version
@@ -16,5 +16,5 @@ namespace IPS\{app};
*/
class _Application extends \IPS\Application
{
}
@@ -2,9 +2,9 @@
/**
* @brief {controller}
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief {controller}
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief {controller}
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
+13
View File
@@ -0,0 +1,13 @@
//<?php
/* To prevent PHP errors (extending class does not exist) revealing path */
if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) )
{
exit;
}
{abstract}class {classname} extends _HOOK_CLASS_
{
}
+2 -2
View File
@@ -2,9 +2,9 @@
/**
* @brief {key} Task
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
+2 -2
View File
@@ -2,9 +2,9 @@
/**
* @brief {version_human} Upgrade Code
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -3,9 +3,9 @@
/**
* @brief {version_human} Upgrade Code
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
+2 -2
View File
@@ -2,9 +2,9 @@
/**
* @brief {key} Widget
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief Advertisement locations extension
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief Announcements Extension
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -0,0 +1,60 @@
<?php
/**
* @brief BBCode Tag
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
*/
namespace IPS\{app}\extensions\core\BBCode;
/* To prevent PHP errors (extending class does not exist) revealing path */
if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) )
{
header( ( isset( $_SERVER['SERVER_PROTOCOL'] ) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0' ) . ' 403 Forbidden' );
exit;
}
/**
* BBCode Tag
*/
class _{class}
{
/**
* Permission Check
*
* @param \IPS\Member $member The member
* @param string $area The Editor area
* @return bool
*/
public function permissionCheck( \IPS\Member $member, $area )
{
return \IPS\Text\Parser::canUse( $member, 'ipsLink', $area );
}
/**
* Get Configuration
*
* @code
return array(
'tag' => 'span', // The HTML tag to use
'attributes' => array( ... ) // Key/Value pairs of attributes to use (optional) - can use {option} to get the [tag=option] value
'callback' => function( $node, $matches, $document ) // A callback to modify the DOMNode object
{
...
},
'block' => FALSE, // If this is a block-level tag (optional, default false)
'single' => FALSE, // If this is a single tag, with no content (optional, default false)
)
* @endcode
* @return array
*/
public function getConfiguration()
{
return array( 'tag' => 'span', 'attributes' => array( 'class' => 'example' ) );
}
}
@@ -2,9 +2,9 @@
/**
* @brief Build process plugin
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -36,7 +36,6 @@ class _{class}
/**
* Finish Build
* Moved the pbckcode acs.js file over from development as CKEditor's build routine seems to break it
*
* @return void
*/
@@ -1,10 +1,10 @@
<?php
/**
* @brief Bulk mail extension
* @brief Bulk Mail Extension
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -20,54 +20,34 @@ if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) )
}
/**
* Bulk mail extension
* Bulk Mail Extension
*/
class _{class}
{
/**
* Get Setting Field
* Get tags that can be used in bulk mail
*
* @param mixed $criteria Value returned from the save() method
* @return array Array of form elements
* @return array
*/
public function getSettingField( $criteria )
public function getTags()
{
return array();
return array(
'{some_tag}' => 'Explanation of tag',
);
}
/**
* Save the filter data
/**
* Get value for tags
*
* @param array $post Form values
* @return mixed False, or an array of data to use later when filtering the members
* @throws \LogicException
* @param string $content Bulk Mail Content (passed in case a particular tag is computationally expensive so that the extension may "sniff" for it and elect not to perform the computation if it is not used)
* @param int $type 0=All, 1=Global, 2=Member-specific
* @param NULL|\IPS\Member $member Member object if $type is 0 or 2
* @return array
*/
public function save( $post )
public function returnTagValues( $content, $type, $member )
{
return FALSE;
}
/**
* Get where clause to add to the member retrieval database query
*
* @param mixed $data The array returned from the save() method
* @return string|array|NULL Where clause
*/
public function getQueryWhereClause( $data )
{
return NULL;
}
/**
* Callback for member retrieval database query
* Can be used to set joins
*
* @param mixed $data The array returned from the save() method
* @param \IPS\Db\Query $query The query
* @return void
*/
public function queryCallback( &$query )
{
return NULL;
return array(
'{some_tag}' => 'Value',
);
}
}
@@ -2,9 +2,9 @@
/**
* @brief Community Enhancements
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -0,0 +1,64 @@
<?php
/**
* @brief Contact Us extension
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
*/
namespace IPS\{app}\extensions\core\ContactUs;
/* To prevent PHP errors (extending class does not exist) revealing path */
if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) )
{
header( ( isset( $_SERVER['SERVER_PROTOCOL'] ) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0' ) . ' 403 Forbidden' );
exit;
}
/**
* Contact Us extension
*/
class _{class}
{
/**
* Process Form
*
* @param \IPS\Helpers\Form $form The form
* @param array $formFields Additional Configuration Formfields
* @param array $options Type Radio Form Options
* @param array $toggles Type Radio Form Toggles
* @param array $disabled Type Radio Form Disabled Options
* @return void
*/
public function process( &$form, &$formFields, &$options, &$toggles, &$disabled )
{
}
/**
* Allows extensions to do something before the form is shown... e.g. add your own custom fields, or redirect the page
*
* @param \IPS\Helpers\Form $form The form
* @return void
*/
public function runBeforeFormOutput( &$form )
{
}
/**
* Handle the Form
*
* @param array $values Values from form
* @return void
*/
public function handleForm( array $values )
{
return FALSE;
}
}
@@ -2,9 +2,9 @@
/**
* @brief Content Router extension: {class}
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief Create Menu Extension : {class}
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief Dashboard extension: {class}
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief Editor Extension: {class}
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief Editor Media: {class}
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -27,11 +27,12 @@ class _{class}
/**
* Get Counts
*
* @param \IPS\Member $member The member
* @param bool $images TRUE = Images. FALSE = other attachments.
* @return int array( 'Title' => 0 )
* @param \IPS\Member $member The member
* @param string $postKey The post key
* @param string|null $search The search term (or NULL for all)
* @return int
*/
public function count( $member, $images )
public function count( $member, $postKey, $search=NULL )
{
return array();
}
@@ -40,14 +41,13 @@ class _{class}
* Get Files
*
* @param \IPS\Member $member The member
* @param bool $images TRUE = Images. FALSE = other attachments.
* @param string|null $search The search term (or NULL for all)
* @param string $postKey The post key
* @param int $page Page
* @param int $limit Number to get
* @return array array( 'Title' => array( (IPS\File, \IPS\File, ... ), ... )
* @return array array( 'Title' => array( 'http://www.example.com/file1.txt' => \IPS\File, 'http://www.example.com/file2.txt' => \IPS\File, ... ), ... )
*/
public function get( $member, $images, $search, $postKey, $page, $limit )
public function get( $member, $search, $postKey, $page, $limit )
{
return array();
}
@@ -2,9 +2,9 @@
/**
* @brief File Storage Extension: {class}
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief Front Navigation Extension: {class}
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -35,11 +35,23 @@ class _{class} extends \IPS\core\FrontNavigation\FrontNavigationAbstract
}
/**
* Can access?
* Can this item be used at all?
* For example, if this will link to a particular feature which has been diabled, it should
* not be available, even if the user has permission
*
* @return bool
*/
public function canView()
public static function isEnabled()
{
return TRUE;
}
/**
* Can the currently logged in user access the content this item links to?
*
* @return bool
*/
public function canAccessContent()
{
return TRUE;
}
@@ -73,14 +85,15 @@ class _{class} extends \IPS\core\FrontNavigation\FrontNavigationAbstract
{
return \IPS\Dispatcher::i()->application->directory === '{app}';
}
/**
* Children
*
* @param bool $noStore If true, will skip datastore and get from DB (used for ACP preview)
* @return array
*/
public function children()
public function children( $noStore=FALSE )
{
return array();
return NULL;
}
}
@@ -2,9 +2,9 @@
/**
* @brief Admin CP Group Form
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief Group Limits
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief Incoming Email Handler
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief IP Address Lookup extension
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -24,6 +24,28 @@ if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) )
*/
class _{class}
{
/**
* Supported in the ACP IP address lookup tool?
*
* @return bool
* @note If the method does not exist in an extension, the result is presumed to be TRUE
*/
public function supportedInAcp()
{
return TRUE;
}
/**
* Supported in the ModCP IP address lookup tool?
*
* @return bool
* @note If the method does not exist in an extension, the result is presumed to be TRUE
*/
public function supportedInModCp()
{
return TRUE;
}
/**
* Find Records by IP
*
@@ -36,12 +58,12 @@ class _{class}
/* Return count */
if ( $baseUrl === NULL )
{
return \IPS\Db::i()->select( 'COUNT(*)', 'database_table_name', array( "ip_address LIKE CONCAT( ?, '%' )", $ip ) )->first();
return \IPS\Db::i()->select( 'COUNT(*)', 'database_table_name', array( "ip_address LIKE ?", $ip ) )->first();
}
/* Init Table */
// Replace database_table_name with the database table
$table = new \IPS\Helpers\Table\Db( 'database_table_name', $baseUrl, array( "ip_address LIKE CONCAT( ?, '%' )", $ip ) );
$table = new \IPS\Helpers\Table\Db( 'database_table_name', $baseUrl, array( "ip_address LIKE ?", $ip ) );
/* Return */
return (string) $table;
@@ -2,9 +2,9 @@
/**
* @brief ACP Live Search Extension
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -45,14 +45,24 @@ class _{class}
return array();
}
/**
* Check we have access
*
* @return bool
*/
public function hasAccess()
{
/* Check Permissions */
return TRUE;
}
/**
* Check we have access
*
* @return bool
*/
public function hasAccess()
{
/* Check Permissions */
return TRUE;
}
/**
* Is default for current page?
*
* @return bool
*/
public function isDefault()
{
return \IPS\Dispatcher::i()->application->directory == 'myapp';
}
}
@@ -0,0 +1,36 @@
<?php
/**
* @brief Multi-Factor Authentication Area
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
*/
namespace IPS\{app}\extensions\core\MFAArea;
/* To prevent PHP errors (extending class does not exist) revealing path */
if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) )
{
header( ( isset( $_SERVER['SERVER_PROTOCOL'] ) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0' ) . ' 403 Forbidden' );
exit;
}
/**
* Multi-Factor Authentication Area
*/
class _{class}
{
/**
* Is this area available and should show in the ACP configuration?
*
* @return bool
*/
public function isEnabled()
{
return TRUE;
}
}
@@ -0,0 +1,73 @@
<?php
/**
* @brief Member Filter Extension
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
*/
namespace IPS\{app}\extensions\core\MemberFilter;
/* To prevent PHP errors (extending class does not exist) revealing path */
if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) )
{
header( ( isset( $_SERVER['SERVER_PROTOCOL'] ) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0' ) . ' 403 Forbidden' );
exit;
}
/**
* Member Filter Extension
*/
class _{class}
{
/**
* Get Setting Field
*
* @param mixed $criteria Value returned from the save() method
* @return array Array of form elements
*/
public function getSettingField( $criteria )
{
return array();
}
/**
* Save the filter data
*
* @param array $post Form values
* @return mixed False, or an array of data to use later when filtering the members
* @throws \LogicException
*/
public function save( $post )
{
return FALSE;
}
/**
* Get where clause to add to the member retrieval database query
*
* @param mixed $data The array returned from the save() method
* @return string|array|NULL Where clause
*/
public function getQueryWhereClause( $data )
{
return NULL;
}
/**
* Callback for member retrieval database query
* Can be used to set joins
*
* @param mixed $data The array returned from the save() method
* @param \IPS\Db\Query $query The query
* @return void
*/
public function queryCallback( $data, &$query )
{
return NULL;
}
}
@@ -2,9 +2,9 @@
/**
* @brief Admin CP Member Form
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief Member Sync
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -124,5 +124,31 @@ class _{class}
*/
public function onDelete( $member )
{
}
/**
* Email address is changed
*
* @param \IPS\Member $member The member
* @param string $new New email address
* @param string $old Old email address
* @return void
*/
public function onEmailChange( $member, $new, $old )
{
}
/**
* Password is changed
*
* @param \IPS\Member $member The member
* @param string $new New password
* @return void
*/
public function onPassChange( $member, $new )
{
}
}
@@ -2,9 +2,9 @@
/**
* @brief Moderator Control Panel Extension: {class}
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -27,7 +27,7 @@ class _{class}
/**
* Returns the primary tab key for the navigation bar
*
* @return string
* @return string|null
*/
public function getTab()
{
@@ -2,9 +2,9 @@
/**
* @brief Moderator Control Panel Member Management Extension: {class}
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -27,7 +27,7 @@ class _{class}
/**
* Returns the tab key for the navigation bar
*
* @return string
* @return string|null
*/
public function getTab()
{
@@ -2,9 +2,9 @@
/**
* @brief Moderator Permissions
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief Notification Options
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -52,7 +52,7 @@ class _{class}
* @code
return array(
'title' => "Mark has replied to A Topic", // The notification title
'url' => new \IPS\Http\Url( ... ), // The URL the notification should link to
'url' => \IPS\Http\Url::internal( ... ), // The URL the notification should link to
'content' => "Lorem ipsum dolar sit", // [Optional] Any appropriate content. Do not format this like an email where the text
// explains what the notification is about - just include any appropriate content.
// For example, if the notification is about a post, set this as the body of the post.
@@ -64,7 +64,7 @@ class _{class}
{
return array(
'title' => "Mark has replied to A Topic", // The notification title
'url' => new \IPS\Http\Url( ... ), // The URL the notification should link to
'url' => \IPS\Http\Url::internal( ... ), // The URL the notification should link to
'content' => "Lorem ipsum dolar sit", // [Optional] Any appropriate content. Do not format this like an email where the text
// explains what the notification is about - just include any appropriate content.
// For example, if the notification is about a post, set this as the body of the post.
@@ -2,9 +2,9 @@
/**
* @brief Template Plugin
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief Permissions
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief Profile extension: {class}
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief Background Task
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -24,13 +24,24 @@ if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) )
*/
class _{class}
{
/**
* Parse data before queuing
*
* @param array $data
* @return array
*/
public function preQueueData( $data )
{
return $data;
}
/**
* Run Background Task
*
* @param mixed $data Data as it was passed to \IPS\Task::queue()
* @param int $offset Offset
* @return int|null New offset or NULL if complete
* @throws \OutOfRangeException Indicates offset doesn't exist and thus task is complete
* @param mixed $data Data as it was passed to \IPS\Task::queue()
* @param int $offset Offset
* @return int New offset
* @throws \IPS\Task\Queue\OutOfRangeException Indicates offset doesn't exist and thus task is complete
*/
public function run( $data, $offset )
{
@@ -42,11 +53,22 @@ class _{class}
*
* @param mixed $data Data as it was passed to \IPS\Task::queue()
* @param int $offset Offset
* @return array( 'text' => 'Doing something...', 'complete' => 50 ) Text explaning task and percentage complete
* @return array( 'text' => 'Doing something...', 'complete' => 50 ) Text explaining task and percentage complete
* @throws \OutOfRangeException Indicates offset doesn't exist and thus task is complete
*/
public function getProgress( $data, $offset )
{
return array( 'text' => 'Doing something...', 'complete' => 50 );
}
}
/**
* Perform post-completion processing
*
* @param array $data
* @return void
*/
public function postComplete( $data )
{
}
}
@@ -2,9 +2,9 @@
/**
* @brief Support {class} in sitemaps
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -2,9 +2,9 @@
/**
* @brief Uninstall callback
* @author <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a>
* @copyright (c) 2001 - SVN_YYYY Invision Power Services, Inc.
* @copyright (c) 2001 - 2016 Invision Power Services, Inc.
* @license http://www.invisionpower.com/legal/standards/
* @package IPS Social Suite
* @package IPS Community Suite
{subpackage}
* @since {date}
* @version SVN_VERSION_NUMBER
@@ -43,4 +43,27 @@ class _{class}
public function postUninstall( $application )
{
}
/**
* Code to execute when other applications are uninstalled
*
* @param string $application Application directory
* @return void
* @deprecated This is here for backwards-compatibility - all new code should go in onOtherUninstall
*/
public function onOtherAppUninstall( $application )
{
return $this->onOtherUninstall( $application );
}
/**
* Code to execute when other applications or plugins are uninstalled
*
* @param string $application Application directory
* @param int $plugin Plugin ID
* @return void
*/
public function onOtherUninstall( $application=NULL, $plugin=NULL )
{
}
}
+247 -114
View File
@@ -6,7 +6,7 @@
<table width="100%" cellpadding="15" cellspacing="0" border="0" bgcolor="#f9f9f9" style='color: #5b5b5b; font-size: 13px'>
<tr>
<td dir='{dir}' width="80" valign="top" class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<img src='{$member->photo}' width='80' height='80' style='border: 1px solid #d7d7d7; vertical-align: middle;'>
<img src='{$member->get_photo( true, true )}' width='80' height='80' style='border: 1px solid #d7d7d7; vertical-align: middle;'>
</td>
<td dir='{dir}'>
<table width="100%" cellpadding="0" cellspacing="0" border="0" class='responsive_table'>
@@ -121,12 +121,12 @@
<tr>
<td dir='{dir}' width='20' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>&nbsp;</td>
<td dir='{dir}' width='100' valign='top' align='center' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<img src='{$message->author()->photo}' width='100' height='100' style='border: 1px solid #777777; vertical-align: middle;'>
<img src='{$message->author()->get_photo( true, true )}' width='100' height='100' style='border: 1px solid #777777; vertical-align: middle;'>
</td>
<td dir='{dir}' width='20' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>&nbsp;</td>
<td dir='{dir}' valign='top'>
<div style='line-height: 1.5'>
{$email->parseTextForEmail( $message->post )|raw}
{$email->parseTextForEmail( $message->post, $email->language )|raw}
</div>
<br />
<hr style='height: 0px; border-top: 1px solid #f0f0f0;' />
@@ -220,7 +220,7 @@
{{if $warning->mq == -1}}
{$email->language->addToStack("indefinitely", FALSE)}
{{else}}
{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->mq ), 2 )"}
{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->mq ), 2, $email->language )"}
{{endif}}
</li>
{{endif}}
@@ -230,7 +230,7 @@
{{if $warning->rpa == -1}}
{$email->language->addToStack("indefinitely", FALSE)}
{{else}}
{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->rpa ), 2 )"}
{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->rpa ), 2, $email->language )"}
{{endif}}
</li>
{{endif}}
@@ -240,7 +240,7 @@
{{if $warning->suspend == -1}}
{$email->language->addToStack("indefinitely", FALSE)}
{{else}}
{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->suspend ), 2 )"}
{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->suspend ), 2, $email->language )"}
{{endif}}
</li>
{{endif}}
@@ -251,13 +251,13 @@
{{if $warning->note_member}}
<tr class='responsive_row'>
<td dir='{dir}' width='150' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;" valign='top'><strong>{$email->language->addToStack("email_warn_note_member", FALSE)}:</strong></td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">{$email->parseTextForEmail( $warning->note_member )|raw}</td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">{$email->parseTextForEmail( $warning->note_member, $email->language )|raw}</td>
</tr>
{{endif}}
{{if $warning->note_mods and member.modPermission('mod_see_warn')}}
<tr class='responsive_row'>
<td dir='{dir}' width='150' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;" valign='top'><strong>{$email->language->addToStack("email_warn_note_moderator", FALSE)}:</strong></td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">{$email->parseTextForEmail( $warning->note_mods )|raw}</td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">{$email->parseTextForEmail( $warning->note_mods, $email->language )|raw}</td>
</tr>
{{endif}}
</table>
@@ -299,13 +299,13 @@
{{endif}}
{{endif}}
{{if $warning->mq}}
{$email->language->addToStack("moderation_modq", FALSE)} - {{if $warning->mq == -1}}{$email->language->addToStack("indefinitely", FALSE)}{{else}}{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->mq ), 2 )"}{{endif}}
{$email->language->addToStack("moderation_modq", FALSE)} - {{if $warning->mq == -1}}{$email->language->addToStack("indefinitely", FALSE)}{{else}}{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->mq ), 2, $email->language )"}{{endif}}
{{endif}}
{{if $warning->rpa}}
{$email->language->addToStack("moderation_nopost", FALSE)} - {{if $warning->rpa == -1}}{$email->language->addToStack("indefinitely", FALSE)}{{else}}{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->rpa ), 2 )"}{{endif}}
{$email->language->addToStack("moderation_nopost", FALSE)} - {{if $warning->rpa == -1}}{$email->language->addToStack("indefinitely", FALSE)}{{else}}{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->rpa ), 2, $email->language )"}{{endif}}
{{endif}}
{{if $warning->suspend}}
{$email->language->addToStack("moderation_banned", FALSE)} - {{if $warning->suspend == -1}}{$email->language->addToStack("indefinitely", FALSE)}{{else}}{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->suspend ), 2 )"}{{endif}}
{$email->language->addToStack("moderation_banned", FALSE)} - {{if $warning->suspend == -1}}{$email->language->addToStack("indefinitely", FALSE)}{{else}}{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->suspend ), 2, $email->language )"}{{endif}}
{{endif}}
{{endif}}
=====
@@ -386,12 +386,12 @@
<tr>
<td dir='{dir}' width='20' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>&nbsp;</td>
<td dir='{dir}' width='100' valign='top' align='center' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<img src='{$message->author()->photo}' width='100' height='100' style='border: 1px solid #777777; vertical-align: middle;'>
<img src='{$message->author()->get_photo( true, true )}' width='100' height='100' style='border: 1px solid #777777; vertical-align: middle;'>
</td>
<td dir='{dir}' width='20' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>&nbsp;</td>
<td dir='{dir}' valign='top'>
<div style='line-height: 1.5'>
{$email->parseTextForEmail( $message->post )|raw}
{$email->parseTextForEmail( $message->post, $email->language )|raw}
</div>
<br />
<hr style='height: 0px; border-top: 1px solid #f0f0f0;' />
@@ -409,8 +409,10 @@
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>notification_unapproved_content</template_name><template_content_html><![CDATA[
{{if $content->author()->member_id}}
{$email->language->addToStack("email_new_content_unapproved", FALSE, array( 'sprintf' => array( $content->author()->url(), $content->author()->name, $content->indefiniteArticle( $email->language ) ) ) )} <a href='{$content->url()}'>{{if $content instanceof \IPS\Content\Comment OR $content instanceof \IPS\Content\Review}}{$content->item()->mapped('title')}{{else}}{$content->mapped('title')}{{endif}}</a>
{{elseif $content->author()->real_name}}
{$email->language->addToStack("email_new_content_unapproved_guest", FALSE, array( 'sprintf' => array( $email->language->addToStack( 'guest_name_shown', NULL, array( 'sprintf' => array( $content->author()->real_name ) ) ), $content->indefiniteArticle( $email->language ) ) ) )} <a href='{$content->url()}'>{{if $content instanceof \IPS\Content\Comment OR $content instanceof \IPS\Content\Review}}{$content->item()->mapped('title')}{{else}}{$content->mapped('title')}{{endif}}</a>
{{else}}
{$email->language->addToStack("email_new_content_unapproved_guest", FALSE, array( 'sprintf' => array( $content->author()->name, $content->indefiniteArticle( $email->language ) ) ) )} <a href='{$content->url()}'>{{if $content instanceof \IPS\Content\Comment OR $content instanceof \IPS\Content\Review}}{$content->item()->mapped('title')}{{else}}{$content->mapped('title')}{{endif}}</a>
{$email->language->addToStack("email_new_content_unapproved_guest", FALSE, array( 'sprintf' => array( $email->language->addToStack( 'guest_name_shown', NULL, array( 'sprintf' => array( $email->language->addToStack('guest') ) ) ), $content->indefiniteArticle( $email->language ) ) ) )} <a href='{$content->url()}'>{{if $content instanceof \IPS\Content\Comment OR $content instanceof \IPS\Content\Review}}{$content->item()->mapped('title')}{{else}}{$content->mapped('title')}{{endif}}</a>
{{endif}}
<br />
@@ -419,7 +421,7 @@
<table width='100%' cellpadding='0' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' width='40' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<img src='{$content->author()->photo}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
<img src='{$content->author()->get_photo( true, true )}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
</td>
<td dir='{dir}' width='30' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<br />
@@ -433,13 +435,13 @@
{{if ( ( $content instanceof \IPS\Content\Comment or $content instanceof \IPS\Content\Review ) and $container = $content->item()->containerWrapper() ) or ( $content instanceof \IPS\Content\Item and $container = $content->containerWrapper() )}}
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px; color: #8d8d8d">
{$email->language->addToStack("email_posted_in", FALSE, array( 'sprintf' => array( $container->_title ) ) )}
{$email->language->addToStack("email_posted_in", FALSE, array( 'sprintf' => array( $email->language->addToStack( $container->_titleLanguageKey ) ) ) )}
</td>
</tr>
{{endif}}
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px;">
{$email->parseTextForEmail( $content->content() )|raw}
{$email->parseTextForEmail( $content->content(), $email->language )|raw}
</td>
</tr>
<tr>
@@ -456,18 +458,52 @@
</table>
<br /><br />
<em style='color: #8c8c8c'>&mdash; {setting="board_name"}</em>]]></template_content_html><template_data>$content, $member, $email</template_data><template_content_plaintext><![CDATA[
{$email->language->addToStack("email_new_content_unapproved_plain", FALSE, array( 'sprintf' => array( $content->author()->name, $content->indefiniteArticle( $email->language ) ) ) )} {$content->mapped('title')}
{$email->language->addToStack("email_new_content_unapproved_plain", FALSE, array( 'sprintf' => array( $content->author()->real_name ? $email->language->addToStack( 'guest_name_shown', NULL, array( 'sprintf' => array( $content->author()->real_name ) ) ) : $email->language->addToStack( 'guest_name_shown', NULL, array( 'sprintf' => array( $email->language->addToStack('guest') ) ) ), $content->indefiniteArticle( $email->language ) ) ) )} {$content->mapped('title')}
{$email->language->addToStack("go_to_this_x", FALSE, array( 'sprintf' => array( mb_strtolower( $email->language->addToStack( $content::$title, FALSE ) ) ) ) )}: {$content->url()}
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>digests__areaWrapper</template_name><template_content_html><![CDATA[<!-- Add item counts and link to remaining items on site -->
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>account_locked</template_name><template_content_html><![CDATA[<br />
{$email->language->addToStack("email_account_locked", FALSE, array( 'sprintf' => array( \IPS\Settings::i()->ipb_bruteforce_attempts, $location ) ) )}
<br /><br />
{$email->language->addToStack("email_account_locked_change_password")}
<br /><br />
{{if $unlockTime}}
{$email->language->addToStack("email_account_locked_safely_ignore", FALSE, array( 'sprintf' => $unlockTime ) )}
{{else}}
{$email->language->addToStack("email_account_locked_no_unlock")}
{{endif}}
<br /><br />
<table width='100%' cellpadding='15' cellspacing='0' border='0' style='background: #f9f9f9;'>
<tr>
<td dir='{dir}' align='center'>
<a href='{url="app=core&module=system&controller=settings&area=password" seoTemplate="settings_password" base="front"}' style="color: #ffffff; font-family: 'Helvetica Neue', helvetica, sans-serif; text-decoration: none; font-size: 14px; background: {setting="email_color"}; line-height: 32px; padding: 0 10px; display: inline-block; border-radius: 3px;">{$email->language->addToStack("email_reset_password", FALSE)}</a>
</td>
</tr>
</table>]]></template_content_html><template_data>$member, $location, $unlockTime=NULL, $email</template_data><template_content_plaintext><![CDATA[{$email->language->addToStack("email_account_locked", FALSE, array( 'sprintf' => array( \IPS\Settings::i()->ipb_bruteforce_attempts, $location ) ) )}
{$email->language->addToStack("email_account_locked_change_password")}
{{if $unlockTime}}
{$email->language->addToStack("email_account_locked_safely_ignore", FALSE, array( 'sprintf' => $unlockTime ) )}
{{else}}
{$email->language->addToStack("email_account_locked_no_unlock")}
{{endif}}
{$email->language->addToStack("change_password", FALSE)}: {url="app=core&module=system&controller=settings&area=password" seoTemplate="settings_password" base="front"}
]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>unsubscribeDigest</template_name><template_content_html><![CDATA[<tr>
<td dir='{dir}' valign="top"><img src='{setting="base_url"}applications/core/interface/email/spacer.png' width='1' height='1' alt=''></td>
<td dir='{dir}' valign='middle' align='center' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 12px; line-height: 18px; padding-left: 10px;">
{$email->language->addToStack("unsubscribe_blurb", FALSE)} <a href="{url="app=core&module=system&controller=followed&filter=digest" base="front" seoTemplate="followed_content"}" style='color: #4a8aca; text-decoration: none; display: inline-block'>{$email->language->addToStack( 'adjust_digest_prefs', FALSE )}</a>.
<br />
</td>
</tr>]]></template_content_html><template_data>$member, $email</template_data><template_content_plaintext><![CDATA[{$email->language->addToStack("unsubscribe_blurb", FALSE)} {$email->language->addToStack( 'adjust_digest_prefs', FALSE )}: {url="app=core&module=system&controller=followed&filter=digest" base="front" seoTemplate="followed_content"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>digests__areaWrapper</template_name><template_content_html><![CDATA[<!-- Add item counts and link to remaining items on site -->
<table width='100%' cellpadding='15' cellspacing='0' border='0' style='background: #f5f5f5'>
<tr>
<td dir='{dir}'>
<h2 style='font-family: "Helvetica Neue", helvetica, sans-serif; margin: 0; font-size: 18px; font-weight: 500'>{$email->language->addToStack("digest_area_$area", FALSE)}</h2>
{{$langKey = "digest_area_{$app}_{$area}";}}
<h2 style='font-family: "Helvetica Neue", helvetica, sans-serif; margin: 0; font-size: 18px; font-weight: 500'>{$email->language->addToStack( $langKey, FALSE)}</h2>
</td>
<td dir='{dir}' width='30%' align='right' style='font-family: "Helvetica Neue", helvetica, sans-serif; color: #8c8c8c; font-size: 12px'>
{{if $count < $total}}{$email->language->addToStack("digest_showing_first_x", FALSE, array( 'pluralize' => array( $count ) ) )}{{else}}{$email->language->addToStack("digest_showing_x", FALSE, array( 'pluralize' => array( $count ) ) )}{{endif}} (<a href='{url="app=core&module=system&controller=followed&type={$app}_{$area}" seoTemplate="followed_content" base="front"}' style='text-decoration: none'>{$email->language->addToStack("digest_see_all", FALSE)}</a>)
{$email->language->addToStack("digest_showing_x", FALSE, array( 'pluralize' => array( $count ) ) )} (<a href='{url="app=core&module=system&controller=followed&type={$app}_{$area}" seoTemplate="followed_content" base="front"}' style='text-decoration: none'>{$email->language->addToStack("digest_see_all", FALSE)}</a>)
</td>
</tr>
</table>
@@ -475,7 +511,7 @@
<table width='100%' cellpadding='15' cellspacing='0' border='0'>
{$output|raw}
</table>
<br /><br />]]></template_content_html><template_data>$output, $app, $area, $max, $count, $total, $email</template_data><template_content_plaintext>{$output|raw}
<br /><br />]]></template_content_html><template_data>$output, $app, $area, $max, $count, $email</template_data><template_content_plaintext>{$output|raw}
</template_content_plaintext></template><template><template_app>core</template_app><template_name>upgrade</template_name><template_content_html><![CDATA[
{$email->language->addToStack("dashboard_version_info", FALSE, array( 'sprintf' => $version ))}
<br />
@@ -509,14 +545,14 @@
{$email->language->addToStack("upgrade_now")}: {url="&app=core&module=system&controller=upgrade" base="admin"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>notification_new_likes</template_name><template_content_html><![CDATA[
{{$item = ( $comment instanceof \IPS\Content\Item ) ? $comment : $comment->item();}}
{$email->language->addToStack("notification__new_likes", FALSE, array( 'sprintf' => array( ( $comment->author()->group['gbw_view_reps'] ) ? $member->name : $email->language->get( 'notifications_anonymous' ), $comment->indefiniteArticle( $email->language ) ) ) )} <a href='{$item->url()}'>{$item->mapped('title')}</a>
{$email->language->addToStack("email_new_likes", FALSE, array( 'sprintf' => array( ( $comment->author()->group['gbw_view_reps'] ) ? $member->name : $email->language->get( 'notifications_anonymous' ), $comment->indefiniteArticle( $email->language ) ) ) )} <a href='{$item->url()}'>{$item->mapped('title')}</a>
<br />
<br />
<table width='100%' cellpadding='0' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' width='40' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<img src='{$item->author()->photo}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
<img src='{$comment->author()->get_photo( true, true )}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
</td>
<td dir='{dir}' width='30' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<br />
@@ -529,7 +565,7 @@
<table width='100%' cellpadding='5' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px;">
{$email->parseTextForEmail( $comment->content() )|raw}
{$email->parseTextForEmail( $comment->content(), $email->language )|raw}
</td>
</tr>
<tr>
@@ -546,10 +582,53 @@
</table>
<br /><br />
<em style='color: #8c8c8c'>&mdash; {setting="board_name"}</em>]]></template_content_html><template_data>$comment, $member, $email</template_data><template_content_plaintext><![CDATA[
{{$item = ( $comment instanceof \IPS\Content\Item ) ? $comment : $comment->item();}}{$email->language->addToStack("notification__new_likes", FALSE, array( 'sprintf' => array( ( $comment->author()->group['gbw_view_reps'] ) ? $member->name : $email->language->get( 'notifications_anonymous' ), $item->indefiniteArticle( $email->language ) ) ) )} {$item->mapped('title')}
{{$item = ( $comment instanceof \IPS\Content\Item ) ? $comment : $comment->item();}}{$email->language->addToStack("email_new_likes", FALSE, array( 'sprintf' => array( ( $comment->author()->group['gbw_view_reps'] ) ? $member->name : $email->language->get( 'notifications_anonymous' ), $item->indefiniteArticle( $email->language ) ) ) )} {$item->mapped('title')}
{$email->language->addToStack("go_to_this_x", FALSE, array( 'sprintf' => array( mb_strtolower( $email->language->addToStack( $item::$title, FALSE ) ) ) ) )}: {$item->url()}
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>email_address_changed</template_name><template_content_html><![CDATA[
{$email->language->addToStack("email_email_address_changed", FALSE, array( 'sprintf' => \IPS\Settings::i()->board_name ) )}
<br />
<br />
<table width='100%' cellpadding='0' cellspacing='0' border='0' style='background: #f9f9f9;'>
<tr>
<td dir='{dir}' height='20' style='line-height: 20px'><img src="{setting="base_url"}applications/core/interface/email/spacer.png" alt='' width="1" height="1" /></td>
</tr>
<tr>
<td dir='{dir}' align='center' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 17px;"><strong>{$email->language->addToStack("email_new_email", FALSE)}</strong></td>
</tr>
<tr>
<td dir='{dir}' height='6' style='line-height: 6px'><img src="{setting="base_url"}applications/core/interface/email/spacer.png" alt='' width="1" height="1" /></td>
</tr>
<tr>
<td dir='{dir}' align='center' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 22px;">{$member->email}</td>
</tr>
<tr>
<td dir='{dir}' height='20' style='line-height: 20px'><img src="{setting="base_url"}applications/core/interface/email/spacer.png" alt='' width="1" height="1" /></td>
</tr>
<tr>
<td dir='{dir}' align='center' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 17px;"><strong>{$email->language->addToStack("email_old_email", FALSE)}</strong></td>
</tr>
<tr>
<td dir='{dir}' height='6' style='line-height: 6px'><img src="{setting="base_url"}applications/core/interface/email/spacer.png" alt='' width="1" height="1" /></td>
</tr>
<tr>
<td dir='{dir}' align='center' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 22px;">{$oldEmail}</td>
</tr>
<tr>
<td dir='{dir}' height='6' style='line-height: 6px'><img src="{setting="base_url"}applications/core/interface/email/spacer.png" alt='' width="1" height="1" /></td>
</tr>
</table>
<br /><br />
<em style='color: #8c8c8c'>&mdash; {setting="board_name"}</em>]]></template_content_html><template_data>$member, $oldEmail, $email</template_data><template_content_plaintext><![CDATA[{$email->language->addToStack("email_email_address_changed", FALSE, array( 'sprintf' => \IPS\Settings::i()->board_name ) )}
=====
{$email->language->addToStack("email_new_email", FALSE)}: {$member->email}
{$email->language->addToStack("email_old_email", FALSE)}: {$oldEmail}
=====
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>notification_unapproved_content_bulk</template_name><template_content_html><![CDATA[
{{if $member->member_id}}
{$email->language->addToStack("email_new_content_unapproved_bulk", FALSE, array( 'sprintf' => array( $member->url(), $member->name, $email->language->addToStack( $contentClass::$title . '_pl', FALSE ) ) ) )} <a href='{$container->url()}'>{$container->_title}</a>
@@ -568,7 +647,7 @@
<table width='100%' cellpadding='0' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' width='40' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<img src='{$member->photo}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
<img src='{$member->get_photo( true, true )}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
</td>
<td dir='{dir}' width='30' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<br />
@@ -581,12 +660,12 @@
<table width='100%' cellpadding='5' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px;">
<strong>{$email->language->addToStack("email_said", FALSE, array( 'sprintf' => array( $name ) ) )}</strong>
<strong>{$email->language->addToStack("email_contact_said", FALSE, array( 'sprintf' => array( $name, $fromEmail ) ) )}</strong>
</td>
</tr>
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px;">
{$email->parseTextForEmail( $message )|raw}
{$email->parseTextForEmail( $message, $email->language )|raw}
</td>
</tr>
</table>
@@ -597,12 +676,12 @@
</tr>
</table>
<br /><br />
<em style='color: #8c8c8c'>&mdash; {setting="board_name"}</em>]]></template_content_html><template_data>$member, $name, $message, $email</template_data><template_content_plaintext><![CDATA[
<em style='color: #8c8c8c'>&mdash; {setting="board_name"}</em>]]></template_content_html><template_data>$member, $name, $fromEmail, $message, $email</template_data><template_content_plaintext><![CDATA[
{$email->language->addToStack("email_contact_form", FALSE)}
----
{$email->language->addToStack("email_said", FALSE, array( 'sprintf' => array( $name ) ) )}
{$email->language->addToStack("email_contact_said", FALSE, array( 'sprintf' => array( $name, $fromEmail ) ) )}
{expression="\IPS\Email::buildPlaintextBody( $message )"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>notification_profile_comment</template_name><template_content_html><![CDATA[
{$email->language->addToStack("email_new_profile_comment", FALSE, array( 'sprintf' => array( $comment->author()->url(), $comment->author()->name ) ) )}
@@ -614,7 +693,7 @@
<table width='100%' cellpadding='0' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' width='40' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<img src='{$comment->author()->photo}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
<img src='{$comment->author()->get_photo( true, true )}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
</td>
<td dir='{dir}' width='30' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<br />
@@ -632,7 +711,7 @@
</tr>
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px;">
{$email->parseTextForEmail( $comment->content() )|raw}
{$email->parseTextForEmail( $comment->content(), $email->language )|raw}
</td>
</tr>
<tr>
@@ -657,11 +736,21 @@
{$email->language->addToStack("email_ignore_user_pm", FALSE, array( 'sprintf' => array( $comment->author()->name ) ) )}
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>notification_new_content</template_name><template_content_html><![CDATA[
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>unsubscribeNotification</template_name><template_content_html><![CDATA[{{if $member instanceof \IPS\Member}}
<tr>
<td dir='{dir}' valign="top"><img src='{setting="base_url"}applications/core/interface/email/spacer.png' width='1' height='1' alt=''></td>
<td dir='{dir}' valign='middle' align='center' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 12px; line-height: 18px; padding-left: 10px;">
{$email->language->addToStack("unsubscribe_blurb", FALSE)} <a href="{url="app=core&module=system&controller=notifications&do=options&type={$key}" seoTemplate="notifications_options"}" style='color: #4a8aca; text-decoration: none; display: inline-block'>{$email->language->addToStack( 'adjust_notification_prefs', FALSE )}</a>.
<br />
</td>
</tr>
{{endif}}]]></template_content_html><template_data>$key, $member, $email</template_data><template_content_plaintext><![CDATA[{$email->language->addToStack("unsubscribe_blurb", FALSE)} {$email->language->addToStack( 'adjust_notification_prefs', FALSE )}: {url="app=core&module=system&controller=notifications&do=options&type={$key}" seoTemplate="notifications_options"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>notification_new_content</template_name><template_content_html><![CDATA[
{{if $content->author()->member_id}}
{$email->language->addToStack("email_new_content", FALSE, array( 'sprintf' => array( $content->author()->url(), $content->author()->name, $content->indefiniteArticle( $email->language ) ) ) )} <a href='{$content->url()}'>{$content->mapped('title')}</a>
{{elseif $content->author()->real_name}}
{$email->language->addToStack("email_new_content_guest", FALSE, array( 'sprintf' => array( $email->language->addToStack( 'guest_name_shown', NULL, array( 'sprintf' => array( $content->author()->real_name ) ) ), $content->author()->name, $content->indefiniteArticle( $email->language ) ) ) )} <a href='{$content->url()}'>{$content->mapped('title')}</a>
{{else}}
{$email->language->addToStack("email_new_content_guest", FALSE, array( 'sprintf' => array( $content->author()->name, $content->indefiniteArticle( $email->language ) ) ) )} <a href='{$content->url()}'>{$content->mapped('title')}</a>
{$email->language->addToStack("email_new_content_guest", FALSE, array( 'sprintf' => array( $email->language->addToStack( 'guest_name_shown', NULL, array( 'sprintf' => array( $email->language->addToStack('guest') ) ) ), $content->indefiniteArticle( $email->language ) ) ) )} <a href='{$content->url()}'>{$content->mapped('title')}</a>
{{endif}}
<br />
@@ -670,7 +759,7 @@
<table width='100%' cellpadding='0' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' width='40' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<img src='{$content->author()->photo}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
<img src='{$content->author()->get_photo( true, true )}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
</td>
<td dir='{dir}' width='30' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<br />
@@ -683,12 +772,12 @@
<table width='100%' cellpadding='5' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px; color: #8d8d8d">
{$email->language->addToStack("email_posted_in", FALSE, array( 'sprintf' => array( $content->container()->_title ) ) )}
{$email->language->addToStack("email_posted_in", FALSE, array( 'sprintf' => array( $email->language->addToStack( $content->container()->_titleLanguageKey ) ) ) )}
</td>
</tr>
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px;">
{$email->parseTextForEmail( $content->content() )|raw}
{$email->parseTextForEmail( $content->content(), $email->language )|raw}
</td>
</tr>
<tr>
@@ -756,13 +845,13 @@
<table width='100%' cellpadding='15' cellspacing='0' border='0' style='background: #f9f9f9;'>
<tr>
<td dir='{dir}' align='center'>
<a href='{url="app=core&module=system&controller=lostpass&do=validate&vid={$vid}&mid={$member->member_id}" seoTemplate="lost_password" base="front"}' style="color: #ffffff; font-family: 'Helvetica Neue', helvetica, sans-serif; text-decoration: none; font-size: 14px; background: {setting="email_color"}; line-height: 32px; padding: 0 10px; display: inline-block; border-radius: 3px;">{$email->language->addToStack("email_reset_password", FALSE)}</a>
<a href='{url="app=core&module=system&controller=lostpass&do=validate&vid={$vid}&mid={$member->member_id}" seoTemplate="lostpassword" base="front"}' style="color: #ffffff; font-family: 'Helvetica Neue', helvetica, sans-serif; text-decoration: none; font-size: 14px; background: {setting="email_color"}; line-height: 32px; padding: 0 10px; display: inline-block; border-radius: 3px;">{$email->language->addToStack("email_reset_password", FALSE)}</a>
</td>
</tr>
</table>]]></template_content_html><template_data>$member, $vid, $email</template_data><template_content_plaintext><![CDATA[{$email->language->addToStack("email_lost_pass_plain", FALSE)}
=====
{$email->language->addToStack("email_reset_password", FALSE)}: {url="app=core&module=system&controller=lostpass&do=validate&vid={$vid}&mid={$member->member_id}" seoTemplate="lost_password" plain="true" base="front"}
{$email->language->addToStack("email_reset_password", FALSE)}: {url="app=core&module=system&controller=lostpass&do=validate&vid={$vid}&mid={$member->member_id}" seoTemplate="lostpassword" plain="true" base="front"}
=====
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>admin_reg</template_name><template_content_html><![CDATA[
@@ -773,26 +862,35 @@
<tr>
<td dir='{dir}'>
<table width='100%' cellpadding='0' cellspacing='0' border='0' style='background: #f9f9f9;' class='responsive_table'>
<tr class='responsive_row'>
<td dir='{dir}' width='150' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;"><strong>{$email->language->addToStack("username", FALSE)}:</strong></td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">{$member->name}</td>
</tr>
<tr class='responsive_row'>
<td dir='{dir}' width='150' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;"><strong>{$email->language->addToStack("email_address", FALSE)}:</strong></td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">{$member->email}</td>
</tr>
<tr class='responsive_row'>
<td dir='{dir}' width='150' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;"><strong>{$email->language->addToStack("password", FALSE)}:</strong></td>
<td dir='{dir}' style="font-family: monaco, 'Courier New', courier, monospace; font-size: 14px;">{$password}</td>
</tr>
{{if $member->name}}
<tr class='responsive_row'>
<td dir='{dir}' width='150' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;"><strong>{$email->language->addToStack("username", FALSE)}:</strong></td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">{$member->name}</td>
</tr>
{{endif}}
{{if $member->email}}
<tr class='responsive_row'>
<td dir='{dir}' width='150' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;"><strong>{$email->language->addToStack("email_address", FALSE)}:</strong></td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">{$member->email}</td>
</tr>
{{endif}}
{{if $password}}
<tr class='responsive_row'>
<td dir='{dir}' width='150' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;"><strong>{$email->language->addToStack("password", FALSE)}:</strong></td>
<td dir='{dir}' style="font-family: monaco, 'Courier New', courier, monospace; font-size: 14px;">{$password}</td>
</tr>
{{endif}}
</table>
</td>
</tr>
</table>
<br />
{$email->language->addToStack("email_plz_change_password", FALSE)}
<br />
{{if $password}}
{$email->language->addToStack("email_plz_change_password", FALSE)}
<br />
{{endif}}
<br />
<a href='{setting="base_url"}' style="color: #ffffff; font-family: 'Helvetica Neue', helvetica, sans-serif; text-decoration: none; font-size: 12px; background: {setting="email_color"}; line-height: 32px; padding: 0 10px; display: inline-block; border-radius: 3px;">{expression="$email->language->addToStack( 'email_go_to_site', FALSE, array( 'sprintf' => array( \IPS\Settings::i()->board_name ) ) )"}</a>
@@ -801,15 +899,15 @@
<em style='color: #8c8c8c'>&mdash; {setting="board_name"}</em>]]></template_content_html><template_data>$member, $password, $email</template_data><template_content_plaintext><![CDATA[{expression="$email->language->addToStack( 'email_admin_reg', FALSE, array( 'sprintf' => array( \IPS\Settings::i()->board_name ) ) )"}
=====
{$email->language->addToStack("username", FALSE)}: {$member->name}
{$email->language->addToStack("email_address", FALSE)}: {$member->email}
{$email->language->addToStack("password", FALSE)}: {$password}
{{if $member->name}}{$email->language->addToStack("username", FALSE)}: {$member->name}{{endif}}
{{if $member->email}}{$email->language->addToStack("email_address", FALSE)}: {$member->email}{{endif}}
{{if $password}}{$email->language->addToStack("password", FALSE)}: {$password}{{endif}}
=====
{expression="$email->language->addToStack( 'email_go_to_site', FALSE, array( 'sprintf' => array( \IPS\Settings::i()->board_name ) ) )"}: {setting="base_url"}
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>notification_quote</template_name><template_content_html><![CDATA[
{{$item = $comment->item();}}
{{$item = $comment instanceof \IPS\Content\Item ? $comment : $comment->item();}}
{$email->language->addToStack("email_quoted_you", FALSE, array( 'sprintf' => array( $comment->author()->url(), $comment->author()->name, $item->indefiniteArticle( $email->language ) ) ) )}
@@ -818,7 +916,7 @@
<table width='100%' cellpadding='0' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' width='40' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<img src='{$comment->author()->photo}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
<img src='{$comment->author()->get_photo( true, true )}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
</td>
<td dir='{dir}' width='30' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<br />
@@ -836,7 +934,7 @@
</tr>
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px; -ms-word-break: break-all; word-break: break-all; word-break: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; -ms-hyphens: auto; hyphens: auto;">
{$email->parseTextForEmail( $comment->content() )|raw}
{$email->parseTextForEmail( $comment->content(), $email->language )|raw}
</td>
</tr>
<tr>
@@ -853,24 +951,24 @@
</table>
<br /><br />
<em style='color: #8c8c8c'>&mdash; {setting="board_name"}</em>]]></template_content_html><template_data>$comment, $email</template_data><template_content_plaintext><![CDATA[
{{$item = $comment->item();}}{$email->language->addToStack("email_quoted_you_plain", FALSE, array( 'sprintf' => array( $comment->author()->name, $item->indefiniteArticle( $email->language ) ) ) )}
{{$item = $comment instanceof \IPS\Content\Item ? $comment : $comment->item();}}{$email->language->addToStack("email_quoted_you_plain", FALSE, array( 'sprintf' => array( $comment->author()->name, $item->indefiniteArticle( $email->language ) ) ) )}
{$email->language->addToStack("go_to_this_x", FALSE, array( 'sprintf' => array( mb_strtolower( $email->language->addToStack( $comment::$title, FALSE ) ) ) ) )}: {$comment->url()}
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>notification_new_content_bulk</template_name><template_content_html><![CDATA[{{if $member->member_id}}
{$email->language->addToStack("email_new_content_bulk", FALSE, array( 'sprintf' => array( $member->url(), $member->name, $email->language->addToStack( $contentClass::$title . '_pl', FALSE ) ) ) )} <a href='{$container->url()}'>{$container->_title}</a>
{$email->language->addToStack("email_new_content_bulk", FALSE, array( 'sprintf' => array( $member->url(), $member->name, $email->language->addToStack( $contentClass::$title . '_pl_lc', FALSE ) ) ) )} <a href='{$container->url()}'>{$container->_title}</a>
{{else}}
{$email->language->addToStack("email_new_content_bulk_guest", FALSE, array( 'sprintf' => array( $member->name, $email->language->addToStack( $contentClass::$title . '_pl', FALSE ) ) ) )} <a href='{$container->url()}'>{$container->_title}</a>
{$email->language->addToStack("email_new_content_bulk_guest", FALSE, array( 'sprintf' => array( $member->name, $email->language->addToStack( $contentClass::$title . '_pl_lc', FALSE ) ) ) )} <a href='{$container->url()}'>{$container->_title}</a>
{{endif}}
<br /><br />
<em style='color: #8c8c8c'>&mdash; {setting="board_name"}</em>]]></template_content_html><template_data>$container, $member, $contentClass, $email</template_data><template_content_plaintext><![CDATA[{$email->language->addToStack("email_new_content_bulk_plain", FALSE, array( 'sprintf' => array( $member->name, $email->language->addToStack( $contentClass::$title . '_pl', FALSE ) ) ) )} {$container->_title}
<em style='color: #8c8c8c'>&mdash; {setting="board_name"}</em>]]></template_content_html><template_data>$container, $member, $contentClass, $email</template_data><template_content_plaintext><![CDATA[{$email->language->addToStack("email_new_content_bulk_plain", FALSE, array( 'sprintf' => array( $member->name, $email->language->addToStack( $contentClass::$title . '_pl_lc', FALSE ) ) ) )} {$container->_title}
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>registration_notify</template_name><template_content_html><![CDATA[
{$email->language->addToStack("email_registration_notify", FALSE, array( 'sprintf' => array( \IPS\Settings::i()->board_name ) ) )}
<br />
<br />
{{if \IPS\Settings::i()->reg_auth_type == 'admin'}}
{{if \IPS\Settings::i()->reg_auth_type == 'admin' or \IPS\Settings::i()->reg_auth_type == 'admin_user'}}
<strong style="color: #a72336; font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">{$email->language->addToStack("email_admin_approval_msg", FALSE)}</strong>
<br /><br />
{{endif}}
@@ -894,7 +992,7 @@
{{foreach $fields as $field => $data}}
<tr class='responsive_row'>
<td dir='{dir}' width='150' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;" valign='top'><strong>{$email->language->addToStack("core_p" . $field, FALSE)}:</strong></td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">{$email->parseTextForEmail( $data )|raw}</td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">{$email->parseTextForEmail( $data, $email->language )|raw}</td>
</tr>
{{endforeach}}
{{endif}}
@@ -910,7 +1008,7 @@
<em style='color: #8c8c8c'>&mdash; {setting="board_name"}</em>]]></template_content_html><template_data>$member, $fields, $email</template_data><template_content_plaintext><![CDATA[
{$email->language->addToStack("email_registration_notify", FALSE, array( 'sprintf' => array( \IPS\Settings::i()->board_name ) ) )}
{{if \IPS\Settings::i()->reg_auth_type == 'admin'}}**{$email->language->addToStack("email_admin_approval_msg", FALSE)}**{{endif}}
{{if \IPS\Settings::i()->reg_auth_type == 'admin' or \IPS\Settings::i()->reg_auth_type == 'admin_user'}}**{$email->language->addToStack("email_admin_approval_msg", FALSE)}**{{endif}}
{$email->language->addToStack("go_to_this_user", FALSE, array( 'sprintf' => array( $member->name ) ) )}: {setting="base_url"}
@@ -1037,7 +1135,7 @@
</tr>
<tr>
<td dir='{dir}' valign="top"><img src='{setting="base_url"}applications/core/interface/email/spacer.png' width='1' height='1' alt=''></td>
<td dir='{dir}' valign='middle' align='left' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 30px; font-weight: 300; color: #262e33; line-height: 48px; padding-left: 10px;">
<td dir='{dir}' valign='middle' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 30px; font-weight: 300; color: #262e33; line-height: 48px; padding-left: 10px;">
<a href='{setting="base_url"}' style='text-decoration: none; color: #262e33; border: 0;'>
{{$imgDims=NULL;}}
{{if \IPS\Settings::i()->email_logo}}
@@ -1071,7 +1169,7 @@
<strong style='font-size: 17px'>{$email->language->addToStack("email_greeting_member", FALSE, array( 'sprintf' => array( $member->name ) ) )}</strong>
<br />
{{elseif $placeholderRecipient}}
<strong style='font-size: 17px'>{$email->language->addToStack("email_greeting_member", FALSE, array( 'sprintf' => array( '*|recipient_name|*' ) ) )}</strong>
<strong style='font-size: 17px'>{$email->language->addToStack("email_greeting_member", FALSE, array( 'sprintf' => array( '*|member_name|*' ) ) )}</strong>
<br />
{{endif}}
@@ -1087,15 +1185,8 @@
<td dir='{dir}'><img src='{setting="base_url"}applications/core/interface/email/spacer.png' width='1' height='1' alt=''></td>
<td dir='{dir}'><img src='{setting="base_url"}applications/core/interface/email/spacer.png' width='1' height='1' alt=''></td>
</tr>
{{if isset( $unsubscribe['link'] ) and $unsubscribe['link']}}
<tr>
<td dir='{dir}' valign="top"><img src='{setting="base_url"}applications/core/interface/email/spacer.png' width='1' height='1' alt=''></td>
<td dir='{dir}' valign='middle' align='center' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 12px; line-height: 18px; padding-left: 10px;">
{{if isset( $unsubscribe['blurb'] ) and $unsubscribe['blurb']}}{$unsubscribe['blurb']}<br>{{endif}}
{$email->language->addToStack("unsubscribe_blurb", FALSE)} {{if $unsubscribe['link']}}<a href="{$unsubscribe['link']}" style='color: #4a8aca; text-decoration: none; display: inline-block'>{{endif}}{{if $unsubscribe['text']}}{$email->language->addToStack($unsubscribe['text'], FALSE)}{{else}}{$email->language->addToStack("unsubscribe", FALSE)}{{endif}}{{if $unsubscribe['link']}}</a>{{endif}}{{if isset( $unsubscribe['orlink'] ) and $unsubscribe['orlink']}} {$email->language->addToStack("or", FALSE)} <a href="{$unsubscribe['orlink']}" style='color: #4a8aca; text-decoration: none; display: inline-block'>{$email->language->addToStack($unsubscribe['ortext'], FALSE)}</a>{{endif}}.
<br />
</td>
</tr>
{{if $unsubscribe}}
{$unsubscribe|raw}
{{endif}}
{{if \IPS\Settings::i()->privacy_type != "none"}}
<tr>
@@ -1119,11 +1210,11 @@
</body>
</html>
]]></template_content_html><template_data>$subject, $member, $content, $unsubscribe, $placeholderRecipient=FALSE, $introText='', $email</template_data><template_content_plaintext><![CDATA[
{{if $member->member_id }}{$email->language->addToStack("email_greeting_member", FALSE, array( 'sprintf' => array( $member->name ) ) )}{{elseif $placeholderRecipient}}{$email->language->addToStack("email_greeting_member", FALSE, array( 'sprintf' => array( '*|recipient_name|*' ) ) )}{{endif}}
{{if $member->member_id }}{$email->language->addToStack("email_greeting_member", FALSE, array( 'sprintf' => array( $member->name ) ) )}{{elseif $placeholderRecipient}}{$email->language->addToStack("email_greeting_member", FALSE, array( 'sprintf' => array( '*|member_name|*' ) ) )}{{endif}}
{$content|raw}
-----
{{if $unsubscribe['link']}}{{if isset( $unsubscribe['blurb'] ) and $unsubscribe['blurb']}}{$unsubscribe['blurb']}\n{{endif}}{$email->language->addToStack("unsubscribe_blurb", FALSE)} {{if $unsubscribe['text'] != ''}}{$email->language->addToStack($unsubscribe['text'], FALSE)}{{endif}} {{if $unsubscribe['link'] != ''}}({$unsubscribe['link']}){{endif}}{{if isset( $unsubscribe['orlink'] ) and $unsubscribe['orlink']}} {$email->language->addToStack("or", FALSE)} {$email->language->addToStack($unsubscribe['ortext'], FALSE)} ({$unsubscribe['orlink']}){{endif}}{{endif}}
{{if $unsubscribe}}{$unsubscribe}{{endif}}
{{if \IPS\Settings::i()->privacy_type != "none"}}{{if \IPS\Settings::i()->privacy_type == "internal"}}{url="app=core&module=system&controller=privacy" seoTemplate="privacy" base="front" plain="true"}{{else}}{setting="privacy_link"}){{endif}}{{endif}}
@@ -1137,7 +1228,7 @@
<table width='100%' cellpadding='0' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' width='40' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<img src='{$comment->author()->photo}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
<img src='{$comment->author()->get_photo( true, true )}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
</td>
<td dir='{dir}' width='30' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<br />
@@ -1155,7 +1246,7 @@
</tr>
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px;">
{$email->parseTextForEmail( $comment->content() )|raw}
{$email->parseTextForEmail( $comment->content(), $email->language )|raw}
</td>
</tr>
</table>
@@ -1186,7 +1277,7 @@
<table width='100' cellpadding='15' cellspacing='0' border='0' style='background: #f9f9f9;'>
<tr>
<td dir='{dir}'>
<img src='{$member->photo}' width='100' height='100' style='border: 1px solid #777777; vertical-align: middle;'>
<img src='{$member->get_photo( true, true )}' width='100' height='100' style='border: 1px solid #777777; vertical-align: middle;'>
</td>
</tr>
</table>
@@ -1238,7 +1329,7 @@
<table width='100%' cellpadding='0' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' width='40' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<img src='{$content->author()->photo}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
<img src='{$content->author()->get_photo( true, true )}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
</td>
<td dir='{dir}' width='30' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<br />
@@ -1256,7 +1347,7 @@
</tr>
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px;">
{$email->parseTextForEmail( $content->content() )|raw}
{$email->parseTextForEmail( $content->content(), $email->language )|raw}
</td>
</tr>
<tr>
@@ -1287,13 +1378,21 @@
{$email->language->addToStack("email_go_to_site", FALSE, array( 'sprintf' => array( \IPS\Settings::i()->board_name ) ) )}: {setting="base_url"}
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>notification_new_review</template_name><template_content_html><![CDATA[
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>unsubscribeBulk</template_name><template_content_html><![CDATA[<tr>
<td dir='{dir}' valign="top"><img src='{setting="base_url"}applications/core/interface/email/spacer.png' width='1' height='1' alt=''></td>
<td dir='{dir}' valign='middle' align='center' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 12px; line-height: 18px; padding-left: 10px;">
{$email->language->addToStack("unsubscribe_blurb", FALSE)} <a href="{{if $member instanceof \IPS\Member}}{url="app=core&module=system&controller=unsubscribe&email=" seoTemplate="unsubscribe" base="front"}{$member->email}&key={expression="md5( $member->email . ':' . $member->members_pass_hash )"}{{else}}{url="app=core&module=system&controller=unsubscribe&email=" seoTemplate="unsubscribe" base="front"}*|member_email|*&key=*|unsubscribe_key|*{{endif}}" style='color: #4a8aca; text-decoration: none; display: inline-block'>{$email->language->addToStack( 'unsubscribe', FALSE )}</a>.
<br />
</td>
</tr>]]></template_content_html><template_data>$member, $email</template_data><template_content_plaintext><![CDATA[{$email->language->addToStack("unsubscribe_blurb", FALSE)} {$email->language->addToStack( 'unsubscribe', FALSE )}: {{if $member instanceof \IPS\Member}}{url="app=core&module=system&controller=unsubscribe&email=" seoTemplate="unsubscribe" base="front"}{$member->email}&key={expression="md5( $member->email . ':' . $member->members_pass_hash )"}{{else}}*|unsubscribe_url|*{{endif}}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>notification_new_review</template_name><template_content_html><![CDATA[
{{$item = $comment->item();}}
{{if $comment->author()->member_id}}
{$email->language->addToStack("email_new_review", FALSE, array( 'sprintf' => array( $comment->author()->url(), $comment->author()->name, $item->indefiniteArticle( $email->language ) ) ) )} <a href='{$comment->item()->url()}'>{$comment->item()->mapped('title')}</a>
{{elseif $comment->author()->real_name}}
{$email->language->addToStack("email_new_review_guest", FALSE, array( 'sprintf' => array( $email->language->addToStack( 'guest_name_shown', NULL, array( 'sprintf' => array( $comment->author()->real_name ) ) ), $comment->author()->name, $item->indefiniteArticle( $email->language ) ) ) )} <a href='{$comment->item()->url()}'>{$comment->item()->mapped('title')}</a>
{{else}}
{$email->language->addToStack("email_new_review_guest", FALSE, array( 'sprintf' => array( $comment->author()->name, $item->indefiniteArticle( $email->language ) ) ) )} <a href='{$comment->item()->url()}'>{$comment->item()->mapped('title')}</a>
{$email->language->addToStack("email_new_review_guest", FALSE, array( 'sprintf' => array( $email->language->addToStack( 'guest_name_shown', NULL, array( 'sprintf' => array( $email->language->addToStack('guest') ) ) ), $item->indefiniteArticle( $email->language ) ) ) )} <a href='{$comment->item()->url()}'>{$comment->item()->mapped('title')}</a>
{{endif}}
<br />
@@ -1302,7 +1401,7 @@
<table width='100%' cellpadding='0' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' width='40' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<img src='{$comment->author()->photo}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
<img src='{$comment->author()->get_photo( true, true )}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
</td>
<td dir='{dir}' width='30' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<br />
@@ -1316,13 +1415,13 @@
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px;">
{{foreach range( 1, 5 ) as $i}}
{{if $comment->mapped('rating') >= $i}}<img src='{setting="base_url"}applications/core/interface/email/rating_on.png' width='14' height='13' alt='*'>{{else}}<img src='{setting="base_url"}applications/core/interface/email/rating_off.png' width='14' height='13' alt=''>{{endif}}
{{if $i <= $comment->mapped('rating')}}<img src='{resource="email/rating_on.png" location="interface" app="core"}' width='14' height='13' alt='*'>{{elseif ( $i - 0.5 ) <= $comment->mapped('rating')}}<img src='{resource="email/rating_half.png" location="interface" app="core"}' width='14' height='13' alt='*'>{{else}}<img src='{resource="email/rating_off.png" location="interface" app="core"}' width='14' height='13' alt=''>{{endif}}
{{endforeach}}
</td>
</tr>
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px;">
{$email->parseTextForEmail( $comment->content() )|raw}
{$email->parseTextForEmail( $comment->content(), $email->language )|raw}
</td>
</tr>
<tr>
@@ -1357,7 +1456,7 @@
<table width='100%' cellpadding='0' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' width='40' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<img src='{$item->author()->photo}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
<img src='{$item->author()->get_photo( true, true )}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
</td>
<td dir='{dir}' width='30' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<br />
@@ -1374,7 +1473,7 @@
<table width='100%' cellpadding='5' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px;">
{$email->parseTextForEmail( $item->content() )|raw}
{$email->parseTextForEmail( $item->content(), $email->language )|raw}
</td>
</tr>
<tr>
@@ -1394,7 +1493,7 @@
<tr>
<td dir='{dir}' width='40'>&nbsp;</td>
<td dir='{dir}' width='40' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<img src='{$comment->author()->photo}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
<img src='{$comment->author()->get_photo( true, true )}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
</td>
<td dir='{dir}' width='30' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<br />
@@ -1412,7 +1511,7 @@
</tr>
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px;">
{$email->parseTextForEmail( $comment->content() )|raw}
{$email->parseTextForEmail( $comment->content(), $email->language )|raw}
</td>
</tr>
</table>
@@ -1444,8 +1543,7 @@
<%digest%>]]></template_content_html><template_data>$member, $frequency, $email</template_data><template_content_plaintext><![CDATA[{$email->language->addToStack("digest_$frequency", FALSE)}
<%digest%>]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>notification_report_center</template_name><template_content_html><![CDATA[{{$item = $reportedContent instanceof \IPS\Content\Item ? $reportedContent : $reportedContent->item();}}
{{$link = "<a href='{$reportedContent->url()}'>{$item->mapped('title')}</a>";}}
{$email->language->addToStack("email_content_reported", FALSE, array( 'sprintf' => array( \IPS\Member::load( $latestReport['report_by'] )->name, $reportedContent->indefiniteArticle( $email->language ) ), 'htmlsprintf' => array( $link ) ) )}
{$email->language->addToStack("email_content_reported", FALSE, array( 'sprintf' => array( \IPS\Member::load( $latestReport['report_by'] )->name, $reportedContent->indefiniteArticle( $email->language ), $reportedContent->url(), $item->mapped('title') ) ) )}
<br />
<br />
@@ -1453,7 +1551,7 @@
<table width='100%' cellpadding='0' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' width='40' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<img src='{$report->author()->photo}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
<img src='{$report->author()->get_photo( true, true )}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
</td>
<td dir='{dir}' width='30' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<br />
@@ -1466,7 +1564,7 @@
<table width='100%' cellpadding='5' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px;">
{$email->parseTextForEmail( $latestReport['report'] )|raw}
{$email->parseTextForEmail( $latestReport['report'], $email->language )|raw}
</td>
</tr>
<tr>
@@ -1483,18 +1581,29 @@
</table>
<br /><br />
<em style='color: #8c8c8c'>&mdash; {setting="board_name"}</em>]]></template_content_html><template_data>$report, $latestReport, $reportedContent, $email</template_data><template_content_plaintext><![CDATA[{{$item = $reportedContent instanceof \IPS\Content\Item ? $reportedContent : $reportedContent->item();}}
{$email->language->addToStack("email_content_reported", FALSE, array( 'sprintf' => array( \IPS\Member::load( $latestReport['report_by'] )->name, $reportedContent->indefiniteArticle( $email->language ), $item->mapped('title') ) ) )}
{$email->language->addToStack("email_content_reported_plain", FALSE, array( 'sprintf' => array( \IPS\Member::load( $latestReport['report_by'] )->name, $reportedContent->indefiniteArticle( $email->language ), $item->mapped('title') ) ) )}
{$email->language->addToStack("go_to_the_report", FALSE)}: {$report->url()}
{$email->language->addToStack("go_to_this_x", FALSE, array( 'sprintf' => array( mb_strtolower( $email->language->addToStack( $reportedContent::$title, FALSE ) ) ) ) )}: {$reportedContent->url()}
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>notification_new_comment</template_name><template_content_html><![CDATA[
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>unsubscribeFollow</template_name><template_content_html><![CDATA[<tr>
<td dir='{dir}' valign="top"><img src='{setting="base_url"}applications/core/interface/email/spacer.png' width='1' height='1' alt=''></td>
<td dir='{dir}' valign='middle' align='center' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 12px; line-height: 18px; padding-left: 10px;">
*|unsubscribe_blurb|*<br>
{$email->language->addToStack("unsubscribe_blurb", FALSE)} <a href="*|unfollow_link|*" style='color: #4a8aca; text-decoration: none; display: inline-block'>{$email->language->addToStack( 'unfollow', FALSE )}</a> {$email->language->addToStack("or", FALSE)} <a href="{url="app=core&module=system&controller=notifications&do=options&type={$key}" base="front" seoTemplate="notifications_options"}" style='color: #4a8aca; text-decoration: none; display: inline-block'>{$email->language->addToStack( 'adjust_notification_prefs', FALSE)}</a>.
<br />
</td>
</tr>
]]></template_content_html><template_data>$key, $member, $email</template_data><template_content_plaintext><![CDATA[*|unsubscribe_blurb|*
{$email->language->addToStack("unsubscribe_blurb", FALSE)} {$email->language->addToStack( 'unfollow', FALSE )} ( *|unfollow_link|* ) {$email->language->addToStack( 'or', FALSE )} {$email->language->addToStack( 'adjust_notification_prefs', FALSE )} ( {url="app=core&module=system&controller=notifications&do=options&type={$key}" base="front" seoTemplate="notifications_options"} )]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>notification_new_comment</template_name><template_content_html><![CDATA[
{{$item = $comment->item();}}
{{if $comment->author()->member_id}}
{$email->language->addToStack("email_new_comment", FALSE, array( 'sprintf' => array( $comment->author()->url(), $comment->author()->name, $item->indefiniteArticle( $email->language ) ) ) )} <a href='{$comment->item()->url()}'>{$comment->item()->mapped('title')}</a>
{{elseif $comment->author()->real_name}}
{$email->language->addToStack("email_new_comment_guest", FALSE, array( 'sprintf' => array( $email->language->addToStack( 'guest_name_shown', NULL, array( 'sprintf' => array( $comment->author()->real_name ) ) ), $comment->author()->name, $item->indefiniteArticle( $email->language ) ) ) )} <a href='{$comment->item()->url()}'>{$comment->item()->mapped('title')}</a>
{{else}}
{$email->language->addToStack("email_new_comment_guest", FALSE, array( 'sprintf' => array( $comment->author()->name, $item->indefiniteArticle( $email->language ) ) ) )} <a href='{$comment->item()->url()}'>{$comment->item()->mapped('title')}</a>
{$email->language->addToStack("email_new_comment_guest", FALSE, array( 'sprintf' => array( $email->language->addToStack( 'guest_name_shown', NULL, array( 'sprintf' => array( $email->language->addToStack('guest') ) ) ), $item->indefiniteArticle( $email->language ) ) ) )} <a href='{$comment->item()->url()}'>{$comment->item()->mapped('title')}</a>
{{endif}}
<br />
@@ -1503,7 +1612,7 @@
<table width='100%' cellpadding='0' cellspacing='0' border='0'>
<tr>
<td dir='{dir}' width='40' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<img src='{$comment->author()->photo}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
<img src='{$comment->author()->get_photo( true, true )}' width='40' height='40' style='border: 1px solid #777777; vertical-align: middle;'>
</td>
<td dir='{dir}' width='30' valign='top' class='hidePhone' style='width: 0; max-height: 0; overflow: hidden; float: left;'>
<br />
@@ -1521,7 +1630,7 @@
</tr>
<tr>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; line-height: 1.5; font-size: 14px;">
{$email->parseTextForEmail( $comment->content() )|raw}
{$email->parseTextForEmail( $comment->content(), $email->language )|raw}
</td>
</tr>
<tr>
@@ -1601,7 +1710,7 @@
{{if $warning->mq == -1}}
{$email->language->addToStack("indefinitely", FALSE)}
{{else}}
{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->mq ), 2 )"}
{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->mq ), 2, $email->language )"}
{{endif}}
</li>
{{endif}}
@@ -1611,7 +1720,7 @@
{{if $warning->rpa == -1}}
{$email->language->addToStack("indefinitely", FALSE)}
{{else}}
{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->rpa ), 2 )"}
{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->rpa ), 2, $email->language )"}
{{endif}}
</li>
{{endif}}
@@ -1621,7 +1730,7 @@
{{if $warning->suspend == -1}}
{$email->language->addToStack("indefinitely", FALSE)}
{{else}}
{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->suspend ), 2 )"}
{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->suspend ), 2, $email->language )"}
{{endif}}
</li>
{{endif}}
@@ -1636,7 +1745,7 @@
</tr>
<tr class='responsive_row'>
<td dir='{dir}' width='150' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px; vertical-align: top;"><strong>{$email->language->addToStack("email_warn_note", FALSE)}:</strong></td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">{$email->parseTextForEmail( $warning->note_member )|raw}</td>
<td dir='{dir}' style="font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">{$email->parseTextForEmail( $warning->note_member, $email->language )|raw}</td>
</tr>
{{endif}}
</table>
@@ -1645,9 +1754,9 @@
</table>
<br />
{{if \IPS\Settings::i()->warnings_acknowledge && !$warning->acknowledged && $warning->canAcknowledge()}}
<strong style="color: #a72336; font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">{$email->language->addToStack("email_warn_acknowledge", FALSE)}</strong><br />
<a href='{$warning->url('acknowledge')}' style="color: #ffffff; font-family: 'Helvetica Neue', helvetica, sans-serif; text-decoration: none; font-size: 14px; background: {setting="email_color"}; line-height: 32px; padding: 0 10px; display: inline-block; border-radius: 3px;">{$email->language->addToStack("email_warn_acknowledge_button", FALSE)}</a>
{{if \IPS\Settings::i()->warnings_acknowledge && !$warning->acknowledged && $warning->canAcknowledge( \IPS\Member::load($warning->member))}}
<strong style="color: #a72336; font-family: 'Helvetica Neue', helvetica, sans-serif; font-size: 14px;">{$email->language->addToStack("email_warn_acknowledge", FALSE)}</strong><br />
<a href='{$warning->url('acknowledge')}' style="color: #ffffff; font-family: 'Helvetica Neue', helvetica, sans-serif; text-decoration: none; font-size: 14px; background: {setting="email_color"}; line-height: 32px; padding: 0 10px; display: inline-block; border-radius: 3px;">{$email->language->addToStack("email_warn_acknowledge_button", FALSE)}</a>
{{endif}}
<br /><br />
@@ -1683,18 +1792,18 @@
{{endif}}
{{endif}}
{{if $warning->mq}}
{$email->language->addToStack("moderation_modq", FALSE)} - {{if $warning->mq == -1}}{$email->language->addToStack("indefinitely", FALSE)}{{else}}{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->mq ), 2 )"}{{endif}}
{$email->language->addToStack("moderation_modq", FALSE)} - {{if $warning->mq == -1}}{$email->language->addToStack("indefinitely", FALSE)}{{else}}{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->mq ), 2, $email->language )"}{{endif}}
{{endif}}
{{if $warning->rpa}}
{$email->language->addToStack("moderation_nopost", FALSE)} - {{if $warning->rpa == -1}}{$email->language->addToStack("indefinitely", FALSE)}{{else}}{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->rpa ), 2 )"}{{endif}}
{$email->language->addToStack("moderation_nopost", FALSE)} - {{if $warning->rpa == -1}}{$email->language->addToStack("indefinitely", FALSE)}{{else}}{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->rpa ), 2, $email->language )"}{{endif}}
{{endif}}
{{if $warning->suspend}}
{$email->language->addToStack("moderation_banned", FALSE)} - {{if $warning->suspend == -1}}{$email->language->addToStack("indefinitely", FALSE)}{{else}}{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->suspend ), 2 )"}{{endif}}
{$email->language->addToStack("moderation_banned", FALSE)} - {{if $warning->suspend == -1}}{$email->language->addToStack("indefinitely", FALSE)}{{else}}{expression="\IPS\DateTime::formatInterval( new \DateInterval( $warning->suspend ), 2, $email->language )"}{{endif}}
{{endif}}
{{endif}}
=====
{{if \IPS\Settings::i()->warnings_acknowledge && !$warning->acknowledged && $warning->canAcknowledge()}}
{{if \IPS\Settings::i()->warnings_acknowledge && !$warning->acknowledged && $warning->canAcknowledge(\IPS\Member::load($warning->member))}}
**{$email->language->addToStack("email_warn_acknowledge", FALSE)}**
{$email->language->addToStack("email_warn_acknowledge_button", FALSE)}: {$warning->url('acknowledge')}
{{endif}}
@@ -1751,4 +1860,28 @@
{$email->language->addToStack("email_error_log_info", FALSE)}
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>mfaRecovery</template_name><template_content_html><![CDATA[
{$email->language->addToStack("mfa_recovery_email_html", FALSE)}
<br /><br />
<table width='100%' cellpadding='15' cellspacing='0' border='0' style='background: #f9f9f9;'>
<tr>
<td dir='{dir}' align='center'>
<a href='{url="app=core&module=system&controller=settings&do=mfarecoveryvalidate&vid={$vid}&mid={$member->member_id}" seoTemplate="mfarecoveryvalidate" base="front"}' style="color: #ffffff; font-family: 'Helvetica Neue', helvetica, sans-serif; text-decoration: none; font-size: 14px; background: {setting="email_color"}; line-height: 32px; padding: 0 10px; display: inline-block; border-radius: 3px;">{$email->language->addToStack("mfa_recovery_email_confirm", FALSE)}</a>
</td>
</tr>
</table>]]></template_content_html><template_data>$member, $vid, $email</template_data><template_content_plaintext><![CDATA[{$email->language->addToStack("mfa_recovery_email_plain", FALSE)}
=====
{$email->language->addToStack("mfa_recovery_email_confirm", FALSE)}: {url="app=core&module=system&controller=settings&do=mfarecoveryvalidate&vid={$vid}&mid={$member->member_id}" seoTemplate="mfarecoveryvalidate" plain="true" base="front"}
=====
-- {setting="board_name"}]]></template_content_plaintext></template><template><template_app>core</template_app><template_name>password_changed</template_name><template_content_html><![CDATA[
{$email->language->addToStack("email_password_changed", FALSE, array( 'sprintf' => \IPS\Settings::i()->board_name ) )}
<br /><br />
<em style='color: #8c8c8c'>&mdash; {setting="board_name"}</em>]]></template_content_html><template_data>$email</template_data><template_content_plaintext><![CDATA[{$email->language->addToStack("email_password_changed", FALSE, array( 'sprintf' => \IPS\Settings::i()->board_name ) )}
-- {setting="board_name"}]]></template_content_plaintext></template></emails>
+55 -6
View File
@@ -48,6 +48,18 @@
"friendly": "settings/password",
"real": "app=core&module=system&controller=settings&area=password"
},
"settings_mfa": {
"friendly": "settings/account-security",
"real": "app=core&module=system&controller=settings&area=mfa"
},
"mfarecovery": {
"friendly": "account-recovery",
"real": "app=core&module=system&controller=settings&do=mfarecovery"
},
"mfarecoveryvalidate": {
"friendly": "account-recovery/validate",
"real": "app=core&module=system&controller=settings&do=mfarecoveryvalidate"
},
"settings_username": {
"friendly": "settings/username",
"real": "app=core&module=system&controller=settings&area=username"
@@ -64,7 +76,7 @@
"friendly": "settings/google",
"real": "app=core&module=system&controller=settings&area=profilesync&service=Google"
},
"settings_LinkedIn": {
"settings_Linkedin": {
"friendly": "settings/linkedin",
"real": "app=core&module=system&controller=settings&area=profilesync&service=LinkedIn"
},
@@ -288,10 +300,6 @@
"friendly": "notifications/options",
"real": "app=core&module=system&controller=notifications&do=options"
},
"notifications_rss": {
"friendly": "notifications.xml",
"real": "app=core&module=system&controller=notifications&format=rss"
},
"notifications": {
"friendly": "notifications",
"real": "app=core&module=system&controller=notifications"
@@ -344,6 +352,10 @@
"friendly": "discover/{#id}",
"real": "app=core&module=discover&controller=streams"
},
"discover_rss_all_activity": {
"friendly": "discover/all.xml",
"real": "app=core&module=discover&controller=streams&rss=1"
},
"discover_rss": {
"friendly": "discover/{#id}.xml",
"real": "app=core&module=discover&controller=streams&rss=1"
@@ -352,6 +364,13 @@
"friendly": "discover",
"real": "app=core&module=discover&controller=streams"
},
/* RSS */
"rss_feed": {
"friendly": "rss/{#id}-{?}.xml",
"real": "app=core&module=discover&controller=rss",
"verify": "\\IPS\\core\\Rss"
},
/* Language Selector */
"language": {
@@ -369,6 +388,36 @@
"mark_site_as_read": {
"friendly": "markallread",
"real": "app=core&module=system&controller=markread"
}
},
/* Tags */
"tags": {
"friendly": "tags/{@tags}",
"real": "app=core&module=search&controller=search"
},
/* Legacy */
"activity": {
"friendly": "activity",
"real": "app=core&module=activity&controller=activity"
},
"vnc": {
"friendly": "new-content",
"real": "app=core&module=discover&controller=vnc"
},
/* Leaderboard */
"leaderboard_leaderboard": {
"friendly": "leaderboard",
"real": "app=core&module=discover&controller=popular&tab=leaderboard"
},
"leaderboard_history": {
"friendly": "pastleaders",
"real": "app=core&module=discover&controller=popular&tab=history"
},
"leaderboard_members": {
"friendly": "topmembers",
"real": "app=core&module=discover&controller=popular&tab=members"
}
}
}
@@ -25,7 +25,7 @@
<div id='strip'>
<div id='logo'>
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAZCAYAAAAv3j5gAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAZZJREFUeNq8lr9Lw0AUx2OETAUhIAiZBMFBKLg4+R8IroKbWCgOxY7+GYIiWAKCjl0rZHKJ4CqCg3RyKBWhQqmLgRK/py/hcn13TWzqFz5D837de7xcasdxbP0HtvWraxDPCZE7LfRozU8/uRdEW5ADnsB6yUVeQBVESUcRqIFxiUVErgPKnY5O6B6cl1hI5HpIfynbUQHdeHZ1KdfE1iX6BPUSuqlTrlQ243QHWjMUaVGOjJKtU7UEnoFXsEgPbICharA1AcM/jrDGFTEVEroFNwWKCN9Aa51yR7mgn2PL+uQ79a7b1pzjAzRydNMgX05bckchODGcqG3opm2IO6bcmUJfYE0TsAIGTJEB2biYVTBKCsnLIC7WK037b6DJPG+SjZMPKuoyhNIpjwyj6Eh+HYPfoeQ3MbpEol3PMMJ3QjcyTxlzyN11FrV7aRjhJqEb2QVw876wO2DfcM30NLY9sGu6GSLGdsadzCCXYlRlPnxBgUCdTsEy8zyQt84BPvOuvILFHH+nHPJV3zGfbNrPROn6FmAANAMI1RO30/8AAAAASUVORK5CYII=" width="26" height="25" />
IPS Social Suite
IPS Community Suite
</div>
</div>
<div id='wrapper'>
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+11 -8
View File
@@ -52,10 +52,6 @@
"default_controller": null,
"protected": null
},
"dashboard": {
"default_controller": null,
"protected": 1
},
"stats": {
"default_controller": null,
"protected": null
@@ -91,8 +87,8 @@
"protected": 0
},
"search": {
"default_controller": null,
"protected": null
"default_controller": "search",
"protected": 0
},
"messaging": {
"default_controller": "messenger",
@@ -124,12 +120,19 @@
},
"discover": {
"default_controller": "streams",
"protected": 0,
"default": true
"protected": 0
},
"staffdirectory": {
"default_controller": "directory",
"protected": 0
},
"activity": {
"default_controller": "",
"protected": 0
},
"discovery": {
"default_controller": "",
"protected": 0
}
}
}
+10
View File
@@ -0,0 +1,10 @@
{
"php": {
"required": "5.6.0",
"recommended": "7.0.0"
},
"mysql": {
"required": "5.1.3",
"recommended": "5.6.2"
}
}
File diff suppressed because it is too large. Load diff
+310 -30
View File
@@ -11,6 +11,10 @@
"key": "acp_notes_updated",
"default": ""
},
{
"key": "activity_stream_rss",
"default": "1"
},
{
"key": "ads_circulation",
"default": "random"
@@ -63,6 +67,14 @@
"key": "allow_result_view",
"default": "1"
},
{
"key": "announcements_exist",
"default": "0"
},
{
"key": "api_log_prune",
"default": "30"
},
{
"key": "attach_allowed_extensions",
"default": ""
@@ -79,6 +91,14 @@
"key": "attachment_resample_size",
"default": "0x0"
},
{
"key": "auto_follow_new_content",
"default": "0"
},
{
"key": "auto_follow_replied_to",
"default": "0"
},
{
"key": "auto_polling_enabled",
"default": "1"
@@ -105,12 +125,32 @@
},
{
"key": "ckeditor_toolbars",
"default": "{\"desktop\":[{\"name\":\"row1\",\"items\":[\"Bold\",\"Italic\",\"Underline\",\"-\",\"ipsLink\",\"Ipsquote\",\"ipsCode\",\"ipsEmoticon\",\"-\",\"BulletedList\",\"NumberedList\",\"-\",\"JustifyLeft\",\"JustifyCenter\",\"JustifyRight\",\"-\",\"Strike\",\"Superscript\",\"Subscript\",\"-\",\"TextColor\",\"FontSize\"]}],\"tablet\":[{\"name\":\"row1\",\"items\":[\"Bold\",\"Italic\",\"Underline\",\"-\",\"ipsLink\",\"Ipsquote\",\"ipsEmoticon\",\"-\",\"BulletedList\",\"NumberedList\"]}],\"phone\":[{\"name\":\"row1\",\"items\":[\"Bold\",\"Italic\",\"Underline\",\"-\",\"ipsEmoticon\",\"-\",\"ipsLink\"]}]}"
"default": "{\"desktop\":[{\"name\":\"row1\",\"items\":[\"Bold\",\"Italic\",\"Underline\",\"Strike\",\"-\",\"ipsLink\",\"Ipsquote\",\"ipsCode\",\"ipsEmoticon\",\"-\",\"BulletedList\",\"NumberedList\",\"-\",\"JustifyLeft\",\"JustifyCenter\",\"JustifyRight\",\"-\",\"TextColor\",\"FontSize\",\"-\",\"ipsPreview\"]},\"\\\/\"],\"tablet\":[{\"name\":\"row1\",\"items\":[\"Bold\",\"Italic\",\"Underline\",\"-\",\"ipsLink\",\"Ipsquote\",\"ipsEmoticon\",\"-\",\"BulletedList\",\"NumberedList\",\"-\",\"ipsPreview\"]},\"\\\/\"],\"phone\":[{\"name\":\"row1\",\"items\":[\"Bold\",\"Italic\",\"Underline\",\"-\",\"ipsEmoticon\",\"-\",\"ipsLink\",\"-\",\"ipsPreview\"]},\"\\\/\"]}"
},
{
"key": "connect_slaves",
"default": "0"
},
{
"key": "contact_access",
"default": "*"
},
{
"key": "contact_emails",
"default": ""
},
{
"key": "contact_nexus_department",
"default": ""
},
{
"key": "contact_redirect",
"default": ""
},
{
"key": "contact_type",
"default": "contact_internal"
},
{
"key": "coppa_address",
"default": ""
@@ -131,6 +171,10 @@
"key": "diagnostics",
"default": "1"
},
{
"key": "diagnostics_reporting",
"default": "1"
},
{
"key": "disable_all_plugins",
"default": ""
@@ -163,6 +207,10 @@
"key": "editor_allowed_iframe_bases",
"default": ""
},
{
"key": "editor_embeds",
"default": "1"
},
{
"key": "editor_paragraph_padding",
"default": "1"
@@ -207,6 +255,10 @@
"key": "fbc_bot_group",
"default": "2"
},
{
"key": "file_log_pruning",
"default": "90"
},
{
"key": "flood_control",
"default": "0"
@@ -227,6 +279,18 @@
"key": "gl_type",
"default": "none"
},
{
"key": "google_maps_api_key",
"default": ""
},
{
"key": "googleauth_enabled",
"default": "0"
},
{
"key": "googleauth_groups",
"default": "*"
},
{
"key": "googlemaps",
"default": "1"
@@ -239,17 +303,21 @@
"key": "guest_captcha",
"default": "1"
},
{
"key": "guest_terms_bar",
"default": "0"
},
{
"key": "htaccess_mod_rewrite",
"default": "0"
},
{
"key": "image_jpg_quality",
"default": "75"
"default": "85"
},
{
"key": "image_png_quality_gd",
"default": "8"
"default": "9"
},
{
"key": "image_proxy_cache_period",
@@ -257,7 +325,7 @@
},
{
"key": "image_suite",
"default": "gd"
"default": "imagemagick"
},
{
"key": "ipb_bruteforce_attempts",
@@ -281,7 +349,67 @@
},
{
"key": "ipb_reg_number",
"default": ""
"default": "LICENSE KEY GOES HERE!-123456789"
},
{
"key": "ipb_license_active",
"default": "1"
},
{
"key": "ipb_license_cloud",
"default": "0"
},
{
"key": "ipb_license_url",
"default": "https:\/\/www.invisionpower.com\/buy\/self-hosted"
},
{
"key": "ipb_license_test_url",
"default": "http:\/\/community.invisionpower.com"
},
{
"key": "ipb_license_expires",
"default": "09 MAR 2037"
},
{
"key": "ipb_license_product_forums",
"default": "1"
},
{
"key": "ipb_license_product_calendar",
"default": "1"
},
{
"key": "ipb_license_product_blog",
"default": "1"
},
{
"key": "ipb_license_product_gallery",
"default": "1"
},
{
"key": "ipb_license_product_downloads",
"default": "1"
},
{
"key": "ipb_license_product_cms",
"default": "1"
},
{
"key": "ipb_license_product_nexus",
"default": "1"
},
{
"key": "ipb_license_product_copyright",
"default": "1"
},
{
"key": "ipb_license_chat_limit",
"default": "0"
},
{
"key": "ipb_license_support",
"default": "N/A"
},
{
"key": "ipb_url_blacklist",
@@ -299,6 +427,14 @@
"key": "ipbseo_ga_enabled",
"default": "1"
},
{
"key": "ipbseo_ga_paginatecode",
"default": ""
},
{
"key": "ipbseo_ga_provider",
"default": "none"
},
{
"key": "ips_cp_purchase",
"default": "0"
@@ -309,12 +445,16 @@
},
{
"key": "ipsgeoip",
"default": "1"
"default": "0"
},
{
"key": "keycaptcha_privatekey",
"default": ""
},
{
"key": "last_data_store_update",
"default": ""
},
{
"key": "links_external",
"default": "1"
@@ -331,18 +471,6 @@
"key": "mail_method",
"default": "php"
},
{
"key": "mandrill_api_key",
"default": ""
},
{
"key": "mandrill_use_for",
"default": "0"
},
{
"key": "mandrill_username",
"default": ""
},
{
"key": "match_browser",
"default": "0"
@@ -375,10 +503,46 @@
"key": "max_video_width_css",
"default": "none"
},
{
"key": "member_menu_create_key",
"default": ""
},
{
"key": "merge_concurrent_posts",
"default": "0"
},
{
"key": "mfa_forgot_behaviour",
"default": "email"
},
{
"key": "mfa_lockout_behaviour",
"default": "lock"
},
{
"key": "mfa_lockout_time",
"default": "60"
},
{
"key": "mfa_optional_prompt",
"default": "none"
},
{
"key": "mfa_required_groups",
"default": ""
},
{
"key": "mfa_required_prompt",
"default": "immediate"
},
{
"key": "min_user_name_length",
"default": "3"
},
{
"key": "minimum_age",
"default": "0"
},
{
"key": "most_online",
"default": "{\"count\":0,\"time\":0}"
@@ -387,6 +551,18 @@
"key": "new_reg_notify",
"default": "0"
},
{
"key": "password_strength_meter",
"default": "1"
},
{
"key": "password_strength_meter_enforce",
"default": "0"
},
{
"key": "password_strength_option",
"default": "3"
},
{
"key": "php_mail_extra",
"default": ""
@@ -443,6 +619,10 @@
"key": "privacy_type",
"default": "none"
},
{
"key": "profile_birthday_type",
"default": "public"
},
{
"key": "profile_comment_approval",
"default": "0"
@@ -481,7 +661,7 @@
},
{
"key": "prune_log_system",
"default": "0"
"default": "30"
},
{
"key": "prune_log_tasks",
@@ -499,10 +679,6 @@
"key": "recaptcha2_public_key",
"default": ""
},
{
"key": "recaptcha2_theme",
"default": "light"
},
{
"key": "recaptcha_private_key",
"default": "6LcpWAMAAAAAAETX5jHd9NlPtIHJA4G-ra3X2RQB"
@@ -511,10 +687,6 @@
"key": "recaptcha_public_key",
"default": "6LcpWAMAAAAAAA4klDtDNuDH6LsGgBX5mBoJ3naK"
},
{
"key": "recaptcha_theme",
"default": "white"
},
{
"key": "reg_auth_type",
"default": "user"
@@ -523,6 +695,10 @@
"key": "reg_rules",
"default": "<p>Please take a moment to review these rules.<\/p><p>Please remember that we are not responsible for any messages posted. We do not vouch for or warrant the accuracy, completeness or usefulness of any message, and are not responsible for the contents of any message.<\/p><p>The messages express the views of the author of the message, not necessarily the views of this website. Any user who feels that a posted message is objectionable is encouraged to contact us immediately by email. We have the ability to remove objectionable messages and we will make every effort to do so, within a reasonable time frame, if we determine that removal is necessary.<\/p><p>You agree, through your use of this service, that you will not use this website to post any material which is knowingly false and\/or defamatory, inaccurate, abusive, vulgar, hateful, harassing, obscene, profane, sexually oriented, threatening, invasive of a person's privacy, or otherwise violative of any law.<\/p><p>You agree not to post any copyrighted material unless the copyright is owned by you or by this website.<\/p><p>Our software uses cookies to distinguish you from other users of our website. This helps us to provide you with a personalized experience when you browse this site.<\/p>"
},
{
"key": "remote_image_cache",
"default": "7"
},
{
"key": "remote_image_proxy",
"default": "0"
@@ -539,6 +715,18 @@
"key": "reputation_highlight",
"default": "50"
},
{
"key": "reputation_leaderboard_default_tab",
"default": "leaderboard"
},
{
"key": "reputation_leaderboard_on",
"default": "1"
},
{
"key": "reputation_max_members",
"default": "48"
},
{
"key": "reputation_point_types",
"default": "like"
@@ -551,10 +739,18 @@
"key": "reputation_show_content",
"default": "1"
},
{
"key": "reputation_show_days_won_trophy",
"default": "1"
},
{
"key": "reputation_show_profile",
"default": "1"
},
{
"key": "reputation_timezone",
"default": "UTC"
},
{
"key": "reviews_rating_out_of",
"default": "5"
@@ -563,10 +759,54 @@
"key": "search_index_timeframe",
"default": "0"
},
{
"key": "security_questions_areas",
"default": ""
},
{
"key": "security_questions_enabled",
"default": "0"
},
{
"key": "security_questions_groups",
"default": "*"
},
{
"key": "security_questions_number",
"default": "3"
},
{
"key": "security_questions_prompt",
"default": "access"
},
{
"key": "security_questions_timer",
"default": "30"
},
{
"key": "security_questions_tries",
"default": "3"
},
{
"key": "security_remove_acp_link",
"default": "0"
},
{
"key": "sendgrid_api_key",
"default": ""
},
{
"key": "sendgrid_click_tracking",
"default": "0"
},
{
"key": "sendgrid_ip_pool",
"default": ""
},
{
"key": "sendgrid_use_for",
"default": "0"
},
{
"key": "seo_r_on",
"default": "1"
@@ -577,7 +817,7 @@
},
{
"key": "signatures_enabled",
"default": "0"
"default": "1"
},
{
"key": "site_address",
@@ -591,6 +831,10 @@
"key": "site_online",
"default": "1"
},
{
"key": "site_secret_key",
"default": ""
},
{
"key": "sitemap_content_settings",
"default": "{}"
@@ -609,7 +853,7 @@
},
{
"key": "sitemap_profiles_priority",
"default": "-1"
"default": "0.6"
},
{
"key": "sitemap_url",
@@ -667,6 +911,22 @@
"key": "spam_service_send_to_ips",
"default": "1"
},
{
"key": "sparkpost_api_key",
"default": ""
},
{
"key": "sparkpost_click_tracking",
"default": "0"
},
{
"key": "sparkpost_ip_pool",
"default": ""
},
{
"key": "sparkpost_use_for",
"default": "0"
},
{
"key": "spm_notify",
"default": "0"
@@ -741,12 +1001,20 @@
},
{
"key": "task_use_cron",
"default": "0"
"default": "normal"
},
{
"key": "theme_designers_mode",
"default": "0"
},
{
"key": "theme_disk_cache_path",
"default": ""
},
{
"key": "theme_disk_cache_templates",
"default": "0"
},
{
"key": "topic_redirect_prune",
"default": "30"
@@ -759,10 +1027,22 @@
"key": "upgrade_email",
"default": ""
},
{
"key": "upgrade_ftp_details",
"default": ""
},
{
"key": "upload_settings",
"default": ""
},
{
"key": "url_filter_action",
"default": "block"
},
{
"key": "url_filter_any_action",
"default": "allow"
},
{
"key": "use_coppa",
"default": "0"
+1 -1
View File
@@ -1 +1 @@
{"profilesync":"P0Y0M0DT1H0M0S","bulkmail":"P0Y0M0DT0H10M0S","updatecheck":"P0Y0M1DT0H0M0S","cleanup":"P0Y0M1DT0H0M0S","sitemapgenerator":"P0Y0M0DT1H0M0S","connect":"P0Y0M0DT1H0M0S","queue":"P0Y0M0DT0H1M0S","pop":"P0Y0M0DT0H10M0S","digest":"P0Y0M0DT0H10M0S","publish":"P0Y0M0DT0H10M0S","clearcache":"P0Y0M0DT0H10M0S","clearsessions":"P0Y0M0DT0H30M0S"}
{"profilesync":"P0Y0M0DT1H0M0S","updatecheck":"P0Y0M1DT0H0M0S","cleanup":"P0Y0M1DT0H0M0S","sitemapgenerator":"P0Y0M0DT0H15M0S","connect":"P0Y0M0DT1H0M0S","queue":"P0Y0M0DT0H1M0S","pop":"P0Y0M0DT0H10M0S","digest":"P0Y0M0DT0H10M0S","publish":"P0Y0M0DT0H10M0S","clearcache":"P0Y0M0DT0H10M0S","clearsessions":"P0Y0M0DT0H30M0S","viewupdates":"P0Y0M0DT0H5M0S","imageproxy":"P0Y0M0DT0H30M0S","cleanupattachments":"P0Y0M0DT12H0M0S","cleanupfiles":"P0Y0M1DT0H0M0S","grouppromote":"P0Y0M1DT0H0M0S","unlockmembers":"P0Y0M0DT1H0M0S","leaderboard":"P0Y0M0DT6H0M0S"}
File diff suppressed because it is too large. Load diff
+309 -73
View File
@@ -9,7 +9,8 @@
"sc_tab_key": "custom",
"sc_show_in_vse": 1,
"sc_title": "themesetting_ajax_pagination",
"sc_order": 9
"sc_order": 9,
"sc_condition": null
},
{
"sc_key": "alternate_button",
@@ -21,7 +22,8 @@
"sc_tab_key": "buttoncolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_alternate_button",
"sc_order": 3
"sc_order": 3,
"sc_condition": null
},
{
"sc_key": "alternate_button_font",
@@ -33,7 +35,8 @@
"sc_tab_key": "buttoncolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_alternate_button_font",
"sc_order": 4
"sc_order": 4,
"sc_condition": null
},
{
"sc_key": "area_background",
@@ -45,7 +48,8 @@
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_area_background",
"sc_order": 8
"sc_order": 10,
"sc_condition": null
},
{
"sc_key": "area_background_dark",
@@ -57,7 +61,8 @@
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_area_background_dark",
"sc_order": 9
"sc_order": 11,
"sc_condition": null
},
{
"sc_key": "area_background_light",
@@ -69,7 +74,8 @@
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_area_background_light",
"sc_order": 10
"sc_order": 12,
"sc_condition": null
},
{
"sc_key": "area_background_reset",
@@ -81,7 +87,8 @@
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_area_background_reset",
"sc_order": 11
"sc_order": 13,
"sc_condition": null
},
{
"sc_key": "button_bar",
@@ -93,7 +100,8 @@
"sc_tab_key": "buttoncolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_button_bar",
"sc_order": 13
"sc_order": 13,
"sc_condition": null
},
{
"sc_key": "enable_fluid_width",
@@ -105,7 +113,8 @@
"sc_tab_key": "custom",
"sc_show_in_vse": 1,
"sc_title": "themesetting_enable_fluid_width",
"sc_order": 6
"sc_order": 6,
"sc_condition": null
},
{
"sc_key": "fluid_width_size",
@@ -117,7 +126,21 @@
"sc_tab_key": "custom",
"sc_show_in_vse": 1,
"sc_title": "themesetting_fluid_width_size",
"sc_order": 7
"sc_order": 7,
"sc_condition": null
},
{
"sc_key": "footer_text",
"sc_type": "Color",
"sc_multiple": 0,
"sc_content": "[]",
"sc_app": "core",
"sc_default": "#333333",
"sc_tab_key": "textcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_footer_text",
"sc_order": 9,
"sc_condition": null
},
{
"sc_key": "header",
@@ -129,7 +152,8 @@
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_header",
"sc_order": 2
"sc_order": 2,
"sc_condition": null
},
{
"sc_key": "important_button",
@@ -141,7 +165,8 @@
"sc_tab_key": "buttoncolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_important_button",
"sc_order": 7
"sc_order": 7,
"sc_condition": null
},
{
"sc_key": "important_button_font",
@@ -153,7 +178,8 @@
"sc_tab_key": "buttoncolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_important_button_font",
"sc_order": 8
"sc_order": 8,
"sc_condition": null
},
{
"sc_key": "item_status",
@@ -163,9 +189,10 @@
"sc_app": "core",
"sc_default": "#3c6994",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 1,
"sc_title": "Item Status Badges Active",
"sc_order": 22
"sc_show_in_vse": 0,
"sc_title": "themesetting_item_status_active",
"sc_order": 24,
"sc_condition": null
},
{
"sc_key": "js_include",
@@ -176,8 +203,9 @@
"sc_default": "head",
"sc_tab_key": "custom",
"sc_show_in_vse": 0,
"sc_title": "Javascript include location",
"sc_order": 8
"sc_title": "themesetting_js_location",
"sc_order": 8,
"sc_condition": null
},
{
"sc_key": "light_button",
@@ -189,7 +217,8 @@
"sc_tab_key": "buttoncolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_light_button",
"sc_order": 9
"sc_order": 9,
"sc_condition": null
},
{
"sc_key": "light_button_font",
@@ -201,7 +230,8 @@
"sc_tab_key": "buttoncolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_light_button_font",
"sc_order": 10
"sc_order": 10,
"sc_condition": null
},
{
"sc_key": "link",
@@ -213,7 +243,8 @@
"sc_tab_key": "textcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_link",
"sc_order": 3
"sc_order": 3,
"sc_condition": null
},
{
"sc_key": "link_hover",
@@ -225,7 +256,8 @@
"sc_tab_key": "textcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_link_hover",
"sc_order": 4
"sc_order": 4,
"sc_condition": null
},
{
"sc_key": "main_nav",
@@ -237,7 +269,21 @@
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_main_nav",
"sc_order": 3
"sc_order": 3,
"sc_condition": null
},
{
"sc_key": "main_nav_font",
"sc_type": "Color",
"sc_multiple": 0,
"sc_content": "[]",
"sc_app": "core",
"sc_default": "#ffffff",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_main_nav_font",
"sc_order": 4,
"sc_condition": null
},
{
"sc_key": "main_nav_tab",
@@ -247,9 +293,23 @@
"sc_app": "core",
"sc_default": "#f5f5f5",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 1,
"sc_title": "Main Navigation Active Tab",
"sc_order": 4
"sc_show_in_vse": 0,
"sc_title": "themesetting_main_nav_active",
"sc_order": 5,
"sc_condition": null
},
{
"sc_key": "main_nav_tab_font",
"sc_type": "Color",
"sc_multiple": 0,
"sc_content": "[]",
"sc_app": "core",
"sc_default": "#333333",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_main_nav_active_font",
"sc_order": 6,
"sc_condition": null
},
{
"sc_key": "mentions",
@@ -259,9 +319,36 @@
"sc_app": "core",
"sc_default": "#3084c4",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 1,
"sc_title": "Mentions",
"sc_order": 24
"sc_show_in_vse": 0,
"sc_title": "themesetting_mentions",
"sc_order": 26,
"sc_condition": null
},
{
"sc_key": "mobile_back",
"sc_type": "Color",
"sc_multiple": 0,
"sc_content": "[]",
"sc_app": "core",
"sc_default": "#222222",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_mobile_back",
"sc_order": 30,
"sc_condition": null
},
{
"sc_key": "mobile_back_font",
"sc_type": "Color",
"sc_multiple": 0,
"sc_content": "[]",
"sc_app": "core",
"sc_default": "#ffffff",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_mobile_back_font",
"sc_order": 31,
"sc_condition": null
},
{
"sc_key": "moderated",
@@ -273,7 +360,8 @@
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_moderated",
"sc_order": 13
"sc_order": 15,
"sc_condition": null
},
{
"sc_key": "moderated_light",
@@ -285,7 +373,8 @@
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_moderated_light",
"sc_order": 14
"sc_order": 16,
"sc_condition": null
},
{
"sc_key": "moderated_text",
@@ -297,7 +386,8 @@
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_moderated_text",
"sc_order": 15
"sc_order": 17,
"sc_condition": null
},
{
"sc_key": "moderated_text_light",
@@ -309,7 +399,8 @@
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_moderated_text_light",
"sc_order": 16
"sc_order": 18,
"sc_condition": null
},
{
"sc_key": "normal_button",
@@ -321,7 +412,8 @@
"sc_tab_key": "buttoncolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_normal_button",
"sc_order": 5
"sc_order": 5,
"sc_condition": null
},
{
"sc_key": "normal_button_font",
@@ -333,7 +425,8 @@
"sc_tab_key": "buttoncolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_normal_button_font",
"sc_order": 6
"sc_order": 6,
"sc_condition": null
},
{
"sc_key": "notification_bubble",
@@ -343,9 +436,10 @@
"sc_app": "core",
"sc_default": "#ad1457",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 1,
"sc_title": "Notification Bubble",
"sc_order": 23
"sc_show_in_vse": 0,
"sc_title": "themesetting_notification_bubble",
"sc_order": 25,
"sc_condition": null
},
{
"sc_key": "page_background",
@@ -357,7 +451,8 @@
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_page_background",
"sc_order": 1
"sc_order": 1,
"sc_condition": null
},
{
"sc_key": "poll_bar",
@@ -367,9 +462,36 @@
"sc_app": "core",
"sc_default": "#2a94de",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 1,
"sc_show_in_vse": 0,
"sc_title": "themesetting_poll_bar",
"sc_order": 17
"sc_order": 19,
"sc_condition": null
},
{
"sc_key": "post_highlight",
"sc_type": "Color",
"sc_multiple": 0,
"sc_content": "[]",
"sc_app": "core",
"sc_default": "#fcf9f0",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_post_highlight",
"sc_order": 28,
"sc_condition": null
},
{
"sc_key": "post_highlight_border",
"sc_type": "Color",
"sc_multiple": 0,
"sc_content": "[]",
"sc_app": "core",
"sc_default": "#f7df97",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesettings_post_highlight_border",
"sc_order": 29,
"sc_condition": null
},
{
"sc_key": "prefix",
@@ -379,9 +501,10 @@
"sc_app": "core",
"sc_default": "#ad1457",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 1,
"sc_show_in_vse": 0,
"sc_title": "themesetting_prefix",
"sc_order": 6
"sc_order": 8,
"sc_condition": null
},
{
"sc_key": "price",
@@ -391,9 +514,10 @@
"sc_app": "core",
"sc_default": "#c62828",
"sc_tab_key": "textcolors",
"sc_show_in_vse": 1,
"sc_title": "Price",
"sc_order": 9
"sc_show_in_vse": 0,
"sc_title": "themesetting_price",
"sc_order": 10,
"sc_condition": null
},
{
"sc_key": "primary_button",
@@ -405,7 +529,8 @@
"sc_tab_key": "buttoncolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_primary_button",
"sc_order": 1
"sc_order": 1,
"sc_condition": null
},
{
"sc_key": "primary_button_font",
@@ -417,7 +542,8 @@
"sc_tab_key": "buttoncolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_primary_button_font",
"sc_order": 2
"sc_order": 2,
"sc_condition": null
},
{
"sc_key": "profile_header",
@@ -429,7 +555,8 @@
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_profile_header",
"sc_order": 5
"sc_order": 7,
"sc_condition": null
},
{
"sc_key": "rating_hover",
@@ -439,9 +566,10 @@
"sc_app": "core",
"sc_default": "#2a94de",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 1,
"sc_show_in_vse": 0,
"sc_title": "themesetting_rating_hover",
"sc_order": 18
"sc_order": 20,
"sc_condition": null
},
{
"sc_key": "rating_on",
@@ -449,11 +577,38 @@
"sc_multiple": 0,
"sc_content": "[]",
"sc_app": "core",
"sc_default": "#ad1457",
"sc_default": "#ff9800",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 1,
"sc_show_in_vse": 0,
"sc_title": "themesetting_rating_on",
"sc_order": 19
"sc_order": 21,
"sc_condition": null
},
{
"sc_key": "recaptcha_theme",
"sc_type": "other",
"sc_multiple": 0,
"sc_content": "return new \\IPS\\Helpers\\Form\\Radio( \"core_theme_setting_title_{$row['sc_id']}\", $value, FALSE, array( 'options' => array(\r\n\t\t\t'clean'\t\t\t=> \"<img src='\" . $theme->resource( 'recaptcha\/clean.png', 'core' ) . \"' alt='clean'>\",\r\n\t\t\t'red'\t\t\t=> \"<img src='\" . $theme->resource( 'recaptcha\/red.png', 'core' ) . \"' alt='clean'>\",\r\n\t\t\t'white'\t\t\t=> \"<img src='\" . $theme->resource( 'recaptcha\/white.png', 'core' ) . \"' alt='clean'>\",\r\n\t\t\t'blackglass'\t=> \"<img src='\" . $theme->resource( 'recaptcha\/blackglass.png', 'core' ) . \"' alt='clean'>\",\r\n\t\t\t), 'parse' => 'raw' ), NULL, NULL, NULL, 'theme_setting_' . $row['sc_key'] );",
"sc_app": "core",
"sc_default": "white",
"sc_tab_key": "custom",
"sc_show_in_vse": 0,
"sc_title": "recaptcha_theme",
"sc_order": 12,
"sc_condition": "return \\IPS\\Settings::i()->bot_antispam_type === 'recaptcha';"
},
{
"sc_key": "recaptcha2_theme",
"sc_type": "other",
"sc_multiple": 0,
"sc_content": "return new \\IPS\\Helpers\\Form\\Radio( \"core_theme_setting_title_{$row['sc_id']}\", $value, FALSE, array( 'options' => array(\r\n\t\t\t'light'\t\t\t=> \"<img src='\" . $theme->resource( 'recaptcha2\/light.png', 'core' ) . \"' alt='light'>\",\r\n\t\t\t'dark'\t\t\t=> \"<img src='\" . $theme->resource( 'recaptcha2\/dark.png', 'core' ) . \"' alt='dark'>\",\r\n\t\t\t), 'parse' => 'raw' ), NULL, NULL, NULL, 'theme_setting_' . $row['sc_key'] );",
"sc_app": "core",
"sc_default": "light",
"sc_tab_key": "custom",
"sc_show_in_vse": 0,
"sc_title": "recaptcha2_theme",
"sc_order": 11,
"sc_condition": "return \\IPS\\Settings::i()->bot_antispam_type === 'recaptcha2';"
},
{
"sc_key": "responsive",
@@ -465,7 +620,8 @@
"sc_tab_key": "custom",
"sc_show_in_vse": 0,
"sc_title": "themesetting_responsive",
"sc_order": 1
"sc_order": 1,
"sc_condition": null
},
{
"sc_key": "rounded_photos",
@@ -477,7 +633,8 @@
"sc_tab_key": "custom",
"sc_show_in_vse": 0,
"sc_title": "themesetting_rounded_photos",
"sc_order": 2
"sc_order": 2,
"sc_condition": null
},
{
"sc_key": "secondary_title",
@@ -489,7 +646,8 @@
"sc_tab_key": "textcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_secondary_title",
"sc_order": 7
"sc_order": 7,
"sc_condition": null
},
{
"sc_key": "secondary_title_font",
@@ -501,7 +659,8 @@
"sc_tab_key": "textcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_secondary_title_font",
"sc_order": 8
"sc_order": 8,
"sc_condition": null
},
{
"sc_key": "section_title",
@@ -513,7 +672,8 @@
"sc_tab_key": "textcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_section_title",
"sc_order": 5
"sc_order": 5,
"sc_condition": null
},
{
"sc_key": "section_title_font",
@@ -525,7 +685,8 @@
"sc_tab_key": "textcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_section_title_font",
"sc_order": 6
"sc_order": 6,
"sc_condition": null
},
{
"sc_key": "selected",
@@ -535,9 +696,10 @@
"sc_app": "core",
"sc_default": "#ebf4f9",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 1,
"sc_show_in_vse": 0,
"sc_title": "themesetting_selected",
"sc_order": 7
"sc_order": 9,
"sc_condition": null
},
{
"sc_key": "sidebar_position",
@@ -549,7 +711,8 @@
"sc_tab_key": "custom",
"sc_show_in_vse": 0,
"sc_title": "themesetting_sidebar_position",
"sc_order": 3
"sc_order": 3,
"sc_condition": null
},
{
"sc_key": "sidebar_responsive",
@@ -561,7 +724,8 @@
"sc_tab_key": "custom",
"sc_show_in_vse": 1,
"sc_title": "themesetting_sidebar_responsive",
"sc_order": 4
"sc_order": 4,
"sc_condition": null
},
{
"sc_key": "step_background",
@@ -571,9 +735,23 @@
"sc_app": "core",
"sc_default": "#ad1457",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 1,
"sc_show_in_vse": 0,
"sc_title": "themesetting_step_background",
"sc_order": 20
"sc_order": 22,
"sc_condition": null
},
{
"sc_key": "tab_background",
"sc_type": "Color",
"sc_multiple": 0,
"sc_content": "[{\"key\":\"\",\"value\":\"\"}]",
"sc_app": "core",
"sc_default": "#3d648a",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_tabs_background",
"sc_order": 27,
"sc_condition": null
},
{
"sc_key": "text_color",
@@ -585,7 +763,8 @@
"sc_tab_key": "textcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_text_color",
"sc_order": 1
"sc_order": 1,
"sc_condition": null
},
{
"sc_key": "text_light",
@@ -597,7 +776,8 @@
"sc_tab_key": "textcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_text_light",
"sc_order": 2
"sc_order": 2,
"sc_condition": null
},
{
"sc_key": "timeline_color",
@@ -607,9 +787,62 @@
"sc_app": "core",
"sc_default": "#4d4d4d",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 1,
"sc_show_in_vse": 0,
"sc_title": "activity_stream_timeline",
"sc_order": 21
"sc_order": 23,
"sc_condition": null
},
{
"sc_key": "trophy_first",
"sc_type": "Color",
"sc_multiple": 0,
"sc_content": "[]",
"sc_app": "core",
"sc_default": "#fac746",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 1,
"sc_title": "themesetting_trophy_first",
"sc_order": 32,
"sc_condition": null
},
{
"sc_key": "trophy_first_font",
"sc_type": "Color",
"sc_multiple": 0,
"sc_content": "[]",
"sc_app": "core",
"sc_default": "#704926",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 1,
"sc_title": "themesetting_trophy_first_font",
"sc_order": 35,
"sc_condition": null
},
{
"sc_key": "trophy_second",
"sc_type": "Color",
"sc_multiple": 0,
"sc_content": "[]",
"sc_app": "core",
"sc_default": "#c0c0c0",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 1,
"sc_title": "themesetting_trophy_second",
"sc_order": 33,
"sc_condition": null
},
{
"sc_key": "trophy_third",
"sc_type": "Color",
"sc_multiple": 0,
"sc_content": "[]",
"sc_app": "core",
"sc_default": "#cd7f32",
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_trophy_third",
"sc_order": 34,
"sc_condition": null
},
{
"sc_key": "very_light_button",
@@ -621,7 +854,8 @@
"sc_tab_key": "buttoncolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_very_light_button",
"sc_order": 11
"sc_order": 11,
"sc_condition": null
},
{
"sc_key": "very_light_button_font",
@@ -633,7 +867,8 @@
"sc_tab_key": "buttoncolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_very_light_button_font",
"sc_order": 12
"sc_order": 12,
"sc_condition": null
},
{
"sc_key": "widget_title_bar",
@@ -645,6 +880,7 @@
"sc_tab_key": "frontendcolors",
"sc_show_in_vse": 0,
"sc_title": "themesetting_widget_title_bar",
"sc_order": 12
"sc_order": 14,
"sc_condition": null
}
]
+75 -1
View File
@@ -111,5 +111,79 @@
"101009": "4.1.0 Beta 10",
"101010": "4.1.0",
"101011": "4.1.1",
"101012": "4.1.2"
"101012": "4.1.2",
"101013": "4.1.3",
"101014": "4.1.3.1",
"101015": "4.1.3.2",
"101016": "4.1.4",
"101017": "4.1.4.1",
"101018": "4.1.5",
"101019": "4.1.5.1",
"101020": "4.1.5.2",
"101021": "4.1.6",
"101022": "4.1.6.1",
"101023": "4.1.7",
"101024": "4.1.8",
"101025": "4.1.8.1",
"101026": "4.1.9",
"101027": "4.1.10",
"101028": "4.1.11",
"101029": "4.1.11.1",
"101030": "4.1.12",
"101031": "4.1.12.1",
"101032": "4.1.12.2",
"101033": "4.1.12.3",
"101034": "4.1.13 Beta 1",
"101035": "4.1.13 Beta 2",
"101036": "4.1.13",
"101037": "4.1.13",
"101038": "4.1.13.1",
"101040": "4.1.13.2",
"101041": "4.1.13.2",
"101042": "4.1.14 Beta 1",
"101043": "4.1.14 Beta 2",
"101044": "4.1.14 Beta 3",
"101045": "4.1.14 Beta 4",
"101046": "4.1.14 Beta 5",
"101049": "4.1.14 Beta 6",
"101050": "4.1.14 Beta 7",
"101051": "4.1.14 RC",
"101052": "4.1.14",
"101053": "4.1.14.1",
"101054": "4.1.14.2",
"101055": "4.1.14.3",
"101056": "4.1.15",
"101057": "4.1.15 Beta 1",
"101058": "4.1.15 Beta 2",
"101059": "4.1.15 Beta 2a",
"101060": "4.1.15 Beta 3",
"101061": "4.1.15",
"101062": "4.1.15",
"101063": "4.1.15",
"101064": "4.1.16 Beta 1",
"101065": "4.1.16 Beta 2",
"101066": "4.1.16 Beta 3",
"101067": "4.1.16 Beta 4",
"101068": "4.1.16 Beta 5",
"101069": "4.1.16",
"101070": "4.1.16.1",
"101071": "4.1.17 Beta 1",
"101072": "4.1.17 Beta 1a",
"101073": "4.1.17 Beta 1b",
"101074": "4.1.17 Beta 2",
"101075": "4.1.17 Beta 3",
"101076": "4.1.17 Beta 3",
"101077": "4.1.17",
"101078": "4.1.17.1",
"101079": "4.1.18 Beta 1",
"101082": "4.1.18 Beta 1b",
"101083": "4.1.18 Beta 2",
"101084": "4.1.18 Beta 3",
"101085": "4.1.18",
"101088": "4.1.18.1",
"101089": "4.1.18.2",
"101090": "4.1.19 Beta 1",
"101091": "4.1.19 Beta 2",
"101092": "4.1.19 Beta 3",
"101093": "4.1.19"
}