forked from saurabh/orbit4-5
Fix routes and url schema and UTF-8
This commit is contained in:
parent
a54e19ea18
commit
e3b25c1ae5
|
@ -14,3 +14,5 @@
|
|||
# Ignore all logfiles and tempfiles.
|
||||
/log/*.log
|
||||
/tmp
|
||||
|
||||
/Gemfile.lock
|
||||
|
|
4
Gemfile
4
Gemfile
|
@ -14,7 +14,7 @@ gem 'uglifier', '>= 1.3.0'
|
|||
|
||||
# Use CoffeeScript for .js.coffee assets and views
|
||||
gem 'coffee-rails', '~> 4.0.0'
|
||||
gem 'announcement', path: '/Volumes/MyData/github/orbit4.5/announcement'
|
||||
gem 'announcement', git: 'git@gitlab.tp.rulingcom.com:saurabh/announcement-test.git'
|
||||
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
|
||||
# gem 'therubyracer', platforms: :ruby
|
||||
|
||||
|
@ -43,4 +43,4 @@ end
|
|||
# gem 'capistrano', group: :development
|
||||
|
||||
# Use debugger
|
||||
gem 'debugger', group: [:development, :test]
|
||||
gem 'debugger', '>= 1.6.6', group: [:development, :test]
|
||||
|
|
|
@ -17,29 +17,21 @@ class PagesController < ApplicationController
|
|||
end
|
||||
|
||||
def show
|
||||
page = Page.find_by_param(params[:page_id]) rescue nil
|
||||
page = Page.find_by_param(params[:page_id])
|
||||
module_app = page.module.downcase.pluralize
|
||||
params[:target_controller] = "#{module_app}"
|
||||
@manifest = @key
|
||||
@dataApi = nil
|
||||
OrbitHelper.set_params params
|
||||
OrbitHelper.set_site_locale locale
|
||||
if params[:slug]
|
||||
params[:target_action] = "show"
|
||||
params[:uid] = params[:slug].split("-").last
|
||||
else
|
||||
params[:target_action] = "index"
|
||||
params[:url] = page.url
|
||||
render render_final_page("#{module_app}/show",page)
|
||||
end
|
||||
|
||||
def moduleShow
|
||||
page = Page.find_by_param(params[:page_id])
|
||||
params[:target_action] = "show"
|
||||
params[:uid] = params[:uid]
|
||||
module_app = page.module.downcase.pluralize
|
||||
params[:target_controller] = "#{module_app}"
|
||||
@manifest = @key
|
||||
@dataApi = nil
|
||||
OrbitHelper.set_params params
|
||||
OrbitHelper.set_site_locale locale
|
||||
render render_final_page("#{module_app}/show",page)
|
||||
render render_final_page("#{module_app}/#{params[:target_action]}",page)
|
||||
end
|
||||
|
||||
def preview
|
||||
|
@ -82,7 +74,7 @@ class PagesController < ApplicationController
|
|||
@layout_html = nil
|
||||
@file = File.join('../templates', "#{@key}", '/home/page.html.erb')
|
||||
@layout_html = render_to_string(@file)
|
||||
doc = Nokogiri::HTML(@layout_html)
|
||||
doc = Nokogiri::HTML(@layout_html, nil, "UTF-8")
|
||||
|
||||
@part_partials.each do |key, partial|
|
||||
html_string = ""
|
||||
|
|
|
@ -32,7 +32,7 @@ module ApplicationHelper
|
|||
|
||||
key = Template::KEY
|
||||
menu_file = File.open(File.join(Rails.root, 'app', 'templates', "#{key}", '/home/menu.html.erb'))
|
||||
doc = Nokogiri::HTML(menu_file)
|
||||
doc = Nokogiri::HTML(menu_file, nil, "UTF-8")
|
||||
menu_file.close
|
||||
|
||||
temp = []
|
||||
|
@ -50,7 +50,7 @@ module ApplicationHelper
|
|||
|
||||
|
||||
temp.each_with_index do |menu,i|
|
||||
t = Nokogiri::HTML(menu)
|
||||
t = Nokogiri::HTML(menu, nil, "UTF-8")
|
||||
a = t.css("*[data-menu-link='true']")
|
||||
a[0]["href"] = "href_here"
|
||||
li = t.css("*[data-menu-level='#{i}'] > *")
|
||||
|
@ -83,7 +83,7 @@ module ApplicationHelper
|
|||
def render_view
|
||||
if params[:target_action] == "index"
|
||||
file = File.open(File.join(Rails.root, 'app', 'templates', "#{@key}", 'modules', params[:target_controller], "#{params[:target_action]}.html.erb"))
|
||||
doc = Nokogiri::HTML(file)
|
||||
doc = Nokogiri::HTML(file, nil, "UTF-8")
|
||||
file.close
|
||||
wrap_elements = doc.css("*[data-module]")
|
||||
controller = "#{params[:target_controller].capitalize}Controller".classify.constantize.new
|
||||
|
@ -103,7 +103,7 @@ module ApplicationHelper
|
|||
doc.to_s.html_safe
|
||||
elsif params[:target_action] == "show"
|
||||
file = File.open(File.join(Rails.root, 'app', 'templates', "#{@key}", 'modules', params[:target_controller], "#{params[:target_action]}.html.erb"))
|
||||
doc = Nokogiri::HTML(file)
|
||||
doc = Nokogiri::HTML(file, nil, "UTF-8")
|
||||
file.close
|
||||
wrap_element_html = doc.to_s
|
||||
html_to_render = ""
|
||||
|
|
|
@ -8,7 +8,7 @@ module OrbitHelper
|
|||
end
|
||||
|
||||
def self.url_to_show(uid,title)
|
||||
"/#{self.get_site_locale.to_s}#{@params[:url]}/#{uid}/#{title.parameterize}"
|
||||
"/#{self.get_site_locale.to_s}#{@params[:url]}/#{title}--#{uid}"
|
||||
end
|
||||
|
||||
def self.set_site_locale(locale)
|
||||
|
|
|
@ -2,7 +2,7 @@ module PagesHelper
|
|||
|
||||
def parse_pp_tags(file)
|
||||
opened_file = File.open(file)
|
||||
doc = Nokogiri::HTML(opened_file)
|
||||
doc = Nokogiri::HTML(opened_file, nil, "UTF-8")
|
||||
opened_file.close
|
||||
pps = doc.css("*[data-pp]")
|
||||
pps.each do |pp|
|
||||
|
@ -13,7 +13,7 @@ module PagesHelper
|
|||
|
||||
def render_widget_for_frontend(controller_name, widget_method, widget_file)
|
||||
file = File.open(File.join(Rails.root, 'app', 'templates', "#{Template::KEY}", 'modules', "#{controller_name}", "_#{widget_file}.html.erb"))
|
||||
doc = Nokogiri::HTML(file)
|
||||
doc = Nokogiri::HTML(file, nil, "UTF-8")
|
||||
file.close
|
||||
wrap_elements = doc.css("*[data-repeat]")
|
||||
controller = "#{controller_name.capitalize}Controller".classify.constantize.new
|
||||
|
|
|
@ -18,11 +18,7 @@ OrbitStore::Application.routes.draw do
|
|||
# You can have the root of your site routed with "root"
|
||||
root 'home#index'
|
||||
scope "(:locale)", locale: /en|zh_tw/ do
|
||||
|
||||
get ':page_id(/:page_id(/:page_id))', to: 'pages#show'
|
||||
get ':page_id(/:uid(/:slug))', to: 'pages#moduleShow'
|
||||
get ':page_id(/:page_id(/:uid(/:slug)))', to: 'pages#moduleShow'
|
||||
get ':page_id(/:page_id(/:page_id(/:uid(/:slug))))', to: 'pages#moduleShow'
|
||||
get ':page_id(/:page_id((/:page_id)/:slug))', to: 'pages#show'
|
||||
resources :pages
|
||||
end
|
||||
# Example of regular route:
|
||||
|
|
Loading…
Reference in New Issue