wiselinks 1.0.0 → 1.1.0

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/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