see_more 0.0.7 → 0.0.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- YWZkZDZiYzgyNWMxYjc1NzYwOTA5NGEzNDVlNzZkMjY4MjgyMGExMA==
4
+ ODlhMzM0YWU2OGQxZmE2MjRkZjEzOTA3NmJkZWNlY2NjYTJiOTdkNQ==
5
5
  data.tar.gz: !binary |-
6
- OTczY2RiZTEyMGQxMjA5Y2MzZWRmNDA5YTk4NmMzNzdmMGI2YmFiMg==
6
+ MzJiNzJmZWIxNTQyYWZlODNmNzVjN2Q2ZDhlODIwZDE5Y2U4YjQ5MA==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- ODE2YWY0MGUxMWI5NmM2YjMyNTFkNzE0NmNhYjViZGFhZWJlNGFkNGJiNTNk
10
- ZmY0Yzc1OTIwZGI0MWMxZmFhMjQ2NzQxYzcyMzVmMzIyOGE3YmJiY2I1NWQ3
11
- NmFkZjM4MmY5NmNiNDdlYTE3N2IyNTBmMjE0YzJlMzEwY2ZjYTY=
9
+ ZWM4OTNhNTZkNDU3ZWRiMWJiMjU4MWQzZjE0ZWYyYjZkZmY2OTVhZmVhZGMx
10
+ MDc4ZDQ0ZTJmYzMxMTNjOWU4YmQzYTFkN2U2MmQzYTdhNGYxZTdmY2U2YTRk
11
+ MDUwOGNkYjc4ZmY3OThiN2EyYmM1NTliZDk0YWE3MmM4YmM0NmQ=
12
12
  data.tar.gz: !binary |-
13
- YmE2MmMzNjE3OTg1M2Q4ZWQwYzE5NjQ3NzI3N2YzMjcwNjMzNDI1ZmM1MTU3
14
- NzI2YTc1NDYwYzIxY2U1MjA0M2RhNmRiMzIyZTQ1MmUwMTNhNjU3YjFlMDU5
15
- NjE0MmNmYjMyMmQ2MzJiMDM3ZDU5OTI3ODU1YjU2ODcyNTdlMmU=
13
+ MWRiOTVmZjg1NzE2YzAyZjFmY2M4MGY5NGE3YmE0NDc2N2ZiZjk1Y2Y4ZDBl
14
+ N2QzMzc4NThiZjFkMGFmNzA2ZjY4NzQzYmNiNGE5MGY4NTAzZmExNmUyOGIy
15
+ YjNjOTcwNWE2MzgzNzlhNDkwMDhkNTE1OTE0ZjE1YTJhYmViMTk=
@@ -0,0 +1,86 @@
1
+ /*
2
+ SeeMore (for jQuery)
3
+ version: 0.1.0 (16/03/2014)
4
+ @requires jQuery
5
+
6
+ By Senthil Kumar Muthamzihan
7
+ Examples at http://beckproducts.com
8
+
9
+ Licensed under the MIT:
10
+ http://www.opensource.org/licenses/mit-license.php
11
+
12
+ */
13
+
14
+
15
+ // this function delegates 2 methods on 2 events, 1. on click of see_more_link and 2. on click of see_less_link
16
+ (function($) {
17
+ window.SeeMoreEvents = function() {
18
+ this.showMore = $.proxy(this.showMore, this);
19
+ this.showLess = $.proxy(this.showLess, this);
20
+ };
21
+
22
+ SeeMoreEvents.prototype = {
23
+ // runs when see more is clicked
24
+ showMore: function(e) {
25
+ var link = e.currentTarget;
26
+ startSwitch(link,"more");
27
+ return false;
28
+ },
29
+ // runs when see less is clicked
30
+ showLess: function(e) {
31
+ var link = e.currentTarget;
32
+ startSwitch(link,"less");
33
+ return false;
34
+ }
35
+ };
36
+
37
+ window.seeMoreEvents = new SeeMoreEvents();
38
+ $(document)
39
+ .delegate('a.see_more_link','click',seeMoreEvents.showMore)
40
+ .delegate('a.see_less_link','click',seeMoreEvents.showLess);
41
+ })(jQuery);
42
+
43
+ // Start the process of switching
44
+ function startSwitch(lk,t){
45
+ var fromDb = $(lk).data('from-db');
46
+ // check if fetch from db or just hdie/unhide
47
+ if (fromDb){
48
+ var url = $(lk).data('route');
49
+ // actual fetch from db
50
+ var precontent = $.getJSON( url, function( data ) {
51
+ var field = $(lk).data('field');
52
+ var precontent = data[field];
53
+ prepareContent(t,lk,precontent);
54
+ });
55
+ }else{
56
+ var precontent = $(lk).data('content');
57
+ prepareContent(t,lk,precontent);
58
+ }
59
+ }
60
+
61
+ // prepares content based on more/less
62
+ function prepareContent(t,lk,pc){
63
+ if (t == "more"){ switchMoreLess(lk,"more",pc);}
64
+ else if (t == "less"){
65
+ var cSize = $(lk).data('content-size');
66
+ // substring limit set as 20 if not passed by user, else users limit
67
+ var c = pc.substring(0, parseInt(cSize));
68
+ switchMoreLess(lk,"less",c);
69
+ }
70
+ }
71
+
72
+ //this function does the actual switch from less content to more content and changes the link text from more to less and vice versa
73
+ function switchMoreLess(lk,t,ctnt){
74
+ t = t || "more";
75
+ if (t == "more"){var opp = "less"}
76
+ else if (t == "less"){var opp = "more"}
77
+ // changing content
78
+ $(lk).closest('.see_more_span').find('.see_more_content').text(ctnt + "...");
79
+ // changing link text
80
+ $(lk).closest('.see_' + t + '_link').text('see ' + opp);
81
+ // toggling class
82
+ $(lk).removeClass('see_' + t + '_link');
83
+ $(lk).addClass('see_' + opp + '_link');
84
+ }
85
+
86
+
@@ -1,3 +1,3 @@
1
1
  module SeeMore
2
- VERSION = "0.0.7"
2
+ VERSION = "0.0.8"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: see_more
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - beck03076
@@ -50,6 +50,7 @@ files:
50
50
  - LICENSE.txt
51
51
  - README.md
52
52
  - Rakefile
53
+ - lib/assets/javascripts/see_more.js
53
54
  - lib/see_more.rb
54
55
  - lib/see_more/helper.rb
55
56
  - lib/see_more/railtie.rb