Commit graph

2,500 commits

Author SHA1 Message Date
Goffi
1301132bed memory (sqlite): files handling:
/!\ new database schema version

- added a table to handle files metadata and hierarchy.
- new methods getFiles and setFile allow respectively to retrieve files corresponding to filters, and to set metadata for one file.
- fixed stmnt_regex to detect correcly new schema (during schema validation/update on init)
2018-02-28 18:28:39 +01:00
Goffi
6f64d7d0a3 core (trigger): new returnPoint method:
Normally trigger return value is a boolean used to check if normal workflow must be continued or stopped.
This method add a way to also specify a return value to the method, in addition to the "continue or not" boolean.
2018-02-28 18:28:39 +01:00
Goffi
b27f385511 core (client): component improvments:
- renamed component boolean to is_component for more clarity
- profileConnected/profileDisconnected don't use a suffix anymore, it's called for both client and component.
  To check for there, the is_component boolean is enough
- fixed dependencies handling
- componentStart is not mandatory anymore, as a component can just be used with its handler
2018-02-28 18:28:39 +01:00
Goffi
0d5b8b5a84 core (client): set default timeout of IQ to 60 seconds 2018-02-28 18:28:39 +01:00
Goffi
6aee4c07cf core: new getLocalPath method to retrieve a path in SàT local dir, which may be specific to a profile or component 2018-02-28 18:28:39 +01:00
Goffi
54e4d5d3a9 core (exceptions): added ClientTypeError to deal when a code should not be executed by a client or component profile. 2018-02-28 18:28:39 +01:00
Goffi
a89b5f0957 core (constants): new constants to handle files, progress, component, permissions (will be used in the upcoming patches) 2018-02-28 18:28:39 +01:00
Goffi
976da08f5d jp (common/table): a column can be hidden + fix for empty tables
- avoid crash when table is empty
- a column can now be hidden on display, this can be useful if one data is needed (e.g. to change color of an other column with a filter),
  but we don't want to display it
- filters have a new argument with all data of a row (for the same reason as above, one column can be used to change display of other column)
2018-02-28 18:28:39 +01:00
Goffi
195f30b4d5 jp (profile/create): errback handling 2018-02-28 18:28:39 +01:00
Goffi
0e5e340935 jp (event): added missing arg to _attend_filter 2018-02-28 18:28:39 +01:00
Goffi
d80dd87bcc jp (base): added verbosity property to CommandBase 2018-02-28 18:28:29 +01:00
Goffi
60b8c8fa73 plugin pipe/stream, file transfert: refactoring and improvments:
this is a big patch as things had to be changed at the same time.

- changed methods using profile argument to use client instead
- move SatFile in a new tools.stream module, has it should be part of core, not a plugin
- new IStreamProducer interface, to handler starting a pull producer
- new FileStreamObject which create a stream producer/consumer from a SatFile
- plugin pipe is no more using unix named pipe, as it complicate the thing,
  special care need to be taken to not block, and it's generally not necessary.
  Instead a socket is now used, so the plugin has been renomed to jingle stream.
- bad connection/error should be better handler in jingle stream plugin, and code should not block anymore
- jp pipe commands have been updated accordingly

fix bug 237
2018-02-08 00:37:42 +01:00
Goffi
ece10e8cd2 plugin NAT-port: raise MappingError if something get wrong during "addportmapping" + log unexpected errors (i.e. everything else than MappingError) 2018-02-01 07:24:34 +01:00
Goffi
aec189c087 plugin XEP-0166: added errback to terminate, which only logs issues 2018-02-01 07:21:41 +01:00
Goffi
9ab577462d jp (base): fixed assertion error when using CommandAnswering 2018-01-30 08:43:52 +01:00
Goffi
368571ea24 jp (forums): forums handling commands, first draft 2018-01-30 08:17:17 +01:00
Goffi
cfcc673826 plugin forums: first draft:
this plugin handle forums hierarchy, where forums link to topics which themselves link to blog nodes.
2018-01-30 08:17:08 +01:00
Goffi
387c10cc0d dates update 2018-01-26 11:14:13 +01:00
Goffi
4d7bc8aaa1 tools (common/data_objects): accept same parameters as format en quote their values in OnClick.formatUrl 2018-01-24 09:12:12 +01:00
Goffi
f857a86740 plugin blog import dotclear: use a smaller and lower case prefix to generate ids 2018-01-24 09:10:12 +01:00
Goffi
80efb4b121 plugin XEP-0277: use shortuuid instead of uuid + use item's XMPP URI for atom ID 2018-01-22 22:00:46 +01:00
Goffi
c09a5feb3c plugin blog static: added background parameter, to set an image 2018-01-22 08:36:36 +01:00
Goffi
773b9b8948 tools (common/data_objects): use lists instead of generators for BlogItem.groups and BlogItem.tags 2018-01-21 20:20:38 +01:00
Goffi
ba046b33dd tool (utils): import directly parser from dateutil 2018-01-21 13:04:16 +01:00
Goffi
7b833e62a6 tools (common/data_objects): BlogItem has now a uri property to generate its own XMPP URI 2018-01-19 17:41:10 +01:00
Goffi
d4cfd510c8 plugin XEP-0277: microblog namespace is now registered 2018-01-19 17:40:06 +01:00
Goffi
8cce1d1ba0 core: 'x-data' namespace is now registered 2018-01-19 17:39:38 +01:00
Goffi
e963a0077a plugin merge-requests: fixed "set" method 2018-01-13 10:12:15 +01:00
Goffi
78b16b9bff plugins tickets, merge-requests: fixed call of prepareBridgeSet 2018-01-13 10:03:32 +01:00
Goffi
3e76e826d0 plugins schema, merge_requests, tickets*: factorisation
Dode common in plugins using schema have been factorised in pubsub schema plugin, and filters users in tickets handling have been renamed in a more generic way and put there too.
"reporter*" fields in tickets have been renamed to "author*" as it is a more generic term which can be used elsewhere.
The use of new utils.partial function make easy the creation of simple plugins using schema.
2018-01-12 15:58:54 +01:00
Goffi
a979fce2fc tools (utils): new "partial" function which is a hack to workaround issue with functools.partial while using it with dbus module. 2018-01-12 15:45:37 +01:00
Goffi
8845cc682f tools (common/data_objects): added Room class 2018-01-05 13:00:34 +01:00
Goffi
a22c1a7fd8 plugin XEP-0045: new mucGetService bridge method to retrieve MUC service of the server. 2018-01-05 12:59:52 +01:00
Goffi
cf4ba7b9e4 plugin identity: if we get an empty avatar, don't feel avatar_basename and remove avatar key. 2018-01-05 12:58:54 +01:00
Goffi
fa1654964d template: date filter improvments:
new format (i.e. format after date limit has been reached) can now be specified.
0 can now be used for "auto_limit" to use last midnight as date limit.
A new "auto_day" format can be used as shortcut to use last midnight as date limit, short datetime for old format, and time only for new format.
2018-01-03 00:29:18 +01:00
Goffi
f2b0051004 template: boolean attribute can now be specified when importing a script, and default to "defer" 2018-01-03 00:23:36 +01:00
Goffi
f2b942371a tools (common/data_objects): added classes for messages 2018-01-03 00:21:21 +01:00
Goffi
a9e8a79445 plugin identity: return resource for MUC room occupants' nicks + added avatar and avatar_basename. 2018-01-03 00:20:21 +01:00
Goffi
284b2e2ca7 plugin XEP-0054: return always False in isRoom is plugin XEP-0045 is not available + raise NotFound if avatar is requested for a MUC room (not the occupants, the room itself) 2018-01-03 00:18:31 +01:00
Goffi
9e243b3a8a plugin XEP-0045: added mucNickGet to retrieve our nickname in a MUC room 2018-01-03 00:16:23 +01:00
Goffi
a9fb2e568e core: moved CHAT_* constants from frontends to core constants + uses constants for MESS_TYPE_* in sendMessage 2018-01-03 00:13:48 +01:00
Goffi
adca9c455d plugin XEP-0060: added an config option to set pubsub service
"pubsub_service" can now be used in [DEFAULT] section. If not found or invalid, first pubsub service found will be used

fix 216
2017-12-12 01:07:25 +01:00
Goffi
49edd07cd0 jp (blog): added "set" command to publish content from stdin without editing 2017-12-12 00:12:44 +01:00
Goffi
d95aeb2bd3 jp (base): added exitCb generic callback to display a message and quit 2017-12-12 00:11:27 +01:00
Goffi
1ae6d839ce jp (pubsub/search): fixed --item argument 2017-12-12 00:09:39 +01:00
Goffi
d3eb77bdaf template (xmlui): added labels property in ValueWidget (actually return values) and values property in OptionsWidget 2017-12-04 00:45:07 +01:00
Goffi
87690d88ce core, template (filters): added pygments as a dependency + new highlight filter to use it. 2017-11-30 21:00:24 +01:00
Goffi
5aec6ed680 template (filters): don't crash on invalid date in date_fmt 2017-11-30 20:59:24 +01:00
Goffi
6020cae869 template: remove extension from elements while looking for a path:
this way, extension doesn't need to be provided for a CSS file for a single page.
2017-11-30 20:58:34 +01:00
Goffi
a01bec718e tools (config): complexe data can now be set using json and the "_json" suffix 2017-11-30 20:53:47 +01:00