bootstrap-wysihtml5-rails 0.2.10 → 0.2.11

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.
data/README.md CHANGED
@@ -32,17 +32,15 @@ and run bundle install.
32
32
 
33
33
  This gem doesn't include Bootstrap. You can get Bootstrap here: https://github.com/anjlab/bootstrap-rails
34
34
 
35
- ## Stylesheets
35
+ ## Configuration
36
36
 
37
- Add necessary stylesheet file to app/assets/stylesheets/application.css
37
+ app/assets/stylesheets/application.css
38
38
 
39
39
  ``` css
40
40
  *= require bootstrap-wysihtml5
41
41
  ```
42
42
 
43
- ## Javascripts
44
-
45
- Bootstrap-wysihtml5 depends on jquery and bootstrap-button.
43
+ Bootstrap-wysihtml5 depends on jquery and bootstrap-button. Make sure to require it in the manifest file.
46
44
 
47
45
  ``` javascript
48
46
  //= require jquery # Not included
@@ -60,6 +58,8 @@ or
60
58
  //= require bootstrap-wysihtml5-all
61
59
  ```
62
60
 
61
+ You may need to restart your rails server.
62
+
63
63
  ## Using bootstrap-wysihtml5-rails
64
64
 
65
65
  Just call wysihtml5() with any selector.
@@ -1,5 +1,5 @@
1
1
  module BootstrapWysihtml5Rails
2
2
  module Rails
3
- VERSION = "0.2.10"
3
+ VERSION = "0.2.11"
4
4
  end
5
5
  end
@@ -1,308 +1,294 @@
1
1
  !function($, wysi) {
2
- "use strict"
3
-
4
- var templates = {
5
- "font-styles": "<li class='dropdown'>" +
6
- "<a class='btn dropdown-toggle' data-toggle='dropdown' href='#'>" +
7
- "<i class='icon-font'></i>&nbsp;<span class='current-font'>Normal text</span>&nbsp;<b class='caret'></b>" +
8
- "</a>" +
9
- "<ul class='dropdown-menu'>" +
10
- "<li><a data-wysihtml5-command='formatBlock' data-wysihtml5-command-value='div'>Normal text</a></li>" +
11
- "<li><a data-wysihtml5-command='formatBlock' data-wysihtml5-command-value='h1'>Heading 1</a></li>" +
12
- "<li><a data-wysihtml5-command='formatBlock' data-wysihtml5-command-value='h2'>Heading 2</a></li>" +
13
- "</ul>" +
14
- "</li>",
15
- "emphasis": "<li>" +
16
- "<div class='btn-group'>"
17
- + "<a class='btn' data-wysihtml5-command='bold' title='CTRL+B'>Bold</a>"
18
- + "<a class='btn' data-wysihtml5-command='italic' title='CTRL+I'>Italic</a>"
19
- + "<a class='btn' data-wysihtml5-command='underline' title='CTRL+U'>Underline</a>"
20
- + "</div>"
21
- + "</li>",
22
- "lists": "<li>"
23
- + "<div class='btn-group'>"
24
- + "<a class='btn' data-wysihtml5-command='insertUnorderedList' title='Unordered List'><i class='icon-list'></i></a>"
25
- + "<a class='btn' data-wysihtml5-command='insertOrderedList' title='Ordered List'><i class='icon-th-list'></i></a>"
26
- + "<a class='btn' data-wysihtml5-command='Outdent' title='Outdent'><i class='icon-indent-right'></i></a>"
27
- + "<a class='btn' data-wysihtml5-command='Indent' title='Indent'><i class='icon-indent-left'></i></a>"
28
- + "</div>"
29
- + "</li>",
30
-
31
- "link": "<li>"
32
-
33
- + "<div class='bootstrap-wysihtml5-insert-link-modal modal hide fade'>"
34
- + "<div class='modal-header'>"
35
- + "<a class='close' data-dismiss='modal'>&times;</a>"
36
- + "<h3>Insert Link</h3>"
37
- + "</div>"
38
- + "<div class='modal-body'>"
39
- + "<input value='http://' class='bootstrap-wysihtml5-insert-link-url input-xlarge'>"
40
- + "</div>"
41
- + "<div class='modal-footer'>"
42
- + "<a href='#' class='btn' data-dismiss='modal'>Cancel</a>"
43
- + "<a href='#' class='btn btn-primary' data-dismiss='modal'>Insert link</a>"
44
- + "</div>"
45
- + "</div>"
46
-
47
- + "<a class='btn' data-wysihtml5-command='createLink' title='Link'><i class='icon-share'></i></a>"
48
-
49
- + "</li>",
50
-
51
- "image": "<li>"
52
-
53
- + "<div class='bootstrap-wysihtml5-insert-image-modal modal hide fade'>"
54
- + "<div class='modal-header'>"
55
- + "<a class='close' data-dismiss='modal'>&times;</a>"
56
- + "<h3>Insert Image</h3>"
57
- + "</div>"
58
- + "<div class='modal-body'>"
59
- + "<input value='http://' class='bootstrap-wysihtml5-insert-image-url input-xlarge'>"
60
- + "</div>"
61
- + "<div class='modal-footer'>"
62
- + "<a href='#' class='btn' data-dismiss='modal'>Cancel</a>"
63
- + "<a href='#' class='btn btn-primary' data-dismiss='modal'>Insert image</a>"
64
- + "</div>"
65
- + "</div>"
66
-
67
- + "<a class='btn' data-wysihtml5-command='insertImage' title='Insert image'><i class='icon-picture'></i></a>"
68
-
69
- + "</li>",
70
-
71
- "html":
72
- "<li>"
73
- + "<div class='btn-group'>"
74
- + "<a class='btn' data-wysihtml5-action='change_view' title='Edit HTML'><i class='icon-pencil'></i></a>"
75
- + "</div>"
76
- + "</li>"
77
- };
78
-
79
- var defaultOptions = {
80
- "font-styles": true,
81
- "emphasis": true,
82
- "lists": true,
83
- "html": false,
84
- "link": true,
85
- "image": true,
86
- events: {},
87
- parserRules: {
88
- tags: {
89
- "b": {},
90
- "i": {},
91
- "br": {},
92
- "ol": {},
93
- "ul": {},
94
- "li": {},
95
- "h1": {},
96
- "h2": {},
97
- "u": 1,
98
- "img": {
99
- "check_attributes": {
100
- "width": "numbers",
101
- "alt": "alt",
102
- "src": "url",
103
- "height": "numbers"
104
- }
105
- },
106
- "a": {
107
- set_attributes: {
108
- target: "_blank",
109
- rel: "nofollow"
110
- },
111
- check_attributes: {
112
- href: "url" // important to avoid XSS
113
- }
114
- }
115
- }
116
- },
117
- stylesheets: []
118
- };
119
-
120
- var Wysihtml5 = function(el, options) {
121
- this.el = el;
122
- this.toolbar = this.createToolbar(el, options || defaultOptions);
123
- this.editor = this.createEditor(options);
124
-
125
- window.editor = this.editor;
126
-
127
- $('iframe.wysihtml5-sandbox').each(function(i, el){
128
- $(el.contentWindow).off('focus.wysihtml5').on({
129
- 'focus.wysihtml5' : function(){
130
- $('li.dropdown').removeClass('open');
131
- }
132
- });
133
- });
134
- };
135
-
136
- Wysihtml5.prototype = {
137
- constructor: Wysihtml5,
138
-
139
- createEditor: function(options) {
140
- var parserRules = defaultOptions.parserRules;
141
- var stylesheets = defaultOptions.stylesheets;
142
-
143
- if(options && options.parserRules) {
144
- parserRules = options.parserRules;
145
- }
146
-
147
- if (options && options.stylesheets) {
148
- stylesheets = options.stylesheets;
149
- }
150
-
151
- var editor = new wysi.Editor(this.el.attr('id'), {
152
- toolbar: this.toolbar.attr('id'),
153
- parserRules: parserRules,
154
- stylesheets: stylesheets
155
- });
156
-
157
- if(options && options.events) {
158
- for(var eventName in options.events) {
159
- editor.on(eventName, options.events[eventName]);
160
- }
161
- }
162
-
163
- return editor;
164
- },
165
-
166
- createToolbar: function(el, options) {
167
- var self = this;
168
- var toolbar = $("<ul/>", {
169
- 'id' : el.attr('id') + "-wysihtml5-toolbar",
170
- 'class' : "wysihtml5-toolbar",
171
- 'style': "display:none"
172
- });
173
-
174
- for(var key in defaultOptions) {
175
- var value = false;
176
-
177
- if(options[key] != undefined) {
178
- if(options[key] == true) {
179
- value = true;
180
- }
181
- } else {
182
- value = defaultOptions[key];
183
- }
184
-
185
- if(value == true) {
186
- toolbar.append(templates[key]);
187
-
188
- if(key == "html") {
189
- this.initHtml(toolbar);
190
- }
191
-
192
- if(key == "link") {
193
- this.initInsertLink(toolbar);
194
- }
195
-
196
- if(key == "image") {
197
- this.initInsertImage(toolbar);
198
- }
199
- }
200
- }
201
-
202
- var self = this;
203
-
204
- toolbar.find("a[data-wysihtml5-command='formatBlock']").click(function(e) {
205
- var el = $(e.srcElement);
206
- self.toolbar.find('.current-font').text(el.html())
207
- });
208
-
209
- this.el.before(toolbar);
210
-
211
- return toolbar;
212
- },
213
-
214
- initHtml: function(toolbar) {
215
- var changeViewSelector = "a[data-wysihtml5-action='change_view']";
216
- toolbar.find(changeViewSelector).click(function(e) {
217
- toolbar.find('a.btn').not(changeViewSelector).toggleClass('disabled');
218
- });
219
- },
220
-
221
- initInsertImage: function(toolbar) {
222
- var self = this;
223
- var insertImageModal = toolbar.find('.bootstrap-wysihtml5-insert-image-modal');
224
- var urlInput = insertImageModal.find('.bootstrap-wysihtml5-insert-image-url');
225
- var insertButton = insertImageModal.find('a.btn-primary');
226
- var initialValue = urlInput.val();
227
-
228
- var insertImage = function() {
229
- var url = urlInput.val();
230
- urlInput.val(initialValue);
231
- self.editor.composer.commands.exec("insertImage", url);
232
- };
233
-
234
- urlInput.keypress(function(e) {
235
- if(e.which == 13) {
236
- insertImage();
237
- insertImageModal.modal('hide');
238
- }
239
- });
240
-
241
- insertButton.click(insertImage);
242
-
243
- insertImageModal.on('shown', function() {
244
- urlInput.focus();
245
- });
246
-
247
- insertImageModal.on('hide', function() {
248
- self.editor.currentView.element.focus();
249
- });
250
-
251
- toolbar.find('a[data-wysihtml5-command=insertImage]').click(function() {
252
- insertImageModal.modal('show');
253
- return false;
254
- });
255
- },
256
-
257
- initInsertLink: function(toolbar) {
258
- var self = this;
259
- var insertLinkModal = toolbar.find('.bootstrap-wysihtml5-insert-link-modal');
260
- var urlInput = insertLinkModal.find('.bootstrap-wysihtml5-insert-link-url');
261
- var insertButton = insertLinkModal.find('a.btn-primary');
262
- var initialValue = urlInput.val();
263
-
264
- var insertLink = function() {
265
- var url = urlInput.val();
266
- urlInput.val(initialValue);
267
- self.editor.composer.commands.exec("createLink", {
268
- href: url,
269
- target: "_blank",
270
- rel: "nofollow"
2
+ "use strict";
3
+
4
+ var templates = {
5
+ "font-styles": "<li class='dropdown'>" +
6
+ "<a class='btn dropdown-toggle' data-toggle='dropdown' href='#'>" +
7
+ "<i class='icon-font'></i>&nbsp;<span class='current-font'>Normal text</span>&nbsp;<b class='caret'></b>" +
8
+ "</a>" +
9
+ "<ul class='dropdown-menu'>" +
10
+ "<li><a data-wysihtml5-command='formatBlock' data-wysihtml5-command-value='div'>Normal text</a></li>" +
11
+ "<li><a data-wysihtml5-command='formatBlock' data-wysihtml5-command-value='h1'>Heading 1</a></li>" +
12
+ "<li><a data-wysihtml5-command='formatBlock' data-wysihtml5-command-value='h2'>Heading 2</a></li>" +
13
+ "</ul>" +
14
+ "</li>",
15
+ "emphasis": "<li>" +
16
+ "<div class='btn-group'>" +
17
+ "<a class='btn' data-wysihtml5-command='bold' title='CTRL+B'>Bold</a>" +
18
+ "<a class='btn' data-wysihtml5-command='italic' title='CTRL+I'>Italic</a>" +
19
+ "<a class='btn' data-wysihtml5-command='underline' title='CTRL+U'>Underline</a>" +
20
+ "</div>" +
21
+ "</li>",
22
+ "lists": "<li>" +
23
+ "<div class='btn-group'>" +
24
+ "<a class='btn' data-wysihtml5-command='insertUnorderedList' title='Unordered List'><i class='icon-list'></i></a>" +
25
+ "<a class='btn' data-wysihtml5-command='insertOrderedList' title='Ordered List'><i class='icon-th-list'></i></a>" +
26
+ "<a class='btn' data-wysihtml5-command='Outdent' title='Outdent'><i class='icon-indent-right'></i></a>" +
27
+ "<a class='btn' data-wysihtml5-command='Indent' title='Indent'><i class='icon-indent-left'></i></a>" +
28
+ "</div>" +
29
+ "</li>",
30
+ "link": "<li>" +
31
+ "<div class='bootstrap-wysihtml5-insert-link-modal modal hide fade'>" +
32
+ "<div class='modal-header'>" +
33
+ "<a class='close' data-dismiss='modal'>&times;</a>" +
34
+ "<h3>Insert Link</h3>" +
35
+ "</div>" +
36
+ "<div class='modal-body'>" +
37
+ "<input value='http://' class='bootstrap-wysihtml5-insert-link-url input-xlarge'>" +
38
+ "</div>" +
39
+ "<div class='modal-footer'>" +
40
+ "<a href='#' class='btn' data-dismiss='modal'>Cancel</a>" +
41
+ "<a href='#' class='btn btn-primary' data-dismiss='modal'>Insert link</a>" +
42
+ "</div>" +
43
+ "</div>" +
44
+ "<a class='btn' data-wysihtml5-command='createLink' title='Link'><i class='icon-share'></i></a>" +
45
+ "</li>",
46
+ "image": "<li>" +
47
+ "<div class='bootstrap-wysihtml5-insert-image-modal modal hide fade'>" +
48
+ "<div class='modal-header'>" +
49
+ "<a class='close' data-dismiss='modal'>&times;</a>" +
50
+ "<h3>Insert Image</h3>" +
51
+ "</div>" +
52
+ "<div class='modal-body'>" +
53
+ "<input value='http://' class='bootstrap-wysihtml5-insert-image-url input-xlarge'>" +
54
+ "</div>" +
55
+ "<div class='modal-footer'>" +
56
+ "<a href='#' class='btn' data-dismiss='modal'>Cancel</a>" +
57
+ "<a href='#' class='btn btn-primary' data-dismiss='modal'>Insert image</a>" +
58
+ "</div>" +
59
+ "</div>" +
60
+ "<a class='btn' data-wysihtml5-command='insertImage' title='Insert image'><i class='icon-picture'></i></a>" +
61
+ "</li>",
62
+
63
+ "html":
64
+ "<li>" +
65
+ "<div class='btn-group'>" +
66
+ "<a class='btn' data-wysihtml5-action='change_view' title='Edit HTML'><i class='icon-pencil'></i></a>" +
67
+ "</div>" +
68
+ "</li>"
69
+ };
70
+
71
+ var defaultOptions = {
72
+ "font-styles": true,
73
+ "emphasis": true,
74
+ "lists": true,
75
+ "html": false,
76
+ "link": true,
77
+ "image": true,
78
+ events: {},
79
+ parserRules: {
80
+ tags: {
81
+ "b": {},
82
+ "i": {},
83
+ "br": {},
84
+ "ol": {},
85
+ "ul": {},
86
+ "li": {},
87
+ "h1": {},
88
+ "h2": {},
89
+ "u": 1,
90
+ "img": {
91
+ "check_attributes": {
92
+ "width": "numbers",
93
+ "alt": "alt",
94
+ "src": "url",
95
+ "height": "numbers"
96
+ }
97
+ },
98
+ "a": {
99
+ set_attributes: {
100
+ target: "_blank",
101
+ rel: "nofollow"
102
+ },
103
+ check_attributes: {
104
+ href: "url" // important to avoid XSS
105
+ }
106
+ }
107
+ }
108
+ },
109
+ stylesheets: []
110
+ };
111
+
112
+ var Wysihtml5 = function(el, options) {
113
+ this.el = el;
114
+ this.toolbar = this.createToolbar(el, options || defaultOptions);
115
+ this.editor = this.createEditor(options);
116
+
117
+ window.editor = this.editor;
118
+
119
+ $('iframe.wysihtml5-sandbox').each(function(i, el){
120
+ $(el.contentWindow).off('focus.wysihtml5').on({
121
+ 'focus.wysihtml5' : function(){
122
+ $('li.dropdown').removeClass('open');
123
+ }
124
+ });
125
+ });
126
+ };
127
+
128
+ Wysihtml5.prototype = {
129
+
130
+ constructor: Wysihtml5,
131
+
132
+ createEditor: function(options) {
133
+ options = $.extend(defaultOptions, options || {});
134
+ options.toolbar = this.toolbar[0];
135
+
136
+ var editor = new wysi.Editor(this.el[0], options);
137
+
138
+ if(options && options.events) {
139
+ for(var eventName in options.events) {
140
+ editor.on(eventName, options.events[eventName]);
141
+ }
142
+ }
143
+
144
+ return editor;
145
+ },
146
+
147
+ createToolbar: function(el, options) {
148
+ var self = this;
149
+ var toolbar = $("<ul/>", {
150
+ 'class' : "wysihtml5-toolbar",
151
+ 'style': "display:none"
152
+ });
153
+
154
+ for(var key in defaultOptions) {
155
+ var value = false;
156
+
157
+ if(options[key] !== undefined) {
158
+ if(options[key] === true) {
159
+ value = true;
160
+ }
161
+ } else {
162
+ value = defaultOptions[key];
163
+ }
164
+
165
+ if(value === true) {
166
+ toolbar.append(templates[key]);
167
+
168
+ if(key == "html") {
169
+ this.initHtml(toolbar);
170
+ }
171
+
172
+ if(key == "link") {
173
+ this.initInsertLink(toolbar);
174
+ }
175
+
176
+ if(key == "image") {
177
+ this.initInsertImage(toolbar);
178
+ }
179
+ }
180
+ }
181
+
182
+ toolbar.find("a[data-wysihtml5-command='formatBlock']").click(function(e) {
183
+ var el = $(e.srcElement);
184
+ self.toolbar.find('.current-font').text(el.html());
185
+ });
186
+
187
+ this.el.before(toolbar);
188
+
189
+ return toolbar;
190
+ },
191
+
192
+ initHtml: function(toolbar) {
193
+ var changeViewSelector = "a[data-wysihtml5-action='change_view']";
194
+ toolbar.find(changeViewSelector).click(function(e) {
195
+ toolbar.find('a.btn').not(changeViewSelector).toggleClass('disabled');
196
+ });
197
+ },
198
+
199
+ initInsertImage: function(toolbar) {
200
+ var self = this;
201
+ var insertImageModal = toolbar.find('.bootstrap-wysihtml5-insert-image-modal');
202
+ var urlInput = insertImageModal.find('.bootstrap-wysihtml5-insert-image-url');
203
+ var insertButton = insertImageModal.find('a.btn-primary');
204
+ var initialValue = urlInput.val();
205
+
206
+ var insertImage = function() {
207
+ var url = urlInput.val();
208
+ urlInput.val(initialValue);
209
+ self.editor.composer.commands.exec("insertImage", url);
210
+ };
211
+
212
+ urlInput.keypress(function(e) {
213
+ if(e.which == 13) {
214
+ insertImage();
215
+ insertImageModal.modal('hide');
216
+ }
217
+ });
218
+
219
+ insertButton.click(insertImage);
220
+
221
+ insertImageModal.on('shown', function() {
222
+ urlInput.focus();
223
+ });
224
+
225
+ insertImageModal.on('hide', function() {
226
+ self.editor.currentView.element.focus();
227
+ });
228
+
229
+ toolbar.find('a[data-wysihtml5-command=insertImage]').click(function() {
230
+ insertImageModal.modal('show');
231
+ insertImageModal.on('click.dismiss.modal', '[data-dismiss="modal"]', function(e) {
232
+ e.stopPropagation();
233
+ });
234
+ return false;
235
+ });
236
+ },
237
+
238
+ initInsertLink: function(toolbar) {
239
+ var self = this;
240
+ var insertLinkModal = toolbar.find('.bootstrap-wysihtml5-insert-link-modal');
241
+ var urlInput = insertLinkModal.find('.bootstrap-wysihtml5-insert-link-url');
242
+ var insertButton = insertLinkModal.find('a.btn-primary');
243
+ var initialValue = urlInput.val();
244
+
245
+ var insertLink = function() {
246
+ var url = urlInput.val();
247
+ urlInput.val(initialValue);
248
+ self.editor.composer.commands.exec("createLink", {
249
+ href: url,
250
+ target: "_blank",
251
+ rel: "nofollow"
252
+ });
253
+ };
254
+ var pressedEnter = false;
255
+
256
+ urlInput.keypress(function(e) {
257
+ if(e.which == 13) {
258
+ insertLink();
259
+ insertLinkModal.modal('hide');
260
+ }
261
+ });
262
+
263
+ insertButton.click(insertLink);
264
+
265
+ insertLinkModal.on('shown', function() {
266
+ urlInput.focus();
267
+ });
268
+
269
+ insertLinkModal.on('hide', function() {
270
+ self.editor.currentView.element.focus();
271
+ });
272
+
273
+ toolbar.find('a[data-wysihtml5-command=createLink]').click(function() {
274
+ insertLinkModal.modal('show');
275
+ insertLinkModal.on('click.dismiss.modal', '[data-dismiss="modal"]', function(e) {
276
+ e.stopPropagation();
271
277
  });
272
- };
273
- var pressedEnter = false;
274
-
275
- urlInput.keypress(function(e) {
276
- if(e.which == 13) {
277
- insertLink();
278
- insertLinkModal.modal('hide');
279
- }
280
- });
281
-
282
- insertButton.click(insertLink);
283
-
284
- insertLinkModal.on('shown', function() {
285
- urlInput.focus();
286
- });
287
-
288
- insertLinkModal.on('hide', function() {
289
- self.editor.currentView.element.focus();
290
- });
291
-
292
- toolbar.find('a[data-wysihtml5-command=createLink]').click(function() {
293
- insertLinkModal.modal('show');
294
- return false;
295
- });
296
- }
297
- };
298
-
299
- $.fn.wysihtml5 = function (options) {
300
- return this.each(function () {
301
- var $this = $(this);
302
- $this.data('wysihtml5', new Wysihtml5($this, options));
303
- })
304
- };
305
-
306
- $.fn.wysihtml5.Constructor = Wysihtml5;
278
+ return false;
279
+ });
280
+
281
+
282
+ }
283
+ };
284
+
285
+ $.fn.wysihtml5 = function (options) {
286
+ return this.each(function () {
287
+ var $this = $(this);
288
+ $this.data('wysihtml5', new Wysihtml5($this, options));
289
+ });
290
+ };
291
+
292
+ $.fn.wysihtml5.Constructor = Wysihtml5;
307
293
 
308
294
  }(window.jQuery, window.wysihtml5);
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bootstrap-wysihtml5-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.10
4
+ version: 0.2.11
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-06-04 00:00:00.000000000 Z
12
+ date: 2012-06-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: railties
@@ -94,7 +94,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
94
94
  version: '0'
95
95
  segments:
96
96
  - 0
97
- hash: 1933604991881565921
97
+ hash: 2897459941583643557
98
98
  required_rubygems_version: !ruby/object:Gem::Requirement
99
99
  none: false
100
100
  requirements:
@@ -103,7 +103,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
103
103
  version: '0'
104
104
  segments:
105
105
  - 0
106
- hash: 1933604991881565921
106
+ hash: 2897459941583643557
107
107
  requirements: []
108
108
  rubyforge_project:
109
109
  rubygems_version: 1.8.24