Merge branch 'design_team' into ldap
This commit is contained in:
commit
6b9c8eb15d
|
@ -15,4 +15,5 @@
|
||||||
//= require tinymce_orbit
|
//= require tinymce_orbit
|
||||||
//= require orbit-bar-search
|
//= require orbit-bar-search
|
||||||
//= require side_bar_history
|
//= require side_bar_history
|
||||||
|
//= require rss
|
||||||
//= require ajax_form
|
//= require ajax_form
|
|
@ -1,29 +0,0 @@
|
||||||
function load_tinymce() {
|
|
||||||
$('.tinymce_textarea').tinymce({
|
|
||||||
theme: 'advanced',
|
|
||||||
plugins : "autolink,lists,spellchecker,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",
|
|
||||||
|
|
||||||
// Theme options
|
|
||||||
theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,formatselect,fontselect,fontsizeselect",
|
|
||||||
theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,bullist,numlist,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,forecolor,backcolor",
|
|
||||||
theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,fullscreen",
|
|
||||||
theme_advanced_toolbar_location : "top",
|
|
||||||
theme_advanced_toolbar_align : "left",
|
|
||||||
theme_advanced_statusbar_location : "bottom",
|
|
||||||
theme_advanced_resizing : true,
|
|
||||||
|
|
||||||
// Skin options
|
|
||||||
skin : "o2k7",
|
|
||||||
skin_variant : "silver",
|
|
||||||
|
|
||||||
// Drop lists for link/image/media/template dialogs
|
|
||||||
template_external_list_url : "js/template_list.js",
|
|
||||||
external_link_list_url : "js/link_list.js",
|
|
||||||
external_image_list_url : "js/image_list.js",
|
|
||||||
media_external_list_url : "js/media_list.js"
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
$(document).ready(function() {
|
|
||||||
load_tinymce();
|
|
||||||
});
|
|
|
@ -0,0 +1,88 @@
|
||||||
|
function load_tinymce() {
|
||||||
|
$('.tinymce_textarea').tinymce({
|
||||||
|
|
||||||
|
// General options
|
||||||
|
theme: 'advanced',
|
||||||
|
file_browser_callback : 'myFileBrowser',
|
||||||
|
plugins : "autolink,lists,pagebreak,style,layer,table,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,wordcount,advlist,autosave",
|
||||||
|
|
||||||
|
// Theme options
|
||||||
|
theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,formatselect,fontselect,fontsizeselect",
|
||||||
|
theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,bullist,numlist,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,forecolor,backcolor",
|
||||||
|
theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,fullscreen",
|
||||||
|
theme_advanced_toolbar_location : "top",
|
||||||
|
theme_advanced_toolbar_align : "left",
|
||||||
|
theme_advanced_statusbar_location : "bottom",
|
||||||
|
theme_advanced_resizing : true,
|
||||||
|
|
||||||
|
// Skin options
|
||||||
|
skin : "o2k7",
|
||||||
|
skin_variant : "silver",
|
||||||
|
|
||||||
|
// Drop lists for link/image/media/template dialogs
|
||||||
|
template_external_list_url : "js/template_list.js",
|
||||||
|
// external_link_list_url : "js/link_list.js",
|
||||||
|
// external_image_list_url : "js/image_list.js",
|
||||||
|
// media_external_list_url : "js/media_list.js"
|
||||||
|
|
||||||
|
// Style formats
|
||||||
|
style_formats : [
|
||||||
|
{title : 'Bold text', inline : 'b'},
|
||||||
|
{title : 'Red text', inline : 'span', styles : {color : '#ff0000'}},
|
||||||
|
{title : 'Red header', block : 'h1', styles : {color : '#ff0000'}},
|
||||||
|
{title : 'Example 1', inline : 'span', classes : 'example1'},
|
||||||
|
{title : 'Example 2', inline : 'span', classes : 'example2'},
|
||||||
|
{title : 'Table styles'},
|
||||||
|
{title : 'Table row 1', selector : 'tr', classes : 'tablerow1'}
|
||||||
|
],
|
||||||
|
|
||||||
|
// Replace values for the template plugin
|
||||||
|
template_replace_values : {
|
||||||
|
username : "Some User",
|
||||||
|
staffid : "991234"
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
function myFileBrowser(field_name, url, type, win) {
|
||||||
|
var cmsURL = window.location.toString();
|
||||||
|
cmsURL = cmsURL.split("/");
|
||||||
|
cmsURL = "<%= Rails.application.routes.url_helpers.file_upload_admin_assets_path %>";
|
||||||
|
console.log(cmsURL);
|
||||||
|
// script URL - use an absolute path!
|
||||||
|
if (cmsURL.indexOf("?") < 0) {
|
||||||
|
//add the type as the only query parameter
|
||||||
|
cmsURL = cmsURL + "?type=" + type;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
//add the type as an additional query parameter
|
||||||
|
// (PHP session ID is now included if there is one at all)
|
||||||
|
cmsURL = cmsURL + "&type=" + type;
|
||||||
|
}
|
||||||
|
|
||||||
|
tinyMCE.activeEditor.windowManager.open({
|
||||||
|
file : cmsURL,
|
||||||
|
title : 'File Browser',
|
||||||
|
width : 850, // Your dimensions may differ - toy around with them!
|
||||||
|
height : 455,
|
||||||
|
resizable : "no",
|
||||||
|
inline : "no", // This parameter only has an effect if you use the inlinepopups plugin!
|
||||||
|
close_previous : "no"
|
||||||
|
}, {
|
||||||
|
window : win,
|
||||||
|
input : field_name,
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
function ajaxSave() {
|
||||||
|
var ed = tinyMCE.get('content');
|
||||||
|
// Do you ajax call here, window.setTimeout fakes ajax call
|
||||||
|
ed.setProgressState(1); // Show progress
|
||||||
|
window.setTimeout(function() {
|
||||||
|
ed.setProgressState(0); // Hide progress
|
||||||
|
alert(ed.getContent());
|
||||||
|
}, 3000);
|
||||||
|
}
|
||||||
|
|
||||||
|
$(document).ready(function() {
|
||||||
|
load_tinymce();
|
||||||
|
});
|
|
@ -0,0 +1,65 @@
|
||||||
|
class Admin::AssetCategoriesController < OrbitBackendController
|
||||||
|
|
||||||
|
def index
|
||||||
|
@asset_categories = AssetCategory.all
|
||||||
|
@asset_category = AssetCategory.new
|
||||||
|
@url = admin_asset_categories_path
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def show
|
||||||
|
@asset_category = AssetCategory.find(params[:id])
|
||||||
|
end
|
||||||
|
|
||||||
|
def new
|
||||||
|
@asset_category = AssetCategory.new
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit
|
||||||
|
@asset_category = AssetCategory.find(params[:id])
|
||||||
|
@i18n_variable = @asset_category.i18n_variable
|
||||||
|
@url = admin_asset_categories_path(@asset_category)
|
||||||
|
end
|
||||||
|
|
||||||
|
def create
|
||||||
|
@asset_category = AssetCategory.new(params[:asset_category])
|
||||||
|
|
||||||
|
respond_to do |format|
|
||||||
|
if @asset_category.save
|
||||||
|
format.html { redirect_to(admin_asset_categories_url, :notice => t('announcement.create_asset_category_success')) }
|
||||||
|
format.js
|
||||||
|
else
|
||||||
|
format.html { render :action => "new" }
|
||||||
|
format.js { render action: "new" }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def update
|
||||||
|
@asset_category = AssetCategory.find(params[:id])
|
||||||
|
|
||||||
|
@url = admin_asset_categories_path(@asset_category)
|
||||||
|
|
||||||
|
respond_to do |format|
|
||||||
|
if @asset_category.update_attributes(params[:asset_category])
|
||||||
|
# format.html { redirect_to(panel_announcement_back_end_asset_category_url(@asset_category), :notice => t('asset_category.update_asset_category_success')) }
|
||||||
|
# format.html { redirect_to(panel_announcement_back_end_asset_categories_url, :notice => t('asset_category.update_asset_category_success')) }
|
||||||
|
# format.xml { head :ok }
|
||||||
|
format.js
|
||||||
|
else
|
||||||
|
format.html { render :action => "edit" }
|
||||||
|
format.js { render :action => "edit" }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def destroy
|
||||||
|
@asset_category = AssetCategory.find(params[:id])
|
||||||
|
@asset_category.destroy
|
||||||
|
|
||||||
|
respond_to do |format|
|
||||||
|
format.html { redirect_to(admin_asset_categories_url) }
|
||||||
|
format.js
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,8 @@
|
||||||
|
class Admin::AssetTagsController < Admin::TagsController
|
||||||
|
|
||||||
|
def initialize
|
||||||
|
super
|
||||||
|
@app_title = 'asset'
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
|
@ -1,11 +1,7 @@
|
||||||
class Admin::AssetsController < ApplicationController
|
class Admin::AssetsController < OrbitBackendController
|
||||||
|
|
||||||
layout "admin"
|
|
||||||
before_filter :authenticate_user!
|
|
||||||
before_filter :is_admin?
|
|
||||||
|
|
||||||
def index
|
def index
|
||||||
@assets = Asset.all.entries
|
@assets = (params[:sort] || @filter) ? get_sorted_and_filtered("asset") : Asset.all.page(params[:page]).per(10)
|
||||||
end
|
end
|
||||||
|
|
||||||
def show
|
def show
|
||||||
|
@ -14,6 +10,8 @@ class Admin::AssetsController < ApplicationController
|
||||||
|
|
||||||
def new
|
def new
|
||||||
@asset = Asset.new
|
@asset = Asset.new
|
||||||
|
@asset_categories = AssetCategory.all
|
||||||
|
@tags = AssetTag.all
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
format.html {}
|
format.html {}
|
||||||
format.js { render 'js/show_pop_up', :locals => {:partial => 'admin/assets/new'} }
|
format.js { render 'js/show_pop_up', :locals => {:partial => 'admin/assets/new'} }
|
||||||
|
@ -22,6 +20,8 @@ class Admin::AssetsController < ApplicationController
|
||||||
|
|
||||||
def edit
|
def edit
|
||||||
@asset = Asset.find(params[:id])
|
@asset = Asset.find(params[:id])
|
||||||
|
@asset_categories = AssetCategory.all
|
||||||
|
@tags = AssetTag.all
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
format.html {}
|
format.html {}
|
||||||
format.js { render 'js/show_pop_up', :locals => {:partial => 'admin/assets/edit'} }
|
format.js { render 'js/show_pop_up', :locals => {:partial => 'admin/assets/edit'} }
|
||||||
|
@ -30,15 +30,29 @@ class Admin::AssetsController < ApplicationController
|
||||||
|
|
||||||
def create
|
def create
|
||||||
@asset = Asset.new(params[:asset])
|
@asset = Asset.new(params[:asset])
|
||||||
if @asset.save
|
@asset.filename = @asset.i18n_variable[I18n.locale] rescue nil
|
||||||
|
if @asset.filename && @asset.save
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
format.html { redirect_to admin_assets_url }
|
format.js {
|
||||||
format.js { render 'js/remove_pop_up_and_reload_content', :locals => {:function => 'append', :id => 'asset_tbody', :value => @asset, :values => nil, :partial => 'admin/assets/asset', :locals => nil} }
|
if params[:uploader]
|
||||||
|
render 'create'
|
||||||
|
else
|
||||||
|
render 'js/remove_pop_up_and_reload_content', :locals => {:function => 'replaceWith', :id => "asset_#{@asset.id}", :value => @asset, :values => nil, :partial => 'admin/assets/asset', :locals => nil}
|
||||||
|
end
|
||||||
|
}
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
|
flash[:error] = t(:create_fail)
|
||||||
|
@asset_categories = AssetCategory.all
|
||||||
|
@tags = AssetTag.all
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
format.html { render :action => :new }
|
format.js {
|
||||||
format.js { render 'js/reload_pop_up', :locals => {:value => @asset, :values => nil, :partial => 'admin/assets/new', :locals => {:is_html => false}} }
|
if params[:uploader]
|
||||||
|
render 'file_upload'
|
||||||
|
else
|
||||||
|
render 'js/reload_pop_up', :locals => {:value => @asset, :values => nil, :partial => 'admin/assets/new', :locals => {:is_html => false}}
|
||||||
|
end
|
||||||
|
}
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -51,6 +65,9 @@ class Admin::AssetsController < ApplicationController
|
||||||
format.js { render 'js/remove_pop_up_and_reload_content', :locals => {:function => 'replaceWith', :id => "asset_#{@asset.id}", :value => @asset, :values => nil, :partial => 'admin/assets/asset', :locals => nil} }
|
format.js { render 'js/remove_pop_up_and_reload_content', :locals => {:function => 'replaceWith', :id => "asset_#{@asset.id}", :value => @asset, :values => nil, :partial => 'admin/assets/asset', :locals => nil} }
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
|
flash[:error] = t(:update_fail)
|
||||||
|
@asset_categories = AssetCategory.all
|
||||||
|
@tags = AssetTag.all
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
format.html { render :action => :edit }
|
format.html { render :action => :edit }
|
||||||
format.js { render 'js/reload_pop_up', :locals => {:value => @asset, :values => nil, :partial => 'admin/assets/edit', :locals => {:is_html => false}} }
|
format.js { render 'js/reload_pop_up', :locals => {:value => @asset, :values => nil, :partial => 'admin/assets/edit', :locals => {:is_html => false}} }
|
||||||
|
@ -67,4 +84,23 @@ class Admin::AssetsController < ApplicationController
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def delete
|
||||||
|
if params[:to_delete]
|
||||||
|
asset = Asset.any_in(:_id => params[:to_delete]).delete_all
|
||||||
|
end
|
||||||
|
redirect_to assets_url(:filter => params[:filter], :direction => params[:direction], :sort => params[:sort], :sort_options => params[:sort_options])
|
||||||
|
end
|
||||||
|
|
||||||
|
def file_upload
|
||||||
|
@asset = Asset.new
|
||||||
|
@asset_categories = AssetCategory.all
|
||||||
|
@tags = AssetTag.all
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
|
||||||
|
def file_select
|
||||||
|
@assets = Asset.all
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -20,7 +20,7 @@ module Admin::DashboardHelper
|
||||||
when 'news_bulletin'
|
when 'news_bulletin'
|
||||||
panel_news_front_end_news_bulletin_path(object)
|
panel_news_front_end_news_bulletin_path(object)
|
||||||
when'page_context'
|
when'page_context'
|
||||||
panel_page_content_front_end_page_context_path(object)
|
"/#{object.page.path}"
|
||||||
when'web_link'
|
when'web_link'
|
||||||
panel_web_resource_front_end_web_link_path(object)
|
panel_web_resource_front_end_web_link_path(object)
|
||||||
end
|
end
|
||||||
|
|
|
@ -8,6 +8,16 @@ class Asset
|
||||||
field :filename
|
field :filename
|
||||||
field :description
|
field :description
|
||||||
|
|
||||||
|
has_one :i18n_variable, :as => :language_value, :autosave => true, :dependent => :destroy
|
||||||
|
|
||||||
validates_presence_of :filename, :data
|
validates_presence_of :filename, :data
|
||||||
|
|
||||||
|
belongs_to :asset_category
|
||||||
|
belongs_to :assetable, polymorphic: true
|
||||||
|
has_and_belongs_to_many :tags, :class_name => "AssetTag"
|
||||||
|
|
||||||
|
def sorted_tags
|
||||||
|
tags.order_by(I18n.locale, :asc)
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
class AssetCategory
|
||||||
|
include Mongoid::Document
|
||||||
|
include Mongoid::Timestamps
|
||||||
|
|
||||||
|
field :key
|
||||||
|
field :display
|
||||||
|
|
||||||
|
has_one :i18n_variable, :as => :language_value, :autosave => true, :dependent => :destroy
|
||||||
|
|
||||||
|
has_many :assets
|
||||||
|
|
||||||
|
def self.from_id(id)
|
||||||
|
AssetCategory.find(id) rescue nil
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
|
@ -0,0 +1,5 @@
|
||||||
|
class AssetTag < Tag
|
||||||
|
|
||||||
|
has_and_belongs_to_many :assets
|
||||||
|
|
||||||
|
end
|
|
@ -48,8 +48,8 @@ class AssetUploader < CarrierWave::Uploader::Base
|
||||||
# end
|
# end
|
||||||
|
|
||||||
# Override the filename of the uploaded files:
|
# Override the filename of the uploaded files:
|
||||||
# def filename
|
def filename
|
||||||
# "something.jpg" if original_filename
|
model.filename
|
||||||
# end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
|
||||||
|
<tr id="<%= dom_id asset_category %>" class="with_action">
|
||||||
|
<td>
|
||||||
|
<%= asset_category.key %>
|
||||||
|
<div class="quick-edit">
|
||||||
|
<ul class="nav nav-pills hide">
|
||||||
|
|
||||||
|
<li><%= link_to t('asset_category.edit'), edit_admin_asset_category_path(asset_category), :remote => true %></li>
|
||||||
|
<li><%= link_to t('asset_category.delete'), admin_asset_category_path(asset_category), :confirm => t('announcement.sure?'), :method => :delete, :remote => true %></li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<% @site_valid_locales.each do |locale| %>
|
||||||
|
<td><%= asset_category.i18n_variable[locale] rescue nil %></td>
|
||||||
|
<% end %>
|
||||||
|
</tr>
|
|
@ -0,0 +1,30 @@
|
||||||
|
<% # encoding: utf-8 %>
|
||||||
|
|
||||||
|
<%= form_for(@asset_category, :remote => true, :url => @url) do |f| %>
|
||||||
|
|
||||||
|
<h2><%= (@asset_category.new_record? ? 'Add' : 'Edit') %></h2>
|
||||||
|
|
||||||
|
<div id="widget-title">
|
||||||
|
<%= f.label :key %>
|
||||||
|
<%= f.text_field :key %>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="widget-title">
|
||||||
|
<%= f.fields_for :i18n_variable, (@asset_category.new_record? ? @asset_category.build_i18n_variable : @asset_category.i18n_variable) do |f| %>
|
||||||
|
<% @site_valid_locales.each do |locale| %>
|
||||||
|
<div class="control-group">
|
||||||
|
<%= label_tag "name-#{locale}", "Name-#{I18nVariable.from_locale(locale)}", :class => 'control-label' %>
|
||||||
|
<div class="controls">
|
||||||
|
<%= f.text_field locale, :class => 'input-xxlarge' %>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-actions pagination-right">
|
||||||
|
<%= f.submit t('submit'), :class=>'btn btn-primary' %>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<% end %>
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
$('<%= j render :partial => 'asset_category', :collection => [@asset_category] %>').appendTo('#asset_categories').hide().fadeIn();
|
||||||
|
$("#new_asset_category")[0].reset();
|
|
@ -0,0 +1 @@
|
||||||
|
$("#<%= dom_id @asset_category %>").remove();
|
|
@ -0,0 +1 @@
|
||||||
|
$("#form > form").replaceWith("<%= j render "form" %>");
|
|
@ -0,0 +1,41 @@
|
||||||
|
|
||||||
|
<%= flash_messages %>
|
||||||
|
|
||||||
|
<div id="filter" class="subnav">
|
||||||
|
<div class="filters">
|
||||||
|
<div id="sort_headers" class="table-label">
|
||||||
|
<table class="table main-list">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th class="span2"><%= t('asset_category.key') %></th>
|
||||||
|
<% @site_valid_locales.each do |locale| %>
|
||||||
|
<th class="span2"><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></th>
|
||||||
|
<% end %>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<table id="asset_categories" class="table main-list">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th class="span2"></th>
|
||||||
|
<% @site_valid_locales.each do |locale| %>
|
||||||
|
<th class="span2"></th>
|
||||||
|
<% end %>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
|
||||||
|
<%= render :partial => 'asset_category', :collection => @asset_categories %>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<div id="form"><%= render :partial => "form" %></div>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
$("#form > form").replaceWith("<%= j render "form" %>");
|
|
@ -0,0 +1,4 @@
|
||||||
|
$("#<%= dom_id @asset_category %>").replaceWith("<%= j render :partial => 'asset_category', :collection => [@asset_category] %>");
|
||||||
|
<% @asset_category = AssetCategory.new(:display => 'List') # reset for new form %>
|
||||||
|
$(".edit_asset_category").replaceWith("<%= j render "form" %>")
|
||||||
|
$(".new_asset_category")[0].reset();
|
|
@ -1,17 +1,31 @@
|
||||||
<tr id="asset_<%= asset.id %>" class="have">
|
<tr id="asset_<%= asset.id %>" class="with_action">
|
||||||
<td><%= asset.id %></td>
|
<td><%= check_box_tag 'to_delete[]', asset.id, false, :class => "checkbox_in_list" %></td>
|
||||||
<td><div class="assets_pic"><%= image_tag(asset.data.url) %></div>
|
<td><%= asset.i18n_variable[I18n.locale] rescue nil %></td>
|
||||||
<%#= link_to asset.filename, asset.data.url, :target => '_blank' %>
|
<td>
|
||||||
|
<i class="icons-picture img-peview" rel="popover" data-content="<img src='<%= asset.data.url %>' />" data-original-title="<%= asset.data.filename %>"></i>
|
||||||
|
<div class="quick-edit">
|
||||||
|
<ul class="nav nav-pills hide">
|
||||||
|
<li><%= link_to t(:edit), edit_admin_asset_path(asset), :remote => true, :class => 'edit' %></li>
|
||||||
|
<li class="dropdown"><%= link_to t(:delete), admin_asset_path(asset), :confirm => t('sure?'), :method => :delete, :class => 'delete' %></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
</td>
|
</td>
|
||||||
<td><%= asset.description %></td>
|
|
||||||
<td><%= asset.data.file.content_type %></td>
|
<td><%= asset.data.file.content_type %></td>
|
||||||
<td><%= asset.data_identifier %></td>
|
|
||||||
<td><%= number_to_human_size(asset.data.file.file_length) %></td>
|
<td><%= number_to_human_size(asset.data.file.file_length) %></td>
|
||||||
<td class="action">
|
<td><%= asset.category.i18n_variable[I18n.locale] rescue nil %></td>
|
||||||
<%= link_to t(:edit), edit_admin_asset_path(asset), :remote => true, :class => 'edit' %>
|
<td>
|
||||||
<%= link_to t(:delete), admin_asset_path(asset), :confirm => t('sure?'), :method => :delete, :remote => true, :class => 'delete' %>
|
<div class="label-group">
|
||||||
|
<div class="label-td">
|
||||||
|
<% asset.sorted_tags.each do |tag| %>
|
||||||
|
<span class="label label-tags"><%= tag[I18n.locale] %></span>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
|
||||||
<td colspan="6"></td>
|
<script type="text/javascript">
|
||||||
</tr>
|
$('.img-peview').popover({
|
||||||
|
delay: { show: 100, hide: 300 }
|
||||||
|
});
|
||||||
|
</script>
|
|
@ -1,6 +1,8 @@
|
||||||
<div id='pop_up_content' class="main2">
|
<div id='pop_up_content' class="main2">
|
||||||
<h1><%= t('editing_asset') %></h1>
|
<h1><%= t('editing_asset') %></h1>
|
||||||
|
|
||||||
|
<%= flash_messages %>
|
||||||
|
|
||||||
<%= form_for @asset, :url => admin_asset_path(@asset), :html => {:id => (is_html ? nil : 'ajaxForm'), :multipart => true } do |f| %>
|
<%= form_for @asset, :url => admin_asset_path(@asset), :html => {:id => (is_html ? nil : 'ajaxForm'), :multipart => true } do |f| %>
|
||||||
<%= f.error_messages %>
|
<%= f.error_messages %>
|
||||||
<%= render :partial => "form", :locals => { :f => f } %>
|
<%= render :partial => "form", :locals => { :f => f } %>
|
||||||
|
@ -9,7 +11,7 @@
|
||||||
<%= link_back %>
|
<%= link_back %>
|
||||||
<%= f.submit t(:edit) %>
|
<%= f.submit t(:edit) %>
|
||||||
<% else %>
|
<% else %>
|
||||||
<a id='ajax_form_submit'><%= t(:edit) %></a>
|
<a id='ajax_form_submit' class="btn btn-primary"><%= t(:update) %></a>
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
<div id='filter' class="subnav">
|
||||||
|
<div class="filters">
|
||||||
|
<div id="sort_headers" class="table-label">
|
||||||
|
<%= render 'sort_headers' %>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<% content_for :page_specific_javascript do %>
|
||||||
|
<%= javascript_include_tag "sort_header" %>
|
||||||
|
<% end %>
|
|
@ -1,14 +1,38 @@
|
||||||
<p>
|
<div class="control-group">
|
||||||
<%= f.label :filename, t('admin.file_name') %>
|
<label for="title" class="control-label"><%= t 'admin.title' %></label>
|
||||||
<%= f.text_field :filename, :class => 'text' %>
|
<div class="controls">
|
||||||
</p>
|
<%= f.fields_for :i18n_variable, (@asset.new_record? ? @asset.build_i18n_variable : @asset.i18n_variable) do |f| %>
|
||||||
|
<% @site_valid_locales.each do |locale| %>
|
||||||
<p>
|
<%= content_tag :label do -%>
|
||||||
<%= f.label :description, t('admin.description') %>
|
<div>
|
||||||
<%= f.text_field :description, :class => 'text' %>
|
<%= I18nVariable.from_locale(locale) %>
|
||||||
</p>
|
<%= f.text_field locale, :class => "input-large" %>
|
||||||
|
</div>
|
||||||
<p>
|
<% end %>
|
||||||
<%= f.label :data, t('admin.data'), :class => 'file' %>
|
<% end %>
|
||||||
<%= f.file_field :data %>
|
<% end %>
|
||||||
</p>
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="control-group">
|
||||||
|
<label class="control-label"><%= f.label :category, t('admin.category') %></label>
|
||||||
|
<div class="controls">
|
||||||
|
<%= f.select :asset_category_id, @asset_categories.collect{|t| [ t.i18n_variable[I18n.locale], t.id ]}, {}, :class => "input-large" %>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="control-group">
|
||||||
|
<label class="control-label"><%= t 'admin.tags' %></label>
|
||||||
|
<div class="controls">
|
||||||
|
<% @tags.each do |tag| %>
|
||||||
|
<%= content_tag :label, :class => "checkbox inline" do -%>
|
||||||
|
<%= check_box_tag 'asset[tag_ids][]', tag.id, @asset.tag_ids.include?(tag.id) %>
|
||||||
|
<%= tag[I18n.locale] %>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="control-group">
|
||||||
|
<label class="control-label"><%= f.label :data, t('admin.data') %></label>
|
||||||
|
<div class="controls">
|
||||||
|
<%= f.file_field :data, :class => 'upload' %>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -1,16 +1,13 @@
|
||||||
<div id='pop_up_content' class="main2">
|
<div id='pop_up_content' class="main2">
|
||||||
<h1><%= t('admin.new_asset') %></h1>
|
<h1><%= t('admin.new_asset') %></h1>
|
||||||
|
|
||||||
<%= form_for :asset, :url => admin_assets_path, :html => {:id => (is_html ? nil : 'ajaxForm'), :multipart => true } do |f| %>
|
<%= flash_messages %>
|
||||||
|
|
||||||
|
<%= form_for :asset, :url => admin_assets_path, :html => {:id => 'ajaxForm', :multipart => true } do |f| %>
|
||||||
<%= f.error_messages %>
|
<%= f.error_messages %>
|
||||||
<%= render :partial => "form", :locals => { :f => f } %>
|
<%= render :partial => "form", :locals => { :f => f } %>
|
||||||
<div class="button_bar">
|
<div class="button_bar">
|
||||||
<% if is_html %>
|
<a id='ajax_form_submit' class="btn btn-primary"><%= t(:create) %></a>
|
||||||
<%= link_back %>
|
|
||||||
<%= f.submit t(:create) %>
|
|
||||||
<% else %>
|
|
||||||
<a id='ajax_form_submit' class="new"><%= t(:create) %></a>
|
|
||||||
<% end %>
|
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
<%= render_sort_bar(true, ['title', 'title','span4', 'admin.title'],
|
||||||
|
['description', 'description', 'span1-2', 'admin.data'],
|
||||||
|
['intro', 'intro', 'span1-2', 'admin.file_type'],
|
||||||
|
['intro', 'intro', 'span1-2', 'admin.file_length'],
|
||||||
|
['intro', 'intro', 'span1-2', 'admin.category'],
|
||||||
|
['intro', 'intro', 'span1-2', 'admin.tags']).html_safe %>
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,56 @@
|
||||||
|
<%= javascript_include_tag "new_admin" %>
|
||||||
|
<%= stylesheet_link_tag "new_admin" %>
|
||||||
|
|
||||||
|
<%= flash_messages %>
|
||||||
|
|
||||||
|
<%= form_for :asset, :url => admin_assets_path(:uploader => true), :html => {:id => 'ajaxForm', :multipart => true } do |f| %>
|
||||||
|
<div class="modal-header">
|
||||||
|
<h3><%= t 'admin.file_upload' %></h3>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body form-horizontal">
|
||||||
|
<div class="control-group">
|
||||||
|
<label for="title" class="control-label"><%= t 'admin.title' %></label>
|
||||||
|
<div class="controls">
|
||||||
|
<%= f.fields_for :i18n_variable, (@asset.new_record? ? @asset.build_i18n_variable : @asset.i18n_variable) do |f| %>
|
||||||
|
<% @site_valid_locales.each do |locale| %>
|
||||||
|
<%= content_tag :label do -%>
|
||||||
|
<div>
|
||||||
|
<%= I18nVariable.from_locale(locale) %>
|
||||||
|
<%= f.text_field locale, :class => "input-large" %>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="control-group">
|
||||||
|
<label class="control-label"><%= f.label :category, t('admin.category') %></label>
|
||||||
|
<div class="controls">
|
||||||
|
<%= f.select :asset_category_id, @asset_categories.collect{|t| [ t.i18n_variable[I18n.locale], t.id ]}, {}, :class => "input-large" %>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="control-group">
|
||||||
|
<label class="control-label"><%= t 'admin.tags' %></label>
|
||||||
|
<div class="controls">
|
||||||
|
<% @tags.each do |tag| %>
|
||||||
|
<%= content_tag :label, :class => "checkbox inline" do -%>
|
||||||
|
<%= check_box_tag 'asset[tag_ids][]', tag.id, @asset.tag_ids.include?(tag.id) %>
|
||||||
|
<%= tag[I18n.locale] %>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="control-group">
|
||||||
|
<label class="control-label"><%= f.label :data, t('admin.data') %></label>
|
||||||
|
<div class="controls">
|
||||||
|
<%= f.file_field :data, :class => 'upload' %>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div style="position: absolute; width: 100%; bottom: 0;">
|
||||||
|
<div class="modal-footer">
|
||||||
|
<a id='ajax_form_submit' class="btn btn-primary"><%= t(:create) %></a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<% end %>
|
|
@ -1,32 +1,32 @@
|
||||||
<% content_for :secondary do %>
|
<%= form_for :assets, :url => delete_admin_assets_path(:direction => params[:direction], :sort => params[:sort], :filter => @filter, :new_filter => nil, :sort_options => params[:sort_options]), :html => {:id => 'delete_all'}, :remote => true do %>
|
||||||
<div class="assets_setup">
|
<%= render 'filter' %>
|
||||||
<ul class="list">
|
<table id="asset_sort_list" class="table main-list">
|
||||||
<li><%= link_to t(:new_asset, :scope => :admin), new_admin_asset_path, :remote => true, :class => 'button positive' %></li>
|
|
||||||
<li><%= link_to t('admin.assets.file'), '', :remote => true, :class => 'button positive' %></li>
|
|
||||||
<li><%= link_to t('admin.assets.album'), '', :remote => true, :class => 'button positive'%></li>
|
|
||||||
<li><%= link_to t('admin.assets.video'), '', :remote => true, :class => 'button positive' %></li>
|
|
||||||
<li><%= link_to t('admin.assets.book'), '', :remote => true, :class => 'button positive' %></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<% end -%>
|
|
||||||
|
|
||||||
<div class="main2">
|
|
||||||
<h1><%= t('admin.list_assets') %></h1>
|
|
||||||
|
|
||||||
<table>
|
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<td><%= t('admin.id') %></th>
|
<th class="span1"></th>
|
||||||
<td><%= t('admin.file_name') %></th>
|
<th class="span4"></th>
|
||||||
<td><%= t('admin.description') %></th>
|
<th class="span1-2"></th>
|
||||||
<td><%= t('admin.format') %></th>
|
<th class="span1-2"></th>
|
||||||
<td><%= t('admin.orig_upload_file') %></th>
|
<th class="span1-2"></th>
|
||||||
<td><%= t('admin.file_size') %></th>
|
<th class="span1-2"></th>
|
||||||
<td><%= t('admin.action') %></th>
|
<th class="span1-2"></th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody id='asset_tbody'>
|
<tbody id="tbody_assets" class="sort-holder">
|
||||||
<%= render :partial => 'asset', :collection => @assets %>
|
<%= render :partial => 'asset', :collection => @assets %>
|
||||||
<tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
<% end %>
|
||||||
|
|
||||||
|
<div class="form-actions form-fixed pagination-right">
|
||||||
|
<%= link_to content_tag(:i, nil, :class => 'icon-plus icon-white') + t('admin.add'), new_admin_asset_path, :remote => true, :class => 'btn btn-primary pull-right' %>
|
||||||
|
<div id="asset_pagination" class="paginationFixed">
|
||||||
|
<%= paginate @assets, :params => {:direction => params[:direction], :sort => params[:sort], :filter => @filter, :new_filter => nil, :sort_options => params[:sort_options]}, :remote => true %>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<% content_for :page_specific_javascript do %>
|
||||||
|
<%= javascript_include_tag "/static/jquery.cycle.all.latest.js" %>
|
||||||
|
<%= javascript_include_tag "inc/modal-preview" %>
|
||||||
|
<% end %>
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
$("#delete_all").attr("action", "<%= delete_admin_assets_path(:direction => params[:direction], :sort => params[:sort], :filter => @filter, :new_filter => nil, :sort_options => params[:sort_options]) %>");
|
||||||
|
$("#sort_headers").html("<%= j render 'sort_headers' %>");
|
||||||
|
$("#tbody_assets").html("<%= j render :partial => 'asset', :collection => @assets %>");
|
||||||
|
$("#asset_pagination").html("<%= j paginate @assets, :params => {:direction => params[:direction], :sort => params[:sort], :filter => @filter, :new_filter => nil} %>");
|
|
@ -6,9 +6,3 @@
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
<script>
|
|
||||||
$(document).ready(function() {
|
|
||||||
load_tinymce();
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
|
@ -1 +1,44 @@
|
||||||
$('#back_main').html("<%= j render(:partial => 'edit') %>");
|
$('#back_main').html("<%= j render(:partial => 'edit') %>");
|
||||||
|
tinymce.init({
|
||||||
|
// General options
|
||||||
|
mode: 'textareas',
|
||||||
|
theme: 'advanced',
|
||||||
|
file_browser_callback : 'myFileBrowser',
|
||||||
|
plugins : "autolink,lists,pagebreak,style,layer,table,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,wordcount,advlist,autosave",
|
||||||
|
|
||||||
|
// Theme options
|
||||||
|
theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,formatselect,fontselect,fontsizeselect",
|
||||||
|
theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,bullist,numlist,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,forecolor,backcolor",
|
||||||
|
theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,fullscreen",
|
||||||
|
theme_advanced_toolbar_location : "top",
|
||||||
|
theme_advanced_toolbar_align : "left",
|
||||||
|
theme_advanced_statusbar_location : "bottom",
|
||||||
|
theme_advanced_resizing : true,
|
||||||
|
|
||||||
|
// Skin options
|
||||||
|
skin : "o2k7",
|
||||||
|
skin_variant : "silver",
|
||||||
|
|
||||||
|
// Drop lists for link/image/media/template dialogs
|
||||||
|
template_external_list_url : "js/template_list.js",
|
||||||
|
// external_link_list_url : "js/link_list.js",
|
||||||
|
// external_image_list_url : "js/image_list.js",
|
||||||
|
// media_external_list_url : "js/media_list.js"
|
||||||
|
|
||||||
|
// Style formats
|
||||||
|
style_formats : [
|
||||||
|
{title : 'Bold text', inline : 'b'},
|
||||||
|
{title : 'Red text', inline : 'span', styles : {color : '#ff0000'}},
|
||||||
|
{title : 'Red header', block : 'h1', styles : {color : '#ff0000'}},
|
||||||
|
{title : 'Example 1', inline : 'span', classes : 'example1'},
|
||||||
|
{title : 'Example 2', inline : 'span', classes : 'example2'},
|
||||||
|
{title : 'Table styles'},
|
||||||
|
{title : 'Table row 1', selector : 'tr', classes : 'tablerow1'}
|
||||||
|
],
|
||||||
|
|
||||||
|
// Replace values for the template plugin
|
||||||
|
template_replace_values : {
|
||||||
|
username : "Some User",
|
||||||
|
staffid : "991234"
|
||||||
|
}
|
||||||
|
});
|
|
@ -67,3 +67,12 @@
|
||||||
<%= content_tag :li, link_to(t('announcement.tags'), panel_web_resource_back_end_tags_path), :class => active_for_action('/panel/web_resource/back_end/tags', 'index') %>
|
<%= content_tag :li, link_to(t('announcement.tags'), panel_web_resource_back_end_tags_path), :class => active_for_action('/panel/web_resource/back_end/tags', 'index') %>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
|
|
||||||
|
<%= content_tag :li, :class => active_for_controllers('assets', '/admin/asset_tags', 'asset_categories') do -%>
|
||||||
|
<%= link_to content_tag(:i, nil, :class => 'icons-link') + t('admin.asset'), admin_assets_path %>
|
||||||
|
<%= content_tag :ul, :class => ("nav nav-list " + visible_for_controllers('assets', '/admin/asset_tags', 'asset_categories')) do -%>
|
||||||
|
<%= content_tag :li, link_to(t('admin.all_assets'), admin_assets_path), :class => active_for_action('assets', 'index') %>
|
||||||
|
<%= content_tag :li, link_to(t('admin.categories'), admin_asset_categories_path), :class => active_for_action('asset_categories', 'index') %>
|
||||||
|
<%= content_tag :li, link_to(t('admin.tags'), admin_asset_tags_path), :class => active_for_action('/admin/asset_tags', 'index') %>
|
||||||
|
<% end -%>
|
||||||
|
<% end -%>
|
|
@ -24,6 +24,9 @@ Orbit::Application.configure do
|
||||||
config.action_dispatch.best_standards_support = :builtin
|
config.action_dispatch.best_standards_support = :builtin
|
||||||
|
|
||||||
|
|
||||||
|
config.assets.debug = true
|
||||||
|
|
||||||
|
|
||||||
# config.middleware.use ExceptionNotifier,
|
# config.middleware.use ExceptionNotifier,
|
||||||
# :email_prefix => "[R4_error]",
|
# :email_prefix => "[R4_error]",
|
||||||
# :sender_address => %{"notifier" <redmine@rulingcom.com>},
|
# :sender_address => %{"notifier" <redmine@rulingcom.com>},
|
||||||
|
|
|
@ -11,6 +11,7 @@ en:
|
||||||
back: Back
|
back: Back
|
||||||
browse: Browse
|
browse: Browse
|
||||||
cancel: Cancel
|
cancel: Cancel
|
||||||
|
create_fail: Creation failed
|
||||||
create: Create
|
create: Create
|
||||||
delete: Delete
|
delete: Delete
|
||||||
desktop: Desktop
|
desktop: Desktop
|
||||||
|
@ -41,6 +42,7 @@ en:
|
||||||
submit: Submit
|
submit: Submit
|
||||||
sure?: Are you sure?
|
sure?: Are you sure?
|
||||||
update: Update
|
update: Update
|
||||||
|
update_failed: Update failed
|
||||||
view: View
|
view: View
|
||||||
view_count: View count
|
view_count: View count
|
||||||
yes_: "Yes"
|
yes_: "Yes"
|
||||||
|
@ -117,6 +119,7 @@ en:
|
||||||
calendar: Calendar
|
calendar: Calendar
|
||||||
cant_delete_self: You can not delete yourself.
|
cant_delete_self: You can not delete yourself.
|
||||||
cant_revoke_self_admin: You can not revoke your admin role yourself.
|
cant_revoke_self_admin: You can not revoke your admin role yourself.
|
||||||
|
category: Category
|
||||||
choose_file: Choose a file...
|
choose_file: Choose a file...
|
||||||
class: Class
|
class: Class
|
||||||
content: Content
|
content: Content
|
||||||
|
@ -146,6 +149,7 @@ en:
|
||||||
enabled_for: Enabled for
|
enabled_for: Enabled for
|
||||||
file_name: Filename
|
file_name: Filename
|
||||||
file_size: File size
|
file_size: File size
|
||||||
|
file_upload: File upload
|
||||||
format: Format
|
format: Format
|
||||||
home: Home
|
home: Home
|
||||||
id: ID
|
id: ID
|
||||||
|
@ -231,6 +235,7 @@ en:
|
||||||
site_title: Site title
|
site_title: Site title
|
||||||
super_pages: Super pages
|
super_pages: Super pages
|
||||||
structure: Structure
|
structure: Structure
|
||||||
|
tags: Tags
|
||||||
title: Title
|
title: Title
|
||||||
translation: Translation
|
translation: Translation
|
||||||
type: Type
|
type: Type
|
||||||
|
|
|
@ -9,6 +9,7 @@ zh_tw:
|
||||||
browse: 選擇檔案
|
browse: 選擇檔案
|
||||||
cancel: 取消
|
cancel: 取消
|
||||||
create: 新增
|
create: 新增
|
||||||
|
create_fail: 創建失敗
|
||||||
delete: 刪除
|
delete: 刪除
|
||||||
desktop: 桌面
|
desktop: 桌面
|
||||||
disable: 禁用
|
disable: 禁用
|
||||||
|
@ -38,6 +39,7 @@ zh_tw:
|
||||||
submit: 送出
|
submit: 送出
|
||||||
sure?: 您肯定嗎?
|
sure?: 您肯定嗎?
|
||||||
update: 更新
|
update: 更新
|
||||||
|
update: 更新失敗
|
||||||
view: 檢視
|
view: 檢視
|
||||||
view_count: 查看次數
|
view_count: 查看次數
|
||||||
yes_: "Yes"
|
yes_: "Yes"
|
||||||
|
@ -113,6 +115,7 @@ zh_tw:
|
||||||
calendar: 行事曆
|
calendar: 行事曆
|
||||||
cant_delete_self: 您不可以刪除自己。
|
cant_delete_self: 您不可以刪除自己。
|
||||||
cant_revoke_self_admin: 您不可以撤銷自己的管理身份。
|
cant_revoke_self_admin: 您不可以撤銷自己的管理身份。
|
||||||
|
category: 類別
|
||||||
choose_file: 請選擇一個文件...
|
choose_file: 請選擇一個文件...
|
||||||
class: 階級
|
class: 階級
|
||||||
content: 內容
|
content: 內容
|
||||||
|
@ -147,6 +150,7 @@ zh_tw:
|
||||||
enabled_for: 啟用
|
enabled_for: 啟用
|
||||||
file_name: 檔名
|
file_name: 檔名
|
||||||
file_size: 檔案大小
|
file_size: 檔案大小
|
||||||
|
file_upload: 文件上載
|
||||||
format: 格式
|
format: 格式
|
||||||
home: 首頁
|
home: 首頁
|
||||||
id: ID
|
id: ID
|
||||||
|
@ -236,6 +240,7 @@ zh_tw:
|
||||||
site_setting: 網站設定
|
site_setting: 網站設定
|
||||||
super_pages: 可編頁面
|
super_pages: 可編頁面
|
||||||
structure: 網站結構
|
structure: 網站結構
|
||||||
|
tags: 標籤
|
||||||
title: 標題
|
title: 標題
|
||||||
translation: 翻譯
|
translation: 翻譯
|
||||||
type: 類型
|
type: 類型
|
||||||
|
|
|
@ -14,7 +14,14 @@ Orbit::Application.routes.draw do
|
||||||
# routes for admin
|
# routes for admin
|
||||||
namespace :admin do
|
namespace :admin do
|
||||||
mount Resque::Server.new, :at => "/resque"
|
mount Resque::Server.new, :at => "/resque"
|
||||||
resources :assets
|
resources :assets do
|
||||||
|
collection do
|
||||||
|
get 'file_upload'
|
||||||
|
post 'delete'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
resources :asset_categories
|
||||||
|
resources :asset_tags
|
||||||
resources :app_auths
|
resources :app_auths
|
||||||
resources :object_auths do
|
resources :object_auths do
|
||||||
match 'new_interface/:ob_type/:title/new' => "object_auths_new_interface#new" ,:as => :init_ob_auth,:via => :get
|
match 'new_interface/:ob_type/:title/new' => "object_auths_new_interface#new" ,:as => :init_ob_auth,:via => :get
|
||||||
|
|
|
@ -50,13 +50,13 @@
|
||||||
<div class="control-group">
|
<div class="control-group">
|
||||||
<label class="control-label">Start</label>
|
<label class="control-label">Start</label>
|
||||||
<div class="controls">
|
<div class="controls">
|
||||||
<%= f.date_select :postdate, {:use_month_numbers => true, :order => [:day, :month, :year] }, {:class => 'input-small'} %>
|
<%= f.datetime_select :postdate, {:use_month_numbers => true, :order => [:day, :month, :year] }, {:class => 'span1'} %>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="control-group">
|
<div class="control-group">
|
||||||
<label class="control-label">End</label>
|
<label class="control-label">End</label>
|
||||||
<div class="controls">
|
<div class="controls">
|
||||||
<%= f.date_select :deadline, {:use_month_numbers => true, :prompt => { :month => 'Month', :day => 'Day', :year => 'Year'}, :order => [:day, :month, :year] }, {:class => 'input-small'} %>
|
<%= f.datetime_select :deadline, {:use_month_numbers => true, :prompt => { :month => 'Month', :day => 'Day', :year => 'Year'}, :order => [:day, :month, :year] }, {:class => 'span1'} %>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -2,10 +2,10 @@
|
||||||
<h1 class="h1"><%= @news_bulletin.title[I18n.locale] %></h1>
|
<h1 class="h1"><%= @news_bulletin.title[I18n.locale] %></h1>
|
||||||
<div class="info">
|
<div class="info">
|
||||||
<div class="info1">
|
<div class="info1">
|
||||||
|
<span class="pull-right"><%= dislpay_view_count(@news_bulletin) %></span>
|
||||||
<span class="date"><%= @news_bulletin.postdate %></span>
|
<span class="date"><%= @news_bulletin.postdate %></span>
|
||||||
|
|
|
|
||||||
<a href="" class="unit"><%= @news_bulletin.unit_list_for_anc.title[I18n.locale] rescue '' %></a>
|
<a href="" class="unit"><%= @news_bulletin.unit_list_for_anc.title[I18n.locale] rescue '' %></a>
|
||||||
<span><%= dislpay_view_count(@news_bulletin) %></span>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="news_image">
|
<div class="news_image">
|
||||||
|
|
|
@ -3,8 +3,9 @@
|
||||||
|
|
||||||
<p id="notice"><%= flash_messages %></p>
|
<p id="notice"><%= flash_messages %></p>
|
||||||
|
|
||||||
|
<div class="view_count pull-right"><%= dislpay_view_count(@page_context) %></div>
|
||||||
<h1 class="h1"><%= @page_context.page.i18n_variable[I18n.locale] rescue nil %></h1>
|
<h1 class="h1"><%= @page_context.page.i18n_variable[I18n.locale] rescue nil %></h1>
|
||||||
|
|
||||||
<div class="page_content"><%= @page_context.context[I18n.locale].html_safe rescue nil %></div>
|
<div class="page_content"><%= @page_context.context[I18n.locale].html_safe rescue nil %></div>
|
||||||
|
|
||||||
<div><%= dislpay_view_count(@page_context) %></div>
|
|
||||||
|
|
Reference in New Issue