marxjs-rails 0.2.2 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6b523f2834228073197ca46459233cef8df24fb9
4
- data.tar.gz: 71a718fe44ada1b38ca575837bfae1a790efcbdd
3
+ metadata.gz: 8d3f8be1d5067aa18f227e452adc8ee4247cde1e
4
+ data.tar.gz: b5d1539c035c75feb6e341add95f509b655a6ffe
5
5
  SHA512:
6
- metadata.gz: bdba4c2138fae9d68cf28315d971394d482f6f42a369b834cade1d8ca08aa41df4b68377322b26e534426afd579eb11407bf815299eb02fd07f8afc587eb96b1
7
- data.tar.gz: aed5180e84c387b76572566e315559276000f16076c27f35b1175564e97a0985ffd047395a65355466c17f27f54e19b03b7106381ab5968c141fe9a566af18c5
6
+ metadata.gz: d06fb3e3f34f2532b967d7943d27776388a60bfa5cc0310cfb1b976652b210970c77a1b3ce03ba51c7bd4794b3bf1aa313a2e7d67db6c9aa6a8ae29da5c2148f
7
+ data.tar.gz: 23f1bd39d6675faba49704206f547c5c24d3ea9de0f7c161fd982598fb901f039754646fa87cc07a59ce2e3ad9e740a36de7ff4b8000a207d808bdfdf3faea1a
@@ -1,6 +1,7 @@
1
1
  window.Marx = function(options) {
2
2
  var _this = this;
3
- return $.getJSON("http://marxjs.com/characters", function(data) {
3
+ this._url = "http://marxjs.com";
4
+ return $.getJSON("" + this._url + "/characters", function(data) {
4
5
  _this.marx_json = data;
5
6
  return _this.initialize(options);
6
7
  });
@@ -34,9 +35,9 @@ $.extend(Marx.prototype, {
34
35
  create_controls: function() {
35
36
  var open_controls,
36
37
  _this = this;
37
- $('body').append("<div class=\"marx-js-controls " + this.settings.position + "\">\n <link rel=\"stylesheet\" href=\"http://marxjs.com/marx.css\">\n</div>");
38
+ $('body').append("<div class=\"marx-js-controls " + this.settings.position + "\">\n <link rel=\"stylesheet\" href=\"" + this._url + "/marx.css\">\n</div>");
38
39
  this.$el = $('.marx-js-controls');
39
- open_controls = this.settings.controls !== 'toggle-all' ? "<a href='#open-controls' class='open-controls'>MarxJS</a>" : "<div class=\"open-controls\">\n <a href=\"#advanced-controls\" class=\"advanced-controls\" title=\"Show Advanced Controls\">Advanced Controls</a>\n <a href=\"#standard-controls\" class=\"standard-controls\" title=\"Show Standard Controls\">Standard Controls</a>\n <a href=\"#populate-whole-form\" class=\"populate-whole-form\" title=\"Populate Whole Form\">MarxJS</a>\n</div>";
40
+ open_controls = this.settings.controls !== 'toggle-all' ? "<a href='#open-controls' class='open-controls'>Marx.js</a>" : "<div class=\"open-controls\">\n <a href=\"#advanced-controls\" class=\"advanced-controls\" title=\"Show Advanced Controls\">Advanced Controls</a>\n <a href=\"#standard-controls\" class=\"standard-controls\" title=\"Show Standard Controls\">Standard Controls</a>\n <a href=\"#populate-whole-form\" class=\"quick-populate\" title=\"Populate Whole Form\">Marx.js</a>\n</div>";
40
41
  this.$el.append(open_controls);
41
42
  this.$el.addClass('marx-js-collapsed');
42
43
  switch (this.settings.controls) {
@@ -60,16 +61,18 @@ $.extend(Marx.prototype, {
60
61
  this.add_standard_controls();
61
62
  this.add_advanced_controls();
62
63
  this.$('a.standard-controls').click(function(e) {
64
+ $('p.marx-notification').remove();
63
65
  _this.$('.marx-standard-controls').toggle();
64
66
  _this.$('.marx-advanced-controls').hide();
65
67
  return false;
66
68
  });
67
69
  this.$('a.advanced-controls').click(function(e) {
70
+ $('p.marx-notification').remove();
68
71
  _this.$('.marx-advanced-controls').toggle();
69
72
  _this.$('.marx-standard-controls').hide();
70
73
  return false;
71
74
  });
72
- return this.$('a.populate-whole-form').click(function(e) {
75
+ return this.$('a.quick-populate').click(function(e) {
73
76
  _this.$('.marx-standard-controls').hide();
74
77
  _this.$('.marx-advanced-controls').hide();
75
78
  return _this.populate_whole_form(e);
@@ -118,10 +121,7 @@ $.extend(Marx.prototype, {
118
121
  this.$('.marx-advanced-controls').hide();
119
122
  this.$('.marx-standard-controls').append("<a href='#advanced' class='marx-toggle-advanced'>&laquo; Advanced</a>");
120
123
  return this.$('a.marx-toggle-advanced').click(function(e) {
121
- var txt;
122
- txt = $(e.target).hasClass('opened') ? "&laquo; Advanced" : "Close &raquo;";
123
- _this.$(e.target).toggleClass('opened').html(txt);
124
- return _this.$('.marx-advanced-controls').toggle();
124
+ return _this.toggle_advanced($(e.target));
125
125
  });
126
126
  },
127
127
  /*=========================
@@ -141,11 +141,8 @@ $.extend(Marx.prototype, {
141
141
  var _this = this;
142
142
  this.effected.inputs = 0;
143
143
  return $.each($("" + this.settings.form + " input"), function(i, input) {
144
- var brother, movie, obj, strings, value;
144
+ var brother, movie, obj, rand, str, strings, value, year;
145
145
  if (!($(input).val() !== "" || $(input).hasClass('no-populate'))) {
146
- if (['checkbox', 'radio', 'hidden'].indexOf($(input).attr('type') < 0)) {
147
- _this.effected.inputs += 1;
148
- }
149
146
  obj = _this.get_random();
150
147
  brother = JSON.parse(obj.brother);
151
148
  movie = JSON.parse(obj.movie);
@@ -161,22 +158,32 @@ $.extend(Marx.prototype, {
161
158
  case 'url':
162
159
  return "http://" + (movie.name.toLowerCase().replace(/\s/g, '')) + ".com";
163
160
  case 'date':
164
- return "" + movie.year + "-01-01";
161
+ rand = Math.random();
162
+ year = movie.year.toString();
163
+ return "" + year + "-0" + (year.substr(Math.floor(rand * 4), 1)) + "-2" + (year.substr(Math.floor(rand * 4), 1));
165
164
  default:
166
- return strings[Math.floor(Math.random() * strings.length)];
165
+ str = strings[Math.floor(Math.random() * strings.length)];
166
+ if ((str == null) || str === "") {
167
+ return "Marx";
168
+ } else {
169
+ return str;
170
+ }
167
171
  }
168
172
  })();
169
- return $(input).attr('data-marx-d', true).val(value);
173
+ if (['checkbox', 'radio', 'hidden'].indexOf($(input).attr('type') < 0)) {
174
+ $(input).attr('data-marx-d', true).val(value).trigger('change').trigger('blur');
175
+ return _this.effected.inputs += 1;
176
+ }
170
177
  }
171
178
  });
172
179
  },
173
180
  populate_textareas: function() {
174
181
  var _this = this;
175
182
  this.effected.textareas = 0;
176
- return $.getJSON("http://marxjs.com/quotes", function(data) {
183
+ return $.getJSON("" + this._url + "/quotes", function(data) {
177
184
  return $.each($("" + _this.settings.form + " textarea"), function(i, input) {
178
185
  _this.effected.textareas += 1;
179
- return $(input).attr('data-marx-d', true).val(data[Math.floor(Math.random() * data.length)].body);
186
+ return $(input).attr('data-marx-d', true).val(data[Math.floor(Math.random() * data.length)].body).trigger('change').trigger('blur');
180
187
  });
181
188
  });
182
189
  },
@@ -194,7 +201,7 @@ $.extend(Marx.prototype, {
194
201
  var checked, clean_name;
195
202
  checked = Math.floor(Math.random() * 2) === 1 ? true : false;
196
203
  clean_name = name.replace(/\[/g, '\\[').replace(/\]/g, '\\]');
197
- $("" + _this.settings.form + " input[name=" + clean_name + "]").attr('data-marx-d', true).attr('checked', checked);
204
+ $("" + _this.settings.form + " input[name=" + clean_name + "]").attr('data-marx-d', true).attr('checked', checked).trigger('change').trigger('blur');
198
205
  if (checked) {
199
206
  return _this.effected.check_boxes += 1;
200
207
  }
@@ -214,7 +221,7 @@ $.extend(Marx.prototype, {
214
221
  var clean_name, total;
215
222
  clean_name = name.replace(/\[/g, '\\[').replace(/\]/g, '\\]');
216
223
  total = $("" + _this.settings.form + " input[name=" + clean_name + "]").length;
217
- $("" + _this.settings.form + " input[name=" + name + "]:eq(" + (Math.floor(Math.random() * total)) + ")").attr('data-marx-d', true).attr('checked', true);
224
+ $("" + _this.settings.form + " input[name=" + name + "]:eq(" + (Math.floor(Math.random() * total)) + ")").attr('data-marx-d', true).attr('checked', true).trigger('change').trigger('blur');
218
225
  return _this.effected.radio_buttons += 1;
219
226
  });
220
227
  },
@@ -228,10 +235,11 @@ $.extend(Marx.prototype, {
228
235
  rand = Math.floor(Math.random() * total);
229
236
  $opt = $(select).find("option:eq(" + rand + ")");
230
237
  if (($opt.attr('value') != null) && $opt.attr('value') !== "") {
231
- return $opt.attr('selected', true);
238
+ $opt.attr('selected', true);
232
239
  } else {
233
- return $opt.next('option').attr('selected', true);
240
+ $opt.next('option').attr('selected', true);
234
241
  }
242
+ return $(select).trigger('change').trigger('blur');
235
243
  });
236
244
  },
237
245
  toggle_hidden_fields: function() {
@@ -283,7 +291,7 @@ $.extend(Marx.prototype, {
283
291
  num = this.$('.ipsum input').val();
284
292
  $ipsum = $("<div class='marx-generated-ipsum " + this.settings.position + "'>\n <h4>Marx Ipsum</h4>\n <a href='#close' class='marx-ipsum-close'>X</a>\n <div class='marx-container'></div>\n</div>");
285
293
  $('body').append($ipsum);
286
- return $.getJSON("http://marxjs.com/monologues", function(data) {
294
+ return $.getJSON("" + this._url + "/monologues", function(data) {
287
295
  var i, max, monologues, _i;
288
296
  max = num > data.length ? data.length - 1 : num;
289
297
  monologues = data.sort(function() {
@@ -307,7 +315,20 @@ $.extend(Marx.prototype, {
307
315
  */
308
316
 
309
317
  toggle_controls: function(e) {
318
+ $('p.marx-notification').remove();
310
319
  this.$el.toggleClass('marx-js-collapsed');
320
+ if (this.settings.controls === 'toggle-advanced' && this.$el.hasClass('marx-js-collapsed')) {
321
+ if ($('.marx-advanced-controls').is(':visible')) {
322
+ this.toggle_advanced($('a.marx-toggle-advanced'));
323
+ }
324
+ }
325
+ return false;
326
+ },
327
+ toggle_advanced: function($link) {
328
+ var txt;
329
+ txt = $link.hasClass('opened') ? "&laquo; Advanced" : "Close &raquo;";
330
+ $link.toggleClass('opened').html(txt);
331
+ this.$('.marx-advanced-controls').toggle();
311
332
  return false;
312
333
  },
313
334
  popluate_selected_fields: function(e) {
@@ -370,7 +391,7 @@ $.extend(Marx.prototype, {
370
391
  });
371
392
  break;
372
393
  case 'random-image':
373
- window.location = "http://marxjs.com/get-image";
394
+ window.location = "" + this._url + "/get-image";
374
395
  break;
375
396
  case 'generate-ipsum':
376
397
  this.generate_ipsum();
@@ -10,6 +10,7 @@
10
10
 
11
11
  .marx-js-controls {
12
12
  position: fixed;
13
+ z-index: 2000;
13
14
  background: #f6f6f6;
14
15
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.7);
15
16
  -moz-box-shadow: 0 0 8px rgba(0, 0, 0, 0.7);
@@ -96,14 +97,14 @@
96
97
  background-size: 32px 32px;
97
98
  color: #333;
98
99
  text-align: right; }
99
- .marx-js-controls .open-controls a.populate-whole-form {
100
+ .marx-js-controls .open-controls a.quick-populate {
100
101
  padding: 10px; }
101
- .marx-js-controls .open-controls a.populate-whole-form,
102
+ .marx-js-controls .open-controls a.quick-populate,
102
103
  .marx-js-controls .open-controls a.standard-controls, .marx-js-controls .open-controls a.advanced-controls {
103
104
  display: block;
104
105
  float: right;
105
106
  background-color: transparent; }
106
- .marx-js-controls .open-controls a.populate-whole-form:hover,
107
+ .marx-js-controls .open-controls a.quick-populate:hover,
107
108
  .marx-js-controls .open-controls a.standard-controls:hover, .marx-js-controls .open-controls a.advanced-controls:hover {
108
109
  background-color: #ccc; }
109
110
  .marx-js-controls .open-controls a.standard-controls, .marx-js-controls .open-controls a.advanced-controls {
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "mappings": "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",
4
+ "sources": ["../scss/marx.scss","../scss/mixins.scss"],
5
+ "names": [],
6
+ "file": "marx.css"
7
+ }
@@ -1,5 +1,5 @@
1
1
  module Marxjs
2
2
  module Rails
3
- VERSION = "0.2.2"
3
+ VERSION = "0.3.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: marxjs-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Keith Raymond
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-11-27 00:00:00.000000000 Z
11
+ date: 2014-12-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -69,6 +69,7 @@ files:
69
69
  - app/assets/images/standard.png
70
70
  - app/assets/javascripts/marx.js
71
71
  - app/assets/stylesheets/marx.css
72
+ - app/assets/stylesheets/marx.css.map
72
73
  - lib/marxjs/rails.rb
73
74
  - lib/marxjs/rails/version.rb
74
75
  homepage: https://github.com/Sparkmasterflex/marxjs-rails