site_logic 1.6.9 → 1.6.10

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.
@@ -1,175 +1,22 @@
1
- (function() {
2
- // Technique from Juriy Zaytsev
3
- // http://thinkweb2.com/projects/prototype/detecting-event-support-without-browser-sniffing/
4
- function isEventSupported(eventName) {
5
- var el = document.createElement('div');
6
- eventName = 'on' + eventName;
7
- var isSupported = (eventName in el);
8
- if (!isSupported) {
9
- el.setAttribute(eventName, 'return;');
10
- isSupported = typeof el[eventName] == 'function';
11
- }
12
- el = null;
13
- return isSupported;
14
- }
15
-
16
- function isForm(element) {
17
- return Object.isElement(element) && element.nodeName.toUpperCase() == 'FORM'
18
- }
19
-
20
- function isInput(element) {
21
- if (Object.isElement(element)) {
22
- var name = element.nodeName.toUpperCase()
23
- return name == 'INPUT' || name == 'SELECT' || name == 'TEXTAREA'
24
- }
25
- else return false
26
- }
27
-
28
- var submitBubbles = isEventSupported('submit'),
29
- changeBubbles = isEventSupported('change')
30
-
31
- if (!submitBubbles || !changeBubbles) {
32
- // augment the Event.Handler class to observe custom events when needed
33
- Event.Handler.prototype.initialize = Event.Handler.prototype.initialize.wrap(
34
- function(init, element, eventName, selector, callback) {
35
- init(element, eventName, selector, callback)
36
- // is the handler being attached to an element that doesn't support this event?
37
- if ( (!submitBubbles && this.eventName == 'submit' && !isForm(this.element)) ||
38
- (!changeBubbles && this.eventName == 'change' && !isInput(this.element)) ) {
39
- // "submit" => "emulated:submit"
40
- this.eventName = 'emulated:' + this.eventName
41
- }
42
- }
43
- )
44
- }
45
-
46
- if (!submitBubbles) {
47
- // discover forms on the page by observing focus events which always bubble
48
- document.on('focusin', 'form', function(focusEvent, form) {
49
- // special handler for the real "submit" event (one-time operation)
50
- if (!form.retrieve('emulated:submit')) {
51
- form.on('submit', function(submitEvent) {
52
- var emulated = form.fire('emulated:submit', submitEvent, true)
53
- // if custom event received preventDefault, cancel the real one too
54
- if (emulated.returnValue === false) submitEvent.preventDefault()
55
- })
56
- form.store('emulated:submit', true)
57
- }
58
- })
59
- }
60
-
61
- if (!changeBubbles) {
62
- // discover form inputs on the page
63
- document.on('focusin', 'input, select, texarea', function(focusEvent, input) {
64
- // special handler for real "change" events
65
- if (!input.retrieve('emulated:change')) {
66
- input.on('change', function(changeEvent) {
67
- input.fire('emulated:change', changeEvent, true)
68
- })
69
- input.store('emulated:change', true)
70
- }
71
- })
72
- }
73
-
74
- function handleRemote(element) {
75
- var method, url, params;
76
-
77
- var event = element.fire("ajax:before");
78
- if (event.stopped) return false;
79
-
80
- if (element.tagName.toLowerCase() === 'form') {
81
- method = element.readAttribute('method') || 'post';
82
- url = element.readAttribute('action');
83
- params = element.serialize();
84
- } else {
85
- method = element.readAttribute('data-method') || 'get';
86
- url = element.readAttribute('href');
87
- params = {};
88
- }
89
-
90
- new Ajax.Request(url, {
91
- method: method,
92
- parameters: params,
93
- evalScripts: true,
94
-
95
- onComplete: function(request) { element.fire("ajax:complete", request); },
96
- onSuccess: function(request) { element.fire("ajax:success", request); },
97
- onFailure: function(request) { element.fire("ajax:failure", request); }
98
- });
99
-
100
- element.fire("ajax:after");
101
- }
102
-
103
- function handleMethod(element) {
104
- var method = element.readAttribute('data-method'),
105
- url = element.readAttribute('href'),
106
- csrf_param = $$('meta[name=csrf-param]')[0],
107
- csrf_token = $$('meta[name=csrf-token]')[0];
108
-
109
- var form = new Element('form', { method: "POST", action: url, style: "display: none;" });
110
- element.parentNode.insert(form);
111
-
112
- if (method !== 'post') {
113
- var field = new Element('input', { type: 'hidden', name: '_method', value: method });
114
- form.insert(field);
115
- }
116
-
117
- if (csrf_param) {
118
- var param = csrf_param.readAttribute('content'),
119
- token = csrf_token.readAttribute('content'),
120
- field = new Element('input', { type: 'hidden', name: param, value: token });
121
- form.insert(field);
122
- }
123
-
124
- form.submit();
125
- }
126
-
127
-
128
- document.on("click", "*[data-confirm]", function(event, element) {
129
- var message = element.readAttribute('data-confirm');
130
- if (!confirm(message)) event.stop();
131
- });
132
-
133
- document.on("click", "a[data-remote]", function(event, element) {
134
- if (event.stopped) return;
135
- handleRemote(element);
136
- event.stop();
137
- });
138
-
139
- document.on("click", "a[data-method]", function(event, element) {
140
- if (event.stopped) return;
141
- handleMethod(element);
142
- event.stop();
143
- });
144
-
145
- document.on("submit", function(event) {
146
- var element = event.findElement(),
147
- message = element.readAttribute('data-confirm');
148
- if (message && !confirm(message)) {
149
- event.stop();
150
- return false;
151
- }
152
-
153
- var inputs = element.select("input[type=submit][data-disable-with]");
154
- inputs.each(function(input) {
155
- input.disabled = true;
156
- input.writeAttribute('data-original-value', input.value);
157
- input.value = input.readAttribute('data-disable-with');
158
- });
159
-
160
- var element = event.findElement("form[data-remote]");
161
- if (element) {
162
- handleRemote(element);
163
- event.stop();
164
- }
165
- });
166
-
167
- document.on("ajax:after", "form", function(event, element) {
168
- var inputs = element.select("input[type=submit][disabled=true][data-disable-with]");
169
- inputs.each(function(input) {
170
- input.value = input.readAttribute('data-original-value');
171
- input.removeAttribute('data-original-value');
172
- input.disabled = false;
173
- });
174
- });
175
- })();
1
+ (function(){function isEventSupported(eventName){var el=document.createElement('div');eventName='on'+eventName;var isSupported=(eventName in el);if(!isSupported){el.setAttribute(eventName,'return;');isSupported=typeof el[eventName]=='function';}
2
+ el=null;return isSupported;}
3
+ function isForm(element){return Object.isElement(element)&&element.nodeName.toUpperCase()=='FORM'}
4
+ function isInput(element){if(Object.isElement(element)){var name=element.nodeName.toUpperCase()
5
+ return name=='INPUT'||name=='SELECT'||name=='TEXTAREA'}
6
+ else return false}
7
+ var submitBubbles=isEventSupported('submit'),changeBubbles=isEventSupported('change')
8
+ if(!submitBubbles||!changeBubbles){Event.Handler.prototype.initialize=Event.Handler.prototype.initialize.wrap(function(init,element,eventName,selector,callback){init(element,eventName,selector,callback)
9
+ if((!submitBubbles&&this.eventName=='submit'&&!isForm(this.element))||(!changeBubbles&&this.eventName=='change'&&!isInput(this.element))){this.eventName='emulated:'+this.eventName}})}
10
+ if(!submitBubbles){document.on('focusin','form',function(focusEvent,form){if(!form.retrieve('emulated:submit')){form.on('submit',function(submitEvent){var emulated=form.fire('emulated:submit',submitEvent,true)
11
+ if(emulated.returnValue===false)submitEvent.preventDefault()})
12
+ form.store('emulated:submit',true)}})}
13
+ if(!changeBubbles){document.on('focusin','input, select, texarea',function(focusEvent,input){if(!input.retrieve('emulated:change')){input.on('change',function(changeEvent){input.fire('emulated:change',changeEvent,true)})
14
+ input.store('emulated:change',true)}})}
15
+ function handleRemote(element){var method,url,params;var event=element.fire("ajax:before");if(event.stopped)return false;if(element.tagName.toLowerCase()==='form'){method=element.readAttribute('method')||'post';url=element.readAttribute('action');params=element.serialize();}else{method=element.readAttribute('data-method')||'get';url=element.readAttribute('href');params={};}
16
+ new Ajax.Request(url,{method:method,parameters:params,evalScripts:true,onComplete:function(request){element.fire("ajax:complete",request);},onSuccess:function(request){element.fire("ajax:success",request);},onFailure:function(request){element.fire("ajax:failure",request);}});element.fire("ajax:after");}
17
+ function handleMethod(element){var method=element.readAttribute('data-method'),url=element.readAttribute('href'),csrf_param=$$('meta[name=csrf-param]')[0],csrf_token=$$('meta[name=csrf-token]')[0];var form=new Element('form',{method:"POST",action:url,style:"display: none;"});element.parentNode.insert(form);if(method!=='post'){var field=new Element('input',{type:'hidden',name:'_method',value:method});form.insert(field);}
18
+ if(csrf_param){var param=csrf_param.readAttribute('content'),token=csrf_token.readAttribute('content'),field=new Element('input',{type:'hidden',name:param,value:token});form.insert(field);}
19
+ form.submit();}
20
+ document.on("click","*[data-confirm]",function(event,element){var message=element.readAttribute('data-confirm');if(!confirm(message))event.stop();});document.on("click","a[data-remote]",function(event,element){if(event.stopped)return;handleRemote(element);event.stop();});document.on("click","a[data-method]",function(event,element){if(event.stopped)return;handleMethod(element);event.stop();});document.on("submit",function(event){var element=event.findElement(),message=element.readAttribute('data-confirm');if(message&&!confirm(message)){event.stop();return false;}
21
+ var inputs=element.select("input[type=submit][data-disable-with]");inputs.each(function(input){input.disabled=true;input.writeAttribute('data-original-value',input.value);input.value=input.readAttribute('data-disable-with');});var element=event.findElement("form[data-remote]");if(element){handleRemote(element);event.stop();}});document.on("ajax:after","form",function(event,element){var inputs=element.select("input[type=submit][disabled=true][data-disable-with]");inputs.each(function(input){input.value=input.readAttribute('data-original-value');input.removeAttribute('data-original-value');input.disabled=false;});});Ajax.Responders.register({onCreate:function(request){var csrf_meta_tag=$$('meta[name=csrf-token]')[0];if(csrf_meta_tag){var header='X-CSRF-Token',token=csrf_meta_tag.readAttribute('content');if(!request.options.requestHeaders){request.options.requestHeaders={};}
22
+ request.options.requestHeaders[header]=token;}}});})();
data/site_logic.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{site_logic}
8
- s.version = "1.6.9"
8
+ s.version = "1.6.10"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Bantik"]
12
- s.date = %q{2011-08-30}
12
+ s.date = %q{2011-08-31}
13
13
  s.description = %q{An engine for search-engine-optimized content management.}
14
14
  s.email = %q{corey@seologic.com}
15
15
  s.extra_rdoc_files = [
@@ -76,7 +76,6 @@ Gem::Specification.new do |s|
76
76
  "config/environments/development.rb",
77
77
  "config/environments/production.rb",
78
78
  "config/environments/test.rb",
79
- "config/initializers/ckeditor.rb",
80
79
  "config/initializers/formats.rb",
81
80
  "config/initializers/metric_fu.rb",
82
81
  "config/initializers/secret_token.rb",
@@ -100,10 +99,6 @@ Gem::Specification.new do |s|
100
99
  "lib/site_logic/railtie.rb",
101
100
  "lib/tasks/cucumber.rake",
102
101
  "lib/tasks/rcov.rake",
103
- "misc/images/src/black_bar.psd",
104
- "misc/images/src/branding.psd",
105
- "misc/images/src/legend_bg.psd",
106
- "misc/images/src/menu_icons.psd",
107
102
  "public/404.html",
108
103
  "public/422.html",
109
104
  "public/500.html",
@@ -157,7 +152,6 @@ Gem::Specification.new do |s|
157
152
  "public/images/layout/th_bg.png",
158
153
  "public/images/layout/th_bg_selected.png",
159
154
  "public/index.html",
160
- "public/javascripts/application.js",
161
155
  "public/javascripts/ckeditor/.htaccess",
162
156
  "public/javascripts/ckeditor/CHANGES.html",
163
157
  "public/javascripts/ckeditor/INSTALL.html",
@@ -833,7 +827,7 @@ Gem::Specification.new do |s|
833
827
 
834
828
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
835
829
  s.add_runtime_dependency(%q<bson_ext>, [">= 0"])
836
- s.add_runtime_dependency(%q<carrierwave>, ["< 0.5.7"])
830
+ s.add_runtime_dependency(%q<carrierwave-mongoid>, [">= 0"])
837
831
  s.add_runtime_dependency(%q<ckeditor>, [">= 0"])
838
832
  s.add_runtime_dependency(%q<mongoid>, [">= 2.0.0.beta.17"])
839
833
  s.add_runtime_dependency(%q<mongoid-tree>, [">= 0"])
@@ -845,7 +839,7 @@ Gem::Specification.new do |s|
845
839
  s.add_development_dependency(%q<rspec>, [">= 1.2.9"])
846
840
  else
847
841
  s.add_dependency(%q<bson_ext>, [">= 0"])
848
- s.add_dependency(%q<carrierwave>, ["< 0.5.7"])
842
+ s.add_dependency(%q<carrierwave-mongoid>, [">= 0"])
849
843
  s.add_dependency(%q<ckeditor>, [">= 0"])
850
844
  s.add_dependency(%q<mongoid>, [">= 2.0.0.beta.17"])
851
845
  s.add_dependency(%q<mongoid-tree>, [">= 0"])
@@ -858,7 +852,7 @@ Gem::Specification.new do |s|
858
852
  end
859
853
  else
860
854
  s.add_dependency(%q<bson_ext>, [">= 0"])
861
- s.add_dependency(%q<carrierwave>, ["< 0.5.7"])
855
+ s.add_dependency(%q<carrierwave-mongoid>, [">= 0"])
862
856
  s.add_dependency(%q<ckeditor>, [">= 0"])
863
857
  s.add_dependency(%q<mongoid>, [">= 2.0.0.beta.17"])
864
858
  s.add_dependency(%q<mongoid-tree>, [">= 0"])
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: site_logic
3
3
  version: !ruby/object:Gem::Version
4
- hash: 29
4
+ hash: 27
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 6
9
- - 9
10
- version: 1.6.9
9
+ - 10
10
+ version: 1.6.10
11
11
  platform: ruby
12
12
  authors:
13
13
  - Bantik
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-08-30 00:00:00 -05:00
18
+ date: 2011-08-31 00:00:00 -05:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -33,19 +33,17 @@ dependencies:
33
33
  type: :runtime
34
34
  version_requirements: *id001
35
35
  - !ruby/object:Gem::Dependency
36
- name: carrierwave
36
+ name: carrierwave-mongoid
37
37
  prerelease: false
38
38
  requirement: &id002 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
- - - <
41
+ - - ">="
42
42
  - !ruby/object:Gem::Version
43
- hash: 5
43
+ hash: 3
44
44
  segments:
45
45
  - 0
46
- - 5
47
- - 7
48
- version: 0.5.7
46
+ version: "0"
49
47
  type: :runtime
50
48
  version_requirements: *id002
51
49
  - !ruby/object:Gem::Dependency
@@ -255,7 +253,6 @@ files:
255
253
  - config/environments/development.rb
256
254
  - config/environments/production.rb
257
255
  - config/environments/test.rb
258
- - config/initializers/ckeditor.rb
259
256
  - config/initializers/formats.rb
260
257
  - config/initializers/metric_fu.rb
261
258
  - config/initializers/secret_token.rb
@@ -279,10 +276,6 @@ files:
279
276
  - lib/site_logic/railtie.rb
280
277
  - lib/tasks/cucumber.rake
281
278
  - lib/tasks/rcov.rake
282
- - misc/images/src/black_bar.psd
283
- - misc/images/src/branding.psd
284
- - misc/images/src/legend_bg.psd
285
- - misc/images/src/menu_icons.psd
286
279
  - public/404.html
287
280
  - public/422.html
288
281
  - public/500.html
@@ -336,7 +329,6 @@ files:
336
329
  - public/images/layout/th_bg.png
337
330
  - public/images/layout/th_bg_selected.png
338
331
  - public/index.html
339
- - public/javascripts/application.js
340
332
  - public/javascripts/ckeditor/.htaccess
341
333
  - public/javascripts/ckeditor/CHANGES.html
342
334
  - public/javascripts/ckeditor/INSTALL.html
@@ -1,54 +0,0 @@
1
- # Use this hook to configure ckeditor
2
- if Object.const_defined?("Ckeditor")
3
- Ckeditor.setup do |config|
4
- # The file_post_name allows you to set the value name used to post the file.
5
- # This is not related to the file name. The default value is 'data'.
6
- # For maximum compatibility it is recommended that the default value is used.
7
- #config.swf_file_post_name = "data"
8
-
9
- # A text description that is displayed to the user in the File Browser dialog.
10
- #config.swf_file_types_description = "Files"
11
-
12
- # The file_types setting accepts a semi-colon separated list of file extensions
13
- # that are allowed to be selected by the user. Use '*.*' to allow all file types.
14
- #config.swf_file_types = "*.doc;*.wpd;*.pdf;*.swf;*.xls"
15
-
16
- # The file_size_limit setting defines the maximum allowed size of a file to be uploaded.
17
- # This setting accepts a value and unit. Valid units are B, KB, MB and GB.
18
- # If the unit is omitted default is KB. A value of 0 (zero) is interpreted as unlimited.
19
- # Note: This setting only applies to the user's browser. It does not affect any settings or limits on the web server.
20
- #config.swf_file_size_limit = "10 MB"
21
-
22
- # Defines the number of files allowed to be uploaded by SWFUpload.
23
- # This setting also sets the upper bound of the file_queue_limit setting.
24
- # Once the user has uploaded or queued the maximum number of files she will
25
- # no longer be able to queue additional files. The value of 0 (zero) is interpreted as unlimited.
26
- # Only successful uploads (uploads the trigger the uploadSuccess event) are counted toward the upload limit.
27
- # The setStats function can be used to modify the number of successful uploads.
28
- # Note: This value is not tracked across pages and is reset when a page is refreshed.
29
- # File quotas should be managed by the web server.
30
- #config.swf_file_upload_limit = 5
31
-
32
- # The same as for downloads files, only to upload images
33
- #config.swf_image_file_types_description = "Images"
34
- #config.swf_image_file_types = "*.jpg;*.jpeg;*.png;*.gif"
35
- #config.swf_image_file_size_limit = "5 MB"
36
- #config.swf_image_file_upload_limit = 10
37
-
38
- # Path for view all uploaded files
39
- #config.file_manager_uri = "/ckeditor/files"
40
-
41
- # Path for upload files process
42
- #config.file_manager_upload_uri = "/ckeditor/create/file"
43
-
44
- # Path for view all uploaded images
45
- #config.file_manager_image_uri = "/ckeditor/images"
46
-
47
- # Path for upload images process
48
- #config.file_manager_image_upload_uri = "/ckeditor/create/image"
49
-
50
- # Model's names witch processing in ckeditor_controller
51
- #config.file_manager_image_model = "Ckeditor::Picture"
52
- #config.file_manager_file_model = "Ckeditor::AttachmentFile"
53
- end
54
- end
Binary file
Binary file
Binary file
Binary file
@@ -1,2 +0,0 @@
1
- // Place your application-specific JavaScript functions and classes here
2
- // This file is automatically included by javascript_include_tag :defaults