Archived
Compare commits
16
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e89656cdd1 | ||
|
|
077e98a6d4 | ||
|
|
52f8e9f1b8 | ||
|
|
aca97f85d8 | ||
|
|
1a79c2fed3 | ||
|
|
947f2765c6 | ||
|
|
8fb3b408b4 | ||
|
|
0dff9163bc | ||
|
|
b533b3f6ea | ||
|
|
2a83c6b51d | ||
|
|
774cc5d392 | ||
|
|
671257992a | ||
|
|
280523fbeb | ||
|
|
07964de968 | ||
|
|
d226b34de5 | ||
|
|
43da2eca79 |
No files matched your search
@@ -1,48 +1,9 @@
|
||||
class Admin::ModuleStoreController < OrbitBackendController
|
||||
|
||||
@@store = STORE_CONFIG[:store_settings]["url"]
|
||||
|
||||
def index
|
||||
@extensions = get_extensions
|
||||
end
|
||||
|
||||
def show
|
||||
@extension = get_extension(params[:id]) rescue nil
|
||||
end
|
||||
|
||||
def download
|
||||
#get extension related values
|
||||
extension = get_extension(params[:id]) rescue nil
|
||||
download_link = @@store + "/"+ extension["extension"]["extension"]["url"]
|
||||
downloaded_file_name = extension["extension_filename"]
|
||||
module_app_name = downloaded_file_name.split(/(.zip)/).first
|
||||
|
||||
#check if the directory exists or not
|
||||
@module_status = Dir.exists?("#{Rails.root}/vendor/built_in_modules/#{module_app_name}")
|
||||
if @module_status.eql?(true)
|
||||
flash[:notice] = "This module is already installed"
|
||||
else
|
||||
download_extension(download_link, downloaded_file_name,module_app_name)
|
||||
flash[:notice] = "This module has been successfully installed"
|
||||
end
|
||||
redirect_to admin_module_store_path
|
||||
end
|
||||
|
||||
protected
|
||||
|
||||
def get_extensions
|
||||
JSON.parse(open("#{@@store}/api/extensions").read)
|
||||
end
|
||||
|
||||
def get_extension(id)
|
||||
JSON.parse(open("#{@@store}/api/extensions/#{id}").read)
|
||||
end
|
||||
|
||||
def download_extension(download_link, downloaded_file_name,module_app_name)
|
||||
puts %x(wget "#{download_link}")
|
||||
puts %x(unzip "#{downloaded_file_name}")
|
||||
puts %x(mv #{module_app_name} "#{Rails.root}/vendor/built_in_modules/")
|
||||
puts %x(rm "#{downloaded_file_name}")
|
||||
site_restart
|
||||
end
|
||||
end
|
||||
@@ -3,7 +3,6 @@ class Admin::SitesController < OrbitBackendController
|
||||
before_filter :authenticate_user!
|
||||
before_filter :is_admin?
|
||||
before_filter :get_site
|
||||
before_filter :git_branch
|
||||
|
||||
# def index
|
||||
# @site = Site.first
|
||||
@@ -108,43 +107,6 @@ class Admin::SitesController < OrbitBackendController
|
||||
render :nothing => true
|
||||
end
|
||||
|
||||
def update_manager
|
||||
end
|
||||
|
||||
def get_update_history
|
||||
@update_log = %x{git log --pretty=format:"%ad','%s" --date=short}.split("\n").map{|log| log.gsub("'","").split(",")}.to_json
|
||||
render :json => @update_log
|
||||
end
|
||||
|
||||
def check_updates
|
||||
%x(git fetch origin)
|
||||
@new_updates = %x(git log #{@branch}..origin/#{@branch} --pretty=format:"%ad','%s" --date=short).split("\n").map{|log| log.gsub("'","").split(",")}.to_json
|
||||
render :json => @new_updates
|
||||
end
|
||||
|
||||
def update_orbit
|
||||
result = ""
|
||||
need_stash = %x(git diff).blank?
|
||||
%x(git stash) unless need_stash
|
||||
%x(git fetch origin)
|
||||
pull_result = %x(git pull -r --ff-only 2>&1 origin #{@branch})
|
||||
|
||||
if pull_result.include? "fatal: Not possible to fast-forward, aborting."
|
||||
result = "failed"
|
||||
else
|
||||
result = "success"
|
||||
%x{bundle install}
|
||||
%x{touch tmp/restart.txt}
|
||||
end
|
||||
%x(git stash pop) unless need_stash
|
||||
|
||||
render :text => result
|
||||
end
|
||||
|
||||
def restart_server
|
||||
render :text => "success"
|
||||
end
|
||||
|
||||
protected
|
||||
|
||||
def update_design(design)
|
||||
@@ -162,9 +124,5 @@ class Admin::SitesController < OrbitBackendController
|
||||
def get_site
|
||||
@site ||= Site.first
|
||||
end
|
||||
|
||||
def git_branch
|
||||
@branch = %x(git rev-parse --abbrev-ref HEAD).gsub("\n","")
|
||||
end
|
||||
|
||||
end
|
||||
@@ -1,7 +1,7 @@
|
||||
class Admin::TemplateStoreController < OrbitBackendController
|
||||
|
||||
|
||||
@@store_domain = STORE_CONFIG[:store_settings]["url"]
|
||||
@@store_domain = "http://store.tp.rulingcom.com"
|
||||
def index
|
||||
@store = @@store_domain
|
||||
@templates = JSON.parse(get_templates)
|
||||
@@ -33,4 +33,6 @@ class Admin::TemplateStoreController < OrbitBackendController
|
||||
response.body
|
||||
end
|
||||
|
||||
|
||||
|
||||
end
|
||||
@@ -197,8 +197,8 @@ class PagesController < ApplicationController
|
||||
else
|
||||
model = params[:app_action].classify.constantize rescue nil
|
||||
if !model.nil?
|
||||
item = model.where(:_id=>params[:id]).first
|
||||
@item = Item.where(:category => [item.category_id.to_s]).first if !module_app.has_category.blank? and !item.blank?
|
||||
item = model.find(params[:id])
|
||||
@item = Item.where(:category => [item.category_id.to_s]).first if !module_app.has_category.blank?
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
class SamlLoginsController < ApplicationController
|
||||
|
||||
require "net/http"
|
||||
require "uri"
|
||||
require 'rexml/document'
|
||||
include REXML
|
||||
|
||||
def index
|
||||
|
||||
if params[:wa] == "wsignoutcleanup1.0" #logout
|
||||
|
||||
redirect_to :root
|
||||
|
||||
else #login
|
||||
|
||||
|
||||
@wresult = params[:wresult]
|
||||
@wctx = params[:wctx]
|
||||
|
||||
@main_url = LIST[:sites][@wctx]['url']
|
||||
@main_public_key = LIST[:sites][@wctx]['key']
|
||||
|
||||
@doc = REXML::Document.new @wresult
|
||||
|
||||
public_key = OpenSSL::PKey::RSA.new(@main_public_key)
|
||||
encrypted_data = public_key.public_encrypt(@doc.elements["//saml:AttributeValue"].text)
|
||||
|
||||
redirect_to "http://#{@main_url}/user_login?" + { :wresult => encrypted_data }.to_param
|
||||
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
end
|
||||
@@ -193,8 +193,8 @@ module ApplicationHelper
|
||||
stylesheets = ''
|
||||
stylesheets << "<link href='#{asset_path 'orbit_bar_bootstrap'}' rel='stylesheet' type='text/css' />\n"
|
||||
stylesheets << "<link href='#{page.design.css_reset.file.url}' rel='stylesheet' type='text/css' />\n" if page.design.css_reset
|
||||
# stylesheets << "<link href='#{asset_path 'banner_nav.css'}' rel='stylesheet' type='text/css' />\n"
|
||||
# stylesheets << "<link href='#{asset_path 'default_widget.css'}' rel='stylesheet' type='text/css' />\n"
|
||||
stylesheets << "<link href='#{asset_path 'banner_nav.css'}' rel='stylesheet' type='text/css' />\n"
|
||||
stylesheets << "<link href='#{asset_path 'default_widget.css'}' rel='stylesheet' type='text/css' />\n"
|
||||
stylesheets << "<link href='#{page.design.css_default.file.url}' rel='stylesheet' type='text/css' />\n" if page.design.css_default
|
||||
theme = page.design.themes.detect{ |d| d.id == page.theme_id }
|
||||
stylesheets << "<link href='#{theme.file.url}' rel='stylesheet' type='text/css' />\n" if theme
|
||||
|
||||
@@ -271,31 +271,17 @@ module OrbitBackendHelper
|
||||
# TODO: links to other actions
|
||||
# ===============================================================
|
||||
def footer(args={})
|
||||
|
||||
if args[:link_name]
|
||||
link_name = args[:link_name]
|
||||
else
|
||||
link_name = content_tag(:i, nil, :class => 'icon-plus') + ' ' + t(:add)
|
||||
end
|
||||
|
||||
paginate = args.has_key?(:paginate) ? args[:paginate] : true
|
||||
link = (is_manager? || is_sub_manager? rescue nil) && args.has_key?(:link) ? true : false
|
||||
if paginate || link
|
||||
@index_footer = content_tag :div, class: "bottomnav clearfix" do
|
||||
concat content_tag :div, link_to(link_name, args[:link].blank? ? '#' : send(args[:link]), :class => (args[:link_class] || 'btn btn-primary'), data: args[:link_data]), class: "action pull-right" if link
|
||||
concat content_tag :div, link_to(content_tag(:i, nil, :class => 'icon-plus') + ' ' + t(:add), args[:link].blank? ? '#' : send(args[:link]), :class => (args[:link_class] || 'btn btn-primary'), data: args[:link_data]), class: "action pull-right" if link
|
||||
concat content_tag :div, paginate(@objects, :params => {:direction => params[:direction], :sort => params[:sort], :filter => @filter, :new_filter => nil, :sort_options => params[:sort_options]}), class: "pagination pagination-centered" if paginate
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def get_quick_link(quick, object, authorization, approvable)
|
||||
|
||||
if !quick[:link_option].blank?
|
||||
link_option = ",#{quick[:link_option]}"
|
||||
else
|
||||
link_option = ""
|
||||
end
|
||||
|
||||
case quick[:type]
|
||||
when 'approval'
|
||||
if show_approval_link(object)
|
||||
@@ -307,12 +293,12 @@ module OrbitBackendHelper
|
||||
end
|
||||
when 'edit'
|
||||
if authorization && approvable
|
||||
content_tag :li, link_to(t(quick[:translation] || :edit), quick[:link].nil? ? '#' : eval("#{quick[:link]}('#{object.id}'#{link_option})"), class: quick[:class], data: eval("#{quick[:data]}"))
|
||||
content_tag :li, link_to(t(quick[:translation] || :edit), quick[:link].nil? ? '#' : eval("#{quick[:link]}('#{object.id}')"), class: quick[:class], data: eval("#{quick[:data]}"))
|
||||
end
|
||||
when 'delete'
|
||||
if show_delete_link(object)
|
||||
@delete_options = {title: quick[:title], warning: quick[:warning], cancel: quick[:cancel], submit: quick[:submit]}
|
||||
content_tag :li, link_to(t(quick[:translation] || :delete_), '#', rel: eval("#{quick[:link]}('#{object.id}'#{link_option})"), class: "delete #{quick[:class] || 'text-error'}")
|
||||
content_tag :li, link_to(t(quick[:translation] || :delete_), '#', rel: eval("#{quick[:link]}('#{object.id}')"), class: "delete #{quick[:class] || 'text-error'}")
|
||||
end
|
||||
when 'detail'
|
||||
content_tag :li, link_to(t(quick[:translation] || :detail), '#', class: (quick[:class] || "detail-row"))
|
||||
|
||||
@@ -42,7 +42,7 @@ class AvatarUploader < CarrierWave::Uploader::Base
|
||||
# end
|
||||
|
||||
version :thumb do
|
||||
process :resize_to_fit => [200, 200]
|
||||
process :resize_to_fit => [80, 80]
|
||||
end
|
||||
|
||||
# Add a white list of extensions which are allowed to be uploaded.
|
||||
|
||||
@@ -20,8 +20,6 @@
|
||||
|
||||
<li title="<%= t('preference') %>"><%= link_to admin_site_preference_path(@site), :class => active_for_action('sites', 'preference') do %><span><i class="icons-cog"></i></span><%end%></li>
|
||||
|
||||
<li title="<%= t('update_manager') %>"><%= link_to admin_site_update_manager_path(@site), :class => active_for_action('sites', 'update_manager') do %><span><i class="icon-refresh"></i></span><%end%></li>
|
||||
|
||||
<!-- <li title="System Info"><a href="/orbit_4.0.1/admin/system_info/index.shtml?sidebarNavList=8&subNavBlockList=0"><span><i class="icons-info-2"></i></span></a></li>
|
||||
--> </ul>
|
||||
</div>
|
||||
|
||||
@@ -14,14 +14,8 @@
|
||||
<%= javascript_include_tag 'lib/retina' %>
|
||||
<%= javascript_include_tag 'lib/mudole_templates_status' %>
|
||||
</head>
|
||||
<!--
|
||||
<% @extensions.each do |extension|%>
|
||||
<%=link_to extension["title"], admin_module_store_show_path(extension["_slugs"][0])%>
|
||||
<%end%> -->
|
||||
|
||||
<%= flash[:notice] rescue nil%>
|
||||
|
||||
<table id="mt-list" class="table main-list">
|
||||
<table id="mt-list" class="table main-list">
|
||||
<thead>
|
||||
<tr class="sort-header">
|
||||
<th class="first"><a href="#">Module Title</a></th>
|
||||
@@ -31,38 +25,6 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<% @extensions.each do |extension|%>
|
||||
<tr>
|
||||
<td class="detail-row">
|
||||
<div class="module_icon pull-left">
|
||||
<%= image_tag "module_icon.png"%>
|
||||
</div>
|
||||
<h5 class="mt_title"><span><%=link_to extension["title"], admin_module_store_show_path(extension["_slugs"][0])%></span></h5>
|
||||
<p class="mt_dev muted"><%=extension["author"]%></p>
|
||||
</td>
|
||||
<td class="detail-row">2013/07/12</td>
|
||||
<td>
|
||||
<%= extension["description"].html_safe%> <%= link_to 'Read More', admin_module_store_show_path(extension["_slugs"][0]) %>
|
||||
</td>
|
||||
<!-- <td class="active"><button class="act btn btn-mini" type="button">Uninstall</button></td>
|
||||
-->
|
||||
<% download_link = STORE_CONFIG[:store_settings]["url"] + "/"+ extension["extension"]["extension"]["url"]
|
||||
downloaded_file_name = extension["extension_filename"]
|
||||
module_app_name = downloaded_file_name.split(/(.zip)/).first
|
||||
@module_status = Dir.exists?("#{Rails.root}/vendor/built_in_modules/#{module_app_name}")
|
||||
%>
|
||||
<% if @module_status.eql?(true)%>
|
||||
<td class="active">Installed</td>
|
||||
<% else %>
|
||||
<td class="active"><%= link_to 'Download', admin_module_store_download_path(:id => extension["_slugs"][0]), :class=>"act btn btn-mini btn-success" %></td>
|
||||
<% end %>
|
||||
</tr>
|
||||
<% end %>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
<!--
|
||||
<tr>
|
||||
<td class="detail-row">
|
||||
<div class="module_icon pull-left">
|
||||
@@ -118,5 +80,6 @@
|
||||
@detail
|
||||
</td>
|
||||
<td class="active"><button class="act btn btn-mini btn-info" type="button">Update</button></td>
|
||||
</tr> -->
|
||||
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@@ -22,7 +22,7 @@
|
||||
<div class="side">
|
||||
<div id="item-info">
|
||||
<img src="/assets/module/thumb/mt<%= params[:m] %>.jpg" alt="" class="item-thumb">
|
||||
<h2 class="item-name"><%= @extension.first["title"] %></h2>
|
||||
<h2 class="item-name">Module Name</h2>
|
||||
<a id="download" href="">free download</a>
|
||||
<ul class="item-extra-info">
|
||||
<li><span class="title">downloads</span><span class="count"><%= Random.new.rand(10..100) %></span></li>
|
||||
@@ -38,12 +38,16 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="main clearfix">
|
||||
<h3>Description</h3>
|
||||
<div id="desc-holder" class="paragraph"><%= @extension.first["description"].html_safe%></div>
|
||||
<h3>description</h3>
|
||||
<div id="desc-holder" class="paragraph">Pixel Union’s Jitensha defines storefront minimalism. Japanese for “bicycle,” Jitensha offers clean typography and easy usability, including full color, font, logo, and footer customization. With its painless social media and blog integration, Jitensha gorgeously accomodates every aspect of your business. Any questions before you launch? Don’t hesitate to email us: Support@PixelUnion.net.</div>
|
||||
<h3>screen shot</h3>
|
||||
<div id="screen-shot">
|
||||
<div class="holder">
|
||||
<%= image_tag "#{STORE_CONFIG[:store_settings]["url"]}/#{@extension.first['preview']['preview']['url']}"%>
|
||||
<img src="" alt="Thumbnail 1" class="preview item-thumb">
|
||||
<img src="" alt="Thumbnail 2" class="preview item-thumb">
|
||||
<img src="" alt="Thumbnail 3" class="preview item-thumb">
|
||||
<img src="" alt="Thumbnail 4" class="preview item-thumb">
|
||||
<img src="" alt="Thumbnail 5" class="preview item-thumb">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -20,8 +20,6 @@
|
||||
|
||||
<li title="<%= t('preference') %>"><%= link_to admin_site_preference_path(@site), :class => active_for_action('sites', 'preference') do %><span><i class="icons-cog"></i></span><%end%></li>
|
||||
|
||||
<li title="<%= t('update_manager') %>"><%= link_to admin_site_update_manager_path(@site), :class => active_for_action('sites', 'update_manager') do %><span><i class="icon-refresh"></i></span><%end%></li>
|
||||
|
||||
<!-- <li title="System Info"><a href="/orbit_4.0.1/admin/system_info/index.shtml?sidebarNavList=8&subNavBlockList=0"><span><i class="icons-info-2"></i></span></a></li>
|
||||
--> </ul>
|
||||
</div>
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
});
|
||||
})
|
||||
});
|
||||
$(document).on('click', 'li .map-block .onoff', function () {
|
||||
$(document).on('click', 'li .onoff', function () {
|
||||
$(this).parents("li").toggleClass("disabled");
|
||||
if($(this).parents("li").attr("class").indexOf("disabled") > 0){
|
||||
$(this).text("<%= t('off_upcase') %>")
|
||||
|
||||
@@ -1,245 +0,0 @@
|
||||
<% content_for :side_bar do %>
|
||||
<%= render :partial => 'layouts/side_bar', :locals => {:link_name => t('site.settings'), :link_url => admin_site_site_info_path(@site), :icon => 'icons-cog', :side_bar_content => 'admin/sites/side_bar'} %>
|
||||
<% end %>
|
||||
<style type="text/css">
|
||||
.container{
|
||||
}
|
||||
|
||||
#new_update_container{
|
||||
display: none;
|
||||
}
|
||||
|
||||
#update_progress{
|
||||
margin: 0 auto;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#update_status{
|
||||
/*display: none;*/
|
||||
}
|
||||
|
||||
#update_done{
|
||||
display: none;
|
||||
}
|
||||
|
||||
#update_failed{
|
||||
display: none;
|
||||
}
|
||||
|
||||
.panel{
|
||||
/*max-height: 400px;*/
|
||||
border-radius: 5px;
|
||||
overflow: hidden;
|
||||
border: 1px solid #DFDFDF;
|
||||
background: #FFF;
|
||||
box-shadow: 0px 0px 10px #CCC;
|
||||
}
|
||||
|
||||
.panel-heading{
|
||||
font-size: 16px;
|
||||
color: #666;
|
||||
padding: 10px 20px;
|
||||
|
||||
background-color: #fafafa;
|
||||
background-image: -moz-linear-gradient(top, #ffffff, #f2f2f2);
|
||||
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#f2f2f2));
|
||||
background-image: -webkit-linear-gradient(top, #ffffff, #f2f2f2);
|
||||
background-image: -o-linear-gradient(top, #ffffff, #f2f2f2);
|
||||
background-image: linear-gradient(to bottom, #ffffff, #f2f2f2);
|
||||
background-repeat: repeat-x;
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff2f2f2', GradientType=0);
|
||||
*zoom: 1;
|
||||
border-bottom: 1px solid #DDD;
|
||||
}
|
||||
|
||||
.table{
|
||||
margin: 0;
|
||||
-webkit-border-radius: 5px;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.pannel-body{
|
||||
max-height: 400px;
|
||||
overflow: scroll;
|
||||
overflow-x: hidden;
|
||||
overflow-y: hidden;
|
||||
padding: 15px;
|
||||
}
|
||||
|
||||
.pannel-body:hover{
|
||||
overflow-y: scroll;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar {
|
||||
width: 5px;
|
||||
}
|
||||
::-webkit-scrollbar-track {
|
||||
background-color: #AAA;
|
||||
}
|
||||
::-webkit-scrollbar-thumb {
|
||||
background-color: #666;
|
||||
}
|
||||
|
||||
.break{
|
||||
border-left: 1px solid #FCFCFC;
|
||||
border-right: 1px solid #DDD;
|
||||
padding: 10px 0;
|
||||
margin: 0 15px;
|
||||
}
|
||||
</style>
|
||||
<div class="container">
|
||||
<div class="row-fluid">
|
||||
<div class="span6">
|
||||
<div id="new_update_container">
|
||||
<div class="panel">
|
||||
<div class="panel-heading">
|
||||
<i class="icon-exclamation-sign"></i>
|
||||
<span class="break"></span>
|
||||
<span class="panel-title"><%= t("update_manager_.available_updates") %></span>
|
||||
<span id="num_new_updates" class="badge badge-important pull-right"></span>
|
||||
</div>
|
||||
<div class="pannel-body">
|
||||
<table class="table table-striped">
|
||||
<tbody id="new_update_table">
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div style="height: 55px;">
|
||||
<button id="update_btn" class="btn btn-primary pull-right" style="margin: 10px;"><i class="icon-inbox icon-white"></i> <%= t("update_manager_.system_update") %></button>
|
||||
</div>
|
||||
</div>
|
||||
<div id="update_status">
|
||||
<div class="panel">
|
||||
<div class="panel-heading">
|
||||
<i class="icon-info-sign"></i>
|
||||
<span class="break"></span>
|
||||
<span class="panel-title"><%= t("update_manager_.update_status") %></span>
|
||||
</div>
|
||||
<div class="pannel-body">
|
||||
<div id="update_done" class="alert alert-success" style="font-size: 16px; text-align: center; margin: 0px;">
|
||||
<i class="icon-ok-sign"> <%= t("update_manager_.update_done") %></i>
|
||||
</div>
|
||||
<div id="update_failed" class="alert alert-error" style="font-size: 16px; text-align: center; margin: 0px;">
|
||||
<i class="icon-remove"> <%= t("update_manager_.update_faild") %></i>
|
||||
</div>
|
||||
<div id="update_progress">
|
||||
<img src="http://ridepal.com/images/homeimg/preloader_transparent.gif" width="50"><br/>
|
||||
<span id="progress_msg"></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="padding: 10px 0; height: 65px;">
|
||||
<button id="chech_update_btn" class="btn btn-small btn-inverse pull-right"><i class="icon-refresh icon-white"></i> <%= t("update_manager_.check_update") %></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="span6">
|
||||
<div class="panel">
|
||||
<div class="panel-heading">
|
||||
<i class="icon-th-list"></i>
|
||||
<span class="break"></span>
|
||||
<span class="panel-title"><%= t("update_manager_.update_history") %></span>
|
||||
<span id="num_updates" class="badge badge-success pull-right"></span>
|
||||
</div>
|
||||
<div class="pannel-body" id="update-history-body">
|
||||
<table class="table table-striped">
|
||||
<tbody id="update_history_table">
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
var update_logs;
|
||||
var update_log_display;
|
||||
var new_updates;
|
||||
|
||||
function get_update_history(){
|
||||
$.getJSON("<%= admin_site_get_update_history_path %>",function(data){
|
||||
update_logs = data;
|
||||
update_log_display = 0;
|
||||
$("#num_updates").text(update_logs.length);
|
||||
$("#update_history_table").html("");
|
||||
|
||||
show_update_history();
|
||||
});
|
||||
}
|
||||
|
||||
function show_update_history(){
|
||||
for(var i = 0; i<30; i++){
|
||||
var log = update_logs[update_log_display];
|
||||
update_log_display++;
|
||||
$("#update_history_table").append("<tr><td width=30%'>"+log[0]+"</td><td>"+log[1]+"</td></tr>");
|
||||
if((update_log_display+1)>update_logs.length) break;
|
||||
}
|
||||
}
|
||||
|
||||
function check_updates(){
|
||||
$("#progress_msg").html("<strong><%= t("update_manager_.checking_update") %></strong>");
|
||||
$("#new_update_container").fadeOut(function(){
|
||||
$("#update_done").fadeOut(function(){
|
||||
$("#update_status").fadeIn(function(){
|
||||
$("#update_progress").fadeIn();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
$.getJSON("<%= admin_site_check_updates_path %>",function(data){
|
||||
new_updates = data;
|
||||
show_new_updates();
|
||||
});
|
||||
}
|
||||
|
||||
function show_new_updates(){
|
||||
if(new_updates.length){
|
||||
$("#num_new_updates").text(new_updates.length);
|
||||
$.each(new_updates,function(){
|
||||
$("#new_update_table").append("<tr><td>"+$(this)[0]+"</td><td>"+$(this)[1]+"</td></tr>");
|
||||
});
|
||||
$("#update_status").fadeOut(function(){$("#new_update_container").fadeIn();});
|
||||
}else{
|
||||
$("#update_progress").fadeOut(function(){$("#update_done").fadeIn();});
|
||||
}
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
check_updates();
|
||||
get_update_history();
|
||||
|
||||
$("#chech_update_btn").click(check_updates);
|
||||
|
||||
$("#update_btn").click(function(){
|
||||
$("#progress_msg").html("<strong><%= t("update_manager_.updating_orbit") %></strong>");
|
||||
$("#new_update_container").fadeOut(function(){
|
||||
$("#update_status").fadeIn();
|
||||
});
|
||||
$.get("<%= admin_site_update_orbit_path %>",function(result){
|
||||
if(result=="failed"){
|
||||
$("#chech_update_btn").hide();
|
||||
$("#update_progress").fadeOut(function(){$("#update_failed").fadeIn();});
|
||||
}else{
|
||||
$("#progress_msg").html("<strong><%= t("update_manager_.restart_server") %></strong>");
|
||||
$.get("<%= admin_site_restart_server_path %>",function(result){
|
||||
$("#update_progress").fadeOut(function(){$("#update_done").fadeIn();});
|
||||
$("#update_status").fadeIn();
|
||||
get_update_history();
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$("#update-history-body").scroll(function () {
|
||||
if((update_log_display+1)<update_logs.length){
|
||||
var scroll_pos = ($("#update-history-body").scrollTop()+$("#update-history-body").height())/$("#update_history_table").height()*100;
|
||||
if(scroll_pos>90){
|
||||
show_update_history();
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@@ -21,7 +21,7 @@
|
||||
<ul class="nav nav-pills">
|
||||
<%= content_tag(:li, link_to(t(:edit),edit_admin_users_new_interface_path(user_for_listing))) if is_admin? %>
|
||||
<%= content_tag(:li, link_to(t("users.setting_privilege"),admin_users_new_interface_edit_privilege_path(user_for_listing))) if is_admin? and current_user.id != user_for_listing.id %>
|
||||
<%= content_tag(:li, link_to(t(:delete_),admin_users_new_interface_path(user_for_listing, :at=>params[:at]), :confirm => t(:sure?), :method => :delete, :class=>"text-error", :remote => true)) if is_admin? %>
|
||||
<%= content_tag(:li, link_to(t(:delete),admin_users_new_interface_path(user_for_listing, :at=>params[:at]), :confirm => t(:sure?), :method => :delete, :class=>"text-error", :remote => true)) if is_admin? %>
|
||||
</ul>
|
||||
</div>
|
||||
</td>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<div id="sidebar-menu">
|
||||
<div class="scroller">
|
||||
<ul class="sidebar-nav">
|
||||
<% OrbitApp::Module::SideBarRegisition.all.sort{|x,y| x.get_module_app_key <=> y.get_module_app_key}.each do |t| %>
|
||||
<% OrbitApp::Module::SideBarRegisition.all.each do |t| %>
|
||||
<%= t.render_head(request, params, current_user, @module_app) %>
|
||||
<% end %>
|
||||
</ul>
|
||||
@@ -10,7 +10,7 @@
|
||||
</div>
|
||||
|
||||
<div class="sub-nav-block-list">
|
||||
<% OrbitApp::Module::SideBarRegisition.all.sort{|x,y| x.get_module_app_key <=> y.get_module_app_key}.each do |t| %>
|
||||
<% OrbitApp::Module::SideBarRegisition.all.each do |t| %>
|
||||
<%= t.render(request, params, current_user, @module_app) %>
|
||||
<% end %>
|
||||
</div>
|
||||
@@ -1,2 +0,0 @@
|
||||
data = File.open(File.join(Rails.root, 'config', 'store_config.yml')).read
|
||||
STORE_CONFIG = YAML::load(ERB.new(data).result(binding)).symbolize_keys
|
||||
@@ -80,3 +80,27 @@ default_widget_style:
|
||||
- style3
|
||||
- style4
|
||||
- style5
|
||||
|
||||
sites:
|
||||
coph:
|
||||
url: coph.ntu.edu.tw
|
||||
key: "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzpqn0cXyC98jZ2hk4F8W\n0K7qgNSqHvH8unxCbgEuxWvkUA1ld2NMfsj9fTl9f2UlhPtwiaZchVAFSDjpYeQD\nH3A5XtlonUXfTD5XdnKBvk6WtKl7cFuyhIazcxp3MA8/cmSuGbXIjyZLMiUkElZg\n5CZ/1n+yhGFjXQz/d4d8W7sN7AjmhHjTi5vgJF4fkaSr1g6TwWJfLhhzzYsva2z/\nDRkQl3OpUEbSQP1X9/RmManDrYpn7Wrqi9Joqu7rPk0Grki8lCo5T/kaEsQ0wKte\nt7N9QRCBM/f2tOYoH+elitnOJq9zAtAtGaw80xso/GkjMHhcmPnI2YZ90yy1Fvau\nOwIDAQAB\n-----END PUBLIC KEY-----\n"
|
||||
dph:
|
||||
url: dph.ntu.edu.tw
|
||||
key: "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0wNXuqsY6iHiPORSA+M1\nQzzoepGnJGSP92VszqTp7M+rDf6R98J+jFzG4YkMMUaFids4sXTwVp3zfgmhfl5k\nLJiufcXk9U5HYQ5b88kW+8BOAj9GBMQ7tDTw5hkFGL98anAAxZgW/FVovlAr3jv7\nei5/MBRPwctuOYhR4s9Mh47tbCnMFOswyjErEp5OfkbTo+qar44f2m4d1RVPTM1k\n0RCU65+0syw+hYgg01yRuWkSNzHie5FOVD7CujWeTD2CVZFh72kaGLp99ExOtrM3\n7AzS8duVmty/f7RG8DiJdB4a/mcHjcanlBLcowoo3FaaA1Arg1DkdjH0zwB2UVMs\nEQIDAQAB\n-----END PUBLIC KEY-----\n"
|
||||
ntuhpm:
|
||||
url: ntuhpm.ntu.edu.tw
|
||||
key: "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAq/kK75YjD3Yvv9wacE0+\ncImWxnVcVFXhtG5T8Hm0tkit3OroJ2BobWHe23QBThnzXCF4+S1XosYw60XPNAKk\nrmImHry9lG2iz/UfXwj49AfMHOw0tpOcf2UHiVAZUKb9zZRAEDL6WbhVQ5C/9jZ1\nKWtrcArRxck1tivgT5tUaKrCHrnj9/jo6eAHiKg0CsEfS0hlXQFfo7/2kBZc0oBq\ntuVyoDADaY1PoyvqzHxZC3eyUTjURVa0+Lkpw9d9jbSUNnf2XfEi51Rt79PlrtNj\naxsQ2UKhz0xYouTXQPt9Mc+vxow9bvd1CPr52ywX37sjRlmOQ4gpcxEPa21bRevW\nwwIDAQAB\n-----END PUBLIC KEY-----\n"
|
||||
epm:
|
||||
url: epm.ntu.edu.tw
|
||||
key: "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0pl5F02WcZC+YLDuowl7\nE2VbgXS/V4R1/pRryGCkuZFBQ5DRw6055dhDp8lribEUYRTk8Y8EUIM+8A1A80Y1\nJqaAhF/ZUE7Io1boqdf0XeRgAmQF4bCphLCSVTz6v2AeAQaS7btUqrLr3t7Ldbso\nbnXQ8qKxsBGTtuvIID5zx2JyRuO1U740KEbt7l5Nnb6zSYYHayOHzsS4FS4HmCa/\nK+1jQcnpis1k7tp/s3tif/9a8t4IjwuxyKI6PEUoyGTZYG9hyrTvoTGobR9g+r6s\n8IluoAauG6IlSjl92sL6D6p+BYS3VsFn+2mznrjgKl9TVt8HfQSgECgfyUAS/OgC\n3wIDAQAB\n-----END PUBLIC KEY-----\n"
|
||||
ieh:
|
||||
url: ieh.ntu.edu.tw
|
||||
key: "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvtmUdzHwAE+b1Bt2HGSr\ny/o8rA4fWIpc9zTn4jXkAoH7yQMO0WsneMn1KxE0eUmhHiGaZGQLGrixxQ9ZG9DP\n1fe41IGRKZRt7ep5rpXQFCXxEwBV+CAmdVpwGM0ji3l9tL4CwKkX+ObmUiorQZLG\nAxQHAWpFdM7foiTNw37vqTm8TDIcCu0HXSV+Mb6IydbpQbvYTHdHN2wlgfIa41qU\nWhYqHckKimvApJCsIDHd8ZF32EuOaalfGFvYB7de7Z1Tn9YLvIqgPgIj6o89q4UK\n5EAr1E6kKX9jk3ru5r0u/EEL0zADdbJAWuops4a+XRdPaZMXqngdlEbcxwKTryU+\ncwIDAQAB\n-----END PUBLIC KEY-----\n"
|
||||
omih:
|
||||
url: omih.ntu.edu.tw
|
||||
key: "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwgyfe4FFBnE6If3TH/L7\nVm43BYEunoK6ItBC9VccUGrhT3ZD5gAdnNC5OkR8HIUEBxtzvD57CsHaaGKrxxAf\nd8XJh5nXZCg5RaoQVaBNjFBmOPm4jZAWPUFPuGRow8Uzs/LzA5HNew196g+qWayB\nglTyX2TJUAADyx6Peq4ZNqEBBB68n4DyugXzfvlk0yXsrLDtbM44bzOhRuosKa7Y\nung+IonA5lqr2mJDrTMDOupIAgW6/4xO7ww2e/pMOVtfoVSw+5YfXFBGCbRjGKwT\nZ4b7whRBBuRd1lgWhQrzOikb+/NtEVQWLpWPpSeTFx5sIUyb5PmQTXtRxZX1xNcS\neQIDAQAB\n-----END PUBLIC KEY-----\n"
|
||||
mph:
|
||||
url: mph.ntu.edu.tw
|
||||
key: "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7rlich0iWAWKUhT7pHji\nOHeEURjnykiX5ElkBD7twy5UyagiD9wVeBOi7mElaJjcR84WfoZVTJVbI08/a5KY\neFURiOy4CigwIFyiDKhwMH5XETuQD96JFqClZGgfxaZAtt9IEpqE3HbqGpPh/0Oc\noLP6Pez8icDYqShZrrZioQZ9XshlZJ6Xt2iStMHNucKHrptMylvtHo6sp/Uy00jC\nubbtH7cvAbQf/Ee/jbGWWMyVwjko1h8u1pMtQlXIC6R0UP6yfCAg7c/0P9eb33OE\n2B6t9i/7kdqTysyKvf6jdDeJeyDYxZVFFXEETu5TzffdhrEK67KAot3J3hi0Qwq7\nvQIDAQAB\n-----END PUBLIC KEY-----\n"
|
||||
|
||||
+2
-12
@@ -86,6 +86,7 @@ en:
|
||||
user_list: Unit
|
||||
approval_: Approval
|
||||
approval_setting: Approval setting
|
||||
archive: Archive
|
||||
asset: Asset
|
||||
attributes: Attributes
|
||||
auth:
|
||||
@@ -261,6 +262,7 @@ en:
|
||||
text_area: Text Area
|
||||
text_field: Text Field
|
||||
locale: Locale
|
||||
location: Location
|
||||
login: Login
|
||||
logout: Logout
|
||||
mail:
|
||||
@@ -531,18 +533,6 @@ en:
|
||||
success_: Successfully updated
|
||||
update_: Update
|
||||
update_at: Update at
|
||||
update_manager: Update Manager
|
||||
update_manager_:
|
||||
available_updates: Available Updates
|
||||
check_update: Check Update
|
||||
checking_update: Checking for Updates
|
||||
system_update: Install Updates
|
||||
update_done: System is update to date
|
||||
update_faild: Update failed. Merge is require in the update. Please login to server and update manually.
|
||||
update_history: Update Histroy
|
||||
update_status: Update Status
|
||||
updating_orbit: Updating Orbit. Please wait.
|
||||
restart_server: Restarting Server. Please wait.
|
||||
upload: Upload
|
||||
url: URL
|
||||
use_status: Use Statue
|
||||
|
||||
@@ -86,6 +86,7 @@ zh_tw:
|
||||
user_list: 使用者列表
|
||||
approval_: 審核
|
||||
approval_setting: 審核設定
|
||||
archive: 檔案室
|
||||
asset: 資產
|
||||
attributes: 屬性
|
||||
auth:
|
||||
@@ -263,6 +264,7 @@ zh_tw:
|
||||
text_area: 文字輸入方塊
|
||||
text_field: 文字輸入框
|
||||
locale: 位置
|
||||
location: 地標
|
||||
login: 登入
|
||||
logout: 登出
|
||||
mail:
|
||||
@@ -534,18 +536,6 @@ zh_tw:
|
||||
success_: 使用者已更新成功
|
||||
update_: 更新
|
||||
update_at: 最後更新時間
|
||||
update_manager: 更新管理員
|
||||
update_manager_:
|
||||
available_updates: 有可用更新
|
||||
check_update: 檢查更新
|
||||
checking_update: 檢查更新中
|
||||
system_update: 安裝更新
|
||||
update_done: 系統已是最新版本
|
||||
update_faild: 更新失敗. 更新需要合併程式碼. 請登入伺服器手動進行更新.
|
||||
update_history: 更新紀錄
|
||||
update_status: 更新狀態
|
||||
updating_orbit: 安裝更新中,請稍候.
|
||||
restart_server: 重啟伺服器中,請稍候.
|
||||
upload: 上傳
|
||||
url: 網址
|
||||
use_status: 使用狀態
|
||||
|
||||
+2
-6
@@ -13,6 +13,8 @@ Orbit::Application.routes.draw do
|
||||
match 'user_logout' => 'sessions#destroy'
|
||||
end
|
||||
|
||||
match "saml_login" => 'saml_logins#index'
|
||||
|
||||
mount Resque::Server, :at => "/admin/resque"
|
||||
mount Rack::GridFS::Endpoint.new(:db => Mongoid.database,:lookup=>:path), :at => "gridfs"
|
||||
|
||||
@@ -217,11 +219,6 @@ Orbit::Application.routes.draw do
|
||||
get 'change_design'
|
||||
get 'reset_default_locale'
|
||||
get 'preference'
|
||||
get 'update_manager'
|
||||
get 'get_update_history'
|
||||
get 'check_updates'
|
||||
get 'update_orbit'
|
||||
get 'restart_server'
|
||||
end
|
||||
|
||||
get "import_data/get_teacher_data"
|
||||
@@ -280,7 +277,6 @@ Orbit::Application.routes.draw do
|
||||
|
||||
match 'module_store' => 'module_store#index'
|
||||
match 'module_store/show' => 'module_store#show'
|
||||
match 'module_store/download' => 'module_store#download'
|
||||
match 'template_store' => 'template_store#index'
|
||||
match 'template_store/download_theme' => "template_store#download_theme"
|
||||
match 'template_store/template/:id' => 'template_store#show', :as => :template_store_template
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
store_settings:
|
||||
url: "http://store.tp.rulingcom.com"
|
||||
@@ -4,13 +4,9 @@ zh_tw:
|
||||
ad_banner: 廣告輪播
|
||||
banner: 橫幅
|
||||
banner_name: 橫幅名稱
|
||||
name_only_english: 橫幅名稱只能為英文
|
||||
edit_banner: 編輯橫幅
|
||||
enter_number: 請輸入數字
|
||||
enter_url: 請輸入網址
|
||||
banner_name_note: 橫幅名稱只能為英文
|
||||
ste: 轉換間隔時間
|
||||
number_seconds: 請輸入秒數
|
||||
number_milliseconds: 請輸入毫秒數
|
||||
ste_note: 請輸入秒數
|
||||
best_size: 最佳尺寸
|
||||
effect: 效果
|
||||
all: 全部
|
||||
@@ -20,4 +16,3 @@ zh_tw:
|
||||
size: 大小
|
||||
transition_interval: 轉換間隔時間
|
||||
transition_speed: 轉換速度
|
||||
type: 類型
|
||||
+24
-27
@@ -199,7 +199,6 @@ class Panel::Survey::BackEnd::SurveysController < OrbitBackendController
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@survey.survey_questions.all.each do |question|
|
||||
new_question = @new_survey.survey_questions.new
|
||||
question.attributes.each do |key, value|
|
||||
@@ -211,32 +210,30 @@ class Panel::Survey::BackEnd::SurveysController < OrbitBackendController
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
# question.survey_question_options.all.each do |option|
|
||||
# new_option = new_question.survey_question_options.new
|
||||
# option.attributes.each do |key, value|
|
||||
# unless ['_id', 'survey_question_id'].include? key
|
||||
# if option.respond_to?(key + '_translations')
|
||||
# new_option.name_translations = value
|
||||
# else
|
||||
# new_option.write_attribute(key, value)
|
||||
# end
|
||||
# end
|
||||
# end
|
||||
# end
|
||||
|
||||
# question.survey_question_radiogroups.all.each do |radiogroup|
|
||||
# new_radiogroup = new_question.survey_question_radiogroups.new
|
||||
# radiogroup.attributes.each do |key, value|
|
||||
# unless ['_id', 'survey_question_id'].include? key
|
||||
# if radiogroup.respond_to?(key + '_translations')
|
||||
# new_option.name_translations = value
|
||||
# else
|
||||
# new_radiogroup.write_attribute(key, value)
|
||||
# end
|
||||
# end
|
||||
# end
|
||||
# end
|
||||
question.survey_question_options.all.each do |option|
|
||||
new_option = new_question.survey_question_options.new
|
||||
option.attributes.each do |key, value|
|
||||
unless ['_id', 'survey_question_id'].include? key
|
||||
if option.respond_to?(key + '_translations')
|
||||
new_option.send(key + '_translations=', value)
|
||||
else
|
||||
new_option.write_attribute(key, value)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
question.survey_question_radiogroups.all.each do |radiogroup|
|
||||
new_radiogroup = new_question.survey_question_radiogroups.new
|
||||
radiogroup.attributes.each do |key, value|
|
||||
unless ['_id', 'survey_question_id'].include? key
|
||||
if radiogroup.respond_to?(key + '_translations')
|
||||
new_radiogroup.send(key + '_translations=', value)
|
||||
else
|
||||
new_radiogroup.write_attribute(key, value)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@new_survey.create_user_id = current_user.id
|
||||
|
||||
Reference in new issue
Block a user