Commit graph libervia-backend/frontends/src
Author SHA1 Message Date
Goffi
f07c5991ea jp (invitation): added list subcommand 2017-04-27 00:59:25 +02:00
Goffi
e255b969e0 jp (output): added LIST_DICT output, to handle list of dictionaries 2017-04-27 00:58:12 +02:00
Goffi
6e70992c6c jp: added constant to handle ANSI code for header and subheaders 2017-04-27 00:57:04 +02:00
Goffi
8a38c20d92 jp (blog): service and node can now be specified for edit command 2017-04-16 18:00:45 +02:00
Goffi
f89b014caa jp (pubsub): added uri command to build pubsub URI 2017-04-16 17:59:54 +02:00
Goffi
55b6199997 jp (pubsub/node): added create and delete commands 2017-04-03 00:23:01 +02:00
Goffi
fcbeec5fa5 jp (invitation): added modify command 2017-04-03 00:23:01 +02:00
Goffi
697da436af plugin XEP-0060: node create/delete improvments:
- use client instead of profile for createNode and deleteNode
    - new bridge method psCreateNode
    - renamed psDeleteNode to psNodeDelete
2017-04-03 00:22:58 +02:00
Goffi
d70547a611 jp (invitation): invitation command first draft 2017-03-29 19:42:44 +02:00
Goffi
fce4b9fd1b jp (pubsub/get): --service is now optional argument, and sub_id now use "-S" short option 2017-03-29 19:42:44 +02:00
Goffi
f7657610f4 jp (base): added msg and exit_code argument to errback so it's more generic 2017-03-29 19:42:44 +02:00
Goffi
3eb7074f26 jp (pubsub/node) added pubsub/node/affiliations/set command 2017-03-26 18:08:05 +02:00
Goffi
281c514ae4 jp (pubsub): added affiliations and node/affiliations/get:
affiliations allow to retrieve all node were a profile is affiliated on a service, or the affiliation on a specific node.

node/affiliations/get is for node owner and allow to retrieve who is affiliated with a node and which kind of affiliation.
2017-03-23 21:04:01 +01:00
Goffi
afef209d70 jp (pubsub/node): added set command 2017-03-14 00:21:20 +01:00
Goffi
b9db15510f jp (pubsub): added pubsub/node/info command to retrieve node configuration 2017-03-13 23:18:57 +01:00
Goffi
ba8534ee4f plugin XEP-0060: renamed psGet bridge method to psItemGet 2017-03-13 23:17:13 +01:00
Goffi
444926825c jp (output dict): added color and no-header option 2017-03-13 23:15:06 +01:00
Goffi
b6c9073322 jp (base): raise InternalError if output is used when use_output is not declared 2017-03-13 23:14:00 +01:00
Goffi
2c6afc6d4f jp (output xml): remove blank spaces on parsing for better pretty printing 2017-03-13 23:12:57 +01:00
Goffi
220042d6b1 jp(pubsub/get): pubsub/get command, first draft 2017-03-12 23:34:51 +01:00
Goffi
6fd7bd5313 jp (outputs): new xml and list_xml outputs, handling pretty formatting and syntax highlighting 2017-03-12 23:34:19 +01:00
Goffi
4d96b85178 jp (base): output can now specify a default when registering 2017-03-12 23:33:26 +01:00
Goffi
09bf7b9b11 jp (base): replaced log.warning by stderr prints 2017-03-12 23:32:43 +01:00
Goffi
a860999204 jp (outputs): moved output options parsing and checking to base methods 2017-03-12 23:31:06 +01:00
Goffi
48a5f1f4c7 jp (std output): force unicode on simple output 2017-03-12 23:29:09 +01:00
Goffi
bb48d87434 jp (account): command to handle XMPP account creation/password change/deletion using in-band registration 2017-03-09 23:11:42 +01:00
Goffi
2e9404421a jp (profile): fixed help gettext calls 2017-03-09 23:10:17 +01:00
Goffi
90824a69b0 jp (base): added generic errback to CommandBase + show error message on plugin ImportError 2017-03-09 23:09:18 +01:00
Goffi
03d8930672 jp (profile/list): fixed options help 2017-03-09 00:06:13 +01:00
Goffi
6378718ddc primitivus: fixed profileCreate bridge call 2017-03-08 20:44:28 +01:00
Goffi
a4934b1955 tools(templates): workflow improvments:
- template theme can be specified in parenthesis: (some_theme)path/to/template.html. Withtout parenthesis, "default" is used
    - static content are supposed to be in [theme]/static, error pages in [theme]/error/[err_code].html
    - default page are used in some case (2 for now): if error page with specified code doesn't exists, a base page is used, and if a page doesn't exist for a theme, the same one for default theme is looked for
    - CSS files are automatically found for HTML pages
    - CSS files can be split, the'll be added in the template according to the page requested.
    - theme CSS file is looked for, and if not found the default theme equivalent is looked for.
    - each element of a path can be associated to a CSS file, and styles.css is always there. For instance if blog/articles.html is requested, the following CSS can be included: "styles.css", "blog.css", "blog_article.css". They all must be in /static
    - if the automatic finding of CSS files is not wanted, css_files arguments can be used instead, with full relative path (i.e. including theme)
    - CSS files can be merged and included inline with css_inline argument
    - root_path can be specified, it will be used as a prefix for static files
    - requested theme (which may differ from actual theme, e.g. if the template is not found and default one is used instead) is available in template with "theme" variable
    - added getThemeAndRoot method to retrieve theme and theme root path from template
2017-03-05 23:41:10 +01:00
Goffi
085ed041e7 core, bridge: renamed getProfileName to profileNameGet according to new conventions 2017-03-05 21:36:01 +01:00
Goffi
9b0542fb46 core, frontends: various fixes for Libervia:
- quick_app: don't fail when we can't get autodisconnect parameter
    - bridge: removed useless BridgeFrontend parent class
    - use of TypeError, unicode and list to workaround Pyjamas incompatibilities
2017-02-26 18:23:01 +01:00
Goffi
a1def7f8f0 jp (blog): set default template and data mapping for the new template output 2017-02-21 21:01:40 +01:00
Goffi
8579722d09 jp (output): template output first draft:
template output use the new template renderer and data_objects module in backend tools.
    Options can be specified: template to give a direct path to template, browser to display result directly, inline-css to include css in the HTML page.
    Default template can be specified in command's TEMPLATE attribute, and a template_data_mapping method is called if it exists to map data to what is expected by the template.
2017-02-21 21:01:40 +01:00
Goffi
c4c57e7d42 jp (base): improved module import:
module import now display a warning were suitable on import issue
2017-02-21 21:01:40 +01:00
Goffi
8155bc3ee8 jp (base, blog, output(std)): fixed bad unicode handling in stdout, use of jp.disp instead of simple print 2017-02-21 21:01:40 +01:00
Goffi
bc8c6d34ca jp (blog/get): fancy output prints author, published and updated if verbosity > 1 and tags if verbosity > 2 + format published and updated 2017-02-17 00:33:55 +01:00
Goffi
bb6d71d857 jp (blog): added blog/get command:
- blog/get will retrieve and parse blog items on specified service/node and can request only one or more specific items according to ids of max value
    - it takes profit of outputs and the new extra_outputs: a default output display microblogs as key/value, a fancy one display it in a more confortable way for reading it the terminal
    - for default output, keys can be filtered using --key argument
2017-02-16 01:02:33 +01:00
Goffi
97cf0e6e01 jp (outputs): added OUTPUT_COMPLEX type for data which are more complex than key/value dictionaries 2017-02-16 00:51:33 +01:00
Goffi
127744dd5b jp (core): added extra_outputs:
- extra outputs are output locals to a command which can be used in addition to the generic one which are compatible
    - added --output_option argument(s) to specify option specific to selected output
    - Jp.command now references the running command
2017-02-16 00:49:46 +01:00
Goffi
3e795fde5c jp (info/disco): added --node argument 2017-02-12 21:17:56 +01:00
Goffi
0a2a18ebaf core(memory.disco), bridge: discoInfos and discoItems now handle node 2017-02-12 21:17:56 +01:00
Goffi
85f3bd5988 core, frontends: getProfilesList renamed to profilesGetList + behaviour change:
- profilesGetList now handles clients and components boolean arguments, to filter profiles
    - jp: added --clients and --components options to profile/list
    - profilesGetList now returns sorted profiles
2017-02-12 19:08:52 +01:00
Goffi
97337202cb core, jp: component handling + client handling refactoring:
- SàT can now handle components
    - plugin have now a "modes" key in PLUGIN_INFO where they declare if they can be used with clients and or components. They default to be client only.
    - components are really similar to clients, but with some changes in behaviour:
        * component has "entry point", which is a special plugin with a componentStart method, which is called just after component is connected
        * trigger end with a different suffixes (e.g. profileConnected vs profileConnectedComponent), so a plugin which manage both clients and components can have different workflow
        * for clients, only triggers of plugins handling client mode are launched
        * for components, only triggers of plugins needed in dependencies are launched. They all must handle component mode.
        * component have a sendHistory attribute (False by default) which can be set to True to allow saving sent messages into history
        * for convenience, "client" is still used in method even if it can now be a component
        * a new "component" boolean attribute tells if we have a component or a client
        * components have to add themselve Message protocol
        * roster and presence protocols are not added for components
        * component default port is 5347 (which is Prosody's default port)
    - asyncCreateProfile has been renamed for profileCreate, both to follow new naming convention and to prepare the transition to fully asynchronous bridge
    - createProfile has a new "component" attribute. When used to create a component, it must be set to a component entry point
    - jp: added --component argument to profile/create
    - disconnect bridge method is now asynchronous, this way frontends can know when disconnection is finished
    - new PI_* constants for PLUGIN_INFO values (not used everywhere yet)
    - client/component connection workflow has been moved to their classes instead of being a host methods
    - host.messageSend is now client.sendMessage, and former client.sendMessage is now client.sendMessageData.
    - identities are now handled in client.identities list, so it can be updated dynamically by plugins (in the future, frontends should be able to update them too through bridge)
    - profileConnecting* profileConnected* profileDisconnected* and getHandler now all use client instead of profile
2017-02-12 17:55:43 +01:00
Goffi
b5f1e45d4e core, bridge, frontends: renamed asyncConnect to connect, and added options parameters (not used yet) 2017-02-06 22:54:43 +01:00
Goffi
6a8102b109 primitivus: fixed resources diplay in contact list 2017-02-06 20:51:56 +01:00
Goffi
2455e35c28 quick app: check type in notify 2017-02-05 14:55:21 +01:00
Goffi
61765efd9e primitivus: fixed display of error if a message can't be sent 2017-02-05 14:55:21 +01:00
Goffi
115f5ae0e1 plugin otr: various improvments:
- messageSend trigger now use pre_xml_treatments so it doesn't block other triggers of higher priority
    - text commands now use a very high priority, as it is local command and should not be blocked in most of cases
    - new otrState signal, to send state change to frontends
    - history is not skipped anymore, a future option may change this behaviour
    - OTR trigger are skipped on groupchat messages
    - context_manager is now in client instead of being global to plugin
    - removed fixPotr as it is fixed upstream

note triggers should be improved for encryption methods, as skipping an encrypter may break security, but putting it in top priority may break nice features.

fix bug 170
2017-02-01 21:44:24 +01:00