100 Commits
Author SHA1 Message Date
jocelyn 307a87eaf4 Better handling of path or location for administration links. 2017-03-24 21:56:48 +01:00
jocelyn 21e75a6492 Splitted administration and normal web site interfaces.
This optimises a bit the routing map, and make cleaner separation.
Make the base url for admin pages customizable via `administration.base_path` variable in cms.ini
   note: could be /admin, /roc-admin, or ..
It is possible to have a specific theme for administration via the variable "administration.admin"
2017-03-24 18:38:58 +01:00
jocelyn 13cbb7d987 Fixed code by checking for file existence before checking if this is a directory. 2017-03-22 10:26:36 +01:00
jocelyn dbfe14e77e Fixed cms execution initialization (avoid setting up twice router and filter). 2017-03-17 11:21:21 +01:00
jocelyn b263e4a1b9 Support http caching on sitemap.xml . 2017-03-08 20:55:28 +01:00
jocelyn a9581eff01 Added support for directory output email notification. 2017-03-08 10:46:29 +01:00
jocelyn 941f50e4fb Removed obsolete calls. 2017-03-08 10:43:27 +01:00
jocelyn 67f6591851 Better control on path alias.
If user has permission to edit, provide a text input, otherwise just a label if path are required.
Reviewed html generated for taxonomy field in node edit form.
Improved the blog entries list by providing (if permitted) link to blog entry creation, and link to the user entries or all entries.
2017-03-06 21:27:35 +01:00
jocelyn 7cde24a439 Protected again sql error.
Return better sql error message for sqlite3 storage.
2017-03-03 18:53:11 +01:00
jocelyn 2fc0c6f7b7 Fixed wrong initial offset. 2017-03-03 13:36:56 +01:00
jocelyn bb25a8b12e Added feed ordered by publication on /nodes/{type}/feed. 2017-03-03 13:16:04 +01:00
jocelyn 0febe3418b (Breaking change) added notion of editor vs author.
The table nodes and node_revisions have an extra "editor" field.
Update the sql table with:
  ALTER TABLE nodes ADD editor INTEGER ;
  UPDATE nodes SET editor = author;
  ALTER TABLE node_revisions ADD editor INTEGER ;
  UPDATE node_revisions SET editor = author;
2017-03-03 11:16:46 +01:00
jocelyn 6cb6dd1609 Added notion of author (owner) and editor to allow the editing of node by non owner users. 2017-03-03 11:12:51 +01:00
jocelyn 4cbdfeff06 Improved the user selection for messaging module. 2017-03-03 11:08:38 +01:00
jocelyn f5671bc190 Display associated tags in blogs listing. 2017-03-02 16:02:45 +01:00
jocelyn a611b27ad9 Fixed node preview. 2017-03-01 16:33:17 +01:00
jocelyn 8ff638d62e Fixed CMS_USER.creation_date retrieval.
Improved the admin users listing.
2017-03-01 15:36:58 +01:00
jocelyn e89b04cbd2 Support profile_firstname and profile_lastname value when importing user records. 2017-03-01 12:34:08 +01:00
jocelyn 0ab318a43d Updated messaging ecf files. 2017-03-01 11:20:39 +01:00
jocelyn 13d0927c58 Added default path alias for node.
Fixed set path alias, when alias already exists in the history.
2017-02-28 17:35:18 +01:00
jocelyn a341bd98eb Improved node management.
- List node by node types
- fixed the trash/restore/delete workflow
Added messaging module to send message to cms users (by email for now).
Added early protection for cache, export and import functionalities.
2017-02-28 11:24:48 +01:00
jocelyn dc84e79952 Wrap with double quote only if term has a comma. 2017-02-10 19:03:34 +01:00
jocelyn ccf1040513 Added sitemap support on node module.
code cleaning.
2017-02-10 13:34:49 +01:00
jocelyn 1c902db377 added sitemap to demo example. 2017-02-10 12:18:06 +01:00
jocelyn b47d631095 Html escape cms_search_query variable. 2017-02-10 12:16:09 +01:00
jocelyn bef99dd762 Added support for sitemap.xml . 2017-02-10 12:08:33 +01:00
jocelyn ca4d975715 Removed obsolete features:
- CMS_RESPONSE.add_variable (..)
 - CMS_MODULE.register_hooks (..)
And related code.
2017-02-08 23:13:56 +01:00
jocelyn b0b92c2d36 Added finer control on path_alias.
- added a permission to edit path alias.
 - added an admin handler to manage path aliases.
When path alias is changed on node, always keep previous path alias.
  (can be unset from the related admin section).
CMS_API.storage.path_aliases returns the list of path aliases (recents aliases come first).
2017-02-08 23:01:46 +01:00
jocelyn d8291e91ac Merge branch 'master' of https://github.com/EiffelWebFramework/ROC 2017-02-08 19:37:59 +01:00
jocelyn 4f4a838504 Allow user to edit its own profile name. 2017-02-08 19:36:23 +01:00
jocelyn a1e8cc5128 Make sure to use the user profile name whenever it is possible. 2017-02-08 18:41:17 +01:00
jocelyn f75dde457d Added SQL script to update existing ROC CMS installation. 2017-02-07 19:19:40 +01:00
jocelyn d97542f797 Added CMS_CORE_MODULE which is the mandatory module for ROC CMS.
Added CMS_USER.profile_name .
Improved module managements with install vs enable.
  - enabled/disabled status can also be stored in database.
Install procedure do not install all available modules anymore.
2017-02-07 16:52:08 +01:00
jocelyn f0a3b2bd3a Collapse expanded keywords ($Date$, $Author$, ...) 2017-02-06 18:45:44 +01:00
jocelyn 784891705f Added possibility to change its own username. 2017-02-06 18:40:20 +01:00
jocelyn 1c829e16ff Fixed testing codes that were not compliant with search user by email signature. 2017-02-01 18:57:15 +01:00
jocelyn fae444c238 Better syntax formating for SQL query related to comments module.
Display import link from admin page.
Removed unused local variables.
2017-02-01 10:29:15 +01:00
jocelyn c10faceaf6 Better log message during import.
Fixed SQL storage for comments.
2017-01-27 23:53:27 +01:00
jocelyn 32a47fbba3 When importing, do not change modification date.
Display /nodes sorted by changed date.
Improved the import form, and report wrong import folder. Only import from folder inside site/import for security reason.
2017-01-27 23:12:02 +01:00
jocelyn 2568e85c59 Remove %R from wikitext source, otherwise this may cause parsing issue. 2017-01-27 19:13:30 +01:00
jocelyn 38b4713276 Updated blog design to use ?page=123&size=456.
Use  /blog/{user} url to list blog from a specific user.
Fixed bad xhtml rendering (missing closing tag).
2017-01-27 19:12:37 +01:00
jocelyn 456770ca3e Remove extra argument for the creation procedure of some modules (node and wikitext) as this is useless. 2017-01-27 17:02:28 +01:00
jocelyn 7c398a9f33 Added support for user, user_roles, page, blog export and import.
Added basic support for comments, for now mainly viewing comments from database (no submission forms yet).
Added first simple wikitext filter (render wikitext content as xhtml).
Ensure response content type is text/html with utf-8 charset.
2017-01-27 11:57:52 +01:00
jocelyn 2d698f604b Extracted page support from cms_node_module, and add a proper CMS_PAGE_MODULE.
- now, the CMS_PAGE_MODULE has to be declared in the related CMS_SETUP via CMS_EXECUTION.
   (See demo for example)

Improved the export facilities.
  Implemented blog and page export.
Added import facilities.
  Implemented blog and page import.

Improved node revision web interface (allow to edit a past revision, in order to restore it as latest revisionm i.e current).
Removed specific tag from blog module, and reuse the taxonomy module for that purpose.

Added WIKITEXT module that provide a WIKITEXT_FILTER, so now we can have wikitext content.
   - for now, no support for wiki links such as [[Foobar]].
2017-01-20 16:05:40 +01:00
jocelyn 3bcfb0a44a Added the possibility to have feed aggregation as embedded view using "?view=embedded".
Convenient to include the feed aggregation in a page with for instance jquery load(..) function.
2017-01-02 18:10:40 +01:00
jocelyn 219969cae4 Use .json extension for the exported blog post data. 2017-01-02 18:10:27 +01:00
jocelyn 18d26a765a Made cms uploading file safer. 2016-11-30 21:50:06 +01:00
jocelyn 7d50973fd5 Ensure that cms page always has a non empty html page title. 2016-11-30 21:49:47 +01:00
jocelyn 73572a3e1c updated roc tool ecf file. 2016-11-30 21:49:02 +01:00
jocelyn 84e0ddf50c propagate error for taxonomy handler. 2016-11-30 21:48:49 +01:00
jocelyn 5e98d82934 Added category support for feed aggregation. 2016-11-30 21:48:13 +01:00
jocelyn 31d4c8dc5b Removed nino from launcher.
Updated ecf files.
2016-11-30 21:47:35 +01:00
jocelyn 3bbe6a50b7 New installation procedure for roc demo example. 2016-11-30 17:22:51 +01:00
jocelyn 1fb9640d9c Added feed aggregations ids.
This is used to avoid computing the whole feed aggregation to decide if a feed block is included or not.
2016-11-30 17:09:59 +01:00
jocelyn 41fb8d5730 Added summary and categories to recent change item. 2016-11-30 17:07:46 +01:00
jocelyn ff58c6aff9 Added support for configuration to Roc.
The installer can now use a roc.cfg file to define the various needed modules.
Format:
{ "name": "demo", "location": ".",
  "modules": {
      "foo": { "location": "path-to-source-of-module-foo"; },
      "bar": { "location": "path-to-source-of-module-bar"; }
  }
}
2016-11-30 16:48:46 +01:00
jocelyn 76cf815477 ROC CMS libraries are SCOOP capable. 2016-11-30 15:42:02 +01:00
jocelyn 410903ff5c Make favicon.ico expires after 24 hours. 2016-11-30 15:41:12 +01:00
jocelyn 19eb5113e9 Added ssl files to allow cms SSL support (disabled by default).
Fixed typo in auth post password message.
Make sure to keep site_destination set in login form, so that the user is redirected to previous location.
Use default http client in the feel aggregator component, instead of forcing libcurl usage.
2016-11-30 10:43:09 +01:00
jocelyn 0c3b85bb37 Set the uploaded file path to site/temp by default. Can be set via configuration with "temp-dir" variable.
(This is important, otherwise it uses the current working directory, but for fcgi, this is not always obvious where it is.)
Allow advanced upload, and also basic html upload, in case the dropzone.js has trouble.
Split get and post handling for files module upload request.
2016-09-26 10:37:41 +02:00
jocelyn b1478cfb8a Fixed typo "We have sent you .." (instead of ... send ...). 2016-09-16 20:21:24 +02:00
jocelyn d1ca6eb311 Get GCSE module accepts /gcse or /gcse/ . 2016-06-01 13:48:49 +02:00
jocelyn 88b3ca1d2f Avoid using old path for http_authorization. 2016-05-23 21:24:09 +02:00
jocelyn 6a61c30689 Fixed session logout by setting expiration date in the past and empty content. 2016-05-18 12:13:25 +02:00
jocelyn 88aaf9ed4c Made compilable with version before 16.05 2016-05-18 11:58:16 +02:00
jocelyn 167ac563aa List user roles for each users in the admin list of users. 2016-05-18 11:02:16 +02:00
jocelyn f4ac4be684 Fixed role changes for an user. 2016-05-18 11:01:54 +02:00
jocelyn 12a3898487 Decode url for redirection purpose during authentication. 2016-04-27 16:07:24 +02:00
jocelyn 0e3419fea0 Do not try to redirect to previous page or destination on logout! 2016-04-13 23:12:11 +02:00
jocelyn 816f0eb820 Improved session auth module routing. 2016-04-13 12:53:10 +02:00
jocelyn bd3fe63976 Fixed "destination" support when login.
(i.e when visitor click on signin from page A, one he is signed, he will be redirected to the initial page A.)
2016-04-13 10:56:28 +02:00
jocelyn 0c7d8af9d7 Added support for CMS_BLOCK.is_raw in custom block module. 2016-02-19 00:53:47 +01:00
jocelyn f80268c1ac Updated CMS_HOOK_BLOCK, to provide a better block_identifiers (CMS_RESPONSE): detachable ITERABLE [READABLE_STRING_8] query, to be implemented by CMS_HOOK_RESPONSE_BLOCK descendants.
Added CONFIG_READER.table_keys: detachable LIST [READABLE_STRING_32].
2016-02-19 00:10:09 +01:00
jocelyn 77e2c28d18 Added logs admin viewer.
Added CMS_SETUP.is_debug: BOOLEAN  (see cms.ini   site.debug setting)
2016-02-19 00:03:15 +01:00
jocelyn af137629e0 Restored previous template_block* function signatures and made them obsolete.
Added smarty_template_block* functions as new recommended functions.
2016-02-18 16:26:00 +01:00
jocelyn a7f1f14b8a Added missing change to installed file for demo example. 2016-02-18 16:14:58 +01:00
jocelyn fbda2c9eb2 Reuse improved CMS_HOOK_BLOCK_HELPER to help creation of block templates.
Fixed typo in basic auth login form.
2016-02-18 16:13:58 +01:00
jocelyn ff58593bff Added functions to get link from menu or link composite.
Improved management menu, but using sub menu.
2016-02-18 12:47:21 +01:00
jocelyn c65f5765d6 Removed unwanted auth.json file (wrong directory). 2016-02-17 16:11:50 +01:00
jocelyn 19565b9c98 Updated registration form. 2016-02-17 16:07:20 +01:00
jocelyn 6716cb5575 Protected cache, export and feeds menu link. 2016-02-17 15:20:38 +01:00
jocelyn 75332c148d Added protection/permissions. 2016-02-17 12:24:58 +01:00
jocelyn b54fd85172 Added files module, with for now, a focus on upload files facility.
Contribution from Fabian Murer, as part of an ETH student project.
Supervised, refactorized and merged by Jocelyn Fiat.

Signed-off-by: Fabian Murer <fmurer@student.ethz.ch>
Signed-off-by: Jocelyn Fiat <git@djoce.net>
2016-02-17 12:03:24 +01:00
jocelyn bc07aad01b Restored iron package name to "roc" 2016-02-12 09:03:56 +01:00
jocelyn ce4bb551d2 Updated package.iron . 2016-02-04 00:01:32 +01:00
jocelyn 5ceb9d3dd3 Fixed new account admin message.
- the rejection url was badly formatted in the template.
2016-02-03 23:59:55 +01:00
jocelyn c1a5838320 Fixed auth email messages code and template. 2016-02-03 23:51:20 +01:00
jocelyn db697cec3e Fixed auth mail template text and code. 2016-02-03 23:33:52 +01:00
jocelyn 892f2331de Do not set destination query parameter to any account/auth url.
Set "site_sign_in_url" and "site_sign_out_url" as variables (so it could be used by template).
2016-02-03 23:16:05 +01:00
jocelyn 3496536751 Added CMS_API.request: WSF_REQUEST to ease dev of ROC CMS code.
- Removed CMS_REQUEST_UTIL
  - centralize a few request related code into CMS_API
Added CMS_API.user, CMS_API.set_user (CMS_USER), ... and user related routines.

Refactored Auth related code
  - added various abstractions to factorize implementation and harmonize solutions.
  - revisited the logout strategy.
  - updated the account info page, and remove info user should not care about.
  - simplified the process, and encourage auth module to follow same design.

Added CMS_LINK helper routines to modify the related query string.
Removed CMS_USER.profile (and related routines)
   - It was not used so far.
   - it will probably a specific module later, if needed.

Update various module to avoid fetching user from sql directly, and let this task to CMS_USER_API.

Removed CMS_NODE_API.node_author (a_node: CMS_NODE): detachable CMS_USER,
   - as the info is already in CMS_NODE.author

Added CMS_RESPONSE.redirection_delay, if ever one code want to redirect after a few seconds.
Added the request uri info to the not found cms response.
2016-01-29 21:58:49 +01:00
jocelyn 41ac45d07b Fixed various CMS_MODULE.install, by not marked module installed if an error occurred!
Improved Auth related module implementation by having a way to change settings like token, max age.
  - use CMS_SETUP.site_id and related "auth.$module.token" ... configuration values.
  - removed related CMS_..._CONSTANTS classes.

For auth session module, use auth_session as table name, and use VARCHAR(64).
Extracted sql from blog module, and store it under site/scripts/install.sql .
Renamed a few $modulename.sql as install.sql
2016-01-27 18:22:20 +01:00
jocelyn d3b485f4d3 Removed unused local variable. 2016-01-22 22:19:24 +01:00
jocelyn 2b1d5f9693 Updated to new routine type. 2016-01-22 21:41:56 +01:00
jocelyn 59c03c5f4d Added CMS_STRING_EXPANDER.
For now with basic implementation.
  It will be improved later

Added SEO related attribute in CMS_RESPONSE.
Added improved Contact module.
Added basic SEO module.
2016-01-22 21:33:06 +01:00
jocelyn 39ab19d20e Eiffel code and ECFs update to support new agent notations.
Accepts /account and /account/ .
2016-01-19 16:15:13 +01:00
jocelyn fd5e396b72 Code cleaning. 2016-01-15 18:35:53 +01:00
jocelyn 5bd28326c2 Added source for sql scripts. 2016-01-15 17:59:21 +01:00
jocelyn eef2a52f48 Integrated new registration workflow.
Added optional "mailer.subject_prefix" configuration item.
Added CMS_SETUP.utf_8_site_name for convenience.
Fixed a few potential unicode issues.
Fixed various typos.
2016-01-15 17:46:56 +01:00
jocelyn a6642e9f3e Fixed location of library "http_client_extension" in recaptcha library. 2016-01-15 14:11:51 +01:00
jocelyn affe3beb27 Merge branch 'roc_register' of https://github.com/jvelilla/ROC into roc_register 2016-01-15 13:30:58 +01:00