Commit graph libervia-backend/frontends
Author SHA1 Message Date
Goffi
4ea36624a2 jp (pubsub/uri): fixed URI generation 2017-05-19 12:33:54 +02:00
Goffi
c8b4b77908 jp: fixed progress 2017-05-04 00:36:03 +02:00
Goffi
a5bc67ef6a jp (event): event handling commands, first draft 2017-04-27 01:02:05 +02:00
Goffi
e12e25d1bf jp: added use_pubsub and use_pubsub_node_req arguments to CommandBase
pubsub add --node and --service arguments
    pubsub_node_req add --service and a positional node argument (i.e. mandatory)
2017-04-27 01:01:43 +02:00
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