Commit graph libervia-backend/src
Author SHA1 Message Date
souliane
680dd48587 test: fix the tests for plugin room game 2014-02-20 17:51:51 +01:00
souliane
4bb50c59f7 test: skip the test for markdown syntax if the module is not installed 2014-02-20 16:37:05 +01:00
Goffi
80afa4ed37 plugin XEP-0277: last commit was actually a part of the next one 2014-02-23 23:59:02 +01:00
Goffi
b0bbd32038 plugin XEP-0277: added missing docstring 2014-02-23 23:30:35 +01:00
Goffi
a280080563 core (sqlite): automatic database update:
- new Updater class check database consistency (by calculating a hash on the .schema), and updates base if necessary
    - database now has a version (1 for current, 0 will be for 0.3's database), for each change this version will be increased
    - creation statements and update statements are in the form of dict of dict with tuples. There is a help text at the top of the module to explain how it works
    - if we are on a development version, the updater try to update the database automaticaly (without deleting table or columns). The Updater.generateUpdateData method can be used to ease the creation of update data (i.e. the dictionary at the top, see the one for the key 1 for an example).
    - if there is an inconsistency, an exception is raised, and a message indicate the SQL statements that should fix the situation.
    - well... this is rather complicated, a KISS method would maybe have been better. The future will say if we need to simplify it :-/
    - new DatabaseError exception
2014-02-23 23:30:32 +01:00
Goffi
fd22cf011d plugin text syntaxes: fixed cleaners encoding 2014-02-20 13:28:10 +01:00
Goffi
cf08f0127a plugin XEP-0277: encoding fix 2014-02-20 13:28:09 +01:00
souliane
7c29b8c566 plugin room_game, radiocol: RoomGame.send returns a Deferred. 2014-02-18 17:49:33 +01:00
souliane
daccb7c953 plugin groupblog: do not log error message when asking for the entries of a non existent node (e.g the contact hasn't posted any message yet) 2014-02-18 14:35:30 +01:00
souliane
7d7d205159 core: fix mispelled argument 2014-02-18 14:33:35 +01:00
souliane
24beb81688 misc: fix unnamed arguments in format strings 2014-02-17 14:58:26 +01:00
souliane
d5fb045f5b plugin text_syntaxes: html2text was breaking the long URLs 2014-02-13 12:29:14 +01:00
souliane
e63752db76 memory (sqlite): the result of pickle.dumps in addToHistory must be encoded for the special characters to be stored. 2014-02-12 21:46:48 +01:00
souliane
63bf55d69f plugin XEP_0277: fix encode/decode errors 2014-02-12 15:24:03 +01:00
souliane
a3e2beeeae plugin XEP_0277: check for XHTML namespace and decapsulate the content from the main div container 2014-02-12 15:23:15 +01:00
souliane
c2e4e9f8f9 plugin text_syntaxes: rstrip the conversion result to avoid new lines systematically added by converters (e.g. html2text do this) 2014-02-12 15:21:00 +01:00
souliane
d0fccd5195 core: bug fix at connection time 2014-02-07 22:17:06 +01:00
souliane
7ea4dca1b0 memory: bug fix to not register twice frontends parameters + added some tests for param update 2014-02-07 17:10:24 +01:00
souliane
ff81f76184 plugin groupblog, XEP-0071, XEP-0277, text_syntaxes: manage raw/rich/xhtml data for content/title:
Implementation should follow the following formal specification:

"title" and "content" data can be passed in raw, xhtml or rich format.
When we receive from a frontend a new/updated microblog item:

- keys "title" or "content" have to be escaped (disable HTML tags)
- keys "title_rich" or "content_rich" have to be converted from the current syntax to XHTML
- keys "title_xhtml" or "content_xhtml" have to be cleaned from unwanted XHTML content

Rules to deal with concurrent keys:

- existence of both  "*_xhtml" and "*_rich" keys must raise an exception
- existence of both raw and ("*_xhtml" or "*_rich") is OK

As the storage always need raw data, if it is not given by the user it can be
extracted from the "*_rich" or "*_xhtml" data (remove the XHTML tags).

When a frontend wants to edit a blog post that contains XHTML title or content,
the conversion is made from XHTML to the current user-defined syntax.

- plugin text_syntaxes: added "text" syntax (using lxml)
2014-02-05 16:36:51 +01:00
souliane
5aa76d7d23 plugin groupblog: added method getLastGroupBlogsAtom returns the Atom feed of blog posts 2014-01-22 17:10:28 +01:00
souliane
0698b69344 test radiocol: added a full scenario test 2014-01-15 23:24:22 +01:00
souliane
cf8f9330b4 test: improvements for the helpers classes:
- simplification for retrieving the sent messages
- an expected bridge call which is already set can no more be
  overwritten with new arguments for the same method name. The
  new arguments are stored in a FIFO list instead, and each call
  of the method also registers the arguments for the next call.
2014-01-15 23:22:07 +01:00
souliane
30dfdf1025 plugins room_games, radiocol, libervia: small changes like refactorization to ease the maintenance 2014-01-17 15:02:46 +01:00
souliane
4818da04fc plugin radiocol: sync data includes a "jump to time" info 2014-01-16 11:44:14 +01:00
souliane
8b700a6d48 plugins radiocol_tarot: do not process received messages for MUC users that are actually not playing the game + fix for testing purpose 2014-01-15 23:09:39 +01:00
souliane
9e6845472d plugins room_games, radiocol: better synchronization after a user joins a running game 2014-01-15 23:01:23 +01:00
Goffi
b1f91fe568 plugin Ad-Hoc D-Bus: first draft:
this plugin allow to easily use D-Bus with Ad-Hoc command. This first draft only allow to create a D-Bus remote for now.
2014-02-17 18:57:06 +01:00
Goffi
5d29ffbdda plugin XEP-0050: fixed UnknownGroupError management + "@ALL@" profile for status command 2014-02-13 18:50:56 +01:00
Goffi
fa6e44507c core(XMLUI): empty options in ListWidget now just show a warning message, no more assert 2014-02-13 18:50:49 +01:00
Goffi
a2ba38c6da core: fixed UnknownGroupError exception in getJidsFromGroup 2014-02-13 18:50:41 +01:00
Goffi
eeff94469a core: registerNewAccount partial fix 2014-02-04 18:54:06 +01:00
Goffi
2ca6efd8cc dates update 2014-02-04 18:32:49 +01:00
Goffi
54f9e557e1 core (XMLUI): fixed labels management for lists in _dataFormField2XMLUIData 2014-02-04 18:32:46 +01:00
Goffi
aad6251058 core: security limit in menus 2014-02-04 18:32:39 +01:00
Goffi
c6aaaaa297 plugin XEP-0077, plugin XEP-0100, frontends: gateways have been entirely implemented in backend using the new refactored XMLUI and AdvancedListContainer. The now useless code has been removed from frontends. 2014-02-04 18:26:03 +01:00
Goffi
7d313660eb core: added "one_shot" option to registered callback:
when this keyword is used, the callback is automatically removed once it has been called.
2014-02-04 18:24:27 +01:00
Goffi
18aeb3a6aa core (XMLUI), frontends: advancedListContainer part 2: 2014-02-04 18:21:51 +01:00
Goffi
edf3e1bc87 XMLUI (core, frontends): added JidWidget and DividerWidget + popup type + some bugfixes:
- JidWidget is a text container a Jabber ID, this can be used by frontends for special treatment (e.g.: possibility to click on it)
    - DividerWidget is a separator, like a blank or dashed line
    - popup type is similar to normal window, but designed for a smaller popping window
2014-02-04 18:19:32 +01:00
Goffi
9661c1c2c5 core, frontends: implementation of AdvancedListContainer first draft + misc:
/!\ Urwid SàText must be updated as the new TableContainer is used /!\
    - fixed button value in paramsXML2XMLUI
    - new Urwid SàText TabContainer is used in Primitivus for PairsContainer and AdvancedListContainer
    - fixed in core's XMLUI AdvanceListContainer
2014-02-04 18:19:29 +01:00
Goffi
b3fb68cb63 core, frontends: XMLUI refactoring:
- XMLUI now use objects with 2 main classes: widgets (button, label, etc), and container which contain widgets according to a layout
    - widgets and containers classes are found through introspection, thereby it's really easy to add a new one
    - there is still the AddWidgetName helper, for example AddText('jid', 'test@example.net') will add a StringWidget with name "jid" and default value "test@example.net"
    - container can be inside other containers. changeContainer change the first parent container
2014-02-04 18:19:00 +01:00
Goffi
72fd99f679 plugin XEP-0045, primitivus: added MUC configuration 2014-02-04 18:06:12 +01:00
Goffi
3fdca75224 xmlui: added boolean type management in XMLUIResult2DataFormResult 2014-02-04 18:04:32 +01:00
Goffi
8ee9e2529e plugin XEP-0055, Primitivus: Directory search dialogs are now entirely done in plugin XEP-0055, specific code in frontend is not needed anymore 2014-02-04 18:03:53 +01:00
Goffi
67df03f7bf core: XMLUI now use @property for session_id and submit 2014-02-04 18:02:40 +01:00
Goffi
256a110471 core, frontends: XMLUI refactoring:
- now there is a base XMLUI class. Frontends inherits from this class, and add their specific widgets/containers/behaviour
    - wix: param.py has been removed, as the same behaviour has been reimplemented through XMLUI
    - removed "misc" argument in XMLUI.__init__
    - severals things are broken (gateway, directory search), following patches will fix them
    - core: elements names in xml_tools.dataForm2XMLUI now use a construction with category_name/param_name to avoid name conflicts (could happen with 2 parameters of the same name in differents categories).
2014-02-04 18:02:35 +01:00
souliane
41ce40b0e4 test: added tests for the plugin "room game" + rename other test files 2014-01-10 18:20:30 +01:00
souliane
ddcfdd99ac test: make FakeClient profile dependent and add some tools to test MUC 2014-01-10 18:15:02 +01:00
souliane
cd45ede2d2 test: silent info/warning that were polluting the output 2014-01-10 18:19:34 +01:00
souliane
db832c1f6b test: define the constants JIDs and profiles as lists 2014-01-09 11:18:33 +01:00
souliane
f2503f89ae plugins room games, XEP-0045: small fixes, improved docstrings 2014-01-10 18:07:36 +01:00