Merge branch 'fix_it'

Conflicts:
	app/assets/javascripts/page_edit.js
	app/assets/javascripts/rss.js
	app/assets/stylesheets/admin.css.erb
	app/assets/stylesheets/admin_back_end.css.erb
	app/controllers/admin/app_auths_controller.rb
	app/controllers/admin/module_apps_controller.rb
	app/controllers/admin/users_controller.rb
	app/controllers/application_controller.rb
	app/models/app_auth.rb
	app/models/user/user.rb
	app/views/admin/app_auths/index.html.erb
	app/views/admin/attributes/_attribute_field.html.erb
	app/views/admin/designs/_new.html.erb
	app/views/admin/designs/new.html.erb
	app/views/admin/infos/_form.html.erb
	app/views/admin/module_apps/_app_selector.html.erb
	app/views/admin/module_apps/index.html.erb
	app/views/admin/pages/_form.html.erb
	app/views/admin/roles/_form.html.erb
	app/views/admin/roles/_sub_role.html.erb
	app/views/admin/users/_form.html.erb
	app/views/admin/users/_show_sub_role.html.erb
	app/views/admin/users/_sub_role.html.erb
	app/views/admin/users/edit.html.erb
	app/views/admin/users/index.html.erb
	app/views/admin/users/new.html.erb
	app/views/admin/users/show.html.erb
	app/views/layouts/admin.html.erb
	lib/fraisier/layout.html
	lib/parsers/parser_back_end.rb
	lib/parsers/parser_layout.rb
	lib/tasks/dev.rake
	spec/models/app_auth_basic.rb
	vendor/built_in_modules/NewBlog/.gitignore
	vendor/built_in_modules/NewBlog/Gemfile
	vendor/built_in_modules/NewBlog/Gemfile.lock
	vendor/built_in_modules/NewBlog/MIT-LICENSE
	vendor/built_in_modules/NewBlog/NewBlog.gemspec
	vendor/built_in_modules/NewBlog/README.rdoc
	vendor/built_in_modules/NewBlog/Rakefile
	vendor/built_in_modules/NewBlog/app/assets/images/NewBlog/.gitkeep
	vendor/built_in_modules/NewBlog/app/assets/javascripts/NewBlog/.gitkeep
	vendor/built_in_modules/NewBlog/app/assets/stylesheets/NewBlog/.gitkeep
	vendor/built_in_modules/NewBlog/app/assets/stylesheets/NewBlog/application.css
	vendor/built_in_modules/NewBlog/app/assets/stylesheets/NewBlog/production.css
	vendor/built_in_modules/NewBlog/app/controllers/.gitkeep
	vendor/built_in_modules/NewBlog/app/controllers/application_controller.rb
	vendor/built_in_modules/NewBlog/app/controllers/panel/blog/back_end/posts_controller.rb
	vendor/built_in_modules/NewBlog/app/helpers/.gitkeep
	vendor/built_in_modules/NewBlog/app/helpers/application_helper.rb
	vendor/built_in_modules/NewBlog/app/mailers/.gitkeep
	vendor/built_in_modules/NewBlog/app/models/.gitkeep
	vendor/built_in_modules/NewBlog/app/models/comment.rb
	vendor/built_in_modules/NewBlog/app/models/post.rb
	vendor/built_in_modules/NewBlog/app/views/.gitkeep
	vendor/built_in_modules/NewBlog/app/views/layouts/application.html.erb
	vendor/built_in_modules/NewBlog/app/views/layouts/edit_view.html.erb
	vendor/built_in_modules/NewBlog/app/views/layouts/production.html.erb
	vendor/built_in_modules/NewBlog/app/views/panel/blog/back_end/posts/_form.html.erb
	vendor/built_in_modules/NewBlog/app/views/panel/blog/back_end/posts/index.html.erb
	vendor/built_in_modules/NewBlog/app/views/panel/blog/back_end/posts/latest_post.html.erb
	vendor/built_in_modules/NewBlog/app/views/panel/blog/back_end/posts/new.html.erb
	vendor/built_in_modules/NewBlog/app/views/panel/blog/back_end/posts/show.html.erb
	vendor/built_in_modules/NewBlog/app/views/panel/blog/front_end/posts/show.html.erb
	vendor/built_in_modules/NewBlog/app/views/panel/blog/widget/posts/index.html.erb
	vendor/built_in_modules/NewBlog/app/views/panel/blog/widget/posts/latest_post.html.erb
	vendor/built_in_modules/NewBlog/config/locales/en.yml
	vendor/built_in_modules/NewBlog/lib/NewBlog.rb
	vendor/built_in_modules/NewBlog/lib/NewBlog/engine.rb
	vendor/built_in_modules/NewBlog/lib/NewBlog/version.rb
	vendor/built_in_modules/NewBlog/lib/tasks/NewBlog_tasks.rake
	vendor/built_in_modules/NewBlog/script/rails
	vendor/built_in_modules/NewBlog/test/NewBlog_test.rb
	vendor/built_in_modules/NewBlog/test/dummy/Rakefile
	vendor/built_in_modules/NewBlog/test/dummy/app/assets/javascripts/application.js
	vendor/built_in_modules/NewBlog/test/dummy/app/assets/stylesheets/application.css
	vendor/built_in_modules/NewBlog/test/dummy/app/controllers/application_controller.rb
	vendor/built_in_modules/NewBlog/test/dummy/app/helpers/application_helper.rb
	vendor/built_in_modules/NewBlog/test/dummy/app/mailers/.gitkeep
	vendor/built_in_modules/NewBlog/test/dummy/app/models/.gitkeep
	vendor/built_in_modules/NewBlog/test/dummy/app/views/layouts/application.html.erb
	vendor/built_in_modules/NewBlog/test/dummy/config.ru
	vendor/built_in_modules/NewBlog/test/dummy/config/application.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/boot.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/database.yml
	vendor/built_in_modules/NewBlog/test/dummy/config/environment.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/environments/development.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/environments/production.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/environments/test.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/initializers/backtrace_silencers.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/initializers/inflections.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/initializers/mime_types.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/initializers/secret_token.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/initializers/session_store.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/initializers/wrap_parameters.rb
	vendor/built_in_modules/NewBlog/test/dummy/config/locales/en.yml
	vendor/built_in_modules/NewBlog/test/dummy/config/mongoid.yml
	vendor/built_in_modules/NewBlog/test/dummy/config/routes.rb
	vendor/built_in_modules/NewBlog/test/dummy/lib/assets/.gitkeep
	vendor/built_in_modules/NewBlog/test/dummy/log/.gitkeep
	vendor/built_in_modules/NewBlog/test/dummy/public/404.html
	vendor/built_in_modules/NewBlog/test/dummy/public/422.html
	vendor/built_in_modules/NewBlog/test/dummy/public/500.html
	vendor/built_in_modules/NewBlog/test/dummy/public/favicon.ico
	vendor/built_in_modules/NewBlog/test/dummy/script/rails
	vendor/built_in_modules/NewBlog/test/integration/navigation_test.rb
	vendor/built_in_modules/NewBlog/test/test_helper.rb
	vendor/built_in_modules/blog/app/controllers/application_controller.rb
	vendor/built_in_modules/blog/app/controllers/panel/blog/posts_controller.rb
	vendor/built_in_modules/blog/app/helpers/application_helper.rb
	vendor/built_in_modules/blog/app/models/comment.rb
	vendor/built_in_modules/blog/app/models/post.rb
	vendor/built_in_modules/blog/app/views/layouts/application.html.erb
	vendor/built_in_modules/blog/app/views/panel/blog/posts/_form.html.erb
	vendor/built_in_modules/blog/app/views/panel/blog/posts/index.html.erb
	vendor/built_in_modules/blog/app/views/panel/blog/posts/show.html.erb
	vendor/built_in_modules/blog/config/initializers/backtrace_silencers.rb
	vendor/built_in_modules/blog/config/initializers/inflections.rb
	vendor/built_in_modules/blog/config/initializers/mime_types.rb
	vendor/built_in_modules/blog/public/404.html
	vendor/built_in_modules/blog/public/422.html
	vendor/built_in_modules/blog/public/500.html
	vendor/built_in_modules/blog/public/favicon.ico
	vendor/built_in_modules/blog/public/stylesheets/.gitkeep
	vendor/built_in_modules/blog/script/rails
	vendor/built_in_modules/blog/vendor/plugins/.gitkeep
	vendor/built_in_modules/new_blog/.gitignore
	vendor/built_in_modules/new_blog/Gemfile
	vendor/built_in_modules/new_blog/Gemfile.lock
	vendor/built_in_modules/new_blog/MIT-LICENSE
	vendor/built_in_modules/new_blog/README.rdoc
	vendor/built_in_modules/new_blog/Rakefile
	vendor/built_in_modules/new_blog/app/assets/images/NewBlog/.gitkeep
	vendor/built_in_modules/new_blog/app/assets/javascripts/NewBlog/.gitkeep
	vendor/built_in_modules/new_blog/app/assets/stylesheets/NewBlog/.gitkeep
	vendor/built_in_modules/new_blog/app/assets/stylesheets/NewBlog/application.css
	vendor/built_in_modules/new_blog/app/assets/stylesheets/NewBlog/production.css
	vendor/built_in_modules/new_blog/app/controllers/.gitkeep
	vendor/built_in_modules/new_blog/app/controllers/application_controller.rb
	vendor/built_in_modules/new_blog/app/controllers/panel/new_blog/back_end/posts_controller.rb
	vendor/built_in_modules/new_blog/app/helpers/.gitkeep
	vendor/built_in_modules/new_blog/app/mailers/.gitkeep
	vendor/built_in_modules/new_blog/app/models/.gitkeep
	vendor/built_in_modules/new_blog/app/models/comment.rb
	vendor/built_in_modules/new_blog/app/models/post.rb
	vendor/built_in_modules/new_blog/app/views/.gitkeep
	vendor/built_in_modules/new_blog/app/views/layouts/application.html.erb
	vendor/built_in_modules/new_blog/app/views/layouts/edit_view.html.erb
	vendor/built_in_modules/new_blog/app/views/layouts/production.html.erb
	vendor/built_in_modules/new_blog/app/views/panel/new_blog/back_end/posts/_form.html.erb
	vendor/built_in_modules/new_blog/app/views/panel/new_blog/back_end/posts/index.html.erb
	vendor/built_in_modules/new_blog/app/views/panel/new_blog/back_end/posts/latest_post.html.erb
	vendor/built_in_modules/new_blog/app/views/panel/new_blog/back_end/posts/new.html.erb
	vendor/built_in_modules/new_blog/app/views/panel/new_blog/back_end/posts/show.html.erb
	vendor/built_in_modules/new_blog/app/views/panel/new_blog/front_end/posts/show.html.erb
	vendor/built_in_modules/new_blog/app/views/panel/new_blog/widget/posts/index.html.erb
	vendor/built_in_modules/new_blog/app/views/panel/new_blog/widget/posts/latest_post.html.erb
	vendor/built_in_modules/new_blog/config/locales/en.yml
	vendor/built_in_modules/new_blog/lib/new_blog/version.rb
	vendor/built_in_modules/new_blog/lib/tasks/NewBlog_tasks.rake
	vendor/built_in_modules/new_blog/new_blog.gemspec
	vendor/built_in_modules/new_blog/script/rails
	vendor/built_in_modules/new_blog/test/NewBlog_test.rb
	vendor/built_in_modules/new_blog/test/dummy/Rakefile
	vendor/built_in_modules/new_blog/test/dummy/app/assets/javascripts/application.js
	vendor/built_in_modules/new_blog/test/dummy/app/assets/stylesheets/application.css
	vendor/built_in_modules/new_blog/test/dummy/app/controllers/application_controller.rb
	vendor/built_in_modules/new_blog/test/dummy/app/helpers/application_helper.rb
	vendor/built_in_modules/new_blog/test/dummy/app/mailers/.gitkeep
	vendor/built_in_modules/new_blog/test/dummy/app/models/.gitkeep
	vendor/built_in_modules/new_blog/test/dummy/app/views/layouts/application.html.erb
	vendor/built_in_modules/new_blog/test/dummy/config.ru
	vendor/built_in_modules/new_blog/test/dummy/config/application.rb
	vendor/built_in_modules/new_blog/test/dummy/config/boot.rb
	vendor/built_in_modules/new_blog/test/dummy/config/database.yml
	vendor/built_in_modules/new_blog/test/dummy/config/environment.rb
	vendor/built_in_modules/new_blog/test/dummy/config/environments/development.rb
	vendor/built_in_modules/new_blog/test/dummy/config/environments/production.rb
	vendor/built_in_modules/new_blog/test/dummy/config/environments/test.rb
	vendor/built_in_modules/new_blog/test/dummy/config/initializers/backtrace_silencers.rb
	vendor/built_in_modules/new_blog/test/dummy/config/initializers/inflections.rb
	vendor/built_in_modules/new_blog/test/dummy/config/initializers/mime_types.rb
	vendor/built_in_modules/new_blog/test/dummy/config/initializers/secret_token.rb
	vendor/built_in_modules/new_blog/test/dummy/config/initializers/session_store.rb
	vendor/built_in_modules/new_blog/test/dummy/config/initializers/wrap_parameters.rb
	vendor/built_in_modules/new_blog/test/dummy/config/locales/en.yml
	vendor/built_in_modules/new_blog/test/dummy/config/mongoid.yml
	vendor/built_in_modules/new_blog/test/dummy/config/routes.rb
	vendor/built_in_modules/new_blog/test/dummy/lib/assets/.gitkeep
	vendor/built_in_modules/new_blog/test/dummy/log/.gitkeep
	vendor/built_in_modules/new_blog/test/dummy/public/404.html
	vendor/built_in_modules/new_blog/test/dummy/public/422.html
	vendor/built_in_modules/new_blog/test/dummy/public/500.html
	vendor/built_in_modules/new_blog/test/dummy/public/favicon.ico
	vendor/built_in_modules/new_blog/test/dummy/script/rails
	vendor/built_in_modules/new_blog/test/integration/navigation_test.rb
	vendor/built_in_modules/new_blog/test/test_helper.rb
	vendor/plugins/NewBlog/.gitignore
	vendor/plugins/NewBlog/Gemfile
	vendor/plugins/NewBlog/Gemfile.lock
	vendor/plugins/NewBlog/MIT-LICENSE
	vendor/plugins/NewBlog/NewBlog.gemspec
	vendor/plugins/NewBlog/README.rdoc
	vendor/plugins/NewBlog/Rakefile
	vendor/plugins/NewBlog/app/assets/images/NewBlog/.gitkeep
	vendor/plugins/NewBlog/app/assets/javascripts/NewBlog/.gitkeep
	vendor/plugins/NewBlog/app/assets/stylesheets/NewBlog/.gitkeep
	vendor/plugins/NewBlog/app/assets/stylesheets/NewBlog/application.css
	vendor/plugins/NewBlog/app/assets/stylesheets/NewBlog/production.css
	vendor/plugins/NewBlog/app/controllers/.gitkeep
	vendor/plugins/NewBlog/app/helpers/.gitkeep
	vendor/plugins/NewBlog/app/mailers/.gitkeep
	vendor/plugins/NewBlog/app/models/.gitkeep
	vendor/plugins/NewBlog/app/views/.gitkeep
	vendor/plugins/NewBlog/app/views/layouts/edit_view.html.erb
	vendor/plugins/NewBlog/app/views/layouts/production.html.erb
	vendor/plugins/NewBlog/app/views/panel/blog/posts/index.html.erb
	vendor/plugins/NewBlog/app/views/panel/blog/posts/latest_post.html.erb
	vendor/plugins/NewBlog/app/views/panel/blog/posts/new.html.erb
	vendor/plugins/NewBlog/app/views/panel/blog/posts/show.html.erb
	vendor/plugins/NewBlog/app/views/panel/blog/posts/widget_index.html.erb
	vendor/plugins/NewBlog/app/views/panel/blog/posts/widget_latest_post.html.erb
	vendor/plugins/NewBlog/config/locales/en.yml
	vendor/plugins/NewBlog/lib/NewBlog/version.rb
	vendor/plugins/NewBlog/lib/tasks/NewBlog_tasks.rake
	vendor/plugins/NewBlog/script/rails
	vendor/plugins/NewBlog/test/NewBlog_test.rb
	vendor/plugins/NewBlog/test/dummy/Rakefile
	vendor/plugins/NewBlog/test/dummy/app/assets/javascripts/application.js
	vendor/plugins/NewBlog/test/dummy/app/assets/stylesheets/application.css
	vendor/plugins/NewBlog/test/dummy/app/controllers/application_controller.rb
	vendor/plugins/NewBlog/test/dummy/app/mailers/.gitkeep
	vendor/plugins/NewBlog/test/dummy/app/models/.gitkeep
	vendor/plugins/NewBlog/test/dummy/app/views/layouts/application.html.erb
	vendor/plugins/NewBlog/test/dummy/config.ru
	vendor/plugins/NewBlog/test/dummy/config/application.rb
	vendor/plugins/NewBlog/test/dummy/config/boot.rb
	vendor/plugins/NewBlog/test/dummy/config/database.yml
	vendor/plugins/NewBlog/test/dummy/config/environment.rb
	vendor/plugins/NewBlog/test/dummy/config/environments/development.rb
	vendor/plugins/NewBlog/test/dummy/config/environments/production.rb
	vendor/plugins/NewBlog/test/dummy/config/environments/test.rb
	vendor/plugins/NewBlog/test/dummy/config/initializers/secret_token.rb
	vendor/plugins/NewBlog/test/dummy/config/initializers/session_store.rb
	vendor/plugins/NewBlog/test/dummy/config/initializers/wrap_parameters.rb
	vendor/plugins/NewBlog/test/dummy/config/locales/en.yml
	vendor/plugins/NewBlog/test/dummy/config/mongoid.yml
	vendor/plugins/NewBlog/test/dummy/config/routes.rb
	vendor/plugins/NewBlog/test/integration/navigation_test.rb
	vendor/plugins/NewBlog/test/test_helper.rb
This commit is contained in:
chris2tof committed 2012-01-12 18:15:43 +08:00
commit 4be97f6ea6
121 files changed
+534 -346

No files matched your search

+2 -2
View File
@@ -6,7 +6,7 @@ $("#page_design_id").live('change', function() {
$.getScript($(this).attr('rel') + '/' + $(this).val() + '/reload_themes');
});
$("#page_module_app").live('change', function() {
$("#page_module_app_id").live('change', function() {
var app_id = $(this).val();
if(app_id!=''){
$.getScript($(this).attr('rel') + '/' + $(this).val() + '/reload_frontend_pages',function(data, textStatus){
@@ -16,6 +16,6 @@ $("#page_module_app").live('change', function() {
});
}
else{
$("#app_page_url").remove();
$("#app_page_url").children().remove();
}
});
-1
View File
@@ -392,7 +392,6 @@ modalWindow : function(settings,callbackFn){
tempwidth=maxwidth;
}else{tempwidth="auto";}
$rss("body").append('<div class="rgmask" id="rgsheath" style="height:'+rgmaskHeight+'px"></div>');
$rss("#rgsheath").css({background: "#000", width: "100%", position: "fixed", top: 0, left: 0,opacity:0.9,'z-index':199});
$rss("body").append('<div id="rgWindow"></div>');
@@ -4,14 +4,15 @@ class Admin::AppAuthsController < ApplicationController
before_filter :is_admin?
def index
@user_roles = UserRole.all.entries
apps = Purchase.where(:type =>"App")
@app_auth_data = apps.entries.map do |app|
app_c = eval(app.app_controller)
obj = app_c.new
obj_auth = obj.send "auth"
[:app_obj => app,:auth_field => obj_auth]
end
# @roles = Role.all.entries
# apps = Purchase.where(:type =>"App")
# @app_auth_data = apps.entries.map do |app|
# app_c = eval(app.app_controller)
# obj = app_c.new
# obj_auth = obj.send "auth"
# [:app_obj => app,:auth_field => obj_auth]
# end
@module_apps = ModuleApp.all
end
end
@@ -1,9 +1,33 @@
class Admin::ModuleAppsController < ApplicationController
layout "admin"
def reload_frontend_pages
@module_app = ModuleApp.find(params[:id])
respond_to do |format|
format.js {}
def index
@module_apps = ModuleApp.all.entries
end
def reload_frontend_pages
@module_app = ModuleApp.find(params[:id])
respond_to do |format|
format.js {}
end
end
def edit
@module_app = ModuleApp.find(params[:id])
end
def update
@module_app = ModuleApp.find(params[:id])
unless params['module_app']['enable_frontend'].nil?
@module_app.update_attribute('enable_frontend',params['module_app']['enable_frontend'])
@module_app.save!
end
@attribute = @module_app
respond_to do |format|
format.html { redirect_to :action => :index }
format.js { render 'admin/attributes/toggle_enable' }
end
end
end
end
@@ -28,7 +28,7 @@ class Admin::PagePartsController < ApplicationController
@partial = 'edit_text'
@part_locale = params[:part_locale] || I18n.locale.to_s
when 'module'
@plugins=[{:module=>"Blog",:widgets=>[{:name=>"Blog",:path=>"panel/blog/widget_latest_post"},{:name=>"Blog",:path=>"panel/blog/widget_index"}]}]
@plugins=[{:module=>"Blog",:widgets=>[{:name=>"Blog",:path=>"panel/new_blog/widget_latest_post"},{:name=>"Blog",:path=>"panel/new_blog/widget_index"}]}]
when 'snippet'
end
end
@@ -32,6 +32,7 @@ class Admin::PagesController < ApplicationController
@i18n_variable = @item.i18n_variable
@designs = Design.all.entries
@design = @item.design
@app_frontend_urls = @item.module_app.app_pages
end
def create
+8 -1
View File
@@ -5,9 +5,16 @@ class ApplicationController < ActionController::Base
helper :all
before_filter :set_locale, :set_site
def front_end_available(module_app_title='')
app_controller = ModuleApp.first(conditions: {:title => module_app_title} )
unless app_controller.enable_frontend?
render :nothing
end
end
def get_all_app_engines
ary = ["vender/plugins/NewBlog"]
ary = ["vender/plugins/new_blog"]
app_engines = ary.collect{|t|
Rails::Engine.find t
}
@@ -0,0 +1,4 @@
class ObitFrontendComponentController< ApplicationController
before_filter {|c| c.front_end_available(@app_title)}
layout 'production'
end
@@ -0,0 +1,3 @@
class ObitFrontendController< ObitFrontendComponentController
end
@@ -0,0 +1,3 @@
class ObitWidgetController< ObitFrontendComponentController
end
+6
View File
@@ -0,0 +1,6 @@
module Admin::AppAuthHelper
def on_off_switch(attribute,attribute_type)
link_to t(:enable), eval("admin_#{attribute_type}_path(attribute, :authenticity_token => form_authenticity_token, :#{attribute_type} => {:disabled => true})"), :remote => true, :method => :put, :id => "disable_#{attribute.id}", :style => "display:#{attribute.is_disabled? ? 'none' : ''}", :class => 'switch'
link_to t(:disable), eval("admin_#{attribute_type}_path(attribute, :authenticity_token => form_authenticity_token, :#{attribute_type} => {:disabled => false})"), :remote => true, :method => :put, :id => "enable_#{attribute.id}", :style => "display:#{attribute.is_disabled? ? '' : 'none'}", :class => 'switch'
end
end
+44 -27
View File
@@ -15,55 +15,72 @@ class AppAuth
has_and_belongs_to_many :roles
has_and_belongs_to_many :sub_roles
attr_protected :roles,:sub_roles,:privilege_users,:blocked_users,:users
def add_role role
add_operation(:roles,role)
end
def add_sub_role role
add_operation(:sub_roles,role)
end
def remove_role role
remove_operation(:roles,role)
end
def remove_sub_role role
remove_operation(:sub_roles,role)
end
def add_user_to_black_list user
unless self.blocked_users.include?(user)
self.blocked_users << user
self.save!
else
false #should put error message for user existed in list already
end
add_operation(:blocked_users,user)
end
def remove_user_from_black_list user
if self.blocked_users.include? user
self.blocked_users.delete user
remove_operation(:blocked_users,user)
end
def add_user_to_privilege_list user
add_operation(:privilege_users,user)
end
def remove_user_from_privilege_list user
remove_operation(:privilege_users,user)
end
def remove_operation(item,obj)
if (self.send item).include? obj
(self.send item).delete obj
self.save!
else
false #should put error message for user not existed in list
end
end
end
def add_user_to_privilege_list user
unless self.privilege_users.include? user
self.privilege_users << user
def add_operation(item,obj)
unless (self.send item).include?(obj)
(self.send item) << obj
self.save!
else
false #should put error message for user existed in list already
end
end
def remove_user_from_privilege_list user
if self.privilege_users.include? user
self.privilege_users.delete user
self.save!
else
false #should put error message for user not existed in list
end
end
def auth_users
if self.all?
User.all.entries
else
ary= self.roles.collect do |role|
role.users
ary=[]
[:roles,:sub_roles].each do |t_role|
ary += (self.send t_role).collect do |role|
role.users
end
end
ary << self.privilege_users
ary.flatten!
ary.flatten!.uniq
end
end
+8
View File
@@ -9,6 +9,14 @@ class ModuleApp
field :intro
field :update_info
field :create_date
field :enable_frontend,type: Boolean
field :app_pages ,type: Array
field :widgets ,type: Array
has_one :app_auth,dependent: :delete
field :app_pages ,type: Array
+4 -1
View File
@@ -19,7 +19,10 @@ class User
accepts_nested_attributes_for :attribute_values, :allow_destroy => true
def avb_apps
query = AppAuth.any_of({all: true},{privilege_user_ids: self.id},{roles: self.role.id}).excludes(blocked_user_ids: self.id)
sub_role_ids_ary=self.sub_roles.collect{|t| t.id}
query1 = AppAuth.any_in({sub_role_ids: sub_role_ids_ary}).excludes(blocked_user_ids: self.id)
query2 = AppAuth.any_of({all: true},{privilege_user_ids: self.id},{role_ids: self.role.id}).excludes(blocked_user_ids: self.id)
(query1 + query2).uniq
end
def name
+50 -30
View File
@@ -1,32 +1,52 @@
<% content_for :secondary do %>
<div id='user_list'>
<div class="role_list">
<h1>User Role</h1>
<ul class="list">
<% @roles.each do |role| %>
<li class="set_1"><%= link_to content_tag(:span, "Role") %></li>
<% end -%>
</ul>
</div>
</div>
<% end -%>
<h1><%= t('admin.list_app_auths') %></h1>
<table>
<tr>
<th><%= t('admin.app.name') %></th>
<th><%= t('admin.description') %></th>
</tr>
<% @app_auth_data.each do |app| %>
<tr>
<td><%= app[0][:app_obj].title %></td>
<% app[0][:auth_field].each do |unit| %>
<td>
<%= render :partial => "auth_unit",:locals => {:unit => unit } %>
</td>
<%end%>
</tr>
<% #render 'side_bar' %>
<% end %>
</table>
<div class="main_list">
<%= flash_messages %>
<div class="button_bar up">
<% #link_to t('admin.new_user'), new_admin_user_path, :class => 'new' %>
</div>
<table>
<thead>
<tr>
<td><%= t('admin.app.title') %></td>
<td><%= t('admin.app.description') %></td>
<td><%= t('admin.app.use_status') %></td>
<td><%= t('admin.app.autdor') %></td>
<td><%= t('admin.app.organization') %></td>
<td><%= t('admin.app.version') %></td>
<td class="action"><%= t('admin.action') %></td>
</tr>
</thead>
<tbody>
<% @module_apps.each do |module_app| %>
<tr class="have" id="attribute_<%= module_app.id %>" class="have <%= "#{module_app.enable_frontend? ? 'disable' : ''}" %>">
<td class="name"><%= module_app.title %></td>
<td class="name"><%= module_app.intro %></td>
<td>
<% attribute_type = "module_app" %>
<% attribute = module_app %>
<%= link_to t(:enable), admin_module_app_path(attribute, :authenticity_token => form_authenticity_token, :module_app => {:enable_frontend => true}), :remote => true, :method => :put, :id => "disable_#{attribute.id}", :style => "display:#{attribute.enable_frontend ? 'none' : ''}", :class => 'switch' %>
<%= link_to t(:disable), admin_module_app_path(attribute, :authenticity_token => form_authenticity_token, :module_app => {:enable_frontend => false}), :remote => true, :method => :put, :id => "enable_#{attribute.id}", :style => "display:#{attribute.enable_frontend ? '' : 'none'}", :class => 'switch' %>
</td>
<td class="email"><%= module_app.author %></td>
<td class="email"><%= module_app.organization %></td>
<td class="admin"><%= module_app.version %></td>
<td class="action">
<%= link_to t(:show), admin_module_app_path(module_app), :class => 'show' %>
<%= link_to t(:edit), edit_admin_module_app_path(module_app), :class => 'edit' %>
<%= link_to t(:delete), admin_module_app_path(module_app), :class => 'delete', :confirm => t('sure?'), :method => :delete %>
</td>
</tr>
<tr>
<td colspan="5"></td>
</tr>
<% end %>
</tbody>
</table>
<div class="button_bar">
<%# link_to t('admin.new_user'), new_admin_user_path, :class => 'new' %>
</div>
</div>
+1 -1
View File
@@ -38,7 +38,7 @@
<%= f.hidden_field :to_save, :value => true %>
<% end %>
<% else %>
<%= File.basename (@design.default_css.file.url) %>
<%= File.basename (@design.default_css.file.url) rescue "" %>
<% end %>
</p>
<p>
+1 -1
View File
@@ -1,6 +1,6 @@
<h1><%= t('admin.new_design') %></h1>
<%= form_for :design, :url => admin_designs_path do |f| %>
<%= form_for @design, :url => admin_design_path(@design),:html => {:multipart => true} do |f| %>
<%= f.error_messages %>
<%= render :partial => "form", :locals => { :f => f } %>
@@ -1 +1 @@
<%= f.select :module_app, @apps.collect { |t| [t.title.capitalize, t.id] }, {:include_blank => true} ,{:rel => admin_module_apps_path } %>
<%= f.select :module_app_id, @apps.collect { |t| [t.title.capitalize, t.id] }, {:include_blank => true} ,{:rel => admin_module_apps_path } %>
Whitespace-only changes.
+1 -1
View File
@@ -33,7 +33,7 @@
<p>
<%= t('admin.module_app') %>
<%= render :partial => "admin/module_apps/app_selector", :locals => { :f => f } %>
<span id="app_page_url"></span>
<span id="app_page_url"><%= select('page','app_frontend_url', @app_frontend_urls ) rescue ''%> </span>
</p>
<p>
<%= f.label :is_published, "#{t('admin.is_published')} ?" %>
+53 -53
View File
@@ -1,59 +1,59 @@
<div class="info_input">
<table border="0" cellspacing="0" cellpadding="0">
<thead class="list_head">
<tr>
<td><%= t('admin.key') %></td>
<% @site_valid_locales.each do |locale| %>
<td><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></td>
<% end %>
</tr>
</thead>
<tbody>
<tr class="list_item">
<td><%= sub_role.new_record? ? (f.text_field :key, {:style => "width:150px"}) : sub_role.key %></td>
<%= f.fields_for :i18n_variable, (sub_role.new_record? ? sub_role.build_i18n_variable : sub_role.i18n_variable) do |f| %>
<% @site_valid_locales.each do |locale| %>
<td><%= f.text_field locale, :style => "width:150px" %></td>
<% end %>
<div class="info_input">
<table border="0" cellspacing="0" cellpadding="0">
<thead class="list_head">
<tr>
<td><%= t('admin.key') %></td>
<% @site_valid_locales.each do |locale| %>
<td><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></td>
<% end %>
</tr>
</thead>
<tbody>
<tr class="list_item">
<td><%= sub_role.new_record? ? (f.text_field :key, {:style => "width:150px"}) : sub_role.key %></td>
<%= f.fields_for :i18n_variable, (sub_role.new_record? ? sub_role.build_i18n_variable : sub_role.i18n_variable) do |f| %>
<% @site_valid_locales.each do |locale| %>
<td><%= f.text_field locale, :style => "width:150px" %></td>
<% end %>
<% end %>
</tr>
</tbody>
</table>
<div class="group">
<h2>Attributes</h2>
<div class="info_input">
<table class="sub_role_attributes" border="0" cellspacing="0" cellpadding="0">
<thead class="list_head">
<tr>
<td><%= t('admin.key') %></td>
<td><%= t('admin.multilingual') %></td>
<% @site_valid_locales.each do |locale| %>
<td><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></td>
<% end %>
<td><%= t('admin.type')%></td>
<td>&nbsp;</td>
</tr>
</thead>
<tfoot>
<tr>
<td colspan="6">
<div id='add_attribute'>
<%= hidden_field_tag 'attribute_field_count', sub_role.attribute_fields.count %>
<a href="#" class="add"><%= t(:add) %></a>
<%= hidden_field_tag 'sub_role_temp_id', (i rescue 'new_sub_roles') %>
</div>
</td>
</tr>
</tfoot>
<tbody>
<% sub_role.attribute_fields.each do |attribute_field| %>
<%= render :partial => 'attribute_field', :object => attribute_field, :locals => {:f => f} %>
<% end %>
</tr>
</tbody>
</table>
<div class="group">
<h2>Attributes</h2>
<div class="info_input">
<table class="sub_role_attributes" border="0" cellspacing="0" cellpadding="0">
<thead class="list_head">
<tr>
<td><%= t('admin.key') %></td>
<td><%= t('admin.multilingual') %></td>
<% @site_valid_locales.each do |locale| %>
<td><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></td>
<% end %>
<td><%= t('admin.type')%></td>
<td>&nbsp;</td>
</tr>
</thead>
<tfoot>
<tr>
<td colspan="6">
<div id='add_attribute'>
<%= hidden_field_tag 'attribute_field_count', sub_role.attribute_fields.count %>
<a href="#" class="add"><%= t(:add) %></a>
<%= hidden_field_tag 'sub_role_temp_id', (i rescue 'new_sub_roles') %>
</div>
</td>
</tr>
</tfoot>
<tbody>
<% sub_role.attribute_fields.each do |attribute_field| %>
<%= render :partial => 'attribute_field', :object => attribute_field, :locals => {:f => f} %>
<% end %>
</tbody>
</table>
</div>
</tbody>
</table>
</div>
</div>
</div>
<% content_for :page_specific_javascript do %>
<script>
+35 -35
View File
@@ -1,39 +1,39 @@
<div id="sub_role_<%= sub_role.id %>" class="group" <%= raw(' style="display: none;"') unless @user.sub_role_ids.include?(sub_role.id) %>>
<h2><%= sub_role.i18n_variable[I18n.locale] %></h2>
<div class="info_input">
<table border="0" cellspacing="0" cellpadding="0">
<thead class="list_head">
<tr>
<td><%= t("admin.key") %></td>
<% @site_valid_locales.each do |locale| %>
<td><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></td>
<% end %>
</tr>
</thead>
<tbody>
<% sub_role.get_enabled_attribute_fields.each do |attr| %>
<h2><%= sub_role.i18n_variable[I18n.locale] %></h2>
<div class="info_input">
<table border="0" cellspacing="0" cellpadding="0">
<thead class="list_head">
<tr>
<td><%= t("admin.key") %></td>
<% @site_valid_locales.each do |locale| %>
<td><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></td>
<% end %>
</tr>
</thead>
<tbody>
<% sub_role.get_enabled_attribute_fields.each do |attr| %>
<%= f.fields_for :attribute_values, @user.get_value_from_field_id(attr.id) do |f| %>
<tr class="list_item">
<td><%= attr.i18n_variable[I18n.locale] %></td>
<% if attr["locale"] && attr["markup"] == 'text_field' %>
<% @site_valid_locales.each do |locale| %>
<td><%= f.text_field locale %></td>
<% end %>
<% else %>
<td colspan=<%= @site_valid_locales.size %>>
<% if attr["markup"] == "text_field" %>
<%= f.text_field :non_locale %>
<% elsif attr["markup"] == "select" %>
<%= f.select :non_locale, options_for_select(attr["options"], value['non_locale']) %>
<% end -%>
</td>
<% end -%>
<%= f.hidden_field :attribute_field_id, :value => attr.id %>
<%= f.hidden_field :key, :value => attr.key %>
</tr>
<tr class="list_item">
<td><%= attr.i18n_variable[I18n.locale] %></td>
<% if attr["locale"] && attr["markup"] == 'text_field' %>
<% @site_valid_locales.each do |locale| %>
<td><%= f.text_field locale %></td>
<% end %>
<% else %>
<td colspan=<%= @site_valid_locales.size %>>
<% if attr["markup"] == "text_field" %>
<%= f.text_field :non_locale %>
<% elsif attr["markup"] == "select" %>
<%= f.select :non_locale, options_for_select(attr["options"], value['non_locale']) %>
<% end -%>
</td>
<% end -%>
<%= f.hidden_field :attribute_field_id, :value => attr.id %>
<%= f.hidden_field :key, :value => attr.key %>
</tr>
<% end %>
<% end %>
</tbody>
</table>
<% end %>
</tbody>
</table>
</div>
</div>
</div>
+1 -1
View File
@@ -2,7 +2,7 @@
<%= render 'side_bar' %>
<% end %>
<div id="profile" class="clear">>
<div id="profile" class="clear">
<%= form_for @user, :url => admin_user_path(@user), :html => { :multipart => true } do |f| %>
<%= f.error_messages %>
<%= render :partial => 'form', :locals => { :f => f } %>