wiselinks 1.0.0 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- wiselinks (1.0.0)
4
+ wiselinks (1.1.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/README.md CHANGED
@@ -171,7 +171,7 @@ $(document).ready ->
171
171
 
172
172
  $(document).off('page:fail').on(
173
173
  'page:fail'
174
- (event, $target, status, url, error) ->
174
+ (event, $target, status, url, error, code) ->
175
175
  console.log("Wiselinks status: '#{status}'")
176
176
  # code to show error message
177
177
  )
@@ -331,7 +331,7 @@ Event is triggered if the request succeeds.
331
331
 
332
332
  * *data* – content of the request;
333
333
 
334
- **page:fail ($target, status, url, error)**
334
+ **page:fail ($target, status, url, error, code)**
335
335
 
336
336
  Event is triggered if the request fails.
337
337
 
@@ -343,6 +343,8 @@ Event is triggered if the request fails.
343
343
 
344
344
  * *error* – a string describing the type of error that occurred;
345
345
 
346
+ * *code* – HTTP response status code
347
+
346
348
  **page:always ($target, status, url)**
347
349
 
348
350
  Event is triggered after each request.
@@ -60,7 +60,7 @@ class Form
60
60
  # http://stackoverflow.com/questions/75980/best-practice-escape-or-encodeuri-encodeuricomponent
61
61
  #
62
62
  for key, value of this._params()
63
- params.push("#{key}=#{encodeURIComponent(value)}")
63
+ params.push("#{key}=#{encodeURIComponent(value).replace(/%2C/g, ',')}")
64
64
 
65
65
  params.join('&')
66
66
  else
@@ -31,7 +31,7 @@ class Link
31
31
  #
32
32
  _different_port: (link) ->
33
33
  port_equals = (location.port == link.port) ||
34
- (location.port == "" && link.port == "80")
34
+ (location.port == "" && (link.port == "80" || link.port == "443"))
35
35
 
36
36
  !port_equals
37
37
 
@@ -7,6 +7,8 @@ class Page
7
7
  @template_id = new Date().getTime()
8
8
  @request_manager = new _Wiselinks.RequestManager(@options)
9
9
 
10
+ @$target = self._wrap(@$target)
11
+
10
12
  self._try_target(@$target)
11
13
 
12
14
  if History.emulated.pushState && @options.html4 == true
@@ -51,12 +53,16 @@ class Page
51
53
  load: (url, target, render = 'template') ->
52
54
  @template_id = new Date().getTime() if render != 'partial'
53
55
 
54
- if target?
55
- this._try_target($(target))
56
+ selector = if target?
57
+ $target = this._wrap(target)
58
+ this._try_target($target)
59
+ $target.selector
60
+
56
61
  History.pushState({
57
62
  timestamp: (new Date().getTime()),
58
63
  template_id: @template_id,
59
- render: render, target: target,
64
+ render: render,
65
+ target: selector,
60
66
  referer: window.location.href
61
67
  }, document.title, url )
62
68
 
@@ -94,5 +100,9 @@ class Page
94
100
  if $target.length == 0 && @options.target_missing == 'exception'
95
101
  throw new Error("[Wiselinks] Target missing: `#{$target.selector}`")
96
102
 
103
+ _wrap: (object) ->
104
+ $(object)
105
+
106
+
97
107
  window._Wiselinks = {} if window._Wiselinks == undefined
98
108
  window._Wiselinks.Page = Page
@@ -41,7 +41,7 @@ class RequestManager
41
41
  self._done($target, status, state, data)
42
42
  ).fail(
43
43
  (xhr, status, error) ->
44
- self._fail($target, status, state, error)
44
+ self._fail($target, status, state, error, xhr.status)
45
45
  ).always(
46
46
  (data_or_xhr, status, xhr_or_error)->
47
47
  self._always($target, status, state)
@@ -66,13 +66,19 @@ class RequestManager
66
66
  History.replaceState(state.data, document.title, url)
67
67
 
68
68
  _loading: ($target, state) ->
69
- $(document).trigger('page:loading', [$target, state.data.render, decodeURI(state.url)])
69
+ $(document).trigger('page:loading'
70
+ [$target, state.data.render, decodeURI(state.url)]
71
+ )
70
72
 
71
73
  _done: ($target, status, state, data) ->
72
- $(document).trigger('page:done', [$target, status, decodeURI(state.url), data])
74
+ $(document).trigger('page:done'
75
+ [$target, status, decodeURI(state.url), data]
76
+ )
73
77
 
74
- _fail: ($target, status, state, error) ->
75
- $(document).trigger('page:fail', [$target, status, decodeURI(state.url), error])
78
+ _fail: ($target, status, state, error, code) ->
79
+ $(document).trigger('page:fail'
80
+ [$target, status, decodeURI(state.url), error, code]
81
+ )
76
82
 
77
83
  _always: ($target, status, state) ->
78
84
  $(document).trigger('page:always', [$target, status, decodeURI(state.url)])
@@ -3,7 +3,7 @@
3
3
  module Wiselinks
4
4
  module Version
5
5
  MAJOR = 1
6
- MINOR = 0
6
+ MINOR = 1
7
7
  PATCH = 0
8
8
  BUILD = nil
9
9
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wiselinks
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -12,7 +12,7 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2013-07-10 00:00:00.000000000 Z
15
+ date: 2013-07-24 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: rspec
@@ -399,7 +399,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
399
399
  version: '0'
400
400
  segments:
401
401
  - 0
402
- hash: 3217867254501092990
402
+ hash: -3451075218919014284
403
403
  required_rubygems_version: !ruby/object:Gem::Requirement
404
404
  none: false
405
405
  requirements:
@@ -408,7 +408,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
408
408
  version: '0'
409
409
  segments:
410
410
  - 0
411
- hash: 3217867254501092990
411
+ hash: -3451075218919014284
412
412
  requirements: []
413
413
  rubyforge_project:
414
414
  rubygems_version: 1.8.24