Project

General

Profile

Actions

Bug #3404

closed

Exporter name, id, status et category_id, category_name, category_url dans /myspace/json/forms

Added by Benjamin Dauvergne over 12 years ago. Updated about 11 years ago.

Status:
Fermé
Priority:
Normal
Assignee:
Category:
-
Target version:
-
Start date:
01 August 2013
Due date:
% Done:

100%

Estimated time:
Patch proposed:
Planning:

Description

Il y a deux buts:
  • permettre à l’appelant de formater le nom du formulaire comme il le souhaite via name, id et status par exemple dans le plugin de listing des formulaires du portail citoyen,
  • permettre à l'appelant de ranger/sauter par rapport à la catégorie du formulaire sans faire d'autres appels, toujours pour le portail citoyen.

Files

Actions #1

Updated by Thomas Noël almost 12 years ago

Voici un patch qui fait cela (note : nécessaire à Orléans pour résoudre une confusion dans l'affichage, signalée dans #4306).

Actions #2

Updated by Thomas Noël almost 12 years ago

  • Status changed from Nouveau to En cours
  • Assignee set to Frédéric Péters
  • Priority changed from Bas to Normal

(attribué à Fred pour relecture/avis/etc.)

Actions #3

Updated by Frédéric Péters almost 12 years ago

  • Assignee changed from Frédéric Péters to Thomas Noël

Réassigné à Thomas après discussion, l'idée est de réutiliser les substitutions de variable, en en proposant une version allégée (formdata.get_substitution_variables(self, light=False)).

Actions #5

Updated by Thomas Noël almost 12 years ago

  • Status changed from En cours to Information nécessaire
  • Assignee changed from Thomas Noël to Frédéric Péters
Actions #6

Updated by Frédéric Péters almost 12 years ago

  • Status changed from Information nécessaire to En cours
  • Assignee changed from Frédéric Péters to Thomas Noël

J'aurais tendance à préférer le bloc :

                d.update({
                    'form_status_url': '%sstatus' % self.get_url(),
                    'form_details': self.formdef.get_detailed_email_form(self, self.get_url()),
                })

déplacé sous le "if minimal: ... return", ça dupliquerait certes la condition "if self.id", mais ça me parait plus clair.

Actions #7

Updated by Thomas Noël almost 12 years ago

Une autre version, plus lisible (sauf que le patch, pour le coup, est moins lisible, mais bon).

Actions #8

Updated by Frédéric Péters almost 12 years ago

Le "if minimal" qui suivant le "d.update(self.formdef.get_substitution_variables())", et qui quittait la fonction plus tôt, il m'allait bien; ça évite de devoir indenter le tout. Mais du coup parce que j'ai l'impression que mon commentaire passé n'a pas du être clair, le flow que j'imaginais, c'était :

        [...]
        # formdef and category variables
        d.update(self.formdef.get_substitution_variables())

        if minimal:  # là on a tout ce qu'on veut, on quitte l'affaire dès maintenant
            d = copy.deepcopy(d)
            flatten_dict(d)
            return d

        if self.id: # on remet un if self.id, mais c'est pas bien grave.
            d.update({
                'form_status_url': '%sstatus' % self.get_url(),
                'form_details': self.formdef.get_detailed_email_form(self, self.get_url()),
            })

        user = self.get_user()
        if user:
            d.update(user.get_substitution_variables(prefix='form_'))

        [...]
Actions #10

Updated by Frédéric Péters almost 12 years ago

Yep, nickel.

Actions #11

Updated by Thomas Noël almost 12 years ago

  • Status changed from En cours to Résolu (à déployer)
  • % Done changed from 0 to 100
Actions #12

Updated by Thomas Noël over 11 years ago

  • Status changed from Résolu (à déployer) to Solution déployée
Actions #13

Updated by Thomas Noël about 11 years ago

  • Status changed from Solution déployée to Fermé
Actions

Also available in: Atom PDF