本文整理汇总了PHP中CBLib\Language\CBTxt::setLanguage方法的典型用法代码示例。如果您正苦于以下问题:PHP CBTxt::setLanguage方法的具体用法?PHP CBTxt::setLanguage怎么用?PHP CBTxt::setLanguage使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CBLib\Language\CBTxt
的用法示例。
在下文中一共展示了CBTxt::setLanguage方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: _sendEmailMSG
/**
* Internal function to sends an email from a user to another user
*
* @param UserTable|stdClass $toUser Receiver
* @param UserTable $fromUser Sender
* @param string $replyToName Reply-To name
* @param string $replyToEmail Reply-To email address
* @param string $subject Subject
* @param string $message HTML message for PMS
* @param boolean $addPrefix Add prefix text to explain who is sending from which site ?
* @param int $mode false = plain text, true = HTML
* @param null|string $cc Email CC address
* @param null|string $bcc Email BCC address
* @param null|string $attachment Email attachment files
* @param boolean|string $fromEmail From email address (overrides from row email): false = from row email, null = system email, otherwise use as specified
* @param boolean|string $fromName From name (overrides from row name): false = from row name, null = system name, otherwise use a specified
* @return boolean Result
*/
private function _sendEmailMSG($toUser, $fromUser, $replyToName, $replyToEmail, $subject, $message, $addPrefix = false, $mode = 0, $cc = null, $bcc = null, $attachment = null, $fromEmail = false, $fromName = false)
{
global $_CB_framework, $ueConfig, $_PLUGINS, $_SERVER;
$_PLUGINS->trigger('onBeforeSendEmailMSG', array($this, &$toUser, &$fromUser, &$subject, &$message, &$addPrefix, &$mode, &$cc, &$bcc, &$attachment));
if ($addPrefix) {
$toUserLanguage = CBuser::getInstance((int) $toUser->id)->getUserData()->getUserLanguage();
$savedLanguage = CBTxt::setLanguage($toUserLanguage);
$preMsg = $this->_replaceVariables(CBTxt::T('EMAIL_NOTE_MESSAGE_FROM_NAME_AT_SITENAME_TO_YOU', '------- This is a message from [formatname] at [sitename] ([siteurl]) to you: -------') . "\r\n\r\n", $fromUser, $mode);
$postMsg = $this->_replaceVariables("\r\n\r\n" . CBTxt::T('EMAIL_NOTE', '------ NOTES: ------') . (isset($ueConfig['allow_email_replyto']) && $ueConfig['allow_email_replyto'] == 2 ? "\r\n\r\n" . CBTxt::T('EMAIL_NOTE_WHEN_REPLYING_CHECK_ADDRESS', 'When replying, please check carefully that the email address of [formatname] is [email].') : null) . "\r\n\r\n" . CBTxt::T('EMAIL_NOTE_UNSEEN_ADDRESS', 'This user did not see your email address. If you reply the recipient will have your email address.') . "\r\n\r\n" . CBTxt::T('EMAIL_NOTE_CONTENTS_DISCLAIMER', '[sitename] owners cannot accept any responsibility for the contents of the email and of user email addresses.'), $fromUser, $mode);
$message = $preMsg . $message . $postMsg;
$fromName = getNameFormat($fromUser->name, $fromUser->username, $ueConfig['name_format']) . ' @ ' . $_CB_framework->getCfg('sitename');
CBTxt::setLanguage($savedLanguage);
}
$this->errorMSG = null;
$result = comprofilerMail($fromEmail !== false ? $fromEmail : $fromUser->email, $fromName !== false ? $fromName : $fromUser->name, $toUser->email, $subject, $message, $mode, $cc, $bcc, $attachment, $replyToEmail, $replyToName, $this->mailerProperties, $this->errorMSG);
$_PLUGINS->trigger('onAfterSendEmailMSG', array($result, $this, $toUser, $fromUser, $subject, $message, $addPrefix, $mode, $cc, $bcc, $attachment));
return $result;
}
示例2: _loadPluginFile
/**
* loads a plugins main php file
*
* @param PluginTable $plugin
* @return bool
*/
public function _loadPluginFile($plugin)
{
/** @noinspection PhpUnusedLocalVariableInspection */
global $_CB_framework, $_PLUGINS;
// $_PLUGINS is needed for the include below.
// We don't want language files PHP loading as we do that through cbimport:
if ($plugin->type == 'language') {
return false;
}
$path = $_CB_framework->getCfg('absolute_path') . '/' . $this->getPluginRelPath($plugin) . '/' . $plugin->element . '.php';
if (file_exists($path) && is_readable($path)) {
$savePreviousPluginId = $this->_setLoading($plugin, true);
$langCache = CBTxt::setLanguage(null);
$plgLangPath = $_CB_framework->getCfg('absolute_path') . '/' . $this->getPluginRelPath($plugin) . '/language';
$langPath = $_CB_framework->getCfg('absolute_path') . '/components/com_comprofiler/plugin/language';
$lang = $_CB_framework->getCfg('lang_tag');
if ($_CB_framework->getUi() == 2) {
$langLoaded = CBTxt::import($langPath, $lang, '/cbplugin/' . $plugin->element . '-admin_language.php', false);
if (!$langLoaded) {
CBTxt::import($plgLangPath, $lang, 'admin_language.php');
}
}
$langLoaded = CBTxt::import($langPath, $lang, 'cbplugin/' . $plugin->element . '-language.php', false);
if (!$langLoaded) {
CBTxt::import($plgLangPath, $lang, 'language.php');
}
// We don't want plugins language files to alter the current language loaded so lets reset it:
CBTxt::setLanguage($langCache);
/** @noinspection PhpIncludeInspection */
require_once $path;
$this->_setLoading($plugin, $savePreviousPluginId);
return true;
} else {
return false;
}
}
示例3: activateUser
/**
* Activates a user
* user plugins must have been loaded
*
* @param UserTable $user
* @param int $ui 1=frontend, 2=backend, 0=no UI: machine-machine UI
* @param string $cause (one of: 'UserRegistration', 'UserConfirmation', 'UserApproval', 'NewUser', 'UpdateUser')
* @param boolean $mailToAdmins true if the standard new-user email should be sent to admins if moderator emails are enabled
* @param boolean $mailToUser true if the welcome new user email (from CB config) should be sent to the new user
* @param boolean $triggerBeforeActivate
* @return array Texts to display
*/
function activateUser(&$user, $ui, $cause, $mailToAdmins = true, $mailToUser = true, $triggerBeforeActivate = true)
{
global $ueConfig, $_PLUGINS;
static $notificationsSent = array();
$activate = $user->confirmed && $user->approved == 1;
$showSysMessage = true;
$savedLanguage = CBTxt::setLanguage($user->getUserLanguage());
$messagesToUser = getActivationMessage($user, $cause);
CBTxt::setLanguage($savedLanguage);
if ($cause == 'UserConfirmation' && $user->approved == 0) {
$activate = false;
$msg = array('emailAdminSubject' => array('sys' => CBTxt::T('UE_REG_ADMIN_PA_SUB', 'ACTION REQUIRED! New user sign up request pending approval')), 'emailAdminMessage' => array('sys' => CBTxt::T('UE_REG_ADMIN_PA_MSG', "A new user has signed up at [SITEURL] and requires approval.\nThis email contains their details\n\nName - [NAME]\nE-mail - [EMAILADDRESS]\nUsername - [USERNAME]\n\n\nPlease do not respond to this message as it is automatically generated and is for informational purposes only.\n")), 'emailUserSubject' => array(), 'emailUserMessage' => array());
} elseif ($user->confirmed == 0) {
$msg = array('emailAdminSubject' => array(), 'emailAdminMessage' => array());
$savedLanguage = CBTxt::setLanguage($user->getUserLanguage());
$msg['emailUserSubject'] = array('sys' => CBTxt::T(stripslashes($ueConfig['reg_pend_appr_sub'])));
$msg['emailUserMessage'] = array('sys' => CBTxt::T(stripslashes($ueConfig['reg_pend_appr_msg'])));
CBTxt::setLanguage($savedLanguage);
} elseif ($cause == 'SameUserRegistrationAgain') {
$activate = false;
$msg = array('emailAdminSubject' => array(), 'emailAdminMessage' => array(), 'emailUserSubject' => array(), 'emailUserMessage' => array());
} elseif ($user->confirmed && !($user->approved == 1)) {
$msg = array('emailAdminSubject' => array('sys' => CBTxt::T('UE_REG_ADMIN_PA_SUB', 'ACTION REQUIRED! New user sign up request pending approval')), 'emailAdminMessage' => array('sys' => CBTxt::T('UE_REG_ADMIN_PA_MSG', "A new user has signed up at [SITEURL] and requires approval.\nThis email contains their details\n\nName - [NAME]\nE-mail - [EMAILADDRESS]\nUsername - [USERNAME]\n\n\nPlease do not respond to this message as it is automatically generated and is for informational purposes only.\n")));
$savedLanguage = CBTxt::setLanguage($user->getUserLanguage());
$msg['emailUserSubject'] = array('sys' => CBTxt::T(stripslashes($ueConfig['reg_pend_appr_sub'])));
$msg['emailUserMessage'] = array('sys' => CBTxt::T(stripslashes($ueConfig['reg_pend_appr_msg'])));
CBTxt::setLanguage($savedLanguage);
} elseif ($user->confirmed && $user->approved == 1) {
$msg = array('emailAdminSubject' => array('sys' => CBTxt::T('UE_REG_ADMIN_SUB', 'New user sign up')), 'emailAdminMessage' => array('sys' => CBTxt::T('UE_REG_ADMIN_MSG', "A new user has signed up at [SITEURL].\nThis email contains their details\n\nName - [NAME]\nE-mail - [EMAILADDRESS]\nUsername - [USERNAME]\n\n\nPlease do not respond to this message as it is automatically generated and is for information purposes only.\n")));
$savedLanguage = CBTxt::setLanguage($user->getUserLanguage());
$msg['emailUserSubject'] = array('sys' => CBTxt::T(stripslashes($ueConfig['reg_welcome_sub'])));
$msg['emailUserMessage'] = array('sys' => CBTxt::T(stripslashes($ueConfig['reg_welcome_msg'])));
CBTxt::setLanguage($savedLanguage);
}
$msg['messagesToUser'] = $messagesToUser;
if ($triggerBeforeActivate) {
$results = $_PLUGINS->trigger('onBeforeUserActive', array(&$user, $ui, $cause, $mailToAdmins, $mailToUser));
if ($_PLUGINS->is_errors() && $ui != 0) {
echo $_PLUGINS->getErrorMSG('<br />');
}
foreach ($results as $res) {
if (is_array($res)) {
$activate = $activate && $res['activate'];
$mailToAdmins = $mailToAdmins && $res['mailToAdmins'];
$mailToUser = $mailToUser && $res['mailToUser'];
$showSysMessage = $showSysMessage && $res['showSysMessage'];
foreach (array_keys($msg) as $key) {
if (isset($res[$key]) && $res[$key]) {
array_push($msg[$key], $res[$key]);
}
}
}
}
if (!($mailToAdmins && $ueConfig['moderatorEmail'] == 1)) {
unset($msg['emailAdminSubject']['sys']);
unset($msg['emailAdminMessage']['sys']);
}
if (!$mailToUser) {
unset($msg['emailUserSubject']['sys']);
unset($msg['emailUserMessage']['sys']);
}
if (!$showSysMessage) {
unset($msg['messagesToUser']['sys']);
}
}
if ($activate) {
$user->block = 0;
$user->storeBlock(false);
$user->removeActivationCode();
}
if ($activate) {
$_PLUGINS->trigger('onUserActive', array(&$user, $ui, $cause, $mailToAdmins, $mailToUser));
if ($_PLUGINS->is_errors() && $ui != 0) {
$msg['messagesToUser'] = $_PLUGINS->getErrorMSG('<br />') . $msg['messagesToUser'];
}
}
if (!isset($notificationsSent[$user->id][$user->confirmed][$user->approved][$user->block])) {
// in case done several times (e.g. plugins), avoid resending messages.
$cbNotification = new cbNotification();
if ($ueConfig['moderatorEmail'] && count($msg['emailAdminMessage'])) {
$pwd = $user->password;
$user->password = null;
$cbNotification->sendToModerators(implode(', ', $msg['emailAdminSubject']), $cbNotification->_replaceVariables(implode('\\n\\n', $msg['emailAdminMessage']), $user));
$user->password = $pwd;
}
if (count($msg['emailUserMessage'])) {
$cbNotification->sendFromSystem($user, implode(', ', $msg['emailUserSubject']), implode('\\n\\n', $msg['emailUserMessage']), true, isset($ueConfig['reg_email_html']) ? (int) $ueConfig['reg_email_html'] : 0);
}
//.........这里部分代码省略.........
示例4: banUser
/**
* Changes the ban state of a user
*
* @param int $state 0: Unbanned, 1: Banned, 2: Pending
* @param null|UserTable $by The user that is banning or unbanning
* @param null|string $reason The reason for the ban or unban
* @return bool
*/
public function banUser($state, $by = null, $reason = null)
{
global $_CB_framework, $ueConfig, $_PLUGINS;
if ($this->banned == $state) {
return true;
}
if (!$by) {
$by = CBuser::getMyUserDataInstance();
}
$values = array();
$_PLUGINS->trigger('onBeforeUserBan', array(&$this, &$state, &$by, &$reason));
if ($_PLUGINS->is_errors()) {
$this->setError($_PLUGINS->getErrorMSG(false));
return false;
}
$values['banned'] = (int) $state;
if ($reason) {
$values['bannedreason'] = $reason;
}
if ($state == 0) {
$values['unbannedby'] = (int) $by->id;
$values['unbanneddate'] = $_CB_framework->getUTCDate();
} elseif ($state == 1) {
$values['bannedby'] = (int) $by->id;
$values['banneddate'] = $_CB_framework->getUTCDate();
}
if ($this->storeDatabaseValues($values, false)) {
$_PLUGINS->trigger('onAfterUserBan', array($this, $state, $by, $reason));
$cbNotification = new cbNotification();
$savedLanguage = CBTxt::setLanguage($this->getUserLanguage());
if ($state == 0) {
$cbNotification->sendFromSystem((int) $this->id, CBTxt::T('UE_UNBANUSER_SUB', 'User Profile Unbanned'), CBTxt::T('UE_UNBANUSER_MSG', 'Your user profile was unbanned by an administrator. Your profile is now visible to all users again.'));
} elseif ($state == 1) {
$cbNotification->sendFromSystem((int) $this->id, CBTxt::T('UE_BANUSER_SUB', 'User Profile Banned.'), CBTxt::T('UE_BANUSER_MSG', 'Your user profile was banned by an administrator. Please log in and review why it was banned.'));
} elseif ($state == 2) {
if (isset($ueConfig['emailpass']) && $ueConfig['moderatorEmail'] == 1 && $_CB_framework->getUi() != 2) {
$cbNotification->sendToModerators(CBTxt::T('UE_UNBANUSERREQUEST_SUB', 'Unban Request Pending Review'), CBTxt::T('UE_UNBANUSERREQUEST_MSG', 'A user has submitted a request to unban their profile. Please log in and take the appropriate action.'));
}
}
CBTxt::setLanguage($savedLanguage);
return true;
}
return false;
}