rails_admin_content 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e47cecc03bb1be0ad1ba0ddb1dbcef2d59d6880d
4
- data.tar.gz: c92ad1518df16acd48fa29ff9d5beab46461b598
3
+ metadata.gz: 4103f556cac609bbd974d482f1ffade527d6e69d
4
+ data.tar.gz: 871320bb364970a9a9eae8ebbc55103a245afe8a
5
5
  SHA512:
6
- metadata.gz: ebe6b057d550d827fb36d169e22c6272630581b571ea2fea3c572fb4b48c7fb5dcd2b7e3b641d4db648da21f8cee59be3782aee38746fe4cc269bd5041e0d802
7
- data.tar.gz: 7cbffff0868fa16ce24533bcead7bf648ee2e3141faa4d61df7d76415ed60669e81d6f2dbc7671cced0cd841ab702dc75414ad1f895b430b820014cf30a4ef07
6
+ metadata.gz: 83f17018b372dd42e8491bb81c2b2f86da99c54c8ba142c1039c96be2858c62e9049e62184b3b758a5be14711601edeac47e6f66ff809e02c7f395254d18a181
7
+ data.tar.gz: f55104928888207b0cf1422a44f8412d5c48eab43bf2ddbd4bcaa21d4e0e322a3cedef434c8ff63171e12062fa25b6a9ed6daf13778e0bb028c39982bcbeabd9
@@ -359,9 +359,8 @@ span.author-name{
359
359
  }
360
360
 
361
361
  #main-menu {
362
- bottom: 3px;
363
- left: 26px;
364
- margin-right: -500px;
362
+ bottom: 8px;
363
+ left: 311px;
365
364
  position: absolute;
366
365
  }
367
366
 
@@ -388,9 +387,8 @@ span.author-name{
388
387
  white-space: nowrap;
389
388
  }
390
389
  #main-menu li a {
391
- background: none repeat scroll 0 0 #507AAA;
390
+ /* background: none repeat scroll 0 0 #507AAA; */
392
391
  font-weight: bold;
393
- padding: 4px 10px;
394
392
  }
395
393
  #main-menu li a:hover {
396
394
  background: none repeat scroll 0 0 #759FCF;
@@ -486,6 +484,13 @@ span.author-name{
486
484
  overflow: hidden;
487
485
  }
488
486
 
489
- .navbar li{
490
- text-align: center;
491
- }
487
+ .navbar li .section{
488
+ margin: 2px;
489
+ }
490
+ .navbar li .section a{
491
+ padding: 10px;
492
+ background-color: #759fcf;
493
+ }
494
+
495
+
496
+
@@ -1,4 +1,3 @@
1
1
  class RailsAdminContent::Develop::ApplicationController < ApplicationController
2
- layout 'rails_admin_content/admin'
3
-
2
+ layout 'rails_admin_content/admin'
4
3
  end
@@ -1,76 +1,76 @@
1
1
  class RailsAdminContent::Develop::ManagesController < RailsAdminContent::Develop::ApplicationController
2
2
 
3
- before_filter :find_params, except: %w(update create new)
4
-
5
- def index
6
- @version = RailsAdminContent::Client.conn.origin_query("SELECT Version() as version").each
7
- end
8
-
9
- def query
10
- @entries = RailsAdminContent::Client.query(RailsAdminContent::Client.query_str,@page, @per).each if RailsAdminContent::Client.query_str
11
- rescue Exception => e
12
- flash[:errors] = e.message
13
- end
14
-
15
- def filter
16
- RailsAdminContent::Client.query_str = params[:q]
17
- redirect_to action: :query
18
- end
19
-
20
- def show
21
- @query_str = "SELECT * FROM #{params[:id]}"
22
- @query_str = RailsAdminContent::Client.compose(params) if params[:field].present?
23
- @fields = RailsAdminContent::Client.desc_table params[:id]
24
- @entries = RailsAdminContent::Client.query(@query_str,@page, @per)
25
- rescue Exception => e
26
- flash[:errors] = e.message
27
- end
28
-
29
- def new;end
30
-
31
- def edit; end
32
-
33
- def edit_column
34
- @fields = RailsAdminContent::Client.desc_table params[:id]
35
- end
36
-
37
- def details
38
- @details = RailsAdminContent::Client.conn.origin_query("SHOW TABLE STATUS LIKE '#{params[:id]}'").each
39
- end
40
-
41
- def create
42
- RailsAdminContent::Client.insert(params[:table_name], params[:field])
43
- flash[:success] = "成功添加#{params[:table_name]}一条数据。"
44
- rescue Exception => e
45
- flash[:errors] = e.message
46
- ensure
47
- redirect_to develop_manage_path(params[:table_name])
48
- end
49
-
50
- def update
51
- RailsAdminContent::Client.update(params[:table_name], params[:id], params[:field])
52
- flash[:success] = "更新#{params[:id]}内容成功。"
53
- rescue Exception => e
54
- flash[:errors] = e.message
55
- ensure
56
- redirect_to develop_manage_path(params[:table_name])
57
- end
58
-
59
-
60
- def update_field
61
- RailsAdminContent::Client.conn.origin_query("UPDATE #{params[:table]} SET #{params[:field]} = REPLACE(REPLACE(REPLACE('#{params[:value]}', '&','&amp;'), '>', '&gt;'), '<', '&lt;') WHERE id = #{params[:id]}")
62
- render text: 'success'
63
- end
64
-
65
- def destroy
66
- RailsAdminContent::Client.delete(params[:id], params[:edit_id]) if params[:edit_id].present?
67
- render json: params[:edit_id]
68
- end
69
-
70
- private
71
-
72
- def find_params
73
- @page, @per = (params[:page] || 1).to_i, (params[:per] || 100).to_i
74
- end
3
+ before_filter :find_params, except: %w(update create new)
4
+
5
+ def index
6
+ @version = RailsAdminContent::Client.conn.origin_query("SELECT VERSION() as version").each
7
+ end
8
+
9
+ def query
10
+ @entries = RailsAdminContent::Client.query(RailsAdminContent::Client.query_str,@page, @per).each if RailsAdminContent::Client.query_str
11
+ rescue Exception => e
12
+ flash[:errors] = e.message
13
+ end
14
+
15
+ def filter
16
+ RailsAdminContent::Client.query_str = params[:q]
17
+ redirect_to action: :query
18
+ end
19
+
20
+ def show
21
+ @query_str = "SELECT * FROM #{params[:id]} ORDER BY id DESC"
22
+ @query_str = RailsAdminContent::Client.compose(params) if params[:field].present?
23
+ @fields = RailsAdminContent::Client.desc_table params[:id]
24
+ @entries = RailsAdminContent::Client.query(@query_str,@page, @per)
25
+ rescue Exception => e
26
+ flash[:errors] = e.message
27
+ end
28
+
29
+ def new;end
30
+
31
+ def edit; end
32
+
33
+ def edit_column
34
+ @fields = RailsAdminContent::Client.desc_table params[:id]
35
+ end
36
+
37
+ def details
38
+ @details = RailsAdminContent::Client.conn.origin_query("SHOW TABLE STATUS LIKE '#{params[:id]}'").each
39
+ end
40
+
41
+ def create
42
+ RailsAdminContent::Client.insert(params[:table_name], params[:field])
43
+ flash[:success] = "成功添加#{params[:table_name]}一条数据。"
44
+ rescue Exception => e
45
+ flash[:errors] = e.message
46
+ ensure
47
+ redirect_to develop_manage_path(params[:table_name])
48
+ end
49
+
50
+ def update
51
+ RailsAdminContent::Client.update(params[:table_name], params[:id], params[:field])
52
+ flash[:success] = "更新#{params[:id]}内容成功。"
53
+ rescue Exception => e
54
+ flash[:errors] = e.message
55
+ ensure
56
+ redirect_to develop_manage_path(params[:table_name])
57
+ end
58
+
59
+
60
+ def update_field
61
+ RailsAdminContent::Client.conn.origin_query("UPDATE #{params[:table]} SET #{params[:field]} = REPLACE(REPLACE(REPLACE('#{params[:value]}', '&','&amp;'), '>', '&gt;'), '<', '&lt;') WHERE id = #{params[:id]}")
62
+ render text: 'success'
63
+ end
64
+
65
+ def destroy
66
+ RailsAdminContent::Client.delete(params[:id], params[:edit_id]) if params[:edit_id].present?
67
+ render json: params[:edit_id]
68
+ end
69
+
70
+ private
71
+
72
+ def find_params
73
+ @page, @per = (params[:page] || 1).to_i, (params[:per] || 100).to_i
74
+ end
75
75
 
76
76
  end
@@ -1,7 +1,7 @@
1
1
  doctype html
2
2
  html
3
3
  head
4
- title RailsAdminContent
4
+ title RailsAdmin
5
5
  meta name="key_words" content="template languagea"
6
6
  = stylesheet_link_tag "rails_admin_content", media: "all"
7
7
  = javascript_include_tag 'rails_admin_content'
@@ -11,8 +11,10 @@ html
11
11
  #wrapper2
12
12
  #wrapper3
13
13
  #header
14
- h1
14
+ h1 RailsAdmin
15
15
  #main-menu
16
+ - unless action_name =~ /query/
17
+ = render 'navbar'
16
18
  - if flash[:success]
17
19
  .alert.alert-success
18
20
  button data-dismiss="alert" class="close" type="button" x
@@ -38,15 +40,13 @@ html
38
40
  .span2
39
41
  = render 'menv'
40
42
  .content.span10
41
- - if action_name =~ /query/
42
- = render 'form'
43
- - elsif action_name =~ /index/
44
- - else
45
- = render 'navbar'
46
- - if action_name =~ /show/
47
- = render 'filter'
48
- .span11
49
- = yield
43
+
44
+ - if action_name =~ /show/
45
+ = render 'filter'
46
+ - elsif action_name =~ /query/
47
+ = render 'form'
48
+ .span11 style="width:100%;margin: 0px;"
49
+ = yield
50
50
  - if @entries.present?
51
51
  #edit_tools
52
52
  span
@@ -19,7 +19,7 @@
19
19
  = content_field(column)
20
20
 
21
21
  .span8
22
- = field_set_tag "选项" do
22
+ = field_set_tag "Selection" do
23
23
  = select_tag 'select_field', options_for_select_column_data(params[:id]), class: 'span2', name: '', :prompt => "Select Filter"
24
- = button_tag '应用', class: 'btn'
25
- = link_to '清除', '#', class: 'btn clear'
24
+ = button_tag 'Apply', class: 'btn'
25
+ = link_to 'Clear', '#', class: 'btn clear'
@@ -1,34 +1,27 @@
1
1
  .span10
2
- .navbar
3
- ul
4
- li
5
- = link_to develop_manages_path, class: 'btn-icon', title: 'Home' do
6
- dt = image_tag("home.png")
7
- dd Home
2
+ .navbar
3
+ ul
4
+ li
5
+ span.section
6
+ = link_to 'Home', develop_manages_path, class: 'btn-icon', title: 'Home'
7
+ li
8
+ span.section
9
+ = link_to 'Add', new_develop_manage_path(id: RailsAdminContent::Client.table_name), class: 'btn-icon', title: 'add'
8
10
 
9
- li
10
- = link_to new_develop_manage_path(id: RailsAdminContent::Client.table_name), class: 'btn-icon', title: 'add' do
11
- dt = image_tag("add.png")
12
- dd Add
13
-
14
- li class="#{ 'active' if action_name =~ /show/ && controller_name =~ /manages/ }"
15
- = link_to develop_manage_path(RailsAdminContent::Client.table_name), class: 'btn-icon', title: 'Content' do
16
- dt = image_tag("content.png")
17
- dd Content
11
+ li class="#{ 'active' if action_name =~ /show/ && controller_name =~ /manages/ }"
12
+ span.section
13
+ = link_to 'Content', develop_manage_path(RailsAdminContent::Client.table_name), class: 'btn-icon', title: 'Content'
18
14
 
19
- li class="#{ 'active' if action_name =~ /edit_column/ && controller_name =~ /manages/ }"
20
- = link_to edit_column_develop_manage_path(RailsAdminContent::Client.table_name), class: 'btn-icon', title: 'Structure' do
21
- dt = image_tag("setting.png")
22
- dd Structure
15
+ li class="#{ 'active' if action_name =~ /edit_column/ && controller_name =~ /manages/ }"
16
+ span.section
17
+ = link_to 'Structure', edit_column_develop_manage_path(RailsAdminContent::Client.table_name), class: 'btn-icon', title: 'Structure'
23
18
 
24
- li class="#{ 'active' if action_name =~ /details/ && controller_name =~ /manages/ }"
25
- = link_to details_develop_manage_path(RailsAdminContent::Client.table_name), class: 'btn-icon', title: 'Table info' do
26
- dt = image_tag("details.png")
27
- dd Table info
19
+ li class="#{ 'active' if action_name =~ /details/ && controller_name =~ /manages/ }"
20
+ span.section
21
+ = link_to 'Table', details_develop_manage_path(RailsAdminContent::Client.table_name), class: 'btn-icon', title: 'Table info'
28
22
 
29
- li
30
- = link_to query_develop_manages_path, class: 'btn-icon', title: 'Query' do
31
- dt = image_tag("search.png")
32
- dd Query
23
+ li
24
+ span.section
25
+ = link_to 'Query', query_develop_manages_path, class: 'btn-icon', title: 'Query'
33
26
 
34
- div style="clear:both"
27
+ div style="clear:both"
@@ -1,5 +1,5 @@
1
1
  hr
2
- .span10
2
+ .span10 style="width: 96%"
3
3
  table#edit_tables.table-bordered.table.table-hover
4
4
  thead
5
5
  tr#th-title
@@ -1,93 +1,93 @@
1
1
  class RailsAdminContent::Client < Mysql2::Client
2
2
 
3
- Syntax = /limit\s+\d+,\d+|limit\s+\d+/
4
- Syntax_table = /from\s+(\w+)/
5
-
6
- cattr_accessor :query_str, :total_nums, :table_name
7
-
8
- def self.select_field(type)
9
- case type.gsub(/\(.*?\)/,'')
10
- when "tinyint" then [['等于', '='], ['不等于', '≠']]
11
- when "datetime" then [['等于', '='], ['不等于', '≠'], ['大于', '>'], ['小于','<']]
12
- when "int" then [['等于', '='], ['不等于', '≠'], ['大于', '>'], ['小于','<'], ['含有', 'IN']]
13
- else
14
- [['等于', '='], ['不等于', '≠'], ['包含', 'LIKE']]
15
- end
16
- end
17
-
18
- def self.conn
19
- @client ||= new ActiveRecord::Base.connection_config
20
- end
21
-
22
- alias :origin_query :query
23
-
24
- def self.query(query_sql, page=nil, stint=nil)
25
- self.table_name = query_sql.downcase.match(Syntax_table)[1] if query_sql.downcase.match(Syntax_table)
26
- self.total_nums = conn.origin_query(query_sql).size
27
- query_sql = limit(query_sql, page, stint) if stint && page
28
- query_sql = query_sql.gsub(/;/, '')
29
- conn.origin_query(query_sql)
30
- end
31
-
32
- def self.limit(query_sql, page=1, stint)
33
- page = page == 1 ? page = 0 : page.to_i*stint.to_i-stint.to_i
34
- query_sql.downcase.match(Syntax).present? ? query_sql.downcase.gsub(Syntax, "LIMIT #{page},#{stint}") : "#{query_sql} LIMIT #{page},#{stint}"
35
- end
36
-
37
- def self.get_tables
38
- @tables ? @tables : @tables = conn.origin_query('SHOW TABLES')
39
- end
40
-
41
- def self.compose(params)
42
- "SELECT * FROM #{params[:id]} WHERE #{params["field"].inject([]){|a, (key,value)| a << compose_key(params["calc"][key],key, value); a }.join('and')}"
43
- end
44
-
45
- def self.compose_key(calc,key,value)
46
- case calc
47
- when '=', '>', '<'
48
- " `#{key}` #{calc} '#{value}' "
49
- when 'IN'
50
- " `#{key}` IN (#{value}) "
51
- when '≠'
52
- " `#{key}` != '#{value}' "
53
- when 'LIKE'
54
- " `#{key}` LIKE '%#{value}%' "
55
- when '≥'
56
- " `#{key}` >= '#{value}' "
57
- when '≤'
58
- " `#{key}` <= '#{value}' "
59
- end
60
- end
61
-
62
-
63
- def self.delete(table_name, ids)
64
- conn.origin_query("DELETE FROM #{table_name} WHERE id IN (#{ids.join(',')})") if ids.is_a?(Array)
65
- end
66
-
67
- def self.insert(table_name, field)
68
- conn.origin_query("INSERT INTO #{table_name} (#{field.keys.join(',')}) VALUES ('#{field.values.join("','")}')")
69
- end
70
-
71
- def self.update(table_name, id, fields)
72
- update_str = "UPDATE #{table_name} SET #{compose_update_sql(table_name, fields.to_a)} WHERE id = #{id}"
73
- conn.origin_query update_str
74
- end
75
-
76
- def self.compose_update_sql(table_name,fields)
77
- columns = desc_table(table_name)
78
- fields.inject([]) do |array, field|
79
- columns.each do |column|
80
- if field[0] == column["Field"]
81
- array << (%w(int decimal tinyint).include?(column["Type"].gsub(/\(.*?\)/,'')) ? "#{field[0]} = #{field[1]}" : "#{field[0]} = REPLACE(REPLACE(REPLACE('#{field[1]}', '&','&amp;'), '>', '&gt;'), '<', '&lt;')")
82
- end
83
- end
84
- array
85
- end.join(',')
86
- end
87
-
88
- def self.desc_table(table_name)
89
- conn.origin_query("DESC #{table_name}").each
90
- end
3
+ Syntax = /limit\s+\d+,\d+|limit\s+\d+/
4
+ Syntax_table = /from\s+(\w+)/
5
+
6
+ cattr_accessor :query_str, :total_nums, :table_name
7
+
8
+ def self.select_field(type)
9
+ case type.gsub(/\(.*?\)/,'')
10
+ when "tinyint" then [['等于', '='], ['不等于', '≠']]
11
+ when "datetime" then [['等于', '='], ['不等于', '≠'], ['大于', '>'], ['小于','<']]
12
+ when "int" then [['等于', '='], ['不等于', '≠'], ['大于', '>'], ['小于','<'], ['含有', 'IN']]
13
+ else
14
+ [['等于', '='], ['不等于', '≠'], ['包含', 'LIKE']]
15
+ end
16
+ end
17
+
18
+ def self.conn
19
+ @client ||= new ActiveRecord::Base.connection_config
20
+ end
21
+
22
+ alias :origin_query :query
23
+
24
+ def self.query(query_sql, page=nil, stint=nil)
25
+ self.table_name = query_sql.downcase.match(Syntax_table)[1] if query_sql.downcase.match(Syntax_table)
26
+ self.total_nums = conn.origin_query(query_sql).size
27
+ query_sql = limit(query_sql, page, stint) if stint && page
28
+ query_sql = query_sql.gsub(/;/, '')
29
+ conn.origin_query(query_sql)
30
+ end
31
+
32
+ def self.limit(query_sql, page=1, stint)
33
+ page = page == 1 ? page = 0 : page.to_i*stint.to_i-stint.to_i
34
+ query_sql.downcase.match(Syntax).present? ? query_sql.downcase.gsub(Syntax, "LIMIT #{page},#{stint}") : "#{query_sql} LIMIT #{page},#{stint}"
35
+ end
36
+
37
+ def self.get_tables
38
+ @tables ? @tables : @tables = conn.origin_query('SHOW TABLES')
39
+ end
40
+
41
+ def self.compose(params)
42
+ "SELECT * FROM #{params[:id]} WHERE #{params["field"].inject([]){|a, (key,value)| a << compose_key(params["calc"][key],key, value); a }.join('and')}"
43
+ end
44
+
45
+ def self.compose_key(calc,key,value)
46
+ case calc
47
+ when '=', '>', '<'
48
+ " `#{key}` #{calc} '#{value}' "
49
+ when 'IN'
50
+ " `#{key}` IN (#{value}) "
51
+ when '≠'
52
+ " `#{key}` != '#{value}' "
53
+ when 'LIKE'
54
+ " `#{key}` LIKE '%#{value}%' "
55
+ when '≥'
56
+ " `#{key}` >= '#{value}' "
57
+ when '≤'
58
+ " `#{key}` <= '#{value}' "
59
+ end
60
+ end
61
+
62
+
63
+ def self.delete(table_name, ids)
64
+ conn.origin_query("DELETE FROM #{table_name} WHERE id IN (#{ids.join(',')})") if ids.is_a?(Array)
65
+ end
66
+
67
+ def self.insert(table_name, field)
68
+ conn.origin_query("INSERT INTO #{table_name} (#{field.keys.join(',')}) VALUES ('#{field.values.join("','")}')")
69
+ end
70
+
71
+ def self.update(table_name, id, fields)
72
+ update_str = "UPDATE #{table_name} SET #{compose_update_sql(table_name, fields.to_a)} WHERE id = #{id}"
73
+ conn.origin_query update_str
74
+ end
75
+
76
+ def self.compose_update_sql(table_name,fields)
77
+ columns = desc_table(table_name)
78
+ fields.inject([]) do |array, field|
79
+ columns.each do |column|
80
+ if field[0] == column["Field"]
81
+ array << (%w(int decimal tinyint).include?(column["Type"].gsub(/\(.*?\)/,'')) ? "#{field[0]} = #{field[1]}" : "#{field[0]} = REPLACE(REPLACE(REPLACE('#{field[1]}', '&','&amp;'), '>', '&gt;'), '<', '&lt;')")
82
+ end
83
+ end
84
+ array
85
+ end.join(',')
86
+ end
87
+
88
+ def self.desc_table(table_name)
89
+ conn.origin_query("DESC #{table_name}").each
90
+ end
91
91
 
92
92
 
93
93
  end
@@ -6,7 +6,7 @@ require 'rails_admin_content/client'
6
6
  require 'rails_admin_content/helper'
7
7
 
8
8
  module RailsAdminContent
9
- class Engine < ::Rails::Engine
10
- isolate_namespace RailsAdminContent
11
- end
9
+ class Engine < ::Rails::Engine
10
+ isolate_namespace RailsAdminContent
11
+ end
12
12
  end
@@ -1,65 +1,65 @@
1
1
  module ActionView
2
- module Helpers
3
- module DateHelper
4
- def custom_paginate(scope, options = {})
5
- paginate = RailsAdminContent::Paginate.new(scope, options.update(per_page: options[:stint]))
6
- paginate.to_s
7
- end
2
+ module Helpers
3
+ module DateHelper
4
+ def custom_paginate(scope, options = {})
5
+ paginate = RailsAdminContent::Paginate.new(scope, options.update(per_page: options[:stint]))
6
+ paginate.to_s
7
+ end
8
8
 
9
- def format(value, limit=10)
10
- value = value.is_a?(String) && value.size > limit ? value.truncate(limit) : value
11
- value = value.is_a?(Time) ? value.to_s(:db) : value
12
- value ||= "null"
13
- end
9
+ def format(value, limit=10)
10
+ value = value.is_a?(String) && value.size > limit ? value.truncate(limit) : value
11
+ value = value.is_a?(Time) ? value.to_s(:db) : value
12
+ value ||= "null"
13
+ end
14
14
 
15
- def menu_value(value, icon)
16
- raw <<-HTML
17
- <i class="#{icon}"></i><span class="hidden-tablet">#{value}</span>
18
- HTML
19
- end
15
+ def menu_value(value, icon)
16
+ raw <<-HTML
17
+ <i class="#{icon}"></i><span class="hidden-tablet">#{value}</span>
18
+ HTML
19
+ end
20
20
 
21
- def link_to_menu(*args, &block)
22
- name = menu_value(args[0], args[1])
23
- options = args[2] || {}
24
- html_options = args[3]
21
+ def link_to_menu(*args, &block)
22
+ name = menu_value(args[0], args[1])
23
+ options = args[2] || {}
24
+ html_options = args[3]
25
25
 
26
- html_options = convert_options_to_data_attributes(options, html_options)
27
- url = url_for(options)
26
+ html_options = convert_options_to_data_attributes(options, html_options)
27
+ url = url_for(options)
28
28
 
29
- href = html_options['href']
30
- tag_options = tag_options(html_options)
31
- href_attr = "href=\"#{ERB::Util.html_escape(url)}\"" unless href
32
- "<a #{href_attr}#{tag_options}>#{ERB::Util.html_escape(name || url)}</a>".html_safe
33
- end
29
+ href = html_options['href']
30
+ tag_options = tag_options(html_options)
31
+ href_attr = "href=\"#{ERB::Util.html_escape(url)}\"" unless href
32
+ "<a #{href_attr}#{tag_options}>#{ERB::Util.html_escape(name || url)}</a>".html_safe
33
+ end
34
34
 
35
- def edited(key, value, str='')
36
- str << 'editable' unless key == 'id'
37
- str << ' edit_datepicker' if value.is_a?(Time)
38
- str
39
- end
35
+ def edited(key, value, str='')
36
+ str << 'editable' unless key == 'id'
37
+ str << ' edit_datepicker' if value.is_a?(Time)
38
+ str
39
+ end
40
40
 
41
- def options_for_select_column_data(table, selected=nil)
42
- options_for_select RailsAdminContent::Client.desc_table(table).map{|a| [ a["Field"],a["Field"], column_type: a["Type"].gsub(/\(.*?\)/,'') ]}, selected
43
- end
41
+ def options_for_select_column_data(table, selected=nil)
42
+ options_for_select RailsAdminContent::Client.desc_table(table).map{|a| [ a["Field"],a["Field"], column_type: a["Type"].gsub(/\(.*?\)/,'') ]}, selected
43
+ end
44
44
 
45
- def content_field(column, value=nil)
46
- type = column["Type"].gsub(/\(.*?\)/,'')
47
- column["Default"] = value if value
48
- column["Field"] = "field[#{column["Field"]}]"
49
- case type
50
- when 'text'
51
- text_area_tag column["Field"], column["Default"], :size => "25x6", 'data-field' => column["Field"], class: "#{type} span10"
52
- when 'varchar'
53
- text_field_tag column["Field"], column["Default"], 'data-field' => column["Field"], class: "#{type} span10"
54
- when 'int'
55
- number_field_tag column["Field"], column["Default"], 'data-field' => column["Field"], class: "#{type} span10"
56
- when 'tinyint'
57
- select_tag column["Field"], options_for_select([['Yes',1],['No',0]], column["Default"]), 'data-field' => column["Field"], class: "#{type} span10"
58
- else
59
- text_field_tag column["Field"], column["Default"], 'data-field' => column["Field"], class: "#{type} span10"
60
- end
61
- end
45
+ def content_field(column, value=nil)
46
+ type = column["Type"].gsub(/\(.*?\)/,'')
47
+ column["Default"] = value if value
48
+ column["Field"] = "field[#{column["Field"]}]"
49
+ case type
50
+ when 'text'
51
+ text_area_tag column["Field"], column["Default"], :size => "25x6", 'data-field' => column["Field"], class: "#{type} span10"
52
+ when 'varchar'
53
+ text_field_tag column["Field"], column["Default"], 'data-field' => column["Field"], class: "#{type} span10"
54
+ when 'int'
55
+ number_field_tag column["Field"], column["Default"], 'data-field' => column["Field"], class: "#{type} span10"
56
+ when 'tinyint'
57
+ select_tag column["Field"], options_for_select([['Yes',1],['No',0]], column["Default"]), 'data-field' => column["Field"], class: "#{type} span10"
58
+ else
59
+ text_field_tag column["Field"], column["Default"], 'data-field' => column["Field"], class: "#{type} span10"
60
+ end
61
+ end
62
62
 
63
- end
64
- end
63
+ end
64
+ end
65
65
  end
@@ -1,18 +1,14 @@
1
1
  module RailsAdminContent
2
- module Mysql
3
- module Adapters
4
- class Client
5
-
6
- def initialize
7
- @client = client = Mysql2::Client.new ActiveRecord::Base.connection_config
8
- end
9
-
10
- def query(sql)
11
- @client.query(sql).each
12
- end
13
-
14
- end
15
- end
16
-
17
- end
2
+ module Mysql
3
+ module Adapters
4
+ class Client
5
+ def initialize
6
+ @client = client = Mysql2::Client.new ActiveRecord::Base.connection_config
7
+ end
8
+ def query(sql)
9
+ @client.query(sql).each
10
+ end
11
+ end
12
+ end
13
+ end
18
14
  end
@@ -1,53 +1,53 @@
1
1
  module RailsAdminContent
2
- class Paginate
3
-
4
- def initialize(scope, options = {})
5
- @scope, @options = scope, options
6
- end
2
+ class Paginate
7
3
 
8
- def to_s
9
- return "" unless @scope
10
- current_page, total_pages = @options[:spage].to_i, RailsAdminContent::Client.total_nums / @options[:stint] + 1
11
- # return "共#{RailsAdminContent::Client.total_nums}条数据" if total_pages <= 1
12
- param_name = @options["param_name"] || "page"
13
- url = @options["url"] || ""
14
- helpers.content_tag :div, :class => "pagination" do
15
- helpers.content_tag :ul do
16
- result = ''
17
- result += helpers.content_tag(:li, class: 'previous'){helpers.link_to("‹ 上一页","#{url}?#{param_name}=#{current_page-1}")} if current_page.to_i > 1
18
- if total_pages > 8
19
- 1.upto(3) { |i| result << page_link(i, current_page) }
20
- if current_page > 1 and current_page < total_pages
21
- result << helpers.content_tag(:li, helpers.link_to("...",'#'), class: 'disabled') if current_page > 5
22
- min = current_page > 4 ? current_page-1 : 4
23
- max = current_page < total_pages-4 ? current_page+2 : total_pages-2
24
- (min..max-1).each { |i| result << page_link(i, current_page) } if max >= min+1
25
- result << helpers.content_tag(:li, helpers.link_to("...", "#"), class: 'disabled') if current_page < total_pages-4
26
- else
27
- result << helpers.content_tag(:li, helpers.link_to("...",'#'), class: 'disabled')
28
- end
29
- (total_pages-2..total_pages).each{ |i| result << page_link(i, current_page) }
30
- else
31
- (1..total_pages).each{ |i| result << page_link(i, current_page) }
32
- end
33
- result += helpers.content_tag(:li, class: "next"){helpers.link_to("下一页 ›", "#{url}?#{param_name}=#{current_page+1}")} if current_page < total_pages
34
- result += helpers.content_tag(:li, class: 'disabled total_pages'){helpers.link_to "共#{RailsAdminContent::Client.total_nums}条数据", "#"}
35
- result.html_safe
36
- end
37
- end
38
-
39
- end
4
+ def initialize(scope, options = {})
5
+ @scope, @options = scope, options
6
+ end
40
7
 
41
- private
42
- def page_link(page, current_page)
43
- param_name = @options["param_name"] || "page"
44
- url = @options["url"] || ""
45
- current_page == page ? helpers.content_tag(:li, page, :class => "active"){helpers.link_to page, '#'} : helpers.content_tag(:li, helpers.link_to("#{page}", "#{url}?#{param_name}=#{page}"))
46
- end
8
+ def to_s
9
+ return "" unless @scope
10
+ current_page, total_pages = @options[:spage].to_i, RailsAdminContent::Client.total_nums / @options[:stint] + 1
11
+ # return "共#{RailsAdminContent::Client.total_nums}条数据" if total_pages <= 1
12
+ param_name = @options["param_name"] || "page"
13
+ url = @options["url"] || ""
14
+ helpers.content_tag :div, :class => "pagination" do
15
+ helpers.content_tag :ul do
16
+ result = ''
17
+ result += helpers.content_tag(:li, class: 'previous'){helpers.link_to("‹ 上一页","#{url}?#{param_name}=#{current_page-1}")} if current_page.to_i > 1
18
+ if total_pages > 8
19
+ 1.upto(3) { |i| result << page_link(i, current_page) }
20
+ if current_page > 1 and current_page < total_pages
21
+ result << helpers.content_tag(:li, helpers.link_to("...",'#'), class: 'disabled') if current_page > 5
22
+ min = current_page > 4 ? current_page-1 : 4
23
+ max = current_page < total_pages-4 ? current_page+2 : total_pages-2
24
+ (min..max-1).each { |i| result << page_link(i, current_page) } if max >= min+1
25
+ result << helpers.content_tag(:li, helpers.link_to("...", "#"), class: 'disabled') if current_page < total_pages-4
26
+ else
27
+ result << helpers.content_tag(:li, helpers.link_to("...",'#'), class: 'disabled')
28
+ end
29
+ (total_pages-2..total_pages).each{ |i| result << page_link(i, current_page) }
30
+ else
31
+ (1..total_pages).each{ |i| result << page_link(i, current_page) }
32
+ end
33
+ result += helpers.content_tag(:li, class: "next"){helpers.link_to("下一页 ›", "#{url}?#{param_name}=#{current_page+1}")} if current_page < total_pages
34
+ result += helpers.content_tag(:li, class: 'disabled total_pages'){helpers.link_to "共#{RailsAdminContent::Client.total_nums}条数据", "#"}
35
+ result.html_safe
36
+ end
37
+ end
47
38
 
48
- def helpers
49
- ActionController::Base.helpers
50
- end
51
-
52
- end
39
+ end
40
+
41
+ private
42
+ def page_link(page, current_page)
43
+ param_name = @options["param_name"] || "page"
44
+ url = @options["url"] || ""
45
+ current_page == page ? helpers.content_tag(:li, page, :class => "active"){helpers.link_to page, '#'} : helpers.content_tag(:li, helpers.link_to("#{page}", "#{url}?#{param_name}=#{page}"))
46
+ end
47
+
48
+ def helpers
49
+ ActionController::Base.helpers
50
+ end
51
+
52
+ end
53
53
  end
@@ -1,3 +1,3 @@
1
1
  module RailsAdminContent
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.3"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_admin_content
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
- - Lijia Tong
7
+ - Terry
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-07-19 00:00:00.000000000 Z
11
+ date: 2013-08-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails