RE: Enhanced Account Switcher - doylecc - 17.06.2017
Alles klar, ich hatte nur die Schnellantwort getestet. Für newreply etc. musst du auch noch den direkt darauffolgenden Code in der Datei entfernen, das ist dieser hier:
Code: t("input[name='submit']").val(s+a+n),
RE: Enhanced Account Switcher - Lurker - 17.06.2017
Oh mein Gott, es funktioniert.
Hab vielen, vielen Dank für deine Hilfe und deine Zeit. Wirklich, vielen Dank!
RE: Enhanced Account Switcher - SCOTTISH. - 25.06.2017
Hallo,
gerade bastele ich für unser Forum ein neues Profilfeld über eine Spielerinformation und hatte den Gedanken, dass es richtig super wäre, wenn die Information, die bspw. durch den Hauptaccount eingegeben wurde, auch für alle angehängten Accounts automatisch drin ist. Im Grunde wie die Abwesenheitsmeldung, die übernommen wird. Ist das machbar/umsetzbar?
RE: Enhanced Account Switcher - doylecc - 25.06.2017
Wenn die Funktion für die Übernahme Abwesenheitsinformation aktiviert ist, könntest du es einfach dort mit hinzufügen.
Jetzt mal als Beispiel für das Profilfeld fid4:
Suche in der Datei inc/plugins/accountswitcher/as_usercp.php (~Zeile 528) nach:
PHP-Code: $db->update_query('users', $updated_record, "uid='".$userUid."'");
und füge darunter ein:
PHP-Code: $updated_fields = array( "fid4" => $db->escape_string($mybb->input['profile_fields']['fid4']) ); $db->update_query("userfields", $updated_fields, "ufid='{$userUid}'", false);
Wie gesagt, die fid4 musst du jeweils für dein verwendetes Profilfeld anpassen, wenn du ein anderes verwendest, und es funktioniert an dieser Stelle nur, wenn in den Einstellungen im ACP "Abwesenheitsstatus des Hauptaccounts allen verbundenen Accounts zuweisen" aktiviert ist.
RE: Enhanced Account Switcher - prom.night - 25.06.2017
Hallo,
ist es möglich die verbundenen Accounts auch auf der Teamseite anzeigen zu lassen bei den jeweiligen Teammitgliedern?
Grüße
RE: Enhanced Account Switcher - doylecc - 26.06.2017
(25.06.2017, 20:32)prom.night schrieb: Hallo,
ist es möglich die verbundenen Accounts auch auf der Teamseite anzeigen zu lassen bei den jeweiligen Teammitgliedern?
Grüße
Wenn man eine entsprechende Funktion hinzufügt, ist das schon möglich.
Suche dazu in der Datei inc/plugins/accountswitcher/class_accountswitcher.php nach den Zeilen 358, 397, 488 und 527:
PHP-Code: if (THIS_SCRIPT == "memberlist.php") {
und ändere sie alle vier Male zu:
PHP-Code: if (THIS_SCRIPT == "memberlist.php" || THIS_SCRIPT == "showteam.php" ) {
Dann fügst du am Ende der Datei inc/plugins/accountswitcher/as_functions.php folgende Funktion hinzu:
PHP-Code: // Hook for attached accounts on show team page $plugins->add_hook('showteam_user', 'accountswitcher_showteam'); /** * Shows the attached accounts on show team page. * * */ function accountswitcher_showteam() { global $mybb, $db, $user, $theme, $lang, $eas, $as_user_userbit, $as_user_hidden, $user_sec_reason; global $attachedUser, $userUid, $masterUid, $templates, $attachedPostUser, $numaccounts, $user_profilefield;
// Get the permission to view the list, super admins are always allowed if (isset($mybb->settings['aj_groupperm']) && $mybb->settings['aj_groupperm'] != -1 && !is_super_admin($mybb->user['uid']) ) { if (!is_member($mybb->settings['aj_groupperm']) || $mybb->settings['aj_groupperm'] == '') { return; } } // Load profile field - disabled by default... Example: //$user['profilefield'] = $eas->get_profilefield($user['uid']);
$user['attached_accounts'] = $as_user_userbit = $as_user_hidden = $numaccounts = ''; $mybb_asset_url = $mybb->asset_url;
// Get the attached users if ($user['uid'] != 0 && $mybb->settings['aj_memberlist'] == 1) { // Get usergroup permissions $permissions = user_permissions((int)$user['uid']);
// Get the number of users attached to this account $count = $eas->get_attached($user['uid']); $hidden = $eas->get_hidden($user['uid']);
// Hide users with privacy setting enabled if ($mybb->usergroup['cancp'] != 1 && $mybb->user['uid'] != $user['uid'] && $mybb->settings['aj_privacy'] == 1 && $user['as_privacy'] == 1 ) { if (($mybb->user['as_uid'] != 0 && $mybb->user['as_uid'] != $user['as_uid'] && $mybb->user['as_uid'] != $user['uid'] ) || ($mybb->user['as_uid'] == 0 && $mybb->user['uid'] != $user['as_uid'] ) ) { return; } }
// If there are users attached and the current user can use the Enhanced Account Switcher... if ($permissions['as_canswitch'] == 1 && $count > 0) { $as_user_userbit = $eas->master_userlist($user['uid']); }
// If there are no users attached to current account but the current account is attached to another user if ($count == 0 && $user['as_uid'] != 0) { // Get the master $master = get_user((int)$user['as_uid']); $hidden = $eas->get_hidden($master['uid']); // Get masters permissions $permission = user_permissions((int)$master['uid']);
// If master has permission to use the Enhanced Account Switcher, get the userlist if ($permission['as_canswitch'] == 1) { $userUid = $masterUid = (int)$master['uid']; $attachedPostUser = htmlspecialchars_uni($master['username']); $userAvatar = $eas->attached_avatar($master['avatar'], $master['avatardimensions']);
// Create link to master if ($user['uid'] == $mybb->user['uid']) { $attachedUser = '<span style="font-weight: bold;" title="Master Account">'. format_name( $attachedPostUser, (int)$master['usergroup'], (int)$master['displaygroup'] ) .'</span>'; $as_user_userbit .= eval($templates->render('accountswitcher_memberlist_switch')); } else { // Hide users with privacy setting enabled if (($mybb->usergroup['cancp'] != 1 && $mybb->user['uid'] != $master['uid'] && $mybb->settings['aj_privacy'] == 1 && $master['as_privacy'] == 1 ) && (($mybb->user['as_uid'] > 0 && $mybb->user['as_uid'] != $master['uid'] ) || ($mybb->user['as_uid'] == 0 && $mybb->user['uid'] != $master['as_uid'] ) ) ) { ++$hidden; $as_user_userbit .= ''; } else { $attachedUser = '<span style="font-weight: bold;" title="Master Account">'. build_profile_link(format_name( $attachedPostUser, (int)$master['usergroup'], (int)$master['displaygroup'] ), $userUid) .'</span>'; $as_user_userbit .= eval($templates->render('accountswitcher_memberlist_link')); } } // Get all users attached to master from the cache $as_user_userbit .= $eas->attached_userlist($user['uid']); } }
if ($count > 0 || $count == 0 && $user['as_uid'] != 0) { if (!isset($lang->aj_profile)) { $lang->load('accountswitcher'); } // Show hidden accounts if current user is post author or attached to hidden account if ($user['uid'] == $mybb->user['uid'] || $user['uid'] == $mybb->user['as_uid'] || $user['as_uid'] == $mybb->user['uid'] ) { $hidden = 0; } // Accountlist link in postbit if ($mybb->user['uid'] != 0 && $user['uid'] != 0 && $mybb->settings['aj_memberlist'] == 1) { if ($count == 1) { $numaccounts = $count; $lang->aj_memberlist = $lang->aj_memberlist_one; $numaccounts .= ' '; } elseif ($count > 1) { $numaccounts = $count; $numaccounts .= ' '; $lang->aj_memberlist = $lang->aj_memberlist_more; } else { $lang->aj_memberlist = $lang->aj_memberlist_linked; } if ($hidden > 0) { $as_user_hidden .= $lang->sprintf($lang->aj_hidden, $hidden); } $user['attached_accounts'] .= eval($templates->render('accountswitcher_memberlist')); } } if ($user['as_share'] != 0) { $user['attached_accounts'] .= eval($templates->render('accountswitcher_memberlist_shared')); } } }
Am Ende fügst du dann die Variable {$user['attached_accounts']} in das Template showteam_usergroup_user ein, wo du die Accounts angezeigt haben möchtest.
RE: Enhanced Account Switcher - Slayertime - 26.06.2017
Hallöchen,
Als aller erstes. Danke für dieses wunderbare Plugin.
Ich hoffe, dass ich nichts überlesen habe, wenn doch, dan tut es mir leid.
Leider hab ich jedoch ein Problem.
Klicke ich auf einen Zweitchara, so wechselt er nicht den Account, sondern loggt mich einfach nur aus.
Woran könnte das liegen?
Liebene Gruß und danke schoneinmal für die Hilfe
RE: Enhanced Account Switcher - doylecc - 26.06.2017
Hallo,
und erstmal danke,
Funktioniert das "normale" Einloggen ins Forum? Kannst du dich im Forum und im ACP bewegen, ohne wieder ausgeloggt zu werden?
Sind der Cookiepfad und die Cookiedomain des Forums korrekt eingestellt?
Welche Version von MyBB verwendet ihr?
Zeigt die Datei-Überprüfung im ACP (unter Tools &Verwaltung) geänderte Dateien an?
Habt ihr schon mal die (aktuellen) Plugindateien erneut hochgeladen?
Der Accountswitcher verwendet die Standard-Loginfunktion von MyBB. Wenn alle Dateien aktuell und die Einstellungen korrekt sind, sollte es eigentlich unmöglich sein, dass man nach dem Accountwechsel ausgeloggt ist (außer es wurden vorher bei den Usern direkt in der Datenbank die loginkeys gelöscht)
RE: Enhanced Account Switcher - prom.night - 26.06.2017
(26.06.2017, 13:18)doylecc schrieb: (25.06.2017, 20:32)prom.night schrieb: Hallo,
ist es möglich die verbundenen Accounts auch auf der Teamseite anzeigen zu lassen bei den jeweiligen Teammitgliedern?
Grüße
Wenn man eine entsprechende Funktion hinzufügt, ist das schon möglich.
Suche dazu in der Datei inc/plugins/accountswitcher/class_accountswitcher.php nach den Zeilen 358, 397, 488 und 527:
PHP-Code: if (THIS_SCRIPT == "memberlist.php") {
und ändere sie alle vier Male zu:
PHP-Code: if (THIS_SCRIPT == "memberlist.php" || THIS_SCRIPT == "showteam.php" ) {
Dann fügst du am Ende der Datei inc/plugins/accountswitcher/as_functions.php folgende Funktion hinzu:
PHP-Code: // Hook for attached accounts on show team page $plugins->add_hook('showteam_user', 'accountswitcher_showteam'); /** * Shows the attached accounts on show team page. * * */ function accountswitcher_showteam() { global $mybb, $db, $user, $theme, $lang, $eas, $as_user_userbit, $as_user_hidden, $user_sec_reason; global $attachedUser, $userUid, $masterUid, $templates, $attachedPostUser, $numaccounts, $user_profilefield;
// Get the permission to view the list, super admins are always allowed if (isset($mybb->settings['aj_groupperm']) && $mybb->settings['aj_groupperm'] != -1 && !is_super_admin($mybb->user['uid']) ) { if (!is_member($mybb->settings['aj_groupperm']) || $mybb->settings['aj_groupperm'] == '') { return; } } // Load profile field - disabled by default... Example: //$user['profilefield'] = $eas->get_profilefield($user['uid']);
$user['attached_accounts'] = $as_user_userbit = $as_user_hidden = $numaccounts = ''; $mybb_asset_url = $mybb->asset_url;
// Get the attached users if ($user['uid'] != 0 && $mybb->settings['aj_memberlist'] == 1) { // Get usergroup permissions $permissions = user_permissions((int)$user['uid']);
// Get the number of users attached to this account $count = $eas->get_attached($user['uid']); $hidden = $eas->get_hidden($user['uid']);
// Hide users with privacy setting enabled if ($mybb->usergroup['cancp'] != 1 && $mybb->user['uid'] != $user['uid'] && $mybb->settings['aj_privacy'] == 1 && $user['as_privacy'] == 1 ) { if (($mybb->user['as_uid'] != 0 && $mybb->user['as_uid'] != $user['as_uid'] && $mybb->user['as_uid'] != $user['uid'] ) || ($mybb->user['as_uid'] == 0 && $mybb->user['uid'] != $user['as_uid'] ) ) { return; } }
// If there are users attached and the current user can use the Enhanced Account Switcher... if ($permissions['as_canswitch'] == 1 && $count > 0) { $as_user_userbit = $eas->master_userlist($user['uid']); }
// If there are no users attached to current account but the current account is attached to another user if ($count == 0 && $user['as_uid'] != 0) { // Get the master $master = get_user((int)$user['as_uid']); $hidden = $eas->get_hidden($master['uid']); // Get masters permissions $permission = user_permissions((int)$master['uid']);
// If master has permission to use the Enhanced Account Switcher, get the userlist if ($permission['as_canswitch'] == 1) { $userUid = $masterUid = (int)$master['uid']; $attachedPostUser = htmlspecialchars_uni($master['username']); $userAvatar = $eas->attached_avatar($master['avatar'], $master['avatardimensions']);
// Create link to master if ($user['uid'] == $mybb->user['uid']) { $attachedUser = '<span style="font-weight: bold;" title="Master Account">'. format_name( $attachedPostUser, (int)$master['usergroup'], (int)$master['displaygroup'] ) .'</span>'; $as_user_userbit .= eval($templates->render('accountswitcher_memberlist_switch')); } else { // Hide users with privacy setting enabled if (($mybb->usergroup['cancp'] != 1 && $mybb->user['uid'] != $master['uid'] && $mybb->settings['aj_privacy'] == 1 && $master['as_privacy'] == 1 ) && (($mybb->user['as_uid'] > 0 && $mybb->user['as_uid'] != $master['uid'] ) || ($mybb->user['as_uid'] == 0 && $mybb->user['uid'] != $master['as_uid'] ) ) ) { ++$hidden; $as_user_userbit .= ''; } else { $attachedUser = '<span style="font-weight: bold;" title="Master Account">'. build_profile_link(format_name( $attachedPostUser, (int)$master['usergroup'], (int)$master['displaygroup'] ), $userUid) .'</span>'; $as_user_userbit .= eval($templates->render('accountswitcher_memberlist_link')); } } // Get all users attached to master from the cache $as_user_userbit .= $eas->attached_userlist($user['uid']); } }
if ($count > 0 || $count == 0 && $user['as_uid'] != 0) { if (!isset($lang->aj_profile)) { $lang->load('accountswitcher'); } // Show hidden accounts if current user is post author or attached to hidden account if ($user['uid'] == $mybb->user['uid'] || $user['uid'] == $mybb->user['as_uid'] || $user['as_uid'] == $mybb->user['uid'] ) { $hidden = 0; } // Accountlist link in postbit if ($mybb->user['uid'] != 0 && $user['uid'] != 0 && $mybb->settings['aj_memberlist'] == 1) { if ($count == 1) { $numaccounts = $count; $lang->aj_memberlist = $lang->aj_memberlist_one; $numaccounts .= ' '; } elseif ($count > 1) { $numaccounts = $count; $numaccounts .= ' '; $lang->aj_memberlist = $lang->aj_memberlist_more; } else { $lang->aj_memberlist = $lang->aj_memberlist_linked; } if ($hidden > 0) { $as_user_hidden .= $lang->sprintf($lang->aj_hidden, $hidden); } $user['attached_accounts'] .= eval($templates->render('accountswitcher_memberlist')); } } if ($user['as_share'] != 0) { $user['attached_accounts'] .= eval($templates->render('accountswitcher_memberlist_shared')); } } }
Am Ende fügst du dann die Variable {$user['attached_accounts']} in das Template showteam_usergroup_user ein, wo du die Accounts angezeigt haben möchtest.
Herzlichen Dank!
RE: Enhanced Account Switcher - Slayertime - 26.06.2017
Hey^^
Also ich hab das Ganze jetzt nochmal deinstalliert und installiert und vor dem Installieren alle Datein neu eingefügt, aber das Problem bleibt bestehen. Er loggt mich immer wieder aus.
Ich benutz die Version MyBB1.8.11
Und das Einloggen und Ausloggen klappt wie gewohnt.
Ich habe gerade mir zeigen lassen, welche Datein geändert wurden.
Hier sind sie:
index.php
install/resources/language.lang.php
install/resources/settings.xml
inc/class_parser.php
inc/functions_forumlist.php
inc/functions.php
inc/functions_online.php
Ich habe gerade nachgeschaut und die Version am 4.11.2016 in meinem Board. Kann es daran liegen?
Sorry für den Doppelpost, aber es lag wirklich daran, dass ich eine veraltete Version drauf hatte.
Jetzt klappt alles wunderbar undnochmals VIELEN Dank für das tolle Plugin
|