Git Product home page Git Product logo

page_versioning's Introduction

WARNING!!! For the RadiantCMS < v0.7.0 please use 0.6.9 tag, for the RadiantCMS v0.7.x use 0.7 tag.

== Page Versioning
 
This extension creates versioning for pages, snippets and layouts.
 
== Features:
 
 * All revisions are saved in separate tables, without affecting the 'pages', 
   'layouts' and 'snippets' tables.
 * Pages save their state with page parts.
 * You can set the fields you want to version in a config file.
   (vendor/extensions/page_versioning/config/config.yml)
 
== Installation
 
(from the radiant application root)
  
  git clone git://github.com/astashov/page_versioning.git vendor/extensions/page_versioning
  rake RAILS_ENV=production db:migrate:extensions
 
== Configuration
 
When you update any of the fields on Pages, Layouts or Snippets, they will create a new
revision.
This behavior can be configured in vendor/extensions/page_versioning/config/config.yml
 
There are two types of settings:
1. something_attributes - if user changes this attribute, new revision will be 
   created
2. something_specific_attributes - these attributes will not be replaced by 
   revisioned attributes after initializing
 
== Using the extension
 
To enable versioning you should install the plugin. Then, when you add changes to a Page, Snippet or Layout,
there will be 3 additional controls:
 
1. Revision select box - you can change revision you want to see.
2. Published revision select box - you can set what revision you want to use as 
   published. Published revision will be shown to visitors. You can set publish
   new revision by default or not in vendor/extensions/page_versioning/config/config.yml
3. Preview button - if you want to look at changes, but don't want to publish 
   them, you can press the Preview button. A new revision will be created, and you will
   be redirected to the homepage where you can see your changes, but this revision will not
   be published and visitors will not see your changes.
 
On the Snippet Edit Page or Layout Edit Page, you can see the Preview button with its select box. To preview a
snippet, the snippet should be inserted in a Layout or Page Part. With the select box
you can select a page or layout and preview changes of that snippet in the selected page/layout.
The same goes for layouts -- you can preview the changes by specifying the page to use for viewing.
 
== Screenshots

Here you can see screenshot of the plugin: http://astashov.net/images/radiant_page_versioning.png

== Additional info
 
Sometimes you might need to disable the after_initialize hook, which changes attributes 
to attributes of published revision. You can do this by setting a flag 
PageVersioning.enable_versioning = false (default is false for testing environment,
others are true).

== Bugreporting

Please, post bugs on Github Issues tracker: http://github.com/astashov/page_versioning/issues
 
== Authors and Credits
 
Written by Anton Astashov, with Brenton Cheng, for Astrology.com (a division of iVillage Inc.)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.