Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Don't undestand ;) maybe can help #1

Open
Shnoulle opened this issue Feb 3, 2020 · 4 comments
Open

Don't undestand ;) maybe can help #1

Shnoulle opened this issue Feb 3, 2020 · 4 comments

Comments

@Shnoulle
Copy link

Shnoulle commented Feb 3, 2020

I don't understand this part :

limesurvey-rgpd/rgpd.php

Lines 188 to 191 in 45d0b52

$this->nom_bd['menu']='`'.$menu->tableName().'`';
$this->nom_bd['menuliste']='`'.$menuliste->tableName().'`';
$this->nom_bd['param_survey']='`'.App()->getDb()->tablePrefix.'survey_rgpd`';
$this->nom_bd['survey']='`'.App()->getDb()->tablePrefix.'surveys`'; // !! comment obtenir autrement ??

Je ne comprend pas cette partie ?

Tu as un système pour gérer tes propres tables via l'API. De mon coté : j'utilise 2 méthodes pour gérer les paramètres :

  1. Soit la table plugin_settings : pour les questionnare avec ou sans
    1. https://manual.limesurvey.org/BeforeSurveySettings (qui utilise les settings "par défaut" de LimeSurvey : pas terrible, mais totalement fonctionnel
  2. Ou une propre table avec l'API : https://gitlab.com/SondagesPro/QuestionSettingsType/cpVille/blob/master/cpVille.php#L157 par exemple (pas le meilleur, mais OK)

Le mettre dans la table plugin_settings permet la compatibilité avec l'expoprt/import lss. C'est un des grands intéret.

(J'ai pa encore testé le plugin, pas trouvé le temps).

@CEric-fr
Copy link
Owner

CEric-fr commented Feb 4, 2020

Bonjour,

Ces 4 lignes sont pour initialiser les noms des tables LimeSurvey que j'utilise dans le plugin.
J'utilise la variable $settings pour les paramètres généraux qui sont ranger dans "lime_plugin_settings".
Je rajoute une table : "lime_survey_rgpd" ou je range les paramètres pour chaque questionnaire.

@Shnoulle
Copy link
Author

Shnoulle commented Feb 4, 2020

OK,

Je rajoute une table : "lime_survey_rgpd" ou je range les paramètres pour chaque questionnaire.

C'est dommage tu va perdre les données lors des copie de questionnaire. Je pense revoir le système en ce sens pour proposer un patch/correctifs.

Pour le mettre dans le fichier lss (et donc lors de la copie) $this->set("setting",$value,"Survey",$sid);
https://github.com/LimeSurvey/LimeSurvey/blob/ac6eb99495210c6d81b024a6646db9ea1fa163cc/plugins/Demo/Example/Example.php#L50
En fait 'Surey' corrspond au «modèle» et $sid à l'identifiant du modèle.
C'est pour l'instant que pour les questionnaires, peut ête un jour à plus de modèle.

Ces 4 lignes sont pour initialiser les noms des tables LimeSurvey que j'utilise dans le plugin.

Je doit regarder : mais à mon avis tu peux utiliser directment les modèle de Yii : popur les nom c'est facile Survey::model()->tableName(). A voir ou c'est utilisé si tu peux pas directement utiliser les fonctions des modèles :)

@CEric-fr
Copy link
Owner

CEric-fr commented Feb 4, 2020

Je suis novice en LimeSurvey et j'aime peu la programmation orientée objet (les "class"), je suis plutôt oldschool et dont programmation procédurale.

C'est dommage tu va perdre les données lors des copie de questionnaire. Je pense revoir le système en ce sens pour proposer un patch/correctifs.

Je ne savais pas qu'on pouvait copier un questionnaire.

Pour le mettre dans le fichier lss (et donc lors de la copie) $this->set("setting",$value,"Survey",$sid);

J'ai essayer les événements "beforeSurveySettings" et "newSurveySettings" mais je n'ai pas réussi a faire fonctionner, j'ai donc essayer de trouver une alternative, ce qui a abouti à la création de la table "lime_survey_rgpd".

Je doit regarder : mais à mon avis tu peux utiliser directement les modèle de Yii :

Retour à l'intro : "Yii", j'ai bien trouver sur le net, mais je pense que tout n'est pas disponible et pas dans tous les événements ??. Et je surnage à coup de recherche globale dans tous les fichiers des noms de fonctions, c'est long...

Bref, c'est un premier essai normalement fonctionnel (et installé sur notre serveur) que j'affinerais au fur et à mesure des mises à jour réalisée sur notre serveur.

@Shnoulle
Copy link
Author

Shnoulle commented Sep 8, 2021

J'ai essayer les événements "beforeSurveySettings" et "newSurveySettings" mais je n'ai pas réussi a faire fonctionner, j'ai donc essayer de trouver une alternative, ce qui a abouti à la création de la table "lime_survey_rgpd".

Je tente de trouver un temps pour un patch (avec mise à jour).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants