2016-08-23 4 views
1

Ich versuche, eine Schaltfläche in der Detailansicht eines bestimmten Datensatzes dynamisch anzuzeigen, abhängig von seinem Datensatz und der Rolle des aktuellen Benutzers. Um dies zu tun, schließe ich eine benutzerdefinierte JavaScript-Datei in eine Detailansichtsdefinitionsdatei ein: custom/modules/Tasks/metadata/hide.js.SugarCRM Enterprise 6.5 - "App ist nicht definiert"

Ich muss auf die Rollen eines Benutzers zugreifen, also versuche ich zuerst auf das Benutzerobjekt zuzugreifen. Dies ist jedoch nicht:

var user = app.data.createBean('Users', {id: app.user.id});

Es führt den folgenden Fehler: ReferenceError: app is not defined.

Was ist der richtige Weg, um den Benutzer (und dann die Rolle) durch JavaScript in SugarCRM Enterprise 6.5 zu bekommen?

Antwort

0

Der Code, den Sie verwenden, funktioniert nur mit sugarcrm 7 oder späteren Versionen. App-Variable ist in Zucker 6.5 nicht verfügbar.

Sie müssen benutzerdefinierte API schreiben, um Benutzerrollen zu erhalten. In PHP können Sie Rollen wie diese erhalten

global $current_user; 
include_once('modules/ACLRoles/ACLRole.php'); 
$roles = getUserRoleNames($current_user->id); 
print_r($roles);