Skip to content

Releases: Creatiwity/wityCMS

Version 0.6.2

04 Jun 10:02
Compare
Choose a tag to compare

General

  • Security update (fixes xss issue with HTML purifier library)
  • Updates phpMailer
  • Adds hreflang meta tag in the default Grafx theme
  • WTemplate: improves the "or" feature on variable usage
  • Adds Content-Type JSON header when doing a /m request

Version 0.6.1

13 Nov 15:00
Compare
Choose a tag to compare

Changelog

Settings

  • Translator: adds actions in translation

Libraries

  • Updates Bootstrap Datepicker to v1.6.4
  • Updates CKEditor to v4.6.0
  • Updates Fileman to v1.4.5
  • Updates jQuery to v3.1.1 (removes v1 & v2)
  • Updates requireJS to v2.3.2
  • Updates witySlider to v1.2.10

Kernel

  • WDatabase: adds an escape mechanism to escape fields with the same name of a prefix:
    Prefix articled declared in WDatabase
SELECT \article FROM article

Version 0.6.0

18 Oct 14:31
Compare
Choose a tag to compare

Changelog

This is a major release for wityCMS!

Settings

  • NEW translator feature! Allows you to easily translate all your apps
  • Adds a debug switch
  • Adds an anti-flood switch if you are fed up with anti flood warnings while developping...
  • Adds a version field
  • Adds coordinates fields
  • Adds SEO fields
  • Adds GoogleAnalytics field
  • Adds OpenGraph settings

WTemplate

  • Add a new "wdate" function to render dates easily {$wdate|wdate:'d/m/Y H:i:s'}
  • A new variable is now available: {$wity_now}
  • A new variable is now available: {$wity_userid}

User

  • Fixes a bug when deleting a user whereas config said to keep the user disabled in database
  • Fixes access rights management to prevent from privilege elevation
  • Enables permission config for non admin apps
  • Always store emails in lowercase

Libraries

  • Updates Upload class
  • Updates Bootstrap v3.3.7
  • Updates jQuery v3
  • Updates FPDF v1.81
  • Updates Bootstrap-datepicker v1.6.1
  • Updates RequireJS v2.2.0

Kernel

  • Kernel ready for PHP7
  • WController: $params now contains the "action" if it was not found in manifest
  • Improves WController::getApps() function
  • WSession: camel case format
  • WRequest: handles PUT and DELETE requests
  • WRetriver: getModel & getView now uses the URL to instiate the controller. Contextualization of controller was improved.
  • Fixes a bug when locale_get_display_region is not defined
  • WRequest: new function WRequest::hasDataForURL() to contextualize forms data sending
  • WRequest: deletes auto adding of signature into form
  • Sends a 404 HTTP header if page is not found
  • WLang: new function to get translated country name: WLang::getDisplayRegion()
  • Many bug fixes...
  • Lang system improved, more stable and getting ready for URL based language loading
  • WDate: is now JsonSerializable and exports date in ISO format

General

  • All translations English/French improved. If you want to add a new translation, just send an email to [email protected] !
  • Country list was updated (some new countries appeared since the previous list was not complete)
  • Session now lasts 1 month by default

Version 0.6.0 BETA 1

03 Sep 12:35
Compare
Choose a tag to compare
Version 0.6.0 BETA 1 Pre-release
Pre-release

Changelog

TODO

Upgrade from v0.5.0 instructions

In config.php, you should add those fields:

'theme_admin' => 'admin-bootstrap',
'lang' => 'en_EN',
'anti_flood' => false,
'version' => '1.0.0',
'ga' => '',
'coord_address' => '',
'coord_zip' => '',
'coord_city' => 'Paris',
'coord_state' => '',
'coord_country' => 'France',
'coord_phone' => '',
'og_title' => 'OpenGraph',
'og_description' => 'Desc OpenGraph',
'og_image' => '',
'favicon' => ''

Version 0.5.0

11 Feb 18:28
Compare
Choose a tag to compare
  • Completely redesigned Language management (i18n)
  • Installer totally redesigned
  • New logo for wityCMS implemented
  • New app Slideshow
  • New app Team
  • App News V2
  • New app Settings
  • New app Mail
  • New app Search
  • App User simplified
  • Adds WTools class
  • Adds WExport class
  • New syntax for WTemplate (default value : {$var or ‘Default’}, htmlentities : {!$var!})
  • Compatibility issues fixed for PHP5.5/5.6 et 7.0
  • Bootstrap/jquery/CKEditor updated
  • Adds fileman plugin to CKEditor
  • A lot of bug fixes

This version is compatible with apps developped for previous version 0.4.

Version 0.4.0

18 Mar 22:36
Compare
Choose a tag to compare
Version 0.4.0 Pre-release
Pre-release

This release can be used in production but very carefully because the core is still under development and some parts will be added in the next release.

New features:

  • WRetriever allows to render multiple applications on the same page by returning the generated view of each application. If you want, you can only retrive the model (php array, json).

In templates:

<div>{retrive_view app_name/action}</div>
{set $model = {retrieve_model app_name/action/param1/param2?var1=value1&var2=value2}}
<ul>
  {for $m in $model}
    <li>...</li>
  {/for}
</ul>

In Ajax:

$.ajax({
  url: '/m/app_name/action', // /m/ for model, /v/ for html view, /mv/ for both in a json object
  success: function(response) {
    response.results; // object returned by the called action (php array => javascript object)
    response.notes;   // array of notes
  }
});

In php code:

$model = WRetriver::getModel('app_name', array('action', 'param1', ...));
$view = WRetriver::getView('app_name', array('action', 'param1', ...));

Every action called use the internal permission system to resolve user rights.

  • Installer has been totally rewritten to be really stable. Its code will be partly reused to build a form generator in the next version.
  • contact app added.
  • mail app added. It works as an internal service, for now used by the new contact app. It allows applications to send email to a lot of people, customizing email for each one using WTemplate to compile the mail subject and body. It has a links manager system for the apps using it to be able to add expirable links in the mail body.
WRetriever::getModel('mail', array(
  'origin' => array(
    'app' => 'app_name',
    'action' => 'action',
    'parameters' => array(...)
  ),
  'response_policy' => 'all'|'from' (default)|'none',
  'action_expiration' => 'one-time-action'|'one-time-mail'|DateInterval initializer ('P30D' default)|array('one-time-action'|'one-time-mail', DateInterval initializer),
  'response_callback' => '/app_name[/action][/param1[/...]]?getparam1=value1[&...]',
  'defaults' => array(
    'from' => email|array(email[, name]),
    'to' => array(email[, name])|array(array(email[, name])),
    'cc' => array(email[, name])|array(array(email[, name])),
    'bcc' => array(email[, name])|array(array(email[, name])),
    'attachments' => array(url[, name])|array(array(url[, name])),
    'subject' => string,
    'body' => string|template_file,
    'params' => array(key => value)
  ),
  'specifics' => array(/*[each line is similar to the 'defaults' array]*/)
);
  • Overriding an application template (frontend only) is now possible from your custom theme. You just have to create a folder in the templates directory of your theme and named as the application you want to override and create an html file inside it. It will be automagically used as replacement of the original html file of the application.
  • Require.js added for managing javascript libraries and dependencies. The library you want to use can be in libraries, in themes, or in apps. The default is in libraries which contains a libraries.json file to describe original dependencies and names. If you need a library which is inside an app, prefix it with apps! and add app_name to load the main.js file which is inside apps/app_name/js, finally apps!app_name. If you need a file which is not the main.js file, fileA.js for instance, then use apps!app_name/fileA. The same pattern applies for themes but with themes! instead of apps!. The global variable used for assigning it is 'require' This part could change in the next version to be easier to use, and, mainly, more intuitive.
  • Updating jQuery to 1.11.0 and Bootstrap to 3.1.0
  • wysihtml5 replaced by CKEditor
  • New global variables available in templates:
    • {$wity_base_url} : site's URL
    • {$wity_site_name} : site's name
    • {$wity_site_subtitle} : site's subtitle (for now equal to site's name)
    • {$wity_page_title} : page's title (can be modified by app)
    • {$wity_page_keywords} : page's keywords (can be modified by app)
    • {$wity_page_description} : page's description (can be modified by app)
    • {$wity_user} : boolean to know whether the current user is connected or not. If yes, following variables are also assigned : {$wity_user_nickname}, {$wity_user_email}, {$wity_user_groupe}, {$wity_user_lang}, {$wity_user_firstname}, {$wity_user_lastname}, {$wity_user_access}
    • {$wity_home}: true on home page, false otherwise
    • {$wity_app} : current app being executed
  • WDate manages dates to take account of the user timezone
  • A lot of bug fixes and translations added

Version 0.3.0

11 Jul 20:44
Compare
Choose a tag to compare
Version 0.3.0 Pre-release
Pre-release

After several years of silence, a dead project and several key users in despair, WityCMS is back to the scene, to give you the ability to create and develop a full website with your hands.

Version 0.3 is closer to a framework, so you should probably feel like programming to use this version, except for its deployment: our all new Installer script will enable you to install the software easily.

What's new in 0.3?

  • New Installer
  • New Admin Theme based on Bootstrap (Twitter CSS library)
  • Enhanced notes management
  • Cleaned application User and News
  • More stability

This release can be used in production but very carefully because the core is still under development and some big parts will be added in the next release.