Commit graph libervia-backend/src
Author SHA1 Message Date
Goffi
789a3056d9 template: gidx methods improvment:
gidx methods now use the filtered name to return global indexes.
For instance, if "widget" is filtered name, first index will be "widget", then "widget_1", "widget_2" and so one.
If an other name is used, it restart (e.g. for "label": "label", "label_1", "label_2", etc.).
2017-10-16 07:48:09 +02:00
Goffi
07d5a18b79 template: new "xmlui_class" filter compute class names from name/values of requested fields. 2017-10-16 07:44:08 +02:00
Goffi
c7984f60ec tools (common/data_objects): new OnClick class
OnClick is used to specify what do to when clicking on element.
For now it only handles target URL.
2017-10-16 07:41:36 +02:00
Goffi
158d61b84e plugin import ticket, import ticket bugzilla: some normalization in values:
normalization (i.e. recommandations for importer to have similar values) has been done for some values:
- "status" is now one of "queued", "started", "review", "closed"
- "priority" and "severity" must be stripped and lower case
2017-10-16 07:39:54 +02:00
Goffi
b5daa89208 plugin schema: use new "prepend" argument to put "id" widget first. 2017-10-16 07:36:41 +02:00
Goffi
b8839b97e4 core (xmlui): new "prepend" argument for dataForm2Widgets and dataFormResult2XMLUI:
This argument allow to create widgets which will be put first in LabelContainer of generated XMLUI.
An iterable of *args for XMLUI.addWidget must be used.
2017-10-16 07:36:03 +02:00
Goffi
59c6ab9973 template (xmlui): new properties + inheritance fix:
- "values" property in OptionsWidget return selected values.
- "labels" property in OptionsWidget return list of labels
- "for_name" property in LabelWidget return name of associated widget if set, else None
- fixed inheritance for StringWidget and TextBoxWidget
2017-10-16 07:28:36 +02:00
Goffi
f97b08382f plugin schema: deserialise is now the last kw argument 2017-10-16 07:23:09 +02:00
Goffi
697bec616c plugin tickets import Bugzilla: Bugzilla tickets importer:
it imports tickets from Bugzilla's XML export format.
2017-10-06 10:55:54 +02:00
Goffi
748eed8ff1 plugin tickets import: specialized importer for tickets, first draft:
import tickets in a node with schema. Comments are not handled yet.
2017-10-06 10:55:54 +02:00
Goffi
9bca9328c3 plugin pubsub schema: values handling:
- "schema" attribute can now be specified directly as a data_form.Form (reparsing it will be avoided in this case)
- new "deserialise" parameter allows deserialisation from unicode strings in sendDataFormItem
- values can now be an iterable or directly the value to use (it will be put in a list automatically in the later case)
- "id" is now put directly in XMLUI's "id" field instea of "_id"
2017-10-06 10:55:51 +02:00
Goffi
1bcdca4a2f plugin import: node can now be specified + added a "session" dict to keep import session data:
import session data are data that can be used by importer to store anything which can be useful to keep between import methods.
2017-10-06 08:52:51 +02:00
Goffi
80eb458024 plugin import: generic data import plugin:
this plugin handle common task for importers. Specialized importers (e.g. blog import) use it as a basic, and specific importers (e.g. Dotclear) register to the specialized one.
Blog importer generic method have been moved to it.
2017-10-01 12:21:23 +02:00
Goffi
fa1680a119 template (xmlui): added values property to be able to use always values even when there is only one value 2017-10-01 12:21:23 +02:00
Goffi
3ec8f283cb core (xmlui): container now keep a list of children 2017-10-01 12:21:23 +02:00
Goffi
df038ad3d4 core (xmlui): added method to convert data form result to XMLUI:
- former method was misnamed as it was used to convert data form element to XMLUI, so it has been renamed to dataFormEltResult2XMLUI
    - dataFormResult2XMLUI is now use to convert wokkel.data_form.Form instances to XMLUI
2017-10-01 12:21:23 +02:00
Goffi
499f2525cc plugin PubSub Schema: schema helper methods:
3 new methods are introduced by this patch:
- psSchemaUIGet to get XMLUI from node schema
- psItemsFormGet to get items as XMLUI when we know they are data forms
- psItemFormSend to set item from values when we know it's a node with schema. For this method, schema can be specified, and if it is not it will be retrieved from node (which imply an additional XMPP request)
2017-10-01 12:21:21 +02:00
Goffi
04d851c5c5 template: template XMLUI first draft:
this module prepares an object which can be easily used in templates to construct interface from XMLUI.
2017-09-24 16:39:36 +02:00
Goffi
506f948214 core, frontends (xmlui): new LabelContainer:
LabelContainer is like a PairContainer where first widget can only be LabelWidget or EmptyWidget. This case is the most common, and allow to generate better code when label can be associated to widget (e.g. in HTML).
2017-09-24 16:36:11 +02:00
Goffi
3f2c1046eb plugin XEP-0060: use client instead of profile_key in getItems 2017-09-24 16:32:22 +02:00
Goffi
3d6cac0403 core (memory/sqlite): typo 2017-09-22 18:04:14 +02:00
Goffi
ab2e625607 core (memory/sqlite): better stability:
- timeout increased to 15 s
    - if a query fail, it's retried up to 5 times
    - foreign key PRAGMA is executed on every new connection object (should fix non working foreign keys)

those are Q&D workarounds for issues with Sqlite, before switching to a higher level module to handle it correctly.
2017-09-21 21:53:28 +02:00
Goffi
4602edfb4f tmp (wokkel): fixed subscriptions node handling 2017-09-08 07:58:10 +02:00
Goffi
b567e87e9b plugin XEP-0060: added/fixed subscribe/unsubscribe and subscriptions methods/bridge methods:
subscriptions now returns Subscription instances, and psSubscriptionsGet return dict with subscription data (node, subscriber, state)
2017-09-08 07:57:57 +02:00
Goffi
2f3727b85d plugin schema: PubSub node schema, first draft
node schema is a new SàT Pubsub experimental feature allowing to attach a schema to a node.
2017-09-06 07:38:39 +02:00
Goffi
607138befb tmp(wokkel/pubsub): allows getNodes to return names using tuples(node/names) 2017-08-27 20:14:59 +02:00
Goffi
9f30634f14 core (memory/disco): added use_cache parameter to discoInfos/discoItems (set to False to ignore cache) 2017-08-22 22:12:57 +02:00
Goffi
6ad80151f9 plugin XEP-0277: added microblog namespace to disco info 2017-08-20 17:37:43 +02:00
Goffi
7e826f6aae plugin XEP-0060: implemented subscriptions management method for node owner:
added getNodeSubscriptions and setNodeSubscriptions and their bridge method (psNodeSubscriptionsGet and psNodeSubscriptionsSet)
2017-08-20 10:31:53 +02:00
Goffi
8e8e619031 tmp (wokkel/pubsub): subscriptions improvments:
- added "none" state to Subscription, it is needed to remove existing subscription
- implemented subscriptionsGet and subscriptionsSet
- replaced "nodeOrEmpty" by "node" for affiliationsGet, affiliationsSet and subscriptionsGet as node is mandatory for these commands
2017-08-20 10:29:26 +02:00
Goffi
d5908b6ee6 tools(common/uri): fixed encoding in buildXMPPUri 2017-07-13 21:23:36 +02:00
Goffi
da75f58453 tools (common/uri): buildXMPPUri: use XEP-0277 namespace as node if node is empty or None for microblog subtype 2017-07-13 21:12:46 +02:00
Goffi
85d58f902b plugin text syntaxes: various improvments:
- syntaxes and default_syntax are now class attribute instead of members of params_data
    - removed local exception UnknownSyntax in favor of exceptions.NotFound
    - syntaxes are now saved with a key which is name in lower case and stripped, unmodified name is put in syntax's data
    - new getSyntax (syntaxGet in bridge) method to get syntax key and raise an error if not found. Can be used by frontends to check that a syntax is known.
2017-07-13 20:53:51 +02:00
Goffi
d8080c8ad2 template: print warning message and use DEFAULT_LOCALE on bad locale 2017-07-12 19:06:28 +02:00
Goffi
ef6c0c30f5 plugins invitation, XEP-0277: strip language, we don't want spaces 2017-07-12 19:05:33 +02:00
Goffi
4ec04b1fb0 plugin XEP-0060: remove max_items when item_ids is set on getItems 2017-07-08 23:21:01 +02:00
Goffi
c5149909be plugin XEP-0060: fixed service in metadata for PEP 2017-07-08 21:43:36 +02:00
Goffi
05f0764d2f plugin Pubsub Hook: first draft:
This new plugin allow to attach an external action to a Pubsub event (i.e. notification).
Hook can be persitent accross restarts, or temporary (will be deleted on profile disconnection).

Only Python files are handled for now.

In the future, it may make sense to move hooks in a generic plugin which could be used by ad-hoc commands, messages, pubsub, etc.
2017-07-05 15:05:47 +02:00
Goffi
c56d3fc759 plugin XEP-0060: addManagedNode callbacks now use client syntax instead of profile 2017-07-05 15:04:43 +02:00
Goffi
359b3a1b43 core (tools/email): an unicode "to" email (instead of a list) can now be used 2017-07-05 15:02:52 +02:00
Goffi
5ef5fc36f1 plugin events: changed import names to EVENTS uppercase for consistency with other plugins 2017-07-05 14:50:45 +02:00
Goffi
3d7e11cd8f core (memory/persistent): fixed calls to delPrivateValue 2017-07-05 14:50:39 +02:00
Goffi
eaa420fb03 jp (event/invitee): added list command to get R.S.V.P. :
RSVP are gotten for invitees node, and R.S.V.P. are displayed. Then a summary display the number of yes, maybe and no, and the expected number of guests.
2017-07-02 20:09:25 +02:00
Goffi
828d1564fb core (tools/common/regex): new ansiRemove method to remove ANSI escape codes from a string 2017-07-02 19:53:44 +02:00
Goffi
8b21f69945 plugin events: added eventInviteesList method to get all R.S.V.P. at once. 2017-07-02 19:47:25 +02:00
Goffi
d07083bff6 plugin events, invitations + jp (event/create, invitation/invitee/invite): several emails addresses can now be specified for a single invitation:
if several addresses are specified, the same invitation (same ID and data) is sent to all the addresses
2017-06-30 00:04:47 +02:00
Goffi
cbeb350bd5 plugin XEP-0277: max_items fix (last "fix" about it was actually bad) 2017-06-29 23:40:12 +02:00
Goffi
b1b39a636e plugin events: added eventInvite command as a helper for the complex invitation workflow:
when this command is used:
    - an email invitation is sent with the event node set
    - invitee's jid is affiliated to event
    - invitee's jid is affiliated to invitee's node as a publisher
    - invitee's jid is affiliated to blog's node as a member
    - invitee's jid is affiliated to every blog's item's comments node as a publisher
last affiliation complex operation is currently needed because of the way blogs and comments are handled, but this need to be changed in the future with XEP proposal.
2017-06-29 20:57:12 +02:00
Goffi
80afa4654c plugin XEP-0277: change affiliations for comments + fixes:
- mbGet now use client instead of profile_key
    - fixed max_items handling
    - for whitelist access model, if a comments node is created, "member" affiliations are transformed to "publisher"
      This is because most of time we want that somebody is able to read a private blog but not write on it, and be able to write a comment.
2017-06-29 20:45:54 +02:00
Goffi
e22336c6f2 plugin XEP-0060: added sendItem and psItemSend bridge method as a way to send directly raw XML for an item + use client instead of profile_key in publish + renamed psItemGet to psItemsGet 2017-06-27 19:38:20 +02:00