📚 Node [[coforms]]
đź““ garden/communecter/09 - COForms/coforms.md by @communecter

COFORMS : Collaborative Open Forms

PPT

Slogans

  • L’intelligence collective structurer
  • Open Forms sont des semence libres , des graines qui peuvent faire pousser des communautĂ©s, du savoir, du partage, de la collaboration
  • DIUKW : Data > Information > Understanding > Knowledge > Wisdom

POUR QUOI FAIRE

  • CrĂ©er des questionnaires librement
    • avec des questions complexes
  • Mieux connaitre une communautĂ©
  • GĂ©nĂ©rĂ© un observatoire pour
    • naviguer dans la donnĂ©e de la connaissance
    • mieux comprendre une communautĂ©
    • creer de la stigmergie
    • creer de l’holoptisme
  • Sondage
    • Journalismes citoyens
    • des mĂ©moires dynamiques Ă©tudiant-
  • Collaboratif
    • Brainstorming
    • Compte rendu, Taches, Agendas
  • Parametrer un Costum
  • Usage Complexe et gĂ©nĂ©rique donc dupliquable simplement
    • Appel Ă  projet GĂ©nĂ©rique
    • OCECO : outils de Gouvernance Horizontale
    • management de projet
    • gestion de groupement d’achat
  • Virer Google Forms

om peut on utiliser les COForms

  • directement dans communecter a partir des Ă©lĂ©ments (organisations, projet)
  • il est possible de rattachĂ© vos COforms Ă  vos COstum

COFORM en qlqs lignes

  • un Ă©quivalent Libre et open source Ă  Google Forms, TypeForms et FramaForms
  • crĂ©er des formulaires par et pour une communautĂ© en toute autonomie (ou presque ;) )
  • pouvoir ajouter des questions complexes (tableau multi dimension, crĂ©er des questions spĂ©cifiques qui n’existe pas dans les solutions de formulaire existante)
  • pouvoir faire des questionnaires Ă  Ă©tapes
  • visualiser les rĂ©sultats sous plusieurs formes (observatoire / graphes , carto, listing,…etc)
  • crĂ©er des workflows complets et complexes liĂ©s Ă  des COstums (communecter personnalisĂ© / en marque blanche)

CO TEMPLATES

Les coforms template est une fonctoinnalitĂ© permettant d’enregistrer un coform comme un template pour une rĂ©utilisation dans un autre contexte ou par d’autre contexte. la mutualisation (rĂ©utilisation) des coforms est possible avec plus ou moins de contrainte avec le tpl d’origine :

  • RĂ©utilisation et synchro avec un coformTpl existant
    • impossible de modifier
    • les modifications faites par l’auteur sont appliquĂ© Ă  tout les contexte qui l’utilise
  • Copie et autonomie
    • duplique le tpl choisit
    • les modifs du parent ne sont pas impactĂ©, donc ne sont pas visible sur le tpl CopiĂ©
    • approprioation total et autonomie complète pour modifier le tpl
    • peut etre enregistrer comme un nouveau tpl

Options

Things you can parameter and configure

  • Name of the Form
  • Description
  • Active / Not Active
  • Private / Public
    • For your community only
    • or anyone can answer
  • If Answers can be read openly: Y/N
  • Can be shared by link
  • can someone answer more then once, or only once
  • Can answers be modified
  • Show answers openly
  • Start and End Date
  • if an account is needed, if not only an email will be asked
    • send email confirmation
  • for open sessions , start and end date
  • verrouiller a partir d’une Ă©tape
  • renommer le nom des rĂ©ponses avec un champ de rĂ©ponse

description de tout les inputs disponible

simple inputs

complexe inputs

Questions

  • can I use COforms inside my website
    • unfortunetly COForm are totaly connected to CO
    • you’ll have to install all CO to use it
  • can people answer without a CO account
    • yes, this is an option, you’ll need to configure

créer vos formulaires

  • sur une page organisation ou projet
  • click le bouton COform
  • 2 options
    • creer un nouveau formulaire : bouton Nouveau Formulaire
    • rĂ©utiliser un template existant : bouton Menu Template
  • configurer les paramètres
đź““ garden/communecter/archives/coforms.md by @communecter


OLD 2019


COFORMS : Collaborative Open Forms

PPT CODMID

C’est quoi

:::danger TOOOODDDOOOOOOOO :::

Slogans

  • L’intelligence collective structurer
  • Open Forms sont des semence libres , des graines qui peuvent faire pousser des communautĂ©s, du savoir, du partage, de la collaboration
  • DIUKW : Data > Information > Understanding > Knowledge > Wisdom

Cas d’usages

  • CrĂ©er une communautĂ©
  • Un observatoire autour d’une Ă©tude ou d’une thĂ©matique
  • Sondage
    • Journalismes citoyens
    • des mĂ©moires dynamiques Ă©tudiant
  • Appel Ă  projet
  • Collaboratif
    • Brainstorming
    • Compte rendu, Taches, Agendas
  • Parametrer un Costum
  • Usage Complexe
    • management de projet
    • gestion de groupement d’achat
  • Virer Google Forms

Export un schema

http://127.0.0.1/survey/form/schema/id/ctenatForm

Lire un dossier

http://127.0.0.1/costum/co/index/slug/dealAH#answer.index.id.5eb1ba7b539f22b5738b4569.mode.r

New Answer

http://127.0.0.1/survey/answer/index/id/new/form/5f3e5d62275640c499c2e11a/contextId/5cebf50a40bb4e283c46ba57/contextType/projects

Lire un dossier

http://127.0.0.1/costum/co/index/slug/dealAH#answer.index.id.5eb1ba7b539f22b5738b4569.mode.r

Editer un dossier

http://127.0.0.1/costum/co/index/slug/dealAH#answer.index.id.5eb1ba7b539f22b5738b4569.mode.w

Observatoire

http://127.0.0.1/costum/co/index/slug/dealAH#dashboard

building your own forms

  • on element detail page
  • click form button
  • add a new form

input templates

complexe inputs

Export answers

http://127.0.0.1/survey/???

Coding Notes

Open Forms

documentation [[~d/modules/costum/views/tpls/forms/README.md]] [ ] schema [[https://docs.google.com/presentation/d/1jwi3pYEzL_r8IH1AEpzlJe4jTt2kG7BZS5Hyq1kZHeE/edit#slide=id.p]]

Project manager

[[projectManager.org]]

element costum params

costum.form.hasStepValidations : answer step active le bon stepper
  on the answer step attrib gives 

FEATURES

Session params

hasOpenForm isMultiForms

global vars

sectionDyf : contains all dynForm definitions for any cplx inputs tplCtx : contains savable datasets initValues : contains any dyfinputs initial data answerObj : contains answer data for the current form

to edit costum page pieces

var configDynForm = session[‘costum’][‘dynForm’]); ?>;

information and structure of the form in this page

var formInputs = ;

url

repaire @xxx.co

admin

new form editor and interface save to forms [-] if no Form ID found on element [X] if forms exist by slug [ ] if /form/idxxx then load given Form [X] else generate Form::generateOpenForm( $el["slug"] ) [ ] check costum.form exists [X] connect form to element costum.form [-] add questions new questions are added into the {{formTpl}} [X] add input question open dynform with slug, label, placeholder , info, position [ ] add design options [[https://getbootstrap.com/docs/4.0/components/forms/]] [-] edit question [X] open dynform for this input [ ] be carefull !! shared and reused forms when edited have impacts for others [ ] needs a collaborative editing process [ ] minimal : notify other form admins [ ] better : modification validation process [ ] add tpl question [X] array answers tpl builder > use dynform for each line [X] delete a question [X] build open forms dynamically [X] add stepper [X] order questions
[X] questions can be ordered by drag n drop [ ] mode lecture if userId != user

save to answers

[ ] add configs inside the edit panel and remove de config params stuff
  [ ] first choose tplForm
  [ ] open Config
[-] find a way to have cplx forms directly even without an existing answer
  [X] btn particpate creates the answer entry
  [X] open form directly 
  [ ] open and click on PARTICPATE btn
[X] all in one block serialize form default to costum.form.saveAllAtOnce
[X] one by one costum.form.saveOnInputBlur
** if form contains just one cplx input then all saves are made oneByone 

BUG save

tags [ ] reload answers seperataly

[-] reusible and tpls forms sections [X] author view pod [X] add element [X] create new element [X] limit to fixed number of elements [X] connect existing one [X] connect with the answer in an afterSave [X] multiple element block in page with different types [X] text [[~d/modules/costum/views/tpls/forms/text.php]] [X] select [[~d/modules/costum/views/tpls/forms/select.php]] * TODO : dynform add key value question for list / or value list [X] tags [[~d/modules/costum/views/tpls/forms/text.php]] * BUG design * TODO : dynform add key value question for list / or value list [X] calendar :oneByone: SAve [[~d/modules/costum/views/tpls/forms/cplx/calendar.php]]

  • BUG cannot have 2 calendars in the same time [X] multi checkbox : multicheckbox [ ] finder [ ] communityList
  • link to openForm and connect to answer [ ] open select
    • new options can be added to the list ,
    • other peoples answers become options,
    • or my old options become answers [ ] wysiwyg [ ] markdown [ ] locality [ ] image [ ] tagList [ ] postalcode [ ] arrayForm [ ] array [ ] properties [ ] fichier pour des conditions personnalisĂ© [ ] fichier input complexe [ ] text libre : sectiontitle

link + preview [ ] lists [ ] searchInvite [ ] formLocality [X] partner [[~d/modules/costum/views/tpls/forms/cplx/partner.php]] [X] budget previsionnel [[~d/modules/costum/views/tpls/forms/cplx/budgte.php]] [ ] ajouter un graph feature montrant l’evolution du budget [X] financement [[~d/modules/costum/views/tpls/forms/cplx/financement.php]] costum.form.params.financement.limitRoles = "Financer" costum.form.params.financement.tpl = tpls.forms.equibudget [[~d/modules/costum/views/tpls/forms/cplx/equibudget.php]] [X] indicators [[~d/modules/costum/views/tpls/forms/cplx/indicateurs.php]]

  • BUG empty indicators [X] stepValidation by role inside a stepper wizard adds a validation process between steps

edit answers [X] delete answer [X] show answers [X] table [ ] reveal ppt [ ] export CSV [ ] export JSON [ ] statistics [ ] admin has to set Ă  crtieria et a graph type

export answers multi format

USE CASES

appel a projet

questionnaire : google Forms

connected to CO elements

votre idée de costum

Description upload document d’information

qcm

collaborative :

thinking Brainstorming

  [ ] todo add vote feature

tasking , listing things todo

bookmarking veille
  [ ] ex : list of urls classified by tags
  [ ] add link and publish to chat or journal 
    onelink > many publish process 
    add different publish processes like 
    one post push to many 
benchmarking 
  [ ] compare collectively what things do what 

COCR

  who 
  said what 

journalisme

template openForm [TONY]

  a template is defined by a json map to build it's content
  the json map corresponds to a openForm
  [X] use element.costum.cms map to define template block .editBtn
    element.costum.cms.title
    element.costum.cms.subtitle
    element.costum.cms.wizard1
    element.costum.cms.text1
  [X] show template using default data 
  [X] open Edit form
  [X] show template using element data

collab.slides

  uses the template open Form but with answers to allow many proposals
  create a slide html 
  each section is editble as a proposal editBtn 
  everyone proposes content, answers can be viewed in the template 
  and everyone can vot<e their favorite proposal , appart for theirs 
  [ ] using open Forms like editBtn for saving conect here 
  <a href="/costum/co/config/slug/<?php echo $slug ?>" class="btn btn-danger"><i class="fa fa-pencil"></i> here </a>
  [ ] show template using answers data

Excel and calculator

  [ ] add content  manuelly or copy paste 
  [ ] columns can be sum and simple excel macros ,or predefined complex macros 
examples
    - previsionel dynamic 
    - liste d'achat 

comparateur de prix

calcul de baricentre

[ ] ex ask where do you live 
[ ] ex who particpates 
  show the best place to meet 

documenter les evenements

votes

proposals with check boxes [ ] calculate best result

contract de pixel funding

builder

[ ] community
[ ] page 
  what is it 
  who's is in it
  what do you do 
[ ] filiere
  qui inviterais tu Ă  la filiere 
  fait une proposition (orjet, ressouce, action) Ă  la filiere 
* fork 
[ ] costum
- instead of adding questions add sections
- each seaction has config form

config dashboard

formulaire collectivité

[[https://mail.google.com/mail/u/0/#inbox/FMfcgxwGDDrvJHWGNHKbPsNJCnGhxcpj]]

DEAL

[ ] wizard stepper for 4 steps 
[ ] seperate open Forms for each steps
[ ] ajax load each step on demand
[ ] save to proper location answer.wizard.0.idxxx

reecrire la constitution

voir avec Etienne

choix des produits du vrac

MA France (tps réél)

une france connectĂ©,bien evidemment dont on ne profite pas mais qui agit interactivement, qui peut rĂ©pondre quasi instantanĂ©ment ou en asynchrone aux questions des uns et des autres ex : etes vous malade ? Les questions passe par des process de publication si ca vient du citoyen, de la collectivitĂ© et peuvent meme etre rejeter par les participants C’est un peu le retour de l’idĂ©e de la Cozette initiale mais grandeur natianal qui peut bien sur s’appliquer par niveau geographqiue , regional, agglo, communale … Ma Region Ma commune ou par thĂ©matique , ca rejoint la vision smarterre Ma santĂ© Mon ocĂ©an Mon Co

đź““ garden/communecter/en/08 - COForms/coforms.md by @communecter

COFORMS : Collaborative Open Forms

PPT CODMID

C’est quoi

:::danger TOOOODDDOOOOOOOO :::

Slogans

  • L’intelligence collective structurer
  • Open Forms sont des semence libres , des graines qui peuvent faire pousser des communautĂ©s, du savoir, du partage, de la collaboration
  • DIUKW : Data > Information > Understanding > Knowledge > Wisdom

Cas d’usages

  • CrĂ©er une communautĂ©
  • Un observatoire autour d’une Ă©tude ou d’une thĂ©matique
  • Sondage
    • Journalismes citoyens
    • des mĂ©moires dynamiques Ă©tudiant
  • Appel Ă  projet
  • Collaboratif
    • Brainstorming
    • Compte rendu, Taches, Agendas
  • Parametrer un Costum
  • Usage Complexe
    • management de projet
    • gestion de groupement d’achat
  • Virer Google Forms

Export un schema

http://127.0.0.1/survey/form/schema/id/ctenatForm

Lire un dossier

http://127.0.0.1/costum/co/index/slug/dealAH#answer.index.id.5eb1ba7b539f22b5738b4569.mode.r

New Answer

http://127.0.0.1/survey/answer/index/id/new/form/5f3e5d62275640c499c2e11a/contextId/5cebf50a40bb4e283c46ba57/contextType/projects

Lire un dossier

http://127.0.0.1/costum/co/index/slug/dealAH#answer.index.id.5eb1ba7b539f22b5738b4569.mode.r

Editer un dossier

http://127.0.0.1/costum/co/index/slug/dealAH#answer.index.id.5eb1ba7b539f22b5738b4569.mode.w

Observatoire

http://127.0.0.1/costum/co/index/slug/dealAH#dashboard

building your own forms

  • on element detail page
  • click form button
  • add a new form

input templates

complexe inputs

Export answers

http://127.0.0.1/survey/???

Coding Notes

Open Forms

documentation [[~d/modules/costum/views/tpls/forms/README.md]] [ ] schema [[https://docs.google.com/presentation/d/1jwi3pYEzL_r8IH1AEpzlJe4jTt2kG7BZS5Hyq1kZHeE/edit#slide=id.p]]

Project manager

[[projectManager.org]]

element costum params

costum.form.hasStepValidations : answer step active le bon stepper
  on the answer step attrib gives 

FEATURES

Session params

hasOpenForm isMultiForms

global vars

sectionDyf : contains all dynForm definitions for any cplx inputs tplCtx : contains savable datasets initValues : contains any dyfinputs initial data answerObj : contains answer data for the current form

to edit costum page pieces

var configDynForm = session[‘costum’][‘dynForm’]); ?>;

information and structure of the form in this page

var formInputs = ;

url

repaire @xxx.co

admin

new form editor and interface save to forms [-] if no Form ID found on element [X] if forms exist by slug [ ] if /form/idxxx then load given Form [X] else generate Form::generateOpenForm( $el["slug"] ) [ ] check costum.form exists [X] connect form to element costum.form [-] add questions new questions are added into the {{formTpl}} [X] add input question open dynform with slug, label, placeholder , info, position [ ] add design options [[https://getbootstrap.com/docs/4.0/components/forms/]] [-] edit question [X] open dynform for this input [ ] be carefull !! shared and reused forms when edited have impacts for others [ ] needs a collaborative editing process [ ] minimal : notify other form admins [ ] better : modification validation process [ ] add tpl question [X] array answers tpl builder > use dynform for each line [X] delete a question [X] build open forms dynamically [X] add stepper [X] order questions
[X] questions can be ordered by drag n drop [ ] mode lecture if userId != user

save to answers

[ ] add configs inside the edit panel and remove de config params stuff
  [ ] first choose tplForm
  [ ] open Config
[-] find a way to have cplx forms directly even without an existing answer
  [X] btn particpate creates the answer entry
  [X] open form directly 
  [ ] open and click on PARTICPATE btn
[X] all in one block serialize form default to costum.form.saveAllAtOnce
[X] one by one costum.form.saveOnInputBlur
** if form contains just one cplx input then all saves are made oneByone 

BUG save

tags [ ] reload answers seperataly

[-] reusible and tpls forms sections [X] author view pod [X] add element [X] create new element [X] limit to fixed number of elements [X] connect existing one [X] connect with the answer in an afterSave [X] multiple element block in page with different types [X] text [[~d/modules/costum/views/tpls/forms/text.php]] [X] select [[~d/modules/costum/views/tpls/forms/select.php]] * TODO : dynform add key value question for list / or value list [X] tags [[~d/modules/costum/views/tpls/forms/text.php]] * BUG design * TODO : dynform add key value question for list / or value list [X] calendar :oneByone: SAve [[~d/modules/costum/views/tpls/forms/cplx/calendar.php]]

  • BUG cannot have 2 calendars in the same time [X] multi checkbox : multicheckbox [ ] finder [ ] communityList
  • link to openForm and connect to answer [ ] open select
    • new options can be added to the list ,
    • other peoples answers become options,
    • or my old options become answers [ ] wysiwyg [ ] markdown [ ] locality [ ] image [ ] tagList [ ] postalcode [ ] arrayForm [ ] array [ ] properties [ ] fichier pour des conditions personnalisĂ© [ ] fichier input complexe [ ] text libre : sectiontitle

link + preview [ ] lists [ ] searchInvite [ ] formLocality [X] partner [[~d/modules/costum/views/tpls/forms/cplx/partner.php]] [X] budget previsionnel [[~d/modules/costum/views/tpls/forms/cplx/budgte.php]] [ ] ajouter un graph feature montrant l’evolution du budget [X] financement [[~d/modules/costum/views/tpls/forms/cplx/financement.php]] costum.form.params.financement.limitRoles = "Financer" costum.form.params.financement.tpl = tpls.forms.equibudget [[~d/modules/costum/views/tpls/forms/cplx/equibudget.php]] [X] indicators [[~d/modules/costum/views/tpls/forms/cplx/indicateurs.php]]

  • BUG empty indicators [X] stepValidation by role inside a stepper wizard adds a validation process between steps

edit answers [X] delete answer [X] show answers [X] table [ ] reveal ppt [ ] export CSV [ ] export JSON [ ] statistics [ ] admin has to set Ă  crtieria et a graph type

export answers multi format

USE CASES

appel a projet

questionnaire : google Forms

connected to CO elements

votre idée de costum

Description upload document d’information

qcm

collaborative :

thinking Brainstorming

  [ ] todo add vote feature

tasking , listing things todo

bookmarking veille
  [ ] ex : list of urls classified by tags
  [ ] add link and publish to chat or journal 
    onelink > many publish process 
    add different publish processes like 
    one post push to many 
benchmarking 
  [ ] compare collectively what things do what 

COCR

  who 
  said what 

journalisme

template openForm [TONY]

  a template is defined by a json map to build it's content
  the json map corresponds to a openForm
  [X] use element.costum.cms map to define template block .editBtn
    element.costum.cms.title
    element.costum.cms.subtitle
    element.costum.cms.wizard1
    element.costum.cms.text1
  [X] show template using default data 
  [X] open Edit form
  [X] show template using element data

collab.slides

  uses the template open Form but with answers to allow many proposals
  create a slide html 
  each section is editble as a proposal editBtn 
  everyone proposes content, answers can be viewed in the template 
  and everyone can vot<e their favorite proposal , appart for theirs 
  [ ] using open Forms like editBtn for saving conect here 
  <a href="/costum/co/config/slug/<?php echo $slug ?>" class="btn btn-danger"><i class="fa fa-pencil"></i> here </a>
  [ ] show template using answers data

Excel and calculator

  [ ] add content  manuelly or copy paste 
  [ ] columns can be sum and simple excel macros ,or predefined complex macros 
examples
    - previsionel dynamic 
    - liste d'achat 

comparateur de prix

calcul de baricentre

[ ] ex ask where do you live 
[ ] ex who particpates 
  show the best place to meet 

documenter les evenements

votes

proposals with check boxes [ ] calculate best result

contract de pixel funding

builder

[ ] community
[ ] page 
  what is it 
  who's is in it
  what do you do 
[ ] filiere
  qui inviterais tu Ă  la filiere 
  fait une proposition (orjet, ressouce, action) Ă  la filiere 
* fork 
[ ] costum
- instead of adding questions add sections
- each seaction has config form

config dashboard

formulaire collectivité

[[https://mail.google.com/mail/u/0/#inbox/FMfcgxwGDDrvJHWGNHKbPsNJCnGhxcpj]]

DEAL

[ ] wizard stepper for 4 steps 
[ ] seperate open Forms for each steps
[ ] ajax load each step on demand
[ ] save to proper location answer.wizard.0.idxxx

reecrire la constitution

voir avec Etienne

choix des produits du vrac

MA France (tps réél)

une france connectĂ©,bien evidemment dont on ne profite pas mais qui agit interactivement, qui peut rĂ©pondre quasi instantanĂ©ment ou en asynchrone aux questions des uns et des autres ex : etes vous malade ? Les questions passe par des process de publication si ca vient du citoyen, de la collectivitĂ© et peuvent meme etre rejeter par les participants C’est un peu le retour de l’idĂ©e de la Cozette initiale mais grandeur natianal qui peut bien sur s’appliquer par niveau geographqiue , regional, agglo, communale … Ma Region Ma commune ou part thĂ©matique , ca rejoint la vision smarterre Ma santĂ© Mon ocĂ©an Mon Co

Loading pushes...

Rendering context...