To-do

From Redazione
Jump to navigation Jump to search
Line 5: Line 5:
 
* Create form "Meeting participant"
 
* Create form "Meeting participant"
 
(First name, Last name, email, phone number, status (attended/invited), description (textarea)
 
(First name, Last name, email, phone number, status (attended/invited), description (textarea)
(eventually: "linked_to", with a multiple select with names of all other participants to the same meeting ... or use another hypothetical form for this) (DONE)
+
(eventually: "linked_to", with a multiple select with names of all other participants to the same meeting ... or use another hypothetical form for this) '''(DONE)'''
  
 
* Create sidebar entries with forms: Add Language course student, Add member, Add meeting participant
 
* Create sidebar entries with forms: Add Language course student, Add member, Add meeting participant
Line 16: Line 16:
 
and create a main page reflecting this structure with cars similar to the public mainpage
 
and create a main page reflecting this structure with cars similar to the public mainpage
  
* Create a form "Newsletter", with fields: Date, audience subset/segment, message (this will be filled in by the frontend/nodejs script, but the sending could be also managed in the wiki itself) (DONE)
+
* Create a form "Newsletter", with fields: Date, audience subset/segment, message (this will be filled in by the frontend/nodejs script, but the sending could be also managed in the wiki itself) '''(DONE)'''
 
"message" could be split in "message text" and "message html" (the latter with template)
 
"message" could be split in "message text" and "message html" (the latter with template)
  
Line 31: Line 31:
  
  
* Create a page, for instance /Sidebar Left, where to list forms and templates to be displayed handled from our extension (ci_culturaitaliana_addons)(FARE OGGI)
+
* Create a page, for instance /Sidebar Left, where to list forms and templates to be displayed handled from our extension (ci_culturaitaliana_addons) '''(FARE OGGI)'''
  
* Create a series of email templates in the path /Email templates/[template title] (FARE OGGI)
+
* Create a series of email templates in the path /Email templates/[template title] '''(FARE OGGI)'''
 
we could create a form as well (to let the nodejs server side script retrieve them) with fields:
 
we could create a form as well (to let the nodejs server side script retrieve them) with fields:
 
name, authors, description, snapshot/preview (so that templates can be listed on the frontend site) the cointainer div of the form must use an identifier known by the nodejs script to parse it
 
name, authors, description, snapshot/preview (so that templates can be listed on the frontend site) the cointainer div of the form must use an identifier known by the nodejs script to parse it

Revision as of 12:02, 7 April 2020

Private wiki

  • Create form "Meeting participant"

(First name, Last name, email, phone number, status (attended/invited), description (textarea) (eventually: "linked_to", with a multiple select with names of all other participants to the same meeting ... or use another hypothetical form for this) (DONE)

  • Create sidebar entries with forms: Add Language course student, Add member, Add meeting participant
  • Reorder our private wiki in order to just have (on the root level) :
    • List of language course students
    • List of members
    • List of meeting participants

and create a main page reflecting this structure with cars similar to the public mainpage

  • Create a form "Newsletter", with fields: Date, audience subset/segment, message (this will be filled in by the frontend/nodejs script, but the sending could be also managed in the wiki itself) (DONE)

"message" could be split in "message text" and "message html" (the latter with template)

  • Create a form "Newsletter stats", with fields (first name, last name, email, opens (list of dates), clicks (list of dates and url) -- data of this form will be created by a nodejs script through sendgrid (or other mail provider) hooks *** try to create automatically it, see point below ***
  • ***attention: in a further version of the system all these forms/properties/templates could be automatically created, even localized in a given language, by a server side script, in order to easily allow creation, and update, of (public/) private wiki instances
  • set a specific folder for files (named [organization]/media)
  • create a demo private wiki (in this case or public or with a test account with public password) for showcasing


Public wiki

  • Create a page, for instance /Sidebar Left, where to list forms and templates to be displayed handled from our extension (ci_culturaitaliana_addons) (FARE OGGI)
  • Create a series of email templates in the path /Email templates/[template title] (FARE OGGI)

we could create a form as well (to let the nodejs server side script retrieve them) with fields: name, authors, description, snapshot/preview (so that templates can be listed on the frontend site) the cointainer div of the form must use an identifier known by the nodejs script to parse it

  • debug the files subfolder related functions
  • complete the pure-html forms (not PageForms) for retrieving contact information on the main page (server-side)
  • change the upload folder name from "files" to "media"
  • display banner with our extenstion


Mediawiki fork

  • set default "leave redirect" to false (on move page)
  • set default "watch page" to false (where shown)


Frontend site

  • create a page (with signin) to select a template, a segment/subset of recipients, enter a text message in a textarea and edit a template with ckeditor, then sending the message: all this information will be recorded in the form above "newsletters" in the private wiki
  • (organization's page) create a menu for languages (as described in my communication of 3th of April) and a tab on the page header when a page is localized in multiple languages
  • create the site's home page (like scambieuropei)
  • show advertisements set by organization, books suggestion, digital libraries, opportunities (and other forms for general purpose) on the right panel/column through nodejs-socket.io-axios
  • (organization's page) handle selection of pages based on the router event (so the navigation menu should contain router-links)
  • write list of libraries / technologies which we are using, eg. nodejs, vuejs, mediawiki, knex, lodash, quasar framework, esprima, htmlparser2, cheerio, semantic mediawiki (and other relevant mediawiki plugins)
  • complete page with api calls examples
  • post frontend/server scripts to a github public repository ?


Web server

  • Review the directory structure, for instance
    • culturaitaliana.org/[organization name]/ -> front end site (vuejs)
    • culturaitaliana.org/wiki/ -> public wiki (without language code) (php)
    • culturaitaliana.org/wiki/[organization name]/wiki -> public wiki site (php)
    • culturaitaliana.org/[other pages] -> -> front end site (vuejs)
    • culturaitaliana.org/organization name]/wiki -> private wiki site (php)

(n) this folder structure implies that an organization cannot have name "wiki" (ok) but also that "wiki" cannot be the title of a page/article of an organization (not ok) a solution could be: culturaitaliana.org/wiki/Istituto_cultura_italiana_(NGO) (public wiki) culturaitaliana.org/wiki-private/Istituto_cultura_italiana_(NGO) (private wiki) (the latest "Istituto_cultura_italiana_(NGO)" being a username while the first a page name) so that whatever folder not starting with wiki/ or wiki-private/ will be redirected to the frontend


use the library https://www.npmjs.com/package/connect-history-api-fallback if necessary


Maintenance

  • Export all members of our organization in our private wiki (form member) (through a script)
  • (Export all communication with more than 1 recipient to the private wiki: this will require a further form, and is related to another phase of the project, regarding dissemination of literary works using a web app allowing to read them offline but at the same time tracking reading information etc..)


Near-future development

  • The data related to meetings and meetings participant might make use of "facial recognition" in order to help to locate participants in the photographic album related to the meeting



Istituto cultura italiana (NGO)/Documents/Istituto cultura italiana (NGO) - brochure 2017.pdf