refinerycms-core 0.9.9.21 → 0.9.9.22
Sign up to get free protection for your applications and to get access to all the features.
- data/app/controllers/admin/dialogs_controller.rb +2 -2
- data/app/views/shared/_google_analytics.html.erb +1 -1
- data/app/views/shared/_header.html.erb +2 -1
- data/app/views/shared/_menu.html.erb +11 -10
- data/app/views/shared/_menu_branch.html.erb +3 -5
- data/app/views/shared/admin/_form_actions.html.erb +1 -1
- data/app/views/shared/admin/_image_picker.html.erb +4 -3
- data/app/views/shared/admin/_resource_picker.html.erb +14 -14
- data/config/locales/de.yml +2 -2
- data/config/locales/fi.yml +3 -3
- data/lib/gemspec.rb +2 -2
- data/lib/generators/templates/.gitignore +0 -1
- data/lib/refinery/activity.rb +1 -1
- data/lib/refinery/crud.rb +3 -3
- data/lib/refinery/helpers/image_helper.rb +1 -1
- data/lib/refinery/helpers/menu_helper.rb +19 -12
- data/lib/refinery/helpers/meta_helper.rb +7 -1
- data/lib/refinerycms-core.rb +4 -0
- data/public/javascripts/jquery/jquery.html5-placeholder-shim.js +86 -79
- data/public/javascripts/refinery/admin.js +102 -81
- data/public/javascripts/refinery/site_bar.js +1 -1
- data/public/javascripts/wymeditor/jquery.refinery.wymeditor.js +5 -2
- data/refinerycms-core.gemspec +6 -6
- metadata +10 -9
@@ -6,9 +6,9 @@ module Admin
|
|
6
6
|
url_params = params.reject {|key, value| key =~ /(action)|(controller)/}
|
7
7
|
|
8
8
|
@iframe_src = if @dialog_type == 'image'
|
9
|
-
|
9
|
+
insert_admin_images_path(url_params.merge(:id => nil, :modal => true))
|
10
10
|
elsif @dialog_type == 'link'
|
11
|
-
|
11
|
+
link_to_admin_pages_dialogs_path(url_params.merge(:id => nil))
|
12
12
|
end
|
13
13
|
|
14
14
|
render :layout => false
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<% unless refinery_user? or
|
2
2
|
(page_code = RefinerySetting.find_or_set(:analytics_page_code, 'UA-xxxxxx-x').to_s.strip) =~ /^(UA-xxxxxx-x)?$/ -%>
|
3
3
|
<!-- asynchronous google analytics: mathiasbynens.be/notes/async-analytics-snippet -->
|
4
|
-
<script>var _gaq=[['_setAccount','<%= page_code %>'],['_trackPageview']];(function(d,t){
|
4
|
+
<script>var _gaq=[['_setAccount','<%= page_code %>'],['_trackPageview'],['_trackPageLoadTime']];(function(d,t){
|
5
5
|
var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
|
6
6
|
g.async=1;g.src='//www.google-analytics.com/ga.js';s.parentNode.insertBefore(g,s)
|
7
7
|
}(document,'script'))</script>
|
@@ -2,17 +2,20 @@
|
|
2
2
|
dom_id ||= 'menu'
|
3
3
|
caching = (cache_menu ||= RefinerySetting.find_or_set(:cache_menu, false))
|
4
4
|
cache_key = [Refinery.base_cache_key, 'pages_menus', dom_id, Globalize.locale].join('_')
|
5
|
-
# cache the pages first
|
6
|
-
collection = if caching
|
7
|
-
Rails.cache.fetch(cache_key) { (collection ||= @menu_pages).to_a }
|
8
|
-
else
|
9
|
-
(collection ||= @menu_pages).to_a
|
10
|
-
end
|
11
5
|
|
12
6
|
# cache the generation of the menu based on the pages.
|
13
7
|
cache_if(caching, ([cache_key, cache_path ||= request.path].join('_'))) do
|
8
|
+
# cache the pages first
|
9
|
+
if caching
|
10
|
+
collection = Rails.cache.fetch(cache_key) { (collection ||= @menu_pages).to_a }
|
11
|
+
roots = local_assigns[:roots] || Rails.cache.fetch([cache_key, "roots"].join("_")) { roots = collection.select{|c| c.parent_id.nil?} } unless roots
|
12
|
+
else
|
13
|
+
collection ||= @menu_pages
|
14
|
+
roots = local_assigns[:roots] || collection.select{|c| c.parent_id.nil?}
|
15
|
+
end
|
16
|
+
|
14
17
|
# Select top menu items unless 'roots' is supplied.
|
15
|
-
if
|
18
|
+
if roots.present?
|
16
19
|
css = [(css || 'menu'), 'clearfix'].flatten.join(' ')
|
17
20
|
hide_children = RefinerySetting.find_or_set(:menu_hide_children, false) if hide_children.nil?
|
18
21
|
-%>
|
@@ -23,10 +26,8 @@
|
|
23
26
|
:locals => {
|
24
27
|
:hide_children => hide_children,
|
25
28
|
:sibling_count => (roots.length - 1),
|
26
|
-
:collection => collection,
|
27
29
|
:apply_css => true #if you don't care about class='first' class='last' or class='selected' set apply_css to false for speed.
|
28
|
-
}
|
29
|
-
-%>
|
30
|
+
} -%>
|
30
31
|
</ul>
|
31
32
|
</nav>
|
32
33
|
<% end -%>
|
@@ -2,9 +2,9 @@
|
|
2
2
|
if !!local_assigns[:apply_css] and (classes = menu_branch_css(local_assigns)).any?
|
3
3
|
css = "class='#{classes.join(' ')}'".html_safe
|
4
4
|
end
|
5
|
-
dom_id = "id='item_#{menu_branch_counter}'".html_safe
|
5
|
+
dom_id = "id='item_#{menu_branch_counter}'".html_safe if menu_branch.parent_id.nil?
|
6
6
|
|
7
|
-
children = menu_branch.children.live.in_menu unless hide_children
|
7
|
+
children = menu_branch.children.live.in_menu unless hide_children or menu_branch.rgt == menu_branch.lft + 1
|
8
8
|
-%>
|
9
9
|
<li<%= ['', css, dom_id].compact.join(' ').gsub(/\ *$/, '').html_safe %>>
|
10
10
|
<%= link_to menu_branch.title, menu_branch.url -%>
|
@@ -14,9 +14,7 @@
|
|
14
14
|
:collection => children,
|
15
15
|
:locals => {
|
16
16
|
:apply_css => local_assigns[:apply_css],
|
17
|
-
:hide_children => !!hide_children
|
18
|
-
:collection => collection,
|
19
|
-
:sibling_count => children.length - 1
|
17
|
+
:hide_children => !!hide_children
|
20
18
|
} -%>
|
21
19
|
</ul>
|
22
20
|
<% end -%>
|
@@ -32,7 +32,7 @@
|
|
32
32
|
delete_title ||= nil
|
33
33
|
delete_confirmation ||= nil
|
34
34
|
delete_button_id ||= "delete_button"
|
35
|
-
delete_url ||= eval("admin_#{f.object_name}
|
35
|
+
delete_url ||= eval("admin_#{f.object_name}_path(#{f.object.id})")
|
36
36
|
end
|
37
37
|
|
38
38
|
paginate_collection = nil
|
@@ -2,16 +2,17 @@
|
|
2
2
|
description ||= 'image'
|
3
3
|
thumbnail ||= 'medium'
|
4
4
|
toggle_image_display ||= false
|
5
|
+
conditions ||= nil
|
5
6
|
randomiser = rand(Time.now.yesterday.to_i * Time.now.to_i)
|
6
|
-
current_image_link_href =
|
7
|
-
:width => 866, :height => 510)
|
7
|
+
current_image_link_href = insert_admin_images_path(:dialog => true, :callback => "image_picker_#{randomiser}_changed",
|
8
|
+
:width => 866, :height => 510, :conditions => conditions)
|
8
9
|
current_image_title = t('.change', :what => description.titleize)
|
9
10
|
-%>
|
10
11
|
<div id='image_picker_container_<%= randomiser %>'>
|
11
12
|
<%= link_to t('.show'), '', :class => "current_image_toggler" if toggle_image_display %>
|
12
13
|
<%= f.hidden_field field, :class => "current_image_id" -%>
|
13
14
|
|
14
|
-
<div class='current_image_container'<%= "
|
15
|
+
<div class='current_image_container' style="margin-top: 10px<%= ";display: none" if toggle_image_display %>">
|
15
16
|
<a class='current_image_link dialog' href="<%= current_image_link_href %>" style='border: 0px' title='<%= current_image_title %>' name='<%= current_image_title %>'>
|
16
17
|
<% unless image.nil? -%>
|
17
18
|
<%= image_fu image, ::Image.user_image_sizes[thumbnail.to_sym],
|
@@ -1,15 +1,17 @@
|
|
1
1
|
<%
|
2
|
+
conditions ||= nil
|
2
3
|
insert_text = "<span id='no_resource_selected_#{field}' class='nothing_selected' #{"style='display: none;'" if resource.present?}>
|
3
4
|
#{t('.no_resource_selected')}
|
4
5
|
</span>".html_safe
|
5
|
-
insert_link =
|
6
|
+
insert_link = insert_admin_resources_path({
|
6
7
|
:dialog => true,
|
7
8
|
:update_resource => "current_resource_#{field}",
|
8
9
|
:update_text => "current_resource_text_#{field}",
|
9
10
|
:callback => "resource_changed_#{field}",
|
10
11
|
:field => [f.object_name.gsub(/\]\[|[^-a-zA-Z0-9:.]/, "_").sub(/_$/, ""), field].join('_'),
|
11
12
|
:current_link => "#{resource.url if resource.present?}",
|
12
|
-
:height => 480
|
13
|
+
:height => 480,
|
14
|
+
:conditions => conditions
|
13
15
|
})
|
14
16
|
%>
|
15
17
|
<%= f.hidden_field field %>
|
@@ -18,18 +20,16 @@
|
|
18
20
|
:name => t('.name'),
|
19
21
|
:id => "current_resource_link_#{field}"
|
20
22
|
%>
|
21
|
-
<div id='current_resource_container_<%= field %>' <%= "
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
:id => "current_resource_#{field}",
|
32
|
-
:target => "_blank" %>
|
23
|
+
<div id='current_resource_container_<%= field %>' style='margin-top: 10px<%= ";display: none" unless resource.present? %>'>
|
24
|
+
<%= link_to "#{refinery_icon_tag('page_white_put.png')} ".html_safe +
|
25
|
+
content_tag(
|
26
|
+
:span,
|
27
|
+
"#{resource.title} (#{resource.file_name})",
|
28
|
+
:id => "current_resource_text_#{field}"
|
29
|
+
),
|
30
|
+
resource.url,
|
31
|
+
:id => "current_resource_#{field}",
|
32
|
+
:target => "_blank" if resource.present? %>
|
33
33
|
</div>
|
34
34
|
<br/>
|
35
35
|
<%= link_to t('.remove_current'), "",
|
data/config/locales/de.yml
CHANGED
@@ -44,9 +44,9 @@ de:
|
|
44
44
|
change: Klicken Sie hier, um ein Bild auszuwählen
|
45
45
|
show: anzeigen
|
46
46
|
resource_picker:
|
47
|
-
download_current:
|
47
|
+
download_current: Datei herunterladen
|
48
48
|
opens_in_new_window: Öffnet in einem neuen Fenster
|
49
|
-
remove_current: "Entferne
|
49
|
+
remove_current: "Entferne Datei"
|
50
50
|
no_resource_selected: Es ist momentan keine Datei ausgewählt, klicken Sie hier, um eine hinzuzufügen.
|
51
51
|
name: Datei hinzufügen
|
52
52
|
current: Aktuelle Datei
|
data/config/locales/fi.yml
CHANGED
@@ -16,8 +16,8 @@ fi:
|
|
16
16
|
continue: Jatka...
|
17
17
|
admin:
|
18
18
|
menu:
|
19
|
-
reorder_menu:
|
20
|
-
reorder_menu_done:
|
19
|
+
reorder_menu: Muuta valikon järjestystä
|
20
|
+
reorder_menu_done: Tallenna
|
21
21
|
dialogs:
|
22
22
|
show:
|
23
23
|
save: Tallenna
|
@@ -58,7 +58,7 @@ fi:
|
|
58
58
|
results_for: "Hakutulokset haulle '%{query}'"
|
59
59
|
no_results: 'Valitettavasti mitään ei löytynyt'
|
60
60
|
delete:
|
61
|
-
message: "Oletko varma, että haluat poistaa
|
61
|
+
message: "Oletko varma, että haluat poistaa sisältöesineen '%{title}'?"
|
62
62
|
error_messages:
|
63
63
|
problems_in_following_fields: Seuraavissa kentissä oli virheitä
|
64
64
|
help: apua
|
data/lib/gemspec.rb
CHANGED
@@ -24,8 +24,8 @@ Gem::Specification.new do |s|
|
|
24
24
|
s.add_dependency 'refinerycms-generators', '~> 1.0'
|
25
25
|
s.add_dependency 'acts_as_indexed', '~> 0.7'
|
26
26
|
s.add_dependency 'friendly_id_globalize3', '~> 3.2.1'
|
27
|
-
s.add_dependency 'globalize3', '>= 0.1.0.
|
28
|
-
s.add_dependency '
|
27
|
+
s.add_dependency 'globalize3', '>= 0.1.0.beta2'
|
28
|
+
s.add_dependency 'awesome_nested_set', '~> 2.0'
|
29
29
|
s.add_dependency 'rails', '~> 3.0.7'
|
30
30
|
s.add_dependency 'truncate_html', '~> 0.5'
|
31
31
|
s.add_dependency 'will_paginate', '~> 3.0.pre'
|
data/lib/refinery/activity.rb
CHANGED
data/lib/refinery/crud.rb
CHANGED
@@ -253,11 +253,11 @@ module Refinery
|
|
253
253
|
0.upto((newlist ||= params[:ul]).length - 1) do |index|
|
254
254
|
hash = newlist[index.to_s]
|
255
255
|
moved_item_id = hash['id'].split(/#{singular_name}\\_?/)
|
256
|
-
@current_#{singular_name} = #{class_name}.
|
256
|
+
@current_#{singular_name} = #{class_name}.where(:id => moved_item_id).first
|
257
257
|
|
258
258
|
if @current_#{singular_name}.respond_to?(:move_to_root)
|
259
259
|
if previous.present?
|
260
|
-
@current_#{singular_name}.move_to_right_of(#{class_name}.
|
260
|
+
@current_#{singular_name}.move_to_right_of(#{class_name}.where(:id => previous).first)
|
261
261
|
else
|
262
262
|
@current_#{singular_name}.move_to_root
|
263
263
|
end
|
@@ -280,7 +280,7 @@ module Refinery
|
|
280
280
|
0.upto(node['children'].length - 1) do |child_index|
|
281
281
|
child = node['children'][child_index.to_s]
|
282
282
|
child_id = child['id'].split(/#{singular_name}\_?/)
|
283
|
-
child_#{singular_name} = #{class_name}.
|
283
|
+
child_#{singular_name} = #{class_name}.where(:id => child_id).first
|
284
284
|
child_#{singular_name}.move_to_child_of(#{singular_name})
|
285
285
|
|
286
286
|
if child['children'].present?
|
@@ -32,7 +32,7 @@ module Refinery
|
|
32
32
|
unless geometry.nil? or !(split_geometry = geometry.to_s.split('#')).many? or !(split_geometry = split_geometry.first.split('x')).many?
|
33
33
|
image_width, image_height = split_geometry
|
34
34
|
else
|
35
|
-
|
35
|
+
image_width = nil
|
36
36
|
image_height = nil
|
37
37
|
end
|
38
38
|
|
@@ -16,7 +16,7 @@ module Refinery
|
|
16
16
|
|
17
17
|
# This was extracted from app/views/shared/_menu_branch.html.erb
|
18
18
|
# to remove the complexity of that template by reducing logic in the view.
|
19
|
-
def css_for_menu_branch(menu_branch, menu_branch_counter, sibling_count = nil, collection =
|
19
|
+
def css_for_menu_branch(menu_branch, menu_branch_counter, sibling_count = nil, collection = nil, selected_item = nil, warning = true)
|
20
20
|
# DEPRECATION. Remove at version 1.1
|
21
21
|
if warning
|
22
22
|
warn "\n-- DEPRECATION WARNING --"
|
@@ -25,17 +25,29 @@ module Refinery
|
|
25
25
|
warn "Called from: #{caller.detect{|c| c =~ %r{#{Rails.root.to_s}}}.inspect.to_s.split(':in').first}\n\n"
|
26
26
|
end
|
27
27
|
|
28
|
+
if collection
|
29
|
+
warn "\n-- DEPRECATION WARNING --"
|
30
|
+
warn "The use of 'collection' is deprecated and will be removed at version 1.1."
|
31
|
+
warn "Called from: #{caller.detect{|c| c =~ %r{#{Rails.root.to_s}}}.inspect.to_s.split(':in').first}\n\n"
|
32
|
+
end
|
33
|
+
|
34
|
+
if selected_item
|
35
|
+
warn "\n-- DEPRECATION WARNING --"
|
36
|
+
warn "The use of 'selected_item' is deprecated and will be removed at version 1.1."
|
37
|
+
warn "Called from: #{caller.detect{|c| c =~ %r{#{Rails.root.to_s}}}.inspect.to_s.split(':in').first}\n\n"
|
38
|
+
end
|
39
|
+
|
28
40
|
css = []
|
29
41
|
css << "selected" if selected_page_or_descendant_page_selected?(menu_branch, collection, selected_item)
|
30
42
|
css << "first" if menu_branch_counter == 0
|
31
|
-
css << "last" if menu_branch_counter == sibling_count
|
43
|
+
css << "last" if (sibling_count ? (menu_branch_counter == sibling_count - 1) : (menu_branch.rgt == menu_branch.parent.rgt - 1))
|
32
44
|
css
|
33
45
|
end
|
34
46
|
|
35
47
|
# New method which accepts the local_assigns hash.
|
36
48
|
# This maps to the older css_for_menu_branch method.
|
37
49
|
def menu_branch_css(local_assigns)
|
38
|
-
options =
|
50
|
+
options = local_assigns.dup
|
39
51
|
options.update(:sibling_count => options[:menu_branch].shown_siblings.size) unless options[:sibling_count]
|
40
52
|
|
41
53
|
css_for_menu_branch(options[:menu_branch],
|
@@ -49,14 +61,8 @@ module Refinery
|
|
49
61
|
# Determines whether any page underneath the supplied page is the current page according to rails.
|
50
62
|
# Just calls selected_page? for each descendant of the supplied page.
|
51
63
|
# if you pass a collection it won't check its own descendants but use the collection supplied.
|
52
|
-
def descendant_page_selected?(page, collection =
|
53
|
-
if
|
54
|
-
warn "\n-- DEPRECATION WARNING --"
|
55
|
-
warn "The use of 'selected_item' is deprecated and will be removed at version 1.1."
|
56
|
-
warn "Called from: #{caller.detect{|c| c =~ %r{#{Rails.root.to_s}}}.inspect.to_s.split(':in').first}\n\n"
|
57
|
-
end
|
58
|
-
|
59
|
-
return false unless page.has_descendants?
|
64
|
+
def descendant_page_selected?(page, collection = nil, selected_item = nil)
|
65
|
+
return false if page.rgt == page.lft + 1
|
60
66
|
return false unless selected_item.nil? or !selected_item.in_menu?
|
61
67
|
|
62
68
|
page.descendants.any? { |descendant|
|
@@ -64,7 +70,7 @@ module Refinery
|
|
64
70
|
}
|
65
71
|
end
|
66
72
|
|
67
|
-
def selected_page_or_descendant_page_selected?(page, collection =
|
73
|
+
def selected_page_or_descendant_page_selected?(page, collection = nil, selected_item = nil)
|
68
74
|
return true if selected_page?(page) || selected_item === page
|
69
75
|
return true if descendant_page_selected?(page, collection, selected_item)
|
70
76
|
false
|
@@ -87,6 +93,7 @@ module Refinery
|
|
87
93
|
path == page.link_url or
|
88
94
|
path == page.nested_path or
|
89
95
|
URI.decode(path) == page.nested_path or
|
96
|
+
path == "/#{page.id}" or
|
90
97
|
current_page?(page)
|
91
98
|
end
|
92
99
|
|
@@ -47,7 +47,13 @@ module Refinery
|
|
47
47
|
else
|
48
48
|
obj.title
|
49
49
|
end
|
50
|
-
|
50
|
+
|
51
|
+
# Only link when the object responds to a url method.
|
52
|
+
if options[:link] && obj.respond_to?(:url)
|
53
|
+
title << link_to(obj_title, obj.url)
|
54
|
+
else
|
55
|
+
title << obj_title
|
56
|
+
end
|
51
57
|
end
|
52
58
|
|
53
59
|
final_title = title.pop
|
data/lib/refinerycms-core.rb
CHANGED
@@ -34,6 +34,10 @@ module Refinery
|
|
34
34
|
def attach_to_application!
|
35
35
|
::Rails::Application.subclasses.each do |subclass|
|
36
36
|
begin
|
37
|
+
# Fix Rake 0.9.0 issue
|
38
|
+
subclass.send :include, ::Rake::DSL if defined?(::Rake::DSL)
|
39
|
+
|
40
|
+
# Include our logic inside your logic
|
37
41
|
subclass.send :include, ::Refinery::Application
|
38
42
|
rescue
|
39
43
|
$stdout.puts "Refinery CMS couldn't attach to #{subclass.name}."
|
@@ -1,88 +1,95 @@
|
|
1
1
|
(function($) {
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
2
|
+
// @todo Document this.
|
3
|
+
$.extend($,{ placeholder: {
|
4
|
+
browser_supported: function() {
|
5
|
+
return this._supported !== undefined ?
|
6
|
+
this._supported :
|
7
|
+
( this._supported = !!('placeholder' in $('<input type="text">')[0]) );
|
8
|
+
},
|
9
|
+
shim: function(opts) {
|
10
|
+
var config = {
|
11
|
+
color: '#888',
|
12
|
+
cls: 'placeholder',
|
13
|
+
lr_padding:4,
|
14
|
+
selector: 'input[placeholder], textarea[placeholder]'
|
15
|
+
};
|
16
|
+
$.extend(config,opts);
|
17
|
+
!this.browser_supported() && $(config.selector)._placeholder_shim(config);
|
18
|
+
}
|
19
|
+
}});
|
19
20
|
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
21
|
+
$.extend($.fn,{
|
22
|
+
_placeholder_shim: function(config) {
|
23
|
+
function calcPositionCss(target)
|
24
|
+
{
|
25
|
+
var op = $(target).offsetParent().offset();
|
26
|
+
var ot = $(target).offset();
|
26
27
|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
var possible_line_height = {};
|
41
|
-
if( $(this).css('height') != 'auto') {
|
42
|
-
possible_line_height = { lineHeight: $(this).css('height') };
|
43
|
-
}
|
28
|
+
return {
|
29
|
+
top: ot.top - op.top + ($(target).outerHeight() - $(target).height()) /2,
|
30
|
+
left: ot.left - op.left + config.lr_padding,
|
31
|
+
width: $(target).width() - config.lr_padding
|
32
|
+
};
|
33
|
+
}
|
34
|
+
return this.each(function() {
|
35
|
+
if( $(this).data('placeholder') ) {
|
36
|
+
var $ol = $(this).data('placeholder');
|
37
|
+
$ol.css(calcPositionCss($(this)));
|
38
|
+
return true;
|
39
|
+
}
|
44
40
|
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
position:'absolute',
|
50
|
-
display: 'inline',
|
51
|
-
float:'none',
|
52
|
-
overflow:'hidden',
|
53
|
-
whiteSpace:'nowrap',
|
54
|
-
textAlign: 'left',
|
55
|
-
color: config.color,
|
56
|
-
cursor: 'text',
|
57
|
-
fontSize: $(this).css('font-size')
|
58
|
-
}, possible_line_height))
|
59
|
-
.css(calcPositionCss(this))
|
60
|
-
.attr('for', this.id)
|
61
|
-
.data('target',$(this))
|
62
|
-
.click(function(){
|
63
|
-
$(this).data('target').focus()
|
64
|
-
})
|
65
|
-
.insertBefore(this);
|
66
|
-
$(this)
|
67
|
-
.data('placeholder',ol)
|
68
|
-
.focus(function(){
|
69
|
-
ol.hide();
|
70
|
-
}).blur(function() {
|
71
|
-
ol[$(this).val().length ? 'hide' : 'show']();
|
72
|
-
}).triggerHandler('blur');
|
73
|
-
$(window)
|
74
|
-
.resize(function() {
|
75
|
-
var $target = ol.data('target')
|
76
|
-
ol.css(calcPositionCss($target))
|
77
|
-
});
|
78
|
-
});
|
79
|
-
}
|
80
|
-
});
|
41
|
+
var possible_line_height = {};
|
42
|
+
if( $(this).css('height') != 'auto') {
|
43
|
+
possible_line_height = { lineHeight: $(this).css('height') };
|
44
|
+
}
|
81
45
|
|
46
|
+
var ol = $('<label />')
|
47
|
+
.text($(this).attr('placeholder'))
|
48
|
+
.addClass(config.cls)
|
49
|
+
.css($.extend({
|
50
|
+
position:'absolute',
|
51
|
+
display: 'inline',
|
52
|
+
float:'none',
|
53
|
+
overflow:'hidden',
|
54
|
+
whiteSpace:'nowrap',
|
55
|
+
textAlign: 'left',
|
56
|
+
color: config.color,
|
57
|
+
cursor: 'text',
|
58
|
+
paddingTop: $(this).css('padding-top'),
|
59
|
+
paddingLeft: $(this).css('padding-left'),
|
60
|
+
fontSize: $(this).css('font-size'),
|
61
|
+
fontFamily: $(this).css('font-family'),
|
62
|
+
fontStyle: $(this).css('font-style'),
|
63
|
+
fontWeight: $(this).css('font-weight'),
|
64
|
+
textTransform: $(this).css('text-transform'),
|
65
|
+
zIndex: 99
|
66
|
+
}, possible_line_height))
|
67
|
+
.css(calcPositionCss(this))
|
68
|
+
.attr('for', this.id)
|
69
|
+
.data('target',$(this))
|
70
|
+
.click(function(){
|
71
|
+
$(this).data('target').focus()
|
72
|
+
})
|
73
|
+
.insertBefore(this);
|
74
|
+
$(this)
|
75
|
+
.data('placeholder',ol)
|
76
|
+
.focus(function(){
|
77
|
+
ol.hide();
|
78
|
+
}).blur(function() {
|
79
|
+
ol[$(this).val().length ? 'hide' : 'show']();
|
80
|
+
}).triggerHandler('blur');
|
81
|
+
$(window)
|
82
|
+
.resize(function() {
|
83
|
+
var $target = ol.data('target')
|
84
|
+
ol.css(calcPositionCss($target))
|
85
|
+
});
|
86
|
+
});
|
87
|
+
}
|
88
|
+
});
|
82
89
|
})(jQuery);
|
83
90
|
|
84
|
-
|
85
|
-
if (
|
86
|
-
|
91
|
+
jQuery(document).add(window).bind('ready load', function() {
|
92
|
+
if (jQuery.placeholder) {
|
93
|
+
jQuery.placeholder.shim();
|
87
94
|
}
|
88
95
|
});
|
@@ -412,9 +412,12 @@ init_tooltips = function(args){
|
|
412
412
|
var link_tester = {
|
413
413
|
initialised: false
|
414
414
|
, init: function(test_url, test_email) {
|
415
|
-
|
416
|
-
this.
|
417
|
-
|
415
|
+
|
416
|
+
if (!this.initialised) {
|
417
|
+
this.test_url = test_url;
|
418
|
+
this.test_email = test_email;
|
419
|
+
this.initialised = true;
|
420
|
+
}
|
418
421
|
},
|
419
422
|
|
420
423
|
email: function(value, callback) {
|
@@ -479,13 +482,16 @@ var link_tester = {
|
|
479
482
|
var link_dialog = {
|
480
483
|
initialised: false
|
481
484
|
, init: function(){
|
482
|
-
|
483
|
-
this.
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
485
|
+
|
486
|
+
if (!this.initialised) {
|
487
|
+
this.init_tabs();
|
488
|
+
this.init_resources_submit();
|
489
|
+
this.init_close();
|
490
|
+
this.page_tab();
|
491
|
+
this.web_tab();
|
492
|
+
this.email_tab();
|
493
|
+
this.initialised = true;
|
494
|
+
}
|
489
495
|
},
|
490
496
|
|
491
497
|
init_tabs: function(){
|
@@ -630,30 +636,33 @@ var link_dialog = {
|
|
630
636
|
var page_options = {
|
631
637
|
initialised: false
|
632
638
|
, init: function(enable_parts, new_part_url, del_part_url){
|
633
|
-
|
634
|
-
|
635
|
-
|
636
|
-
|
637
|
-
|
638
|
-
|
639
|
-
|
640
|
-
|
641
|
-
|
642
|
-
|
643
|
-
|
644
|
-
|
645
|
-
|
646
|
-
|
647
|
-
|
648
|
-
|
649
|
-
$(
|
650
|
-
|
651
|
-
|
652
|
-
|
653
|
-
|
654
|
-
|
639
|
+
|
640
|
+
if (!this.initialised) {
|
641
|
+
// set the page tabs up, but ensure that all tabs are shown so that when wymeditor loads it has a proper height.
|
642
|
+
page_options.tabs = $('#page-tabs');
|
643
|
+
page_options.tabs.tabs({tabTemplate: '<li><a href="#{href}">#{label}</a></li>'});
|
644
|
+
page_options.tabs.find(' > ul li a').corner('top 5px');
|
645
|
+
|
646
|
+
part_shown = $('#page-tabs .page_part.field').not('.ui-tabs-hide');
|
647
|
+
$('#page-tabs .page_part.field').removeClass('ui-tabs-hide');
|
648
|
+
|
649
|
+
this.enable_parts = enable_parts;
|
650
|
+
this.new_part_url = new_part_url;
|
651
|
+
this.del_part_url = del_part_url;
|
652
|
+
this.show_options();
|
653
|
+
this.title_type();
|
654
|
+
|
655
|
+
$(document).ready($.proxy(function(){
|
656
|
+
// hide the tabs that are supposed to be hidden.
|
657
|
+
$('#page-tabs .page_part.field').not(this).addClass('ui-tabs-hide');
|
658
|
+
$('#page-tabs > ul li a').corner('top 5px');
|
659
|
+
}, part_shown));
|
660
|
+
|
661
|
+
if(this.enable_parts){
|
662
|
+
this.page_part_dialog();
|
663
|
+
}
|
664
|
+
this.initialised = true;
|
655
665
|
}
|
656
|
-
this.initialised = true;
|
657
666
|
},
|
658
667
|
|
659
668
|
show_options: function(){
|
@@ -766,11 +775,14 @@ var image_dialog = {
|
|
766
775
|
, callback: null
|
767
776
|
|
768
777
|
, init: function(callback){
|
769
|
-
|
770
|
-
this.
|
771
|
-
|
772
|
-
|
773
|
-
|
778
|
+
|
779
|
+
if (!this.initialised) {
|
780
|
+
this.callback = callback;
|
781
|
+
this.init_tabs();
|
782
|
+
this.init_select();
|
783
|
+
this.init_actions();
|
784
|
+
this.initialised = true;
|
785
|
+
}
|
774
786
|
return this;
|
775
787
|
}
|
776
788
|
|
@@ -884,43 +896,46 @@ var image_dialog = {
|
|
884
896
|
var list_reorder = {
|
885
897
|
initialised: false
|
886
898
|
, init: function() {
|
887
|
-
|
888
|
-
|
889
|
-
|
890
|
-
|
891
|
-
|
892
|
-
|
893
|
-
|
894
|
-
|
895
|
-
|
896
|
-
|
897
|
-
|
898
|
-
|
899
|
-
|
900
|
-
|
901
|
-
|
902
|
-
|
903
|
-
|
904
|
-
|
905
|
-
|
906
|
-
|
907
|
-
|
908
|
-
|
909
|
-
|
910
|
-
|
911
|
-
|
912
|
-
|
913
|
-
|
914
|
-
|
899
|
+
|
900
|
+
if (!this.initialised) {
|
901
|
+
$('#reorder_action').click(list_reorder.enable_reordering);
|
902
|
+
$('#reorder_action_done').click(list_reorder.disable_reordering);
|
903
|
+
if(list_reorder.tree === false) {
|
904
|
+
list_reorder.sortable_list.find('li').addClass('no-nest');
|
905
|
+
}
|
906
|
+
list_reorder.sortable_list.nestedSortable({
|
907
|
+
disableNesting: 'no-nest',
|
908
|
+
forcePlaceholderSize: true,
|
909
|
+
handle: list_reorder.tree ? 'div' : null,
|
910
|
+
items: 'li',
|
911
|
+
opacity: .6,
|
912
|
+
placeholder: 'placeholder',
|
913
|
+
tabSize: 25,
|
914
|
+
tolerance: 'pointer',
|
915
|
+
toleranceElement: list_reorder.tree ? '> div' : null,
|
916
|
+
disabled: true,
|
917
|
+
start: function () {
|
918
|
+
},
|
919
|
+
change: function () {
|
920
|
+
if (list_reorder.tree) {
|
921
|
+
list_reorder.reset_branch_classes(this);
|
922
|
+
}
|
923
|
+
},
|
924
|
+
stop: function () {
|
925
|
+
if (list_reorder.tree) {
|
926
|
+
list_reorder.reset_branch_classes(this);
|
927
|
+
} else {
|
928
|
+
list_reorder.reset_on_off_classes(this);
|
929
|
+
}
|
915
930
|
}
|
931
|
+
});
|
932
|
+
if (list_reorder.tree) {
|
933
|
+
list_reorder.reset_branch_classes(list_reorder.sortable_list);
|
934
|
+
} else {
|
935
|
+
list_reorder.reset_on_off_classes(list_reorder.sortable_list);
|
916
936
|
}
|
917
|
-
|
918
|
-
if (list_reorder.tree) {
|
919
|
-
list_reorder.reset_branch_classes(list_reorder.sortable_list);
|
920
|
-
} else {
|
921
|
-
list_reorder.reset_on_off_classes(list_reorder.sortable_list);
|
937
|
+
this.initialised = true;
|
922
938
|
}
|
923
|
-
this.initialised = true;
|
924
939
|
}
|
925
940
|
, reset_on_off_classes: function(ul) {
|
926
941
|
$("> li", ul).each(function(i, li) {
|
@@ -1005,13 +1020,16 @@ var image_picker = {
|
|
1005
1020
|
}
|
1006
1021
|
|
1007
1022
|
, init: function(new_options){
|
1008
|
-
|
1009
|
-
|
1010
|
-
|
1011
|
-
|
1012
|
-
|
1013
|
-
|
1014
|
-
|
1023
|
+
|
1024
|
+
if (!this.initialised) {
|
1025
|
+
this.options = $.extend(this.options, new_options);
|
1026
|
+
$(this.options.picker_container).find(this.options.remove_image_button)
|
1027
|
+
.click($.proxy(this.remove_image, {container: this.options.picker_container, picker: this}));
|
1028
|
+
$(this.options.picker_container).find(this.options.image_toggler)
|
1029
|
+
.click($.proxy(this.toggle_image, {container: this.options.picker_container, picker: this}));
|
1030
|
+
|
1031
|
+
this.initialised = true;
|
1032
|
+
}
|
1015
1033
|
|
1016
1034
|
return this;
|
1017
1035
|
}
|
@@ -1060,8 +1078,11 @@ var resource_picker = {
|
|
1060
1078
|
, callback: null
|
1061
1079
|
|
1062
1080
|
, init: function(callback) {
|
1063
|
-
|
1064
|
-
this.initialised
|
1081
|
+
|
1082
|
+
if (!this.initialised) {
|
1083
|
+
this.callback = callback;
|
1084
|
+
this.initialised = true;
|
1085
|
+
}
|
1065
1086
|
}
|
1066
1087
|
};
|
1067
1088
|
|
@@ -3,7 +3,7 @@ if (typeof($) == 'function') {
|
|
3
3
|
$logo = $('#site_bar_content #site_bar_refinery_cms_logo');
|
4
4
|
$logo.css('left', ($('#site_bar_content').width() / 2) - ($logo.width() / 2));
|
5
5
|
|
6
|
-
$switch_anchor = $('#editor_switch a').not('.ie7 #editor_switch a, .ie6 #
|
6
|
+
$switch_anchor = $('#editor_switch a').not('.ie7 #editor_switch a, .ie6 #editor_switch a');
|
7
7
|
if ($.isFunction($switch_anchor.corner)) {
|
8
8
|
$switch_anchor.corner('6px');
|
9
9
|
}
|
@@ -3759,7 +3759,8 @@ WYMeditor.XhtmlSaxListener = function()
|
|
3759
3759
|
this._open_tags = {};
|
3760
3760
|
this.validator = WYMeditor.XhtmlValidator;
|
3761
3761
|
this._tag_stack = [];
|
3762
|
-
|
3762
|
+
|
3763
|
+
this.avoided_tags = ['area'];
|
3763
3764
|
|
3764
3765
|
this.entities = {
|
3765
3766
|
' ':' ','¡':'¡','¢':'¢',
|
@@ -3977,7 +3978,9 @@ WYMeditor.XhtmlSaxListener.prototype.inlineTag = function(tag, attributes)
|
|
3977
3978
|
|
3978
3979
|
WYMeditor.XhtmlSaxListener.prototype.openUnknownTag = function(tag, attributes)
|
3979
3980
|
{
|
3980
|
-
|
3981
|
+
if(tag === 'area') {
|
3982
|
+
this.output += this.helper.tag(tag, attributes, true);
|
3983
|
+
}
|
3981
3984
|
};
|
3982
3985
|
|
3983
3986
|
WYMeditor.XhtmlSaxListener.prototype.closeBlockTag = function(tag)
|
data/refinerycms-core.gemspec
CHANGED
@@ -2,10 +2,10 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{refinerycms-core}
|
5
|
-
s.version = %q{0.9.9.
|
5
|
+
s.version = %q{0.9.9.22}
|
6
6
|
s.summary = %q{Core engine for Refinery CMS}
|
7
7
|
s.description = %q{The core of Refinery CMS. This handles the common functionality and is required by most engines}
|
8
|
-
s.date = %q{2011-05-
|
8
|
+
s.date = %q{2011-05-22}
|
9
9
|
s.email = %q{info@refinerycms.com}
|
10
10
|
s.homepage = %q{http://refinerycms.com}
|
11
11
|
s.rubyforge_project = %q{refinerycms}
|
@@ -14,13 +14,13 @@ Gem::Specification.new do |s|
|
|
14
14
|
s.require_paths = %w(lib)
|
15
15
|
s.executables = %w()
|
16
16
|
|
17
|
-
s.add_dependency 'refinerycms-base', '= 0.9.9.
|
18
|
-
s.add_dependency 'refinerycms-settings', '= 0.9.9.
|
17
|
+
s.add_dependency 'refinerycms-base', '= 0.9.9.22'
|
18
|
+
s.add_dependency 'refinerycms-settings', '= 0.9.9.22'
|
19
19
|
s.add_dependency 'refinerycms-generators', '~> 1.0'
|
20
20
|
s.add_dependency 'acts_as_indexed', '~> 0.7'
|
21
21
|
s.add_dependency 'friendly_id_globalize3', '~> 3.2.1'
|
22
|
-
s.add_dependency 'globalize3', '>= 0.1.0.
|
23
|
-
s.add_dependency '
|
22
|
+
s.add_dependency 'globalize3', '>= 0.1.0.beta2'
|
23
|
+
s.add_dependency 'awesome_nested_set', '~> 2.0'
|
24
24
|
s.add_dependency 'rails', '~> 3.0.7'
|
25
25
|
s.add_dependency 'truncate_html', '~> 0.5'
|
26
26
|
s.add_dependency 'will_paginate', '~> 3.0.pre'
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: refinerycms-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.9.9.
|
5
|
+
version: 0.9.9.22
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Resolve Digital
|
@@ -13,7 +13,8 @@ autorequire:
|
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
15
|
|
16
|
-
date: 2011-05-
|
16
|
+
date: 2011-05-22 00:00:00 +12:00
|
17
|
+
default_executable:
|
17
18
|
dependencies:
|
18
19
|
- !ruby/object:Gem::Dependency
|
19
20
|
name: refinerycms-base
|
@@ -23,7 +24,7 @@ dependencies:
|
|
23
24
|
requirements:
|
24
25
|
- - "="
|
25
26
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.9.9.
|
27
|
+
version: 0.9.9.22
|
27
28
|
type: :runtime
|
28
29
|
version_requirements: *id001
|
29
30
|
- !ruby/object:Gem::Dependency
|
@@ -34,7 +35,7 @@ dependencies:
|
|
34
35
|
requirements:
|
35
36
|
- - "="
|
36
37
|
- !ruby/object:Gem::Version
|
37
|
-
version: 0.9.9.
|
38
|
+
version: 0.9.9.22
|
38
39
|
type: :runtime
|
39
40
|
version_requirements: *id002
|
40
41
|
- !ruby/object:Gem::Dependency
|
@@ -78,18 +79,18 @@ dependencies:
|
|
78
79
|
requirements:
|
79
80
|
- - ">="
|
80
81
|
- !ruby/object:Gem::Version
|
81
|
-
version: 0.1.0.
|
82
|
+
version: 0.1.0.beta2
|
82
83
|
type: :runtime
|
83
84
|
version_requirements: *id006
|
84
85
|
- !ruby/object:Gem::Dependency
|
85
|
-
name:
|
86
|
+
name: awesome_nested_set
|
86
87
|
prerelease: false
|
87
88
|
requirement: &id007 !ruby/object:Gem::Requirement
|
88
89
|
none: false
|
89
90
|
requirements:
|
90
91
|
- - ~>
|
91
92
|
- !ruby/object:Gem::Version
|
92
|
-
version: "
|
93
|
+
version: "2.0"
|
93
94
|
type: :runtime
|
94
95
|
version_requirements: *id007
|
95
96
|
- !ruby/object:Gem::Dependency
|
@@ -472,6 +473,7 @@ files:
|
|
472
473
|
- refinerycms-core.gemspec
|
473
474
|
- spec/lib/refinery/plugin_spec.rb
|
474
475
|
- spec/lib/refinery/plugins_spec.rb
|
476
|
+
has_rdoc: true
|
475
477
|
homepage: http://refinerycms.com
|
476
478
|
licenses:
|
477
479
|
- MIT
|
@@ -495,10 +497,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
495
497
|
requirements: []
|
496
498
|
|
497
499
|
rubyforge_project: refinerycms
|
498
|
-
rubygems_version: 1.
|
500
|
+
rubygems_version: 1.6.2
|
499
501
|
signing_key:
|
500
502
|
specification_version: 3
|
501
503
|
summary: Core engine for Refinery CMS
|
502
504
|
test_files: []
|
503
505
|
|
504
|
-
has_rdoc:
|