Diff
checker
テキスト
テキスト
画像
ドキュメント
Excel
フォルダ
Legal
Enterprise
デスクトップ
料金
ログイン
Diffchecker デスクトップのダウンロード
テキスト比較
2 つのテキスト ファイルの違いを見つける
ツール
履歴
ライブエディター
未変更行を折りたたむ
折り返しなし
レイアウト
分割
統合
比較精度
スマート
単語
文字
シンタックスハイライト
構文を選択
無視
テキスト変換
最初の差分へ移動
入力を編集
Diffchecker Desktop
Diffcheckerを実行する最も安全な方法。Diffchecker Desktopアプリを入手:あなたの差分はコンピューターから出ることはありません!
Desktopを入手
Untitled diff
作成日
9 年前
差分は期限切れになりません
クリア
エクスポート
共有
説明
39 削除
行
合計
削除
文字
合計
削除
この機能を引き続き使用するには、アップグレードしてください
Diff
checker
Pro
価格を見る
109 行
すべてコピー
39 追加
行
合計
追加
文字
合計
追加
この機能を引き続き使用するには、アップグレードしてください
Diff
checker
Pro
価格を見る
108 行
すべてコピー
<?php
<?php
class NixFifty_Discord_Helper
class NixFifty_Discord_Helper
{
{
public static function getCRC32($input)
public static function getCRC32($input)
{
{
return hash('crc32', $input);
return hash('crc32', $input);
}
}
public function setUserServerGroupsById(XenForo_Model_UserExternal $model = null, $userId)
public function setUserServerGroupsById(XenForo_Model_UserExternal $model = null, $userId)
{
{
if (is_null($model))
if (is_null($model))
{
{
$model = XenForo_Model::create('XenForo_Model_UserExternal');
$model = XenForo_Model::create('XenForo_Model_UserExternal');
}
}
$xenOptions = XenForo_Application::getOptions();
$xenOptions = XenForo_Application::getOptions();
if ($xenOptions->nfDiscordEnableSync)
if ($xenOptions->nfDiscordEnableSync)
{
{
$api = new NixFifty_Discord_Api_Guild();
$api = new NixFifty_Discord_Api_Guild();
$externalUser = $model->getExternalAuthAssociationForUser('discord', $userId);
$externalUser = $model->getExternalAuthAssociationForUser('discord', $userId);
if(!$externalUser)
if(!$externalUser)
{
{
return false;
return false;
}
}
/* @var XenForo_Model_User $userModel */
/* @var XenForo_Model_User $userModel */
$userModel = XenForo_Model::create('XenForo_Model_User');
$userModel = XenForo_Model::create('XenForo_Model_User');
$user = $userModel->getUserById($userId);
$user = $userModel->getUserById($userId);
$userGroups = explode(',', $user['secondary_group_ids']);
$userGroups = explode(',', $user['secondary_group_ids']);
$userGroups[] = $user['user_group_id'];
$userGroups[] = $user['user_group_id'];
/** @var XenForo_Model_UserGroup $userGroupModel */
/** @var XenForo_Model_UserGroup $userGroupModel */
$userGroupModel = XenForo_Model::create('XenForo_Model_UserGroup');
$userGroupModel = XenForo_Model::create('XenForo_Model_UserGroup');
コピー
コピー済み
コピー
コピー済み
$
roleIds
= array();
$
discordRoles
= array();
コピー
コピー済み
コピー
コピー済み
foreach($userGroups as $userGroup)
foreach($userGroups as $userGroup)
{
{
$group = $userGroupModel->getUserGroupById($userGroup);
$group = $userGroupModel->getUserGroupById($userGroup);
if ($group)
if ($group)
{
{
if (array_key_exists('nfd_server_group_ids', $group) &&
strlen(
$group['nfd_server_group_ids']
) > 0)
if (array_key_exists('nfd_server_group_ids', $group) &&
array_key_exists('display_style_priority', $group))
{
{
if (strpos($group['nfd_server_group_ids'], ',') !== false)
$groupRoles =
$group['nfd_server_group_ids']
;
{
$groupStyle = $group['display_style_priority'];
$ids = explode(',', $group['nfd_server_group_ids']);
$roleIds = array_merge($roleIds, $ids);
if (strlen($groupRoles
) > 0)
}
{
}
if ($groupStyle > 0)
else
{
{
if (!isset($highestStyle) || $groupStyle > $highestStyle)
continue;
{
}
$highestRoles = $groupRoles;
}
$highestStyle = $groupStyle;
else
}
{
}
continue;
else
}
{
}
$discordRoles = array_merge($discordRoles, explode(',', $groupRoles));
$roleIds = array_unique($roleIds, SORT_NUMERIC);
}
}
}
}
}
if (isset($highestRoles))
{
$discordRoles = array_merge($discordRoles, explode(',', $highestRoles));
}
$discordId = $externalUser['provider_key'];
$discordId = $externalUser['provider_key'];
コピー
コピー済み
コピー
コピー済み
$discordUser = $api->getGuildMember($discordId);
// compare the new list of groups to the existing list and only add client to groups they're not already in
$api->wipeUserRoles($discordId);
return $api->patchGuildMemberRoles($discordId, $discordRoles);
if (array_key_exists('roles', $discordUser))
{
if (sizeof($roleIds) > 0 )
{
foreach($roleIds as $roleId)
{
$api->addGuildMemberRole($discordId, $roleId);
}
}
}
return true;
}
}
return false;
return false;
}
}
public function setUsersServerGroupsByIds(array $ids = array())
public function setUsersServerGroupsByIds(array $ids = array())
{
{
if (count($ids) > 0)
if (count($ids) > 0)
{
{
/** @var XenForo_Model_UserExternal $model */
/** @var XenForo_Model_UserExternal $model */
$model = XenForo_Model::create('XenForo_Model_UserExternal');
$model = XenForo_Model::create('XenForo_Model_UserExternal');
foreach($ids as $id)
foreach($ids as $id)
{
{
$this->setUserServerGroupsById($model, $id);
$this->setUserServerGroupsById($model, $id);
}
}
}
}
}
}
public static function _assertDiscordConfigured()
public static function _assertDiscordConfigured()
{
{
$options = XenForo_Application::getOptions();
$options = XenForo_Application::getOptions();
if (empty($options->nfDiscordGuildId) ||
if (empty($options->nfDiscordGuildId) ||
empty($options->nfDiscordToken) ||
empty($options->nfDiscordToken) ||
empty($options->nfDiscordAppKey) ||
empty($options->nfDiscordAppKey) ||
empty($options->nfDiscordAppSecret))
empty($options->nfDiscordAppSecret))
{
{
throw new XenForo_Exception(new XenForo_Phrase('nf_discord_discord_not_configured'), true);
throw new XenForo_Exception(new XenForo_Phrase('nf_discord_discord_not_configured'), true);
}
}
}
}
}
}
保存された差分
原文
ファイルを開く
<?php class NixFifty_Discord_Helper { public static function getCRC32($input) { return hash('crc32', $input); } public function setUserServerGroupsById(XenForo_Model_UserExternal $model = null, $userId) { if (is_null($model)) { $model = XenForo_Model::create('XenForo_Model_UserExternal'); } $xenOptions = XenForo_Application::getOptions(); if ($xenOptions->nfDiscordEnableSync) { $api = new NixFifty_Discord_Api_Guild(); $externalUser = $model->getExternalAuthAssociationForUser('discord', $userId); if(!$externalUser) { return false; } /* @var XenForo_Model_User $userModel */ $userModel = XenForo_Model::create('XenForo_Model_User'); $user = $userModel->getUserById($userId); $userGroups = explode(',', $user['secondary_group_ids']); $userGroups[] = $user['user_group_id']; /** @var XenForo_Model_UserGroup $userGroupModel */ $userGroupModel = XenForo_Model::create('XenForo_Model_UserGroup'); $roleIds = array(); foreach($userGroups as $userGroup) { $group = $userGroupModel->getUserGroupById($userGroup); if ($group) { if (array_key_exists('nfd_server_group_ids', $group) && strlen($group['nfd_server_group_ids']) > 0) { if (strpos($group['nfd_server_group_ids'], ',') !== false) { $ids = explode(',', $group['nfd_server_group_ids']); $roleIds = array_merge($roleIds, $ids); } } else { continue; } } else { continue; } } $roleIds = array_unique($roleIds, SORT_NUMERIC); $discordId = $externalUser['provider_key']; $discordUser = $api->getGuildMember($discordId); $api->wipeUserRoles($discordId); if (array_key_exists('roles', $discordUser)) { if (sizeof($roleIds) > 0 ) { foreach($roleIds as $roleId) { $api->addGuildMemberRole($discordId, $roleId); } } } return true; } return false; } public function setUsersServerGroupsByIds(array $ids = array()) { if (count($ids) > 0) { /** @var XenForo_Model_UserExternal $model */ $model = XenForo_Model::create('XenForo_Model_UserExternal'); foreach($ids as $id) { $this->setUserServerGroupsById($model, $id); } } } public static function _assertDiscordConfigured() { $options = XenForo_Application::getOptions(); if (empty($options->nfDiscordGuildId) || empty($options->nfDiscordToken) || empty($options->nfDiscordAppKey) || empty($options->nfDiscordAppSecret)) { throw new XenForo_Exception(new XenForo_Phrase('nf_discord_discord_not_configured'), true); } } }
変更されたテキスト
ファイルを開く
<?php class NixFifty_Discord_Helper { public static function getCRC32($input) { return hash('crc32', $input); } public function setUserServerGroupsById(XenForo_Model_UserExternal $model = null, $userId) { if (is_null($model)) { $model = XenForo_Model::create('XenForo_Model_UserExternal'); } $xenOptions = XenForo_Application::getOptions(); if ($xenOptions->nfDiscordEnableSync) { $api = new NixFifty_Discord_Api_Guild(); $externalUser = $model->getExternalAuthAssociationForUser('discord', $userId); if(!$externalUser) { return false; } /* @var XenForo_Model_User $userModel */ $userModel = XenForo_Model::create('XenForo_Model_User'); $user = $userModel->getUserById($userId); $userGroups = explode(',', $user['secondary_group_ids']); $userGroups[] = $user['user_group_id']; /** @var XenForo_Model_UserGroup $userGroupModel */ $userGroupModel = XenForo_Model::create('XenForo_Model_UserGroup'); $discordRoles = array(); foreach($userGroups as $userGroup) { $group = $userGroupModel->getUserGroupById($userGroup); if ($group) { if (array_key_exists('nfd_server_group_ids', $group) && array_key_exists('display_style_priority', $group)) { $groupRoles = $group['nfd_server_group_ids']; $groupStyle = $group['display_style_priority']; if (strlen($groupRoles) > 0) { if ($groupStyle > 0) { if (!isset($highestStyle) || $groupStyle > $highestStyle) { $highestRoles = $groupRoles; $highestStyle = $groupStyle; } } else { $discordRoles = array_merge($discordRoles, explode(',', $groupRoles)); } } } } } if (isset($highestRoles)) { $discordRoles = array_merge($discordRoles, explode(',', $highestRoles)); } $discordId = $externalUser['provider_key']; // compare the new list of groups to the existing list and only add client to groups they're not already in return $api->patchGuildMemberRoles($discordId, $discordRoles); } return false; } public function setUsersServerGroupsByIds(array $ids = array()) { if (count($ids) > 0) { /** @var XenForo_Model_UserExternal $model */ $model = XenForo_Model::create('XenForo_Model_UserExternal'); foreach($ids as $id) { $this->setUserServerGroupsById($model, $id); } } } public static function _assertDiscordConfigured() { $options = XenForo_Application::getOptions(); if (empty($options->nfDiscordGuildId) || empty($options->nfDiscordToken) || empty($options->nfDiscordAppKey) || empty($options->nfDiscordAppSecret)) { throw new XenForo_Exception(new XenForo_Phrase('nf_discord_discord_not_configured'), true); } } }
違いを見つける