mustache_render 0.0.15 → 0.0.20

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.
Files changed (54) hide show
  1. data/lib/generators/mustache_render/install/templates/config/initializers/mustache_render.rb +1 -20
  2. data/lib/generators/mustache_render/install_generator.rb +2 -14
  3. data/lib/mustache_render.rb +0 -20
  4. data/lib/mustache_render/config.rb +0 -83
  5. data/lib/mustache_render/core_ext/base_controller_ext.rb +1 -2
  6. data/lib/mustache_render/mustache.rb +0 -57
  7. data/lib/mustache_render/mustache/data.rb +1 -13
  8. data/lib/mustache_render/populator_base.rb +2 -3
  9. data/lib/mustache_render/version.rb +1 -1
  10. data/spec/lib/mustache/file_render_spec.rb +1 -1
  11. data/spec/spec_helper.rb +1 -8
  12. metadata +1 -59
  13. data/lib/generators/mustache_render/install/templates/active_record/migration.rb +0 -65
  14. data/lib/generators/mustache_render/install/templates/models/active_record/mustache_render_folder.rb +0 -6
  15. data/lib/generators/mustache_render/install/templates/models/active_record/mustache_render_manager.rb +0 -6
  16. data/lib/generators/mustache_render/install/templates/models/active_record/mustache_render_template.rb +0 -6
  17. data/lib/generators/mustache_render/install/templates/models/active_record/mustache_render_template_version.rb +0 -6
  18. data/lib/mustache_render/controllers/mustache_render/manage/base_controller.rb +0 -42
  19. data/lib/mustache_render/controllers/mustache_render/manage/folders_controller.rb +0 -47
  20. data/lib/mustache_render/controllers/mustache_render/manage/template_versions_controller.rb +0 -71
  21. data/lib/mustache_render/controllers/mustache_render/manage/templates_controller.rb +0 -61
  22. data/lib/mustache_render/core_ext/action_view_handler.rb +0 -18
  23. data/lib/mustache_render/helpers/mustache_render/manage/base_helper.rb +0 -29
  24. data/lib/mustache_render/models/mustache_render_folder_mixin.rb +0 -128
  25. data/lib/mustache_render/models/mustache_render_manager_mixin.rb +0 -23
  26. data/lib/mustache_render/models/mustache_render_template_mixin.rb +0 -104
  27. data/lib/mustache_render/models/mustache_render_template_version_mixin.rb +0 -46
  28. data/lib/mustache_render/resources/jquery.js +0 -9473
  29. data/lib/mustache_render/resources/jquery_ujs.js +0 -429
  30. data/lib/mustache_render/views/layouts/mustache_render/manage/base.html.erb +0 -22
  31. data/lib/mustache_render/views/mustache_render/manage/folders/_edit_2.html.erb +0 -7
  32. data/lib/mustache_render/views/mustache_render/manage/folders/_edit_3.html.erb +0 -6
  33. data/lib/mustache_render/views/mustache_render/manage/folders/_form.html.erb +0 -31
  34. data/lib/mustache_render/views/mustache_render/manage/folders/_new_2.html.erb +0 -3
  35. data/lib/mustache_render/views/mustache_render/manage/folders/_new_3.html.erb +0 -3
  36. data/lib/mustache_render/views/mustache_render/manage/folders/edit.html.erb +0 -11
  37. data/lib/mustache_render/views/mustache_render/manage/folders/index.html.erb +0 -9
  38. data/lib/mustache_render/views/mustache_render/manage/folders/new.html.erb +0 -10
  39. data/lib/mustache_render/views/mustache_render/manage/folders/show.html.erb +0 -44
  40. data/lib/mustache_render/views/mustache_render/manage/template_versions/_edit_2.html.erb +0 -10
  41. data/lib/mustache_render/views/mustache_render/manage/template_versions/_edit_3.html.erb +0 -10
  42. data/lib/mustache_render/views/mustache_render/manage/template_versions/_form.html.erb +0 -43
  43. data/lib/mustache_render/views/mustache_render/manage/template_versions/_list.html.erb +0 -41
  44. data/lib/mustache_render/views/mustache_render/manage/template_versions/edit.html.erb +0 -22
  45. data/lib/mustache_render/views/mustache_render/manage/template_versions/index.html.erb +0 -20
  46. data/lib/mustache_render/views/mustache_render/manage/template_versions/show.html.erb +0 -53
  47. data/lib/mustache_render/views/mustache_render/manage/templates/_edit_2.html.erb +0 -10
  48. data/lib/mustache_render/views/mustache_render/manage/templates/_edit_3.html.erb +0 -9
  49. data/lib/mustache_render/views/mustache_render/manage/templates/_form.html.erb +0 -43
  50. data/lib/mustache_render/views/mustache_render/manage/templates/_new_2.html.erb +0 -9
  51. data/lib/mustache_render/views/mustache_render/manage/templates/_new_3.html.erb +0 -9
  52. data/lib/mustache_render/views/mustache_render/manage/templates/edit.html.erb +0 -13
  53. data/lib/mustache_render/views/mustache_render/manage/templates/new.html.erb +0 -10
  54. data/lib/mustache_render/views/mustache_render/manage/templates/show.html.erb +0 -52
@@ -1,65 +0,0 @@
1
- # -*- encoding : utf-8 -*-
2
- class MustacheRenderMigration < ActiveRecord::Migration
3
- def self.up
4
- create_table :mustache_render_folders, :options => 'DEFAULT CHARSET=utf8' do |t|
5
- t.string :name, :default => '' # 文件夹的名称
6
-
7
- t.string :full_path, :default => '' # 全路径
8
-
9
- ###### for nested_ful #####################
10
- t.integer :parent_id # 父节点的id
11
- t.integer :left_id
12
- t.integer :right_id
13
- t.integer :depth # 深度
14
- t.integer :children_count, :default => 0
15
- ###########################################
16
-
17
- t.text :note # 备注
18
-
19
- t.timestamps
20
- end
21
-
22
- create_table :mustache_render_templates, :options => 'DEFAULT CHARSET=utf8' do |t|
23
- t.integer :last_user_id # 最后一个修改模板的用户
24
- t.integer :create_user_id # 创建者的用户id
25
- t.integer :folder_id # 文件夹的ID
26
- t.string :name # 模板的名称
27
- t.text :content # 代码
28
-
29
- t.text :note # 备注
30
- t.timestamps
31
- end
32
-
33
- create_table :mustache_render_template_versions, :options => 'DEFAULT CHARSET=utf8' do |t|
34
- t.integer :template_id # 模板的id
35
- t.integer :last_user_id # 最后一个修改模板的用户
36
- t.integer :create_user_id # 创建者的用户id
37
- t.integer :folder_id # 文件夹的ID
38
- t.string :name # 模板的名称
39
- t.text :content # 代码
40
- t.string :full_path
41
- t.string :change_log # 修改日志
42
-
43
- t.text :note # 备注
44
- t.timestamps
45
- end
46
-
47
- create_table :mustache_render_managers, :options => 'DEFAULT CHARSET=utf8' do |t|
48
- t.integer :user_id
49
-
50
- t.integer :admin_able # 是否是管理权限
51
- t.integer :edit_able # 是否可以编辑
52
-
53
- t.timestamps
54
- end
55
-
56
- end
57
-
58
- def self.down
59
- drop_table :mustache_render_folders
60
- drop_table :mustache_render_template_versions
61
- drop_table :mustache_render_templates
62
- drop_table :mustache_render_managers
63
- end
64
- end
65
-
@@ -1,6 +0,0 @@
1
- # -*- encoding : utf-8 -*-
2
- class MustacheRenderFolder < ActiveRecord::Base
3
- include ::MustacheRender::Models::MustacheRenderFolderMixin
4
-
5
- end
6
-
@@ -1,6 +0,0 @@
1
- # -*- encoding : utf-8 -*-
2
- class MustacheRenderManager < ActiveRecord::Base
3
- include ::MustacheRender::Models::MustacheRenderManagerMixin
4
-
5
- end
6
-
@@ -1,6 +0,0 @@
1
- # -*- encoding : utf-8 -*-
2
- class MustacheRenderTemplate < ActiveRecord::Base
3
- include ::MustacheRender::Models::MustacheRenderTemplateMixin
4
-
5
- end
6
-
@@ -1,6 +0,0 @@
1
- # -*- encoding : utf-8 -*-
2
- class MustacheRenderTemplateVersion < ActiveRecord::Base
3
- include ::MustacheRender::Models::MustacheRenderTemplateVersionMixin
4
-
5
- end
6
-
@@ -1,42 +0,0 @@
1
- # -*- encoding : utf-8 -*-
2
- module MustacheRender::Manage
3
- class BaseController < ::ApplicationController
4
- helper BaseHelper
5
-
6
- before_filter :require_user_is_manager!
7
- before_filter :set_mustache_manage_view_path
8
-
9
- layout 'mustache_render/manage/base'
10
-
11
- protected
12
-
13
- #
14
- # 设置mustache的管理器的view path
15
- #
16
- def set_mustache_manage_view_path
17
- prepend_view_path "#{::MustacheRender.config.lib_base_path}/views"
18
- end
19
-
20
- def require_user_is_manager!
21
- self.mustache_render_manager = current_user
22
-
23
- if ::MustacheRender.config.manage_center_need_login?
24
- if self.mustache_render_manager
25
- ## 当前用户没有登录,跳往的url
26
- redirect_to ::MustacheRender.config.user_login_url ## 用户登录的url
27
- elsif !(::MustacheRenderManager.authenticate?(self.mustache_render_manager))
28
- redirect_to ::MustacheRender.config.manager_authenticate_fail_url ## 用户没有权限要跳转的url
29
- end
30
- end
31
- end
32
-
33
- def mustache_render_manager
34
- @_mustache_render_manager
35
- end
36
-
37
- def mustache_render_manager= user
38
- return @_mustache_render_manager if defined?(@_mustache_render_manager)
39
- @_mustache_render_manager ||= user
40
- end
41
- end
42
- end
@@ -1,47 +0,0 @@
1
- # -*- encoding : utf-8 -*-
2
- module MustacheRender::Manage
3
- class FoldersController < BaseController
4
- def index
5
-
6
- end
7
-
8
- def show
9
- @mustache_render_folder = MustacheRenderFolder.find params[:id]
10
- @mustache_render_templates = @mustache_render_folder.templates
11
- end
12
-
13
- def new
14
- @mustache_render_folder = MustacheRenderFolder.new(:parent_id => params[:parent_id])
15
-
16
- end
17
-
18
- def edit
19
- @mustache_render_folder = MustacheRenderFolder.find params[:id]
20
-
21
- end
22
-
23
- def create
24
- @mustache_render_folder = MustacheRenderFolder.new(params[:mustache_render_folder])
25
-
26
- if @mustache_render_folder.save
27
- redirect_to mustache_render_manage_folder_url(@mustache_render_folder)
28
- else
29
- render :new
30
- end
31
- end
32
-
33
- def update
34
- @mustache_render_folder = MustacheRenderFolder.find params[:id]
35
-
36
- if @mustache_render_folder.update_attributes(params[:mustache_render_folder])
37
- redirect_to mustache_render_manage_folder_url(@mustache_render_folder)
38
- else
39
- render :edit
40
- end
41
- end
42
-
43
- def destroy
44
- # TODO: 是否增加删除功能
45
- end
46
- end
47
- end
@@ -1,71 +0,0 @@
1
- # -*- encoding : utf-8 -*-
2
- module MustacheRender::Manage
3
- class TemplateVersionsController < BaseController
4
- before_filter :load_template_record
5
-
6
- def show
7
- @mustache_render_template_version = MustacheRenderTemplateVersion.find params[:id]
8
- end
9
-
10
- def index
11
- @mustache_render_template_versions = @mustache_render_template.template_versions
12
- end
13
-
14
- def destroy
15
- # TODO: 是否增加删除功能
16
- @mustache_render_template_version = MustacheRenderTemplateVersion.find params[:id]
17
-
18
- @mustache_render_template_version.destroy
19
-
20
- redirect_to params[:return_to] || mustache_render_manage_folder_template_template_versions_url(
21
- :folder_id => @mustache_render_template_version.folder_id,
22
- :template_id => @mustache_render_template_version.template_id
23
- )
24
- end
25
-
26
- def edit
27
- @mustache_render_template_version = MustacheRenderTemplateVersion.find params[:id]
28
- end
29
-
30
- def update
31
- @mustache_render_template_version = MustacheRenderTemplateVersion.find params[:id]
32
-
33
- if @mustache_render_template_version.update_attributes(params[:mustache_render_template_version])
34
- respond_to do |format|
35
- format.html { redirect_to mustache_render_manage_folder_template_template_version_url(
36
- :folder_id => @mustache_render_template_version.folder_id,
37
- :template_id => @mustache_render_template_version.template_id,
38
- :id => @mustache_render_template_version.id
39
- )}
40
- format.json { head :no_content }
41
- end
42
- else
43
- respond_to do |format|
44
- format.html { render 'edit' }
45
- format.json { render :json => @mustache_render_template_version.errors, :status => :unprocessable_entity }
46
- end
47
- end
48
- end
49
-
50
- def revert
51
- # TODO: 是否增加还原功能
52
- @mustache_render_template_version = MustacheRenderTemplateVersion.find params[:id]
53
-
54
- @mustache_render_template_version.revert
55
-
56
- redirect_to params[:return_to] || mustache_render_manage_folder_template_template_versions_url(
57
- :folder_id => @mustache_render_template_version.folder_id,
58
- :template_id => @mustache_render_template_version.template_id
59
- )
60
-
61
- end
62
-
63
- protected
64
-
65
- def load_template_record
66
- @mustache_render_template = MustacheRenderTemplate.find params[:template_id]
67
- @mustache_render_folder = @mustache_render_template.folder
68
- end
69
-
70
- end
71
- end
@@ -1,61 +0,0 @@
1
- # -*- encoding : utf-8 -*-
2
- module MustacheRender::Manage
3
- class TemplatesController < BaseController
4
- before_filter :load_folder_record
5
-
6
- def show
7
- @mustache_render_template = MustacheRenderTemplate.find params[:id]
8
- end
9
-
10
- def new
11
- @mustache_render_template = MustacheRenderTemplate.new(:folder_id => params[:folder_id])
12
-
13
- end
14
-
15
- def edit
16
- @mustache_render_template = MustacheRenderTemplate.find params[:id]
17
-
18
- end
19
-
20
- def create
21
- @mustache_render_template = MustacheRenderTemplate.new(params[:mustache_render_template].merge(
22
- :create_user_id => mustache_render_manager.try(:id),
23
- :last_user_id => mustache_render_manager.try(:id)
24
- ))
25
-
26
- if @mustache_render_template.save
27
- redirect_to mustache_render_manage_folder_template_url(
28
- :folder_id => @mustache_render_template.folder_id, :id => @mustache_render_template
29
- )
30
- else
31
- render :new
32
- end
33
- end
34
-
35
- def update
36
- @mustache_render_template = MustacheRenderTemplate.find params[:id]
37
-
38
- @mustache_render_template.update_attributes(params[:mustache_render_template].merge(
39
- :last_user_id => mustache_render_manager.try(:id)
40
- ))
41
-
42
- if @mustache_render_template.errors.empty?
43
- redirect_to mustache_render_manage_folder_template_url(
44
- :folder_id => @mustache_render_template.folder_id, :id => @mustache_render_template
45
- )
46
- else
47
- render :edit
48
- end
49
- end
50
-
51
- def destroy
52
- # TODO: 是否增加删除功能
53
- end
54
-
55
- protected
56
-
57
- def load_folder_record
58
- @mustache_render_folder = MustacheRenderFolder.find params[:folder_id]
59
- end
60
- end
61
- end
@@ -1,18 +0,0 @@
1
- # -*- encoding : utf-8 -*-
2
- # #
3
- # # 注册action view handler
4
- # #
5
- # #
6
- # module MustacheRender::CoreExt
7
- # module ActionViewHandler
8
- # def self.call template
9
- # if template.locals.include? :mustache
10
- # ::MustacheRender::Mustache.render(template.source.inspect, {}).html_safe
11
- # else
12
- # "#{template.source.inspect}".html_safe
13
- # end
14
- # end
15
- #
16
- # end
17
- # end
18
- #
@@ -1,29 +0,0 @@
1
- # -*- encoding : utf-8 -*-
2
- module MustacheRender::Manage
3
- module BaseHelper
4
- # 输出基本的js代码
5
- def output_base_js_code
6
- # if MustacheRender.adapter.rails_2?
7
- # # rails 2 will render
8
- # <<-HTML
9
-
10
- # HTML
11
- # else
12
- # # rails_3 will render
13
- # <<-HTML
14
-
15
- # HTML
16
- # end
17
- end
18
-
19
- # 输出jquery code
20
- def generate_jquery_code
21
- @@generated_jquery_code ||= File.read("#{::MustacheRender.config.lib_base_path}/resources/jquery.js")
22
- end
23
-
24
- def generate_jquery_ujs_code
25
- @@generated_jquery_ujs_code ||= File.read("#{::MustacheRender.config.lib_base_path}/resources/jquery_ujs.js")
26
- end
27
- end
28
- end
29
-
@@ -1,128 +0,0 @@
1
- # -*- encoding : utf-8 -*-
2
- module MustacheRender::Models
3
- module MustacheRenderFolderMixin
4
- def self.included(base)
5
- base.class_eval do
6
- table_name = 'mustache_render_folders'
7
-
8
- has_many :templates, :class_name => 'MustacheRenderTemplate', :foreign_key => 'folder_id'
9
-
10
- attr_accessible :parent_id, :name, :note
11
-
12
- acts_as_nested_set(
13
- :parent_column => 'parent_id',
14
- :left_column => 'left_id',
15
- :right_column => 'right_id',
16
- :depth_column => 'depth',
17
- :dependent => :delete_all, # or :destroy
18
- :polymorphic => false,
19
- :counter_cache => 'children_count'
20
- # :before_add => :do_before_add_stuff,
21
- # :after_add => :do_after_add_stuff,
22
- # :before_remove => :do_before_remove_stuff,
23
- # :after_remove => :do_after_remove_stuff
24
- )
25
-
26
- validate :impl_validate_full_path
27
- validates_presence_of :name
28
- validates_uniqueness_of :full_path
29
- after_save :impl_update_children_full_path
30
-
31
- extend ClassMethods
32
- include InstanceMethods
33
- end
34
- end
35
-
36
- module ClassMethods
37
- #
38
- # 相关的parents
39
- #
40
- def associate_parents(objects)
41
- if objects.all?{|o| o.respond_to?(:association)}
42
- id_indexed = objects.index_by(&:id)
43
- objects.each do |object|
44
- if !(association = object.association(:parent)).loaded? && (parent = id_indexed[object.parent_id])
45
- association.target = parent
46
- association.set_inverse_instance(parent)
47
- end
48
- end
49
- else
50
- objects
51
- end
52
- end
53
-
54
- def nested_set_options(class_or_item=nil, mover = nil)
55
- class_or_item ||= self
56
-
57
- if class_or_item.is_a? Array
58
- items = class_or_item.reject { |e| !e.root? }
59
- else
60
- class_or_item = class_or_item.roots if class_or_item.respond_to?(:scoped)
61
- items = Array(class_or_item)
62
- end
63
- result = []
64
- items.each do |root|
65
- result += root.class.associate_parents(root.self_and_descendants).map do |i|
66
- if mover.nil? || mover.new_record? || mover.move_possible?(i)
67
- [yield(i), i.id]
68
- end
69
- end.compact
70
- end
71
- result
72
- end
73
-
74
- def nested_set_select_options(class_or_item=nil, mover=nil, options={})
75
- result = []
76
-
77
- result << ['- - 请选择 - -', nil] if options[:include_blank]
78
-
79
- result += nested_set_options(class_or_item, mover) do |item|
80
- "#{'- ' * item.level}#{item.name}"
81
- end
82
- end
83
- end
84
-
85
- module InstanceMethods
86
-
87
- protected
88
- def impl_generate_full_path
89
- tmp_parent = self.class.find_by_id self.parent_id
90
-
91
- if tmp_parent
92
- "/#{tmp_parent.self_and_ancestors.map(&:name).join('/')}/#{self.name}"
93
- else
94
- "/#{self.name}"
95
- end
96
- end
97
-
98
- def impl_validate_full_path
99
- self.full_path = impl_generate_full_path
100
- end
101
-
102
- def impl_update_children_full_path
103
- self.children.each do |child|
104
- child.send :impl_validate_full_path
105
- child.save
106
- end
107
- end
108
-
109
- private
110
-
111
- # def do_before_add_stuff(child_node)
112
- # # do whatever with the child
113
- # end
114
- #
115
- # def do_after_add_stuff(child_node)
116
- # # do whatever with the child
117
- # end
118
- #
119
- # def do_before_remove_stuff(child_node)
120
- # # do whatever with the child
121
- # end
122
- #
123
- # def do_after_remove_stuff(child_node)
124
- # # do whatever with the child
125
- # end
126
- end
127
- end
128
- end