fronted open switch and backend openness
This commit is contained in:
		
							parent
							
								
									11067ef34f
								
							
						
					
					
						commit
						5ff7dfbac6
					
				| 
						 | 
					@ -5,8 +5,9 @@ class Admin::DashboardsController < OrbitBackendController
 | 
				
			||||||
#  before_filter :is_admin?
 | 
					#  before_filter :is_admin?
 | 
				
			||||||
  
 | 
					  
 | 
				
			||||||
  def index
 | 
					  def index
 | 
				
			||||||
  	@module_app_contents, @module_app_contents_total = get_module_app_count('bulletin', 'page_context', 'web_link')
 | 
					    check_backend_openness
 | 
				
			||||||
  	@recent_updated = get_recently_updated('bulletin', 'page_context', 'web_link')
 | 
					    @module_app_contents, @module_app_contents_total = get_module_app_count('bulletin', 'page_context', 'web_link')
 | 
				
			||||||
 | 
					    @recent_updated = get_recently_updated('bulletin', 'page_context', 'web_link')
 | 
				
			||||||
    @most_visited = get_most_visited('bulletin', 'page_context')
 | 
					    @most_visited = get_most_visited('bulletin', 'page_context')
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -16,6 +16,7 @@ class Admin::SitesController < OrbitBackendController
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def update
 | 
					  def update
 | 
				
			||||||
    @site.update_attributes(params[:site])
 | 
					    @site.update_attributes(params[:site])
 | 
				
			||||||
 | 
					    site_restart
 | 
				
			||||||
    redirect_to :back
 | 
					    redirect_to :back
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -17,7 +17,15 @@ class ApplicationController < ActionController::Base
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  helper_attr :site_valid_locales
 | 
					  helper_attr :site_valid_locales
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def check_backend_openness
 | 
				
			||||||
 | 
					    if !Me.backend_openness_on
 | 
				
			||||||
 | 
					      redirect_to '/users/sign_in'   if not (authenticate_user! and is_member? )
 | 
				
			||||||
 | 
					    end
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def site_restart
 | 
				
			||||||
 | 
					    Resque.enqueue(RestartServer)
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def set_current_user
 | 
					  def set_current_user
 | 
				
			||||||
    User.current = current_or_guest_user
 | 
					    User.current = current_or_guest_user
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -15,6 +15,7 @@ class OrbitBackendController < ApplicationController
 | 
				
			||||||
  private
 | 
					  private
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def force_order_for_visitor
 | 
					  def force_order_for_visitor
 | 
				
			||||||
 | 
					    check_backend_openness
 | 
				
			||||||
    setup_vars
 | 
					    setup_vars
 | 
				
			||||||
    set_current_user
 | 
					    set_current_user
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,8 +1,15 @@
 | 
				
			||||||
class PagesController < ApplicationController
 | 
					class PagesController < ApplicationController
 | 
				
			||||||
  include ApplicationHelper
 | 
					  include ApplicationHelper
 | 
				
			||||||
  before_filter :get_item, :only => [:index_from_link, :show_from_link]
 | 
					  before_filter :get_item, :only => [:index_from_link, :show_from_link]
 | 
				
			||||||
 | 
					  before_filter :check_frontend_open, :only => [:index,:show]
 | 
				
			||||||
  # caches_page :index
 | 
					  # caches_page :index
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def check_frontend_open
 | 
				
			||||||
 | 
					    if Me.frontend_closed
 | 
				
			||||||
 | 
					      redirect_to '/admin/dashboards'  
 | 
				
			||||||
 | 
					    end
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def index
 | 
					  def index
 | 
				
			||||||
    @item = Page.find_by_name('home')
 | 
					    @item = Page.find_by_name('home')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,8 @@
 | 
				
			||||||
 | 
					class RestartServer 
 | 
				
			||||||
 | 
					  @queue = :high
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def self.perform()
 | 
				
			||||||
 | 
					    temp_directory = "#{Rails.root}/tmp/"
 | 
				
			||||||
 | 
					    %x[touch #{temp_directory}restart.txt ]
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
| 
						 | 
					@ -11,6 +11,10 @@ class Site
 | 
				
			||||||
  field :roaming_id
 | 
					  field :roaming_id
 | 
				
			||||||
  field :private_key, :type => Binary
 | 
					  field :private_key, :type => Binary
 | 
				
			||||||
  field :public_key, :type => Binary
 | 
					  field :public_key, :type => Binary
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  field :frontend_closed, :type => Boolean, :default => false
 | 
				
			||||||
 | 
					  field :backend_openness_on, :type => Boolean, :default => false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  field :title_always_on, :type => Boolean, :default => false
 | 
					  field :title_always_on, :type => Boolean, :default => false
 | 
				
			||||||
  field :dashbroad_allow_visitor, :type => Boolean, :default => false
 | 
					  field :dashbroad_allow_visitor, :type => Boolean, :default => false
 | 
				
			||||||
  field :mail_settings, :type => Hash
 | 
					  field :mail_settings, :type => Hash
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -35,6 +35,14 @@
 | 
				
			||||||
              </div>
 | 
					              </div>
 | 
				
			||||||
            <% end %>
 | 
					            <% end %>
 | 
				
			||||||
          <% end %>
 | 
					          <% end %>
 | 
				
			||||||
 | 
					          <div class="control-group">
 | 
				
			||||||
 | 
					            <label class="control-label"><%= t 'site.openness' %></label>
 | 
				
			||||||
 | 
					            <div class="controls">
 | 
				
			||||||
 | 
					              <%= f.check_box :frontend_closed %><%= I18n.t('site.frontend_closed') %><br/>
 | 
				
			||||||
 | 
					              <%= f.check_box :backend_openness_on %><%= I18n.t('site.backend_openness_on') %>
 | 
				
			||||||
 | 
					              <p class="help-block"><%= (t 'site.search_help').html_safe %></p>
 | 
				
			||||||
 | 
					            </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
          <div class="control-group">
 | 
					          <div class="control-group">
 | 
				
			||||||
            <label class="control-label"><%= t 'site.search' %></label>
 | 
					            <label class="control-label"><%= t 'site.search' %></label>
 | 
				
			||||||
            <div class="controls">
 | 
					            <div class="controls">
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,8 @@
 | 
				
			||||||
          <a class="brand dropdown-toggle" data-toggle="dropdown" href="#">Orbit</a>
 | 
					          <a class="brand dropdown-toggle" data-toggle="dropdown" href="#">Orbit</a>
 | 
				
			||||||
          <ul class="dropdown-menu">
 | 
					          <% if Me.backend_openness_on %>
 | 
				
			||||||
              <li><%= link_to content_tag(:i, nil, :class => 'icons-gauge') + t(:dashboard_), admin_dashboards_path %></li>
 | 
					            <ul class="dropdown-menu">
 | 
				
			||||||
              <li><%= link_to content_tag(:i, nil, :class => 'icons-users') + t(:member), admin_users_new_interface_index_path %></li>
 | 
					                <li><%= link_to content_tag(:i, nil, :class => 'icons-gauge') + t(:dashboard_), admin_dashboards_path %></li>
 | 
				
			||||||
          </ul>
 | 
					                <li><%= link_to content_tag(:i, nil, :class => 'icons-users') + t(:member), admin_users_new_interface_index_path %></li>
 | 
				
			||||||
 | 
					            </ul>    
 | 
				
			||||||
 | 
					          <% end %>  
 | 
				
			||||||
 | 
					          
 | 
				
			||||||
| 
						 | 
					@ -38,7 +38,7 @@
 | 
				
			||||||
      <li class="dropdown language">
 | 
					      <li class="dropdown language">
 | 
				
			||||||
        <a class="dropdown-toggle orbit-bar-language" href="#" data-toggle="dropdown" data-icons=""></a>
 | 
					        <a class="dropdown-toggle orbit-bar-language" href="#" data-toggle="dropdown" data-icons=""></a>
 | 
				
			||||||
        <ul class="dropdown-menu language-menu">
 | 
					        <ul class="dropdown-menu language-menu">
 | 
				
			||||||
          <% @site_in_use_locales.each do |locale| %>
 | 
					          <% @site_in_use_locales.compact.each do |locale| %>
 | 
				
			||||||
            <%= content_tag :li, (link_to t(:_locale, :locale => locale), add_locale(remove_locale((referer rescue request.fullpath)), locale)), :class => (I18n.locale.eql?(locale.to_sym) ? 'active' : nil) %>
 | 
					            <%= content_tag :li, (link_to t(:_locale, :locale => locale), add_locale(remove_locale((referer rescue request.fullpath)), locale)), :class => (I18n.locale.eql?(locale.to_sym) ? 'active' : nil) %>
 | 
				
			||||||
          <% end %>
 | 
					          <% end %>
 | 
				
			||||||
        </ul>
 | 
					        </ul>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -77,5 +77,3 @@ module Orbit
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
Orbit_Apps = []
 | 
					Orbit_Apps = []
 | 
				
			||||||
VALID_LOCALES = ["en", "zh_tw"]
 | 
					VALID_LOCALES = ["en", "zh_tw"]
 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -5,3 +5,4 @@ YAML::ENGINE.yamler = 'syck'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Initialize the rails application
 | 
					# Initialize the rails application
 | 
				
			||||||
Orbit::Application.initialize!
 | 
					Orbit::Application.initialize!
 | 
				
			||||||
 | 
					Me = Site.first
 | 
				
			||||||
| 
						 | 
					@ -370,17 +370,20 @@ en:
 | 
				
			||||||
    summary: Summary
 | 
					    summary: Summary
 | 
				
			||||||
    thumbnail: Thumbnail
 | 
					    thumbnail: Thumbnail
 | 
				
			||||||
  site:
 | 
					  site:
 | 
				
			||||||
 | 
					    backend_openness_on: Backend Openness 
 | 
				
			||||||
    default_image: Site default image
 | 
					    default_image: Site default image
 | 
				
			||||||
    description: Site description
 | 
					    description: Site description
 | 
				
			||||||
    description_help: Description Guide
 | 
					    description_help: Description Guide
 | 
				
			||||||
    footer: Site footer
 | 
					    footer: Site footer
 | 
				
			||||||
    footer_help: Footer Guide
 | 
					    footer_help: Footer Guide
 | 
				
			||||||
 | 
					    frontend_closed: Frontend Closed
 | 
				
			||||||
    header: Site header
 | 
					    header: Site header
 | 
				
			||||||
    info: Site information
 | 
					    info: Site information
 | 
				
			||||||
    keywords: Site keywords
 | 
					    keywords: Site keywords
 | 
				
			||||||
    keywords_help: Keyword Guide
 | 
					    keywords_help: Keyword Guide
 | 
				
			||||||
    language: Site language
 | 
					    language: Site language
 | 
				
			||||||
    mobile_version: Mobile version
 | 
					    mobile_version: Mobile version
 | 
				
			||||||
 | 
					    openness: Openness
 | 
				
			||||||
    search: Site Search
 | 
					    search: Site Search
 | 
				
			||||||
    search_help: Please Enter the search argument for Google search.
 | 
					    search_help: Please Enter the search argument for Google search.
 | 
				
			||||||
    settings: Site setting
 | 
					    settings: Site setting
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -370,6 +370,8 @@ zh_tw:
 | 
				
			||||||
    summary: 摘要
 | 
					    summary: 摘要
 | 
				
			||||||
    thumbnail: 縮圖
 | 
					    thumbnail: 縮圖
 | 
				
			||||||
  site:
 | 
					  site:
 | 
				
			||||||
 | 
					    frontend_closed: 前台關閉?
 | 
				
			||||||
 | 
					    backend_openness_on: 開啟開放式後台(訪客可遊覽)
 | 
				
			||||||
    default_image: 預設圖像
 | 
					    default_image: 預設圖像
 | 
				
			||||||
    description: 網站描述
 | 
					    description: 網站描述
 | 
				
			||||||
    description_help: 網站描述說明
 | 
					    description_help: 網站描述說明
 | 
				
			||||||
| 
						 | 
					@ -381,6 +383,7 @@ zh_tw:
 | 
				
			||||||
    keywords_help: 關鍵字說明
 | 
					    keywords_help: 關鍵字說明
 | 
				
			||||||
    language: 網站語言
 | 
					    language: 網站語言
 | 
				
			||||||
    mobile_version: 手機版
 | 
					    mobile_version: 手機版
 | 
				
			||||||
 | 
					    openness: 開放模式
 | 
				
			||||||
    search: 網站搜尋
 | 
					    search: 網站搜尋
 | 
				
			||||||
    search_help: 請輸入送交Google搜尋的參數
 | 
					    search_help: 請輸入送交Google搜尋的參數
 | 
				
			||||||
    settings: 基本設定
 | 
					    settings: 基本設定
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue