Bonjour à tous,
Je suis actuellement en train d'installer une solution de Gestion de Relation Clients (SugarCRM, open-source, Community Edition - version gratuite). C'est un outil simple, personnalisable et qui ne demande pas de grosses compétences techniques pour des besoins basiques.
J'ai besoin de faire une modification qui sort des possibilités de personnalisation offertes par ce portail et pour laquelle j'ai trouvé une solution sur le site officiel. Malheureusement, cette solution me donne une erreur et personne n'a pu m'aider
L'erreur concerne une fonction "foreach" et je me dis que si c'est un simple problème de codage, peut-être qu'un développeur comprendra vite le problème et pourra m'aider à le résoudre (et ce, sans forcément connaître en détail le fonctionnement du portail sur lequel je travaille).
Voici le code en question:
Code :
- <?php
- require_once('include/MVC/View/views/view.edit.php');
- class AccountsViewEdit extends ViewEdit {
- function display() {
- if(empty($this->bean->id)) {
- global $app_strings;
- sugar_die($app_strings['ERROR_NO_RECORD']);
- }
- require_once('custom/modules/' . $this->bean->module_dir . '/metadata/toggle_panel_fieldsdefs.php');
-
- global $current_user;
- foreach($toggle_panel_fieldsdefs as $role => $field_defs) {
- foreach($field_defs as $field => $visible) {
- foreach($value_defs as $panel => $panel_defs) {
- $panel = strtoupper($panel);
- if($visible == 0 && isset($this->dv->defs['panels'][$panel]) && $check_role->check_role_membership($role)) {
- unset($this->dv->defs['panels'][$panel]);
- }
- }
- }
- }
- $this->dv->process();
- echo $this->dv->display();
- }
- }
- ?>
|
L'erreur qui apparaît sur le site avec ce code:
Code :
- Notice: Undefined variable: value_defs in [...]\custom\modules\Accounts\views\view.edit.php on line 18
- Warning: Invalid argument supplied for foreach() in [...]\custom\modules\Accounts\views\view.edit.php on line 18
|
Petit résumé rapide de mon portail et des personnalisations: dans ce portail (Sugar), j'ai une page qui permet de créer/éditer les infos d'un contact ou d'une organisation. J'ai personnalisé cette page en y incluant plusieurs cadres (appelés 'panel' dans Sugar) dans lequels on peut modifier/ajouter des infos (1 cadre contient plusieurs champs regroupés par "thème" ).
Je voudrais cacher certains cadres en fonction des permissions des utilisateurs du système (définis dans les paramètres et dans le fichier toggle_panel_fieldsdefs.php). J'ai donc créé/modifié 3 fichiers en tout qui doivent normalement être pris en compte par le système (les fichiers inclus dans le dossier 'custom' remplacent les paramètres par défaut du système) et malheureusement, là, ca coince
Est-ce que quelqu'un voit un problème dans le code que j'ai posté ou faut-il chercher ailleurs ?
Pour info, cette modif est décrite en détail ici : https://www.sugarcrm.com/forums/showthread.php?t=39599
Si c'est un problème sur l'ensemble des modifs et fichiers environnants, j'ai peur ne pouvoir compter que sur leur support (qui est très léger pour la version gratuite donc c'est pas gagné ). Si ce n'est qu'un problème de code, j'espérais qu'un codeur pourrait gentillement m'aider à le corriger
Merci d'avance à qui pourra m'éclaircir d'une façon ou d'une autre
Message édité par Mariton le 20-04-2009 à 14:58:00