Clean code for layout and modifications in dev.rake
This commit is contained in:
parent
e74f2931b1
commit
7a4ad240a8
|
@ -1,54 +0,0 @@
|
||||||
class Admin::LayoutsController < ApplicationController
|
|
||||||
|
|
||||||
layout "admin"
|
|
||||||
before_filter :authenticate_user!
|
|
||||||
before_filter :is_admin?
|
|
||||||
|
|
||||||
def index
|
|
||||||
@layouts = Layout.all.entries
|
|
||||||
end
|
|
||||||
|
|
||||||
def show
|
|
||||||
#TODO
|
|
||||||
# @layout = Layout.find(params[:id])
|
|
||||||
# redirect_to "/#{@layout.name}"
|
|
||||||
end
|
|
||||||
|
|
||||||
def new
|
|
||||||
@layout = Layout.new
|
|
||||||
end
|
|
||||||
|
|
||||||
def edit
|
|
||||||
@layout = Layout.find(params[:id])
|
|
||||||
end
|
|
||||||
|
|
||||||
def create
|
|
||||||
@layout = Layout.new(params[:layout])
|
|
||||||
|
|
||||||
if @layout.save
|
|
||||||
flash[:notice] = t('admin.create_success_layout')
|
|
||||||
redirect_to admin_layouts_url
|
|
||||||
else
|
|
||||||
render :action => 'new'
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
def update
|
|
||||||
@layout = Layout.find(params[:id])
|
|
||||||
|
|
||||||
if @layout.update_attributes(params[:layout])
|
|
||||||
flash[:notice] = t('admin.update_success_layout')
|
|
||||||
redirect_to admin_layouts_url
|
|
||||||
else
|
|
||||||
render :action => "edit"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
def destroy
|
|
||||||
@layout = Layout.find(params[:id])
|
|
||||||
@layout.destroy
|
|
||||||
|
|
||||||
redirect_to admin_layouts_url
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
|
@ -3,6 +3,8 @@ class Admin::PurchasesController < ApplicationController
|
||||||
require "uri"
|
require "uri"
|
||||||
require 'zip/zip'
|
require 'zip/zip'
|
||||||
|
|
||||||
|
layout "admin"
|
||||||
|
|
||||||
def index
|
def index
|
||||||
@purchases = Purchase.all.entries
|
@purchases = Purchase.all.entries
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
class SitesController < ApplicationController
|
class Admin::SitesController < ApplicationController
|
||||||
|
|
||||||
#layout 'set_up'
|
layout "admin"
|
||||||
|
before_filter :authenticate_user!
|
||||||
|
before_filter :is_admin?
|
||||||
|
|
||||||
def index
|
def index
|
||||||
@site = Site.first
|
@site = Site.first
|
|
@ -12,6 +12,8 @@ class Design
|
||||||
validates_presence_of :title
|
validates_presence_of :title
|
||||||
validates_presence_of :author
|
validates_presence_of :author
|
||||||
|
|
||||||
|
has_many :pages
|
||||||
|
|
||||||
embeds_one :layout
|
embeds_one :layout
|
||||||
mount_uploader :structure_css, AssetUploader
|
mount_uploader :structure_css, AssetUploader
|
||||||
|
|
||||||
|
|
|
@ -1,14 +1,11 @@
|
||||||
class Page < Item
|
class Page < Item
|
||||||
|
|
||||||
#include LayoutSupport
|
|
||||||
|
|
||||||
field :content
|
field :content
|
||||||
field :design_name
|
field :design_name
|
||||||
field :design_id
|
|
||||||
|
|
||||||
validates_presence_of :design_name, :design_id
|
validates_presence_of :design_name, :design_id
|
||||||
|
|
||||||
referenced_in :design
|
belongs_to :design
|
||||||
has_many :page_parts
|
has_many :page_parts
|
||||||
|
|
||||||
def create_parts
|
def create_parts
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
<% content_for :secondary do %>
|
<% content_for :secondary do %>
|
||||||
<ul class="list">
|
<ul class="list">
|
||||||
<li><%= link_to t(:new_design, :scope => :admin), new_admin_design_path, :class => 'button positive' %></li>
|
<li><%= link_to t(:new_design, :scope => :admin), new_admin_design_path %></li>
|
||||||
|
<li><%= link_to t('admin.upload_design'), upload_package_admin_designs_path %></li>
|
||||||
</ul>
|
</ul>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
|
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
<p>
|
|
||||||
<%= f.label :name, t('admin.name') %>
|
|
||||||
<%= f.text_field :name, :class => 'text' %>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<%= f.label :description, t('admin.description') %>
|
|
||||||
<%= f.text_field :description, :class => 'text' %>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<%= f.label "content", t('admin.content') %>
|
|
||||||
<%= f.text_area :content, :size => '100x30' %>
|
|
||||||
</p>
|
|
|
@ -1,9 +0,0 @@
|
||||||
<h1><%= t('admin.editing_layout') %></h1>
|
|
||||||
|
|
||||||
<%= form_for @layout, :url => admin_layout_path(@layout) do |f| %>
|
|
||||||
<%= f.error_messages %>
|
|
||||||
<%= render :partial => "form", :locals => { :f => f } %>
|
|
||||||
<p>
|
|
||||||
<%= f.submit t('update') %> <%= link_back %>
|
|
||||||
</p>
|
|
||||||
<% end %>
|
|
|
@ -1,28 +0,0 @@
|
||||||
<% content_for :secondary do %>
|
|
||||||
<ul class="list">
|
|
||||||
<li><%= link_to t(:new_layout, :scope => :admin), new_admin_layout_path, :class => 'button positive' %></li>
|
|
||||||
</ul>
|
|
||||||
<% end -%>
|
|
||||||
|
|
||||||
<%= flash_messages %>
|
|
||||||
|
|
||||||
<h1><%= t('admin.list_layouts') %></h1>
|
|
||||||
|
|
||||||
<table>
|
|
||||||
<tr>
|
|
||||||
<th><%= t('admin.name') %></th>
|
|
||||||
<th><%= t('admin.description') %></th>
|
|
||||||
<th><%= t('admin.action') %></th>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<% @layouts.each do |layout| %>
|
|
||||||
<tr>
|
|
||||||
<td><%= layout.name %></td>
|
|
||||||
<td><%= layout.description %></td>
|
|
||||||
<td>
|
|
||||||
<%= link_to t(:edit), edit_admin_layout_path(layout) %> |
|
|
||||||
<%= link_to t(:delete), admin_layout_path(layout), :confirm => t('sure?'), :method => :delete %>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<% end %>
|
|
||||||
</table>
|
|
|
@ -1,10 +0,0 @@
|
||||||
<h1><%= t('admin.new_layout') %></h1>
|
|
||||||
|
|
||||||
<%= form_for :layout, :url => admin_layouts_path do |f| %>
|
|
||||||
<%= f.error_messages %>
|
|
||||||
<%= render :partial => "form", :locals => { :f => f } %>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<%= f.submit t('create') %> <%= link_back %>
|
|
||||||
</p>
|
|
||||||
<% end %>
|
|
|
@ -28,13 +28,12 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="header">
|
<div id="header">
|
||||||
|
|
||||||
<h1>RulingSite <%= t('admin.admin') %></h1>
|
<h1>RulingSite <%= t('admin.admin') %></h1>
|
||||||
|
|
||||||
<ul id="nav">
|
<ul id="nav">
|
||||||
<li><%= link_to t('homepage'), root_path %></li>
|
<li><%= link_to t('homepage'), root_path %></li>
|
||||||
<li><%= link_to t('admin.layout'), admin_layouts_path %></li>
|
<li><%= link_to t('admin.item'), admin_items_path %></li>
|
||||||
<li><%= link_to t('admin.design'), admin_designs_path %></li>
|
<li><%= link_to t('admin.design'), admin_designs_path %></li>
|
||||||
|
<li><%= link_to t('admin.purchase'), admin_purchases_path %></li>
|
||||||
<li><%= link_to t('admin.asset'), admin_assets_path %></li>
|
<li><%= link_to t('admin.asset'), admin_assets_path %></li>
|
||||||
<li><%= link_to t('admin.user_info'), admin_user_info_models_path %></li>
|
<li><%= link_to t('admin.user_info'), admin_user_info_models_path %></li>
|
||||||
<li><%= link_to t('admin.user_role'), admin_user_role_models_path %></li>
|
<li><%= link_to t('admin.user_role'), admin_user_role_models_path %></li>
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
<link rel="shortcut icon" href="/favicon.ico">
|
<link rel="shortcut icon" href="/favicon.ico">
|
||||||
<%= yield :page_specific_link %>
|
<%= yield :page_specific_link %>
|
||||||
<%= stylesheet_link_tag "content", :media => "screen, projection" %>
|
<%= stylesheet_link_tag "content", :media => "screen, projection" %>
|
||||||
<%= javascript_include_tag :ckeditor %>
|
<%#= javascript_include_tag :ckeditor %>
|
||||||
|
|
||||||
<%= javascript_include_tag "jquery", "jquery-ui", "rails", "easy", "application", :cache => 'all' %>
|
<%#= javascript_include_tag "jquery", "jquery-ui", "rails", "easy", "application", :cache => 'all' %>
|
||||||
<%= yield :page_specific_javascript %>
|
<%= yield :page_specific_javascript %>
|
||||||
<!--[if IE]>
|
<!--[if IE]>
|
||||||
<%= stylesheet_link_tag "ie", :media => "screen, projection" %>
|
<%= stylesheet_link_tag "ie", :media => "screen, projection" %>
|
||||||
|
@ -21,7 +21,8 @@
|
||||||
<ul id="panel_nav">
|
<ul id="panel_nav">
|
||||||
<li><%= link_to t('homepage'), root_path %></li>
|
<li><%= link_to t('homepage'), root_path %></li>
|
||||||
<li><%= link_to t('admin.item'), admin_items_path %></li>
|
<li><%= link_to t('admin.item'), admin_items_path %></li>
|
||||||
<li><%= link_to t('admin.layout'), admin_layouts_path %></li>
|
<li><%= link_to t('admin.design'), admin_designs_path %></li>
|
||||||
|
<li><%= link_to t('admin.purchase'), admin_purchases_path %></li>
|
||||||
<li><%= link_to t('admin.asset'), admin_assets_path %></li>
|
<li><%= link_to t('admin.asset'), admin_assets_path %></li>
|
||||||
<li><%= link_to t('admin.user_info'), admin_user_info_models_path %></li>
|
<li><%= link_to t('admin.user_info'), admin_user_info_models_path %></li>
|
||||||
<li><%= link_to t('admin.user_role'), admin_user_role_models_path %></li>
|
<li><%= link_to t('admin.user_role'), admin_user_role_models_path %></li>
|
||||||
|
|
|
@ -2,8 +2,6 @@ PrototypeR4::Application.routes.draw do
|
||||||
|
|
||||||
devise_for :users
|
devise_for :users
|
||||||
|
|
||||||
resources :sites
|
|
||||||
|
|
||||||
# routes for sinatra app
|
# routes for sinatra app
|
||||||
match '/site/set_registered', :to => CentralServerExchangeApp
|
match '/site/set_registered', :to => CentralServerExchangeApp
|
||||||
match '/site/public_key', :to => CentralServerExchangeApp
|
match '/site/public_key', :to => CentralServerExchangeApp
|
||||||
|
@ -20,7 +18,6 @@ PrototypeR4::Application.routes.draw do
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
resources :items
|
resources :items
|
||||||
resources :layouts
|
|
||||||
resources :links do
|
resources :links do
|
||||||
member do
|
member do
|
||||||
get 'delete'
|
get 'delete'
|
||||||
|
@ -37,7 +34,7 @@ PrototypeR4::Application.routes.draw do
|
||||||
get 'download'
|
get 'download'
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
resources :homes
|
resources :sites
|
||||||
resources :snippets
|
resources :snippets
|
||||||
resources :translations
|
resources :translations
|
||||||
resources :user_info_models
|
resources :user_info_models
|
||||||
|
|
|
@ -0,0 +1,85 @@
|
||||||
|
Naming convention:
|
||||||
|
1 - The file names can only be changed inside themes, javascripts and images.
|
||||||
|
2 - File names must not contain spaces, spaces must be replace by underscores
|
||||||
|
3 - CSS files can only have the extensions ".css" or ".scss"
|
||||||
|
4 - Javascript files must have the extension ".js"
|
||||||
|
5 - Image files can have any extension
|
||||||
|
|
||||||
|
|
||||||
|
Package content:
|
||||||
|
My_design.zip
|
||||||
|
- info.json
|
||||||
|
- layout.html
|
||||||
|
- structure.css
|
||||||
|
- themes
|
||||||
|
- default.css
|
||||||
|
- blue.css
|
||||||
|
- red.css
|
||||||
|
- javascripts
|
||||||
|
- one.js
|
||||||
|
- two.js
|
||||||
|
- images
|
||||||
|
- pic.jpg
|
||||||
|
- pic_1.png
|
||||||
|
- pic_2.jpg
|
||||||
|
- README
|
||||||
|
|
||||||
|
|
||||||
|
"info.json" file:
|
||||||
|
|
||||||
|
Content:
|
||||||
|
{
|
||||||
|
"title": "your_title",
|
||||||
|
"author": "your_author",
|
||||||
|
"intro": "your_intro"
|
||||||
|
}
|
||||||
|
|
||||||
|
Title: it's the title of your design as it's going to appeared in your website, it can contain spaces
|
||||||
|
Author: it's the name of the creator of the design
|
||||||
|
Intro: it's introduction that can contain more details about your design
|
||||||
|
|
||||||
|
|
||||||
|
"layout.html" file:
|
||||||
|
|
||||||
|
This HTML file can contain 3 types of elements: headers, blocks and footers.
|
||||||
|
Each element defining a header, a block or a footer must be a <div>.
|
||||||
|
Furthermore, each of those <div> must include an <layout_part> as follow:
|
||||||
|
|
||||||
|
<div ID="div_1" class="header">
|
||||||
|
<r:layout_part ID="div_1" class="header" name="header_1">
|
||||||
|
// Your code here
|
||||||
|
</r:layout_part>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
Attributes convention:
|
||||||
|
- each pair of <div> and <layout_part> tags, must have the same ID and class.
|
||||||
|
- the <r:layout_part> tag as one more attribute: "name", it must contain the type of the element followed by the number of the element (if you have 2 header elements, you will have "header_1" and "header_2"
|
||||||
|
|
||||||
|
Javascripts and stylsheets:
|
||||||
|
|
||||||
|
The links to your javascript files and stylesheet files must be encapsulated respectively in <r:javascripts></r:javascripts> and <stylesheets></stylesheets> tags.
|
||||||
|
|
||||||
|
|
||||||
|
"strucutre.css" file:
|
||||||
|
|
||||||
|
The stylesheet file contains the structure of the page, it reference elements by their ID.
|
||||||
|
In this file, you can set structural attributes like "width", "height", "position"…
|
||||||
|
|
||||||
|
|
||||||
|
Themes:
|
||||||
|
|
||||||
|
Themes are stylesheet files that modify the visual aspects of the page.
|
||||||
|
The themes folder must contain at least one file named "default.css" that will be the default theme.
|
||||||
|
Themes stylesheets reference elements by class.
|
||||||
|
They can set attributes like "color", "background-image", "border"…
|
||||||
|
|
||||||
|
|
||||||
|
Javascripts:
|
||||||
|
|
||||||
|
This folder contains the javascript files used by the design.
|
||||||
|
|
||||||
|
|
||||||
|
Images:
|
||||||
|
|
||||||
|
This folder contains the images used by the design.
|
||||||
|
They can have the extensions ".jpg", ".png"...
|
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
"title": "Fraisier",
|
||||||
|
"author": "Paul",
|
||||||
|
"intro": "Strawberry cake"
|
||||||
|
}
|
|
@ -0,0 +1,37 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||||
|
<title>RulingSite</title>
|
||||||
|
<r:stylesheets>
|
||||||
|
<!-- your stylesheets here -->
|
||||||
|
</r:stylesheets>
|
||||||
|
<r:javascripts>
|
||||||
|
<!-- your javascripts here -->
|
||||||
|
</r:javascripts>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<!-- example -->
|
||||||
|
<div id="header_top" class="header">
|
||||||
|
<r:layout_part id='header_top' class='header' name='header_1'>
|
||||||
|
</r:layout_part>
|
||||||
|
</div>
|
||||||
|
<div id="header_bottom" class="header">
|
||||||
|
<r:layout_part id='header_bottom' class='header' name='header_2'>
|
||||||
|
</r:layout_part>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="main_content" class="content">
|
||||||
|
<r:layout_part id="main_content" class='content' name='block_1' editable="true">
|
||||||
|
</r:layout_part>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="footer" class="footer">
|
||||||
|
<r:layout_part id="footer" class='footer' name='footer_1'>
|
||||||
|
</r:layout_part>
|
||||||
|
</div>
|
||||||
|
<!-- END example -->
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,2 @@
|
||||||
|
/* This stylesheet file contains the structure of the page, it reference elements by their ID.
|
||||||
|
In this file, you can set structural attributes like "width", "height", "position"… */
|
|
@ -0,0 +1,2 @@
|
||||||
|
/* This stylesheet file contains the visual aspect of the page, it reference elements by their class.
|
||||||
|
In this file, you can set visual attributes like "color", "background-color", "border"… */
|
|
@ -64,8 +64,19 @@ module Parser
|
||||||
res
|
res
|
||||||
end
|
end
|
||||||
c.define_tag 'stylesheets' do |tag|
|
c.define_tag 'stylesheets' do |tag|
|
||||||
contents = tag.expand
|
res = ''
|
||||||
contents.to_html
|
res << "<link href='#{page.design.structure_css.url}' rel='stylesheet' type='text/css' /> "
|
||||||
|
page.design.themes.each do |theme|
|
||||||
|
res << "<link href='#{theme.file.url}' rel='stylesheet' type='text/css' /> "
|
||||||
|
end
|
||||||
|
res
|
||||||
|
end
|
||||||
|
c.define_tag 'javascripts' do |tag|
|
||||||
|
res = ''
|
||||||
|
page.design.javascripts.each do |js|
|
||||||
|
res << "<script type='text/javascript' src='#{js.file.url}'></script>"
|
||||||
|
end
|
||||||
|
res
|
||||||
end
|
end
|
||||||
c.define_tag 'image' do |tag|
|
c.define_tag 'image' do |tag|
|
||||||
asset = Asset.find(tag.attr['id'])
|
asset = Asset.find(tag.attr['id'])
|
||||||
|
@ -163,8 +174,19 @@ module Parser
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
c.define_tag 'stylesheets' do |tag|
|
c.define_tag 'stylesheets' do |tag|
|
||||||
contents = tag.expand
|
res = ''
|
||||||
contents.to_html
|
res << "<link href='#{page.design.structure_css.url}' rel='stylesheet' type='text/css' />"
|
||||||
|
page.design.themes.each do |theme|
|
||||||
|
res << "<link href='#{theme.file.url}' rel='stylesheet' type='text/css' />"
|
||||||
|
end
|
||||||
|
res
|
||||||
|
end
|
||||||
|
c.define_tag 'javascripts' do |tag|
|
||||||
|
res = ''
|
||||||
|
page.design.javascripts.each do |js|
|
||||||
|
res << "<script type='text/javascript' src='#{js.file.url}'></script>"
|
||||||
|
end
|
||||||
|
res
|
||||||
end
|
end
|
||||||
c.define_tag 'layout_part' do |tag|
|
c.define_tag 'layout_part' do |tag|
|
||||||
part = page.page_parts.detect{ |p| p.name.to_s == tag.attr['name'].to_s }
|
part = page.page_parts.detect{ |p| p.name.to_s == tag.attr['name'].to_s }
|
||||||
|
|
|
@ -11,7 +11,7 @@ namespace :dev do
|
||||||
include
|
include
|
||||||
end.each(&:drop)
|
end.each(&:drop)
|
||||||
|
|
||||||
Site.create!( :valid_locales => [ 'en', 'zh_tw' ], :in_use_locales => [ 'zh_tw', 'en' ] )
|
Site.create( :school => 'The Best School', :department => 'Awesome', :valid_locales => [ 'en', 'zh_tw' ], :in_use_locales => [ 'zh_tw', 'en' ])
|
||||||
|
|
||||||
user = User.new( :email => 'chris@rulingcom.com', :password => 'password', :password_confirmation => 'password', :admin => true, :active_roles => ['teacher'])
|
user = User.new( :email => 'chris@rulingcom.com', :password => 'password', :password_confirmation => 'password', :admin => true, :active_roles => ['teacher'])
|
||||||
user.user_roles.build(:key => 'teacher', :discipline_en => 'Database', :discipline_zh_tw => '資料庫' )
|
user.user_roles.build(:key => 'teacher', :discipline_en => 'Database', :discipline_zh_tw => '資料庫' )
|
||||||
|
@ -50,22 +50,50 @@ namespace :dev do
|
||||||
uim_1.save!
|
uim_1.save!
|
||||||
|
|
||||||
|
|
||||||
layout = Layout.create!( :name => 'root', :description => 'root', :content => File.open("#{Rails.root}/lib/template/root.layout").read )
|
# layout = Layout.create!( :name => 'root', :description => 'root', :content => File.open("#{Rails.root}/lib/template/root.layout").read )
|
||||||
layout.layout_parts.create!( :name => 'header', :content => File.open("#{Rails.root}/lib/template/nav.snippet").read )
|
# layout.layout_parts.create!( :name => 'header', :content => File.open("#{Rails.root}/lib/template/nav.snippet").read )
|
||||||
layout.layout_parts.create!( :name => 'main_content', :editable => true )
|
# layout.layout_parts.create!( :name => 'main_content', :editable => true )
|
||||||
layout.layout_parts.create!( :name => 'footer', :content => File.open("#{Rails.root}/lib/template/footer.snippet").read )
|
# layout.layout_parts.create!( :name => 'footer', :content => File.open("#{Rails.root}/lib/template/footer.snippet").read )
|
||||||
|
#
|
||||||
|
# home = Page.create!( :i18n_variable_id => var_10.id, :layout_id => layout.id, :name => 'home', :is_published => true )
|
||||||
|
# home.page_parts.create!( :name => 'main_content', :content => File.open("#{Rails.root}/lib/template/home.page").read, :kind => 'text', :i18n_variable_id => var_13.id )
|
||||||
|
#
|
||||||
|
# about = Page.create!( :i18n_variable_id => var_11.id, :layout_id => layout.id, :name => 'about', :is_published => true, :parent_id => home.id )
|
||||||
|
# about.page_parts.create!( :name => 'main_content', :content => File.open("#{Rails.root}/lib/template/about.page").read, :kind => 'text', :i18n_variable_id => var_14.id )
|
||||||
|
|
||||||
home = Page.create!( :i18n_variable_id => var_10.id, :layout_id => layout.id, :name => 'home', :is_published => true )
|
# Link.create!( :i18n_variable_id => var_12.id, :name => 'google', :is_published => true, :parent_id => home.id, :url => 'www.google.com' )
|
||||||
home.page_parts.create!( :name => 'main_content', :content => File.open("#{Rails.root}/lib/template/home.page").read, :kind => 'text', :i18n_variable_id => var_13.id )
|
#
|
||||||
|
# ["nav", "footer"].each do |page_name|
|
||||||
|
# Snippet.create!( :name => page_name, :parent_id => home.id, :content => File.open("#{Rails.root}/lib/template/#{page_name}.snippet").read )
|
||||||
|
# end
|
||||||
|
|
||||||
about = Page.create!( :i18n_variable_id => var_11.id, :layout_id => layout.id, :name => 'about', :is_published => true, :parent_id => home.id )
|
design = Design.new(:title => "Fraisier", :author => "Paul", :intro => "Strawberry cake")
|
||||||
about.page_parts.create!( :name => 'main_content', :content => File.open("#{Rails.root}/lib/template/about.page").read, :kind => 'text', :i18n_variable_id => var_14.id )
|
|
||||||
|
|
||||||
Link.create!( :i18n_variable_id => var_12.id, :name => 'google', :is_published => true, :parent_id => home.id, :url => 'www.google.com' )
|
design.structure_css = File.open("#{Rails.root}/lib/fraisier/structure.css")
|
||||||
|
|
||||||
["nav", "footer"].each do |page_name|
|
# image = design.images.build(:file => File.open("#{Rails.root}/lib/fraisier/img/buttons.gif"))
|
||||||
Snippet.create!( :name => page_name, :parent_id => home.id, :content => File.open("#{Rails.root}/lib/template/#{page_name}.snippet").read )
|
#
|
||||||
end
|
# js = design.javascripts.build(:file => File.open("#{Rails.root}/lib/fraisier/inettuts.js"))
|
||||||
|
#
|
||||||
|
# theme = design.themes.build(:file => File.open("#{Rails.root}/lib/fraisier/inettuts.js.css"))
|
||||||
|
|
||||||
|
design.build_layout
|
||||||
|
design.layout.file = File.open("#{Rails.root}/lib/fraisier/layout.html")
|
||||||
|
|
||||||
|
design.layout.save
|
||||||
|
# theme.save
|
||||||
|
# image.save
|
||||||
|
# js.save
|
||||||
|
|
||||||
|
design.save
|
||||||
|
|
||||||
|
design.layout.layout_parts.create!( :name => 'header_1')
|
||||||
|
design.layout.layout_parts.create!( :name => 'header_2')
|
||||||
|
design.layout.layout_parts.create!( :name => 'block_1')
|
||||||
|
design.layout.layout_parts.create!( :name => 'footer_1')
|
||||||
|
|
||||||
|
home = Page.create!( :i18n_variable_id => var_10.id, :design_id => design.id, :name => 'home', :is_published => true )
|
||||||
|
home.page_parts.create!( :name => 'header_1', :kind => 'text')
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue