appjs-rails 1.0.4 → 1.0.5

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -82,6 +82,31 @@ Now all Array object has got functions
82
82
  ['a', 'b'].last(); // 'b'
83
83
 
84
84
  ```
85
+
86
+ ### For Bootstrap 3
87
+
88
+ Adding a counter that counts how many characters left to use
89
+ Use requires the following steps:
90
+
91
+ * You must add initializer into script
92
+
93
+ ```javascript
94
+ app._bootstrap.inputDownCounter();
95
+ ```
96
+
97
+ * Adding class 'js-input-down-counter-x' (where x is a natural number) into an input tag.
98
+
99
+ For Example
100
+
101
+ ```html
102
+ <div class="form-group">
103
+ <label class="col-lg-3 control-label">Name</label>
104
+ <div class="controls">
105
+ <input type='text' class='form-control js-input-down-counter-20" value='Example'>
106
+ </div>
107
+ </div>
108
+ ```
109
+
85
110
  # License
86
111
 
87
112
  appjs-rails uses the MIT license. Please check the [LICENSE][] file for more details.
@@ -81,6 +81,59 @@ var app = (function() {
81
81
  },
82
82
  _uuid: function(){
83
83
  return s4() + s4() + '-' + s4() + '-' + s4() + '-' + s4() + '-' + s4() + s4() + s4();
84
+ },
85
+ _bootstrap: {
86
+ inputDownCounter: function(){
87
+ jInputs = $('[class*="js-input-down-counter-"]');
88
+
89
+ for(var i=0; i< jInputs.length; i++){
90
+ if (!$(jInputs[i]).hasClass('js-used-input-down-counter')) {
91
+ var maxNameLength = undefined;
92
+
93
+ $(jInputs[i]).attr('class').split(' ').map(function(item){
94
+ if(!item.indexOf('js-input-down-counter-')){
95
+ maxNameLength = item.split('-').last();
96
+ }
97
+ })
98
+
99
+ jInputGroup = $('<div class="input-group"></div>');
100
+ jInputGroup.insertBefore($(jInputs[i]));
101
+ jInputGroup.append($(jInputs[i]));
102
+
103
+ $('<span class="text-muted input-group-addon add-on" style="background: #fff">0</span>').insertAfter($(jInputs[i]))
104
+ var usedChar = maxNameLength - parseInt($(jInputs[i]).val().length);
105
+ $(jInputs[i]).next().text(usedChar);
106
+ $(jInputs[i]).bind('keyup', function(){
107
+ var usedChar = maxNameLength - parseInt($(this).val().length);
108
+ if (usedChar >= 0) {
109
+ $(this).next().text(usedChar);
110
+ } else {
111
+ $(this).next().text(0);
112
+ $(this).val($(this).val().substr(0, maxNameLength));
113
+ }
114
+ })
115
+ $(jInputs[i]).addClass('js-used-input-down-counter');
116
+ }
117
+ }
118
+ },
119
+ showIcons: function(){
120
+ styles = document.styleSheets;
121
+ result = []
122
+
123
+ for (i=0; i< styles.length; i++) {
124
+ style = styles[i];
125
+ for(j=0; j< style.cssRules.length; j++) {
126
+ if(style.cssRules[j].cssText.match('glyphicon-.*::')) {
127
+ result.push(style.cssRules[j].cssText.match("(glyphicon-.*)::.*")[1])
128
+ }
129
+ }
130
+ }
131
+
132
+ for(i=0; i<result.length; i++){
133
+ $('#page-wrapper').append("<div class='col-lg-3'><span style='font-size: 30px' class='glyphicon " + result[i] + "'></span> " + result[i] + "</div>")
134
+ }
135
+ }
84
136
  }
137
+
85
138
  }
86
139
  })();
@@ -1,5 +1,5 @@
1
1
  module Appjs
2
2
  module Rails
3
- VERSION = "1.0.4"
3
+ VERSION = "1.0.5"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: appjs-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.4
4
+ version: 1.0.5
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: 2014-01-28 00:00:00.000000000 Z
12
+ date: 2014-03-24 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler