SrBuj 0.6.3 → 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/SrBuj/version.rb +1 -1
- data/lib/assets/javascripts/SrBuj.js +23 -3
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZTVjMWVlMWVhNWU4NzIzMmU4Y2NjZjMyOTc3ODJmYTk4YzQxY2JlOQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ODQxYThjYWY1NTU4NzUzNzJlZTNmNjVmY2YzNGI1OWNkNjcyNDNjNQ==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ZjdhYmE4NTkxZWY0ZTVmNzEyNWYzZGZjMzMxZmIzNTFiMGI5M2M4NmUzZjQx
|
10
|
+
MTY2OGY1M2M3ZTEyNzc0NTYyZmMzOTNkYWIxODEwYTA1N2Q0ZTNhNTM5OWFj
|
11
|
+
ODE4YzFlN2Y1NDE3ODkxMDIyODBkYWRhMjM3NzIyYjE4MDc2YzM=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MDA2ZTFmZTU4ZGUzZWUyYmNmNjZiZGU5NjRmZjEwYzhjYmFhZGVhOTg2Nzhh
|
14
|
+
MmMzM2UxYTUwNjhhNzA3Y2Y3OWEwNmYxODBmODNmY2ZhMjNmYzM5MTFiOGQx
|
15
|
+
YTg2NDdmM2FjZGZkYzkxZGI3YTVlNTM4ZWQ0Yjk4ZDQ1YTI3Y2E=
|
data/lib/SrBuj/version.rb
CHANGED
@@ -19,7 +19,7 @@
|
|
19
19
|
};
|
20
20
|
var SrBuj;
|
21
21
|
$.SrBuj = SrBuj = {
|
22
|
-
version: '0.
|
22
|
+
version: '0.7.0',
|
23
23
|
selector: '[data-remote][data-target]',
|
24
24
|
defaults: {
|
25
25
|
'$el': undefined,
|
@@ -32,6 +32,8 @@
|
|
32
32
|
custom: false,
|
33
33
|
replace: false,
|
34
34
|
callback: false,
|
35
|
+
url: undefined,
|
36
|
+
push: false,
|
35
37
|
jqueryselector: false
|
36
38
|
},
|
37
39
|
changeDom: function (method, $target, data) {
|
@@ -61,6 +63,18 @@
|
|
61
63
|
}
|
62
64
|
}
|
63
65
|
},
|
66
|
+
getUrl: function($el){
|
67
|
+
var url = $el.attr('href') || $el.attr('action');
|
68
|
+
if((/^[\/#](\w)/).test(url)){
|
69
|
+
return url
|
70
|
+
}
|
71
|
+
},
|
72
|
+
needToChangeUrl: function(url){
|
73
|
+
return !((window.document.location.origin + url) == window.document.location.href)
|
74
|
+
},
|
75
|
+
browserSupportsPushState: function(){
|
76
|
+
return window.history && window.history.pushState && window.history.replaceState
|
77
|
+
},
|
64
78
|
getVerb: function ($el) {
|
65
79
|
var respond_as = $el.data('respond-as'),
|
66
80
|
dataVerb = $el.data('method'),
|
@@ -92,7 +106,9 @@
|
|
92
106
|
'modal': $el.data('modal'),
|
93
107
|
'wrapper': $el.data('error'),
|
94
108
|
'custom': $el.data('custom'),
|
95
|
-
'replace': $el.data('replace')
|
109
|
+
'replace': $el.data('replace'),
|
110
|
+
'url': $.SrBuj.getUrl($el),
|
111
|
+
'push': $el.data('push')
|
96
112
|
};
|
97
113
|
user_options = user_options || {};
|
98
114
|
for (var attr in this.defaults) {
|
@@ -120,12 +136,16 @@
|
|
120
136
|
}
|
121
137
|
}
|
122
138
|
}
|
139
|
+
if(options.url && options.push && $.SrBuj.needToChangeUrl(options.url) && $.SrBuj.browserSupportsPushState() ){
|
140
|
+
window.history.pushState({ SrBuj: true }, '', options.url)
|
141
|
+
}
|
123
142
|
if (options.callback) {
|
124
143
|
var callback = $.SrBuj.kindOfCallback(options.callback);
|
125
144
|
if (callback) {
|
126
145
|
callback.apply(this, [e, data, status]);
|
127
146
|
}
|
128
147
|
}
|
148
|
+
|
129
149
|
}
|
130
150
|
},
|
131
151
|
|
@@ -138,7 +158,7 @@
|
|
138
158
|
if (error) {
|
139
159
|
$.SrBuj.changeDom('ERROR', $error, data.responseText);
|
140
160
|
} else {
|
141
|
-
throw 'cant find data-error on element' + e.target;
|
161
|
+
throw 'cant find data-error on element ' + e.target + ' maybe content_type missing on response?';
|
142
162
|
}
|
143
163
|
|
144
164
|
},
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: SrBuj
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- gagoar
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-05-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|