mobile-fu-for-jquery-mobile 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (219) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG +113 -0
  3. data/Gemfile +4 -0
  4. data/Gemfile.lock +102 -0
  5. data/MIT-LICENSE +20 -0
  6. data/README.md +159 -0
  7. data/Rakefile +77 -0
  8. data/app/assets/images/mobile-fu-jquery-mobile/ajax-loader.gif +0 -0
  9. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/action-black.png +0 -0
  10. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/action-white.png +0 -0
  11. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/alert-black.png +0 -0
  12. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/alert-white.png +0 -0
  13. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-d-black.png +0 -0
  14. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-d-l-black.png +0 -0
  15. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-d-l-white.png +0 -0
  16. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-d-r-black.png +0 -0
  17. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-d-r-white.png +0 -0
  18. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-d-white.png +0 -0
  19. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-l-black.png +0 -0
  20. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-l-white.png +0 -0
  21. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-r-black.png +0 -0
  22. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-r-white.png +0 -0
  23. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-u-black.png +0 -0
  24. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-u-l-black.png +0 -0
  25. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-u-l-white.png +0 -0
  26. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-u-r-black.png +0 -0
  27. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-u-r-white.png +0 -0
  28. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-u-white.png +0 -0
  29. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/audio-black.png +0 -0
  30. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/audio-white.png +0 -0
  31. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/back-black.png +0 -0
  32. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/back-white.png +0 -0
  33. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/bars-black.png +0 -0
  34. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/bars-white.png +0 -0
  35. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/bullets-black.png +0 -0
  36. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/bullets-white.png +0 -0
  37. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/calendar-black.png +0 -0
  38. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/calendar-white.png +0 -0
  39. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/camera-black.png +0 -0
  40. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/camera-white.png +0 -0
  41. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/carat-d-black.png +0 -0
  42. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/carat-d-white.png +0 -0
  43. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/carat-l-black.png +0 -0
  44. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/carat-l-white.png +0 -0
  45. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/carat-r-black.png +0 -0
  46. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/carat-r-white.png +0 -0
  47. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/carat-u-black.png +0 -0
  48. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/carat-u-white.png +0 -0
  49. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/check-black.png +0 -0
  50. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/check-white.png +0 -0
  51. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/clock-black.png +0 -0
  52. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/clock-white.png +0 -0
  53. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/cloud-black.png +0 -0
  54. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/cloud-white.png +0 -0
  55. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/comment-black.png +0 -0
  56. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/comment-white.png +0 -0
  57. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/delete-black.png +0 -0
  58. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/delete-white.png +0 -0
  59. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/edit-black.png +0 -0
  60. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/edit-white.png +0 -0
  61. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/eye-black.png +0 -0
  62. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/eye-white.png +0 -0
  63. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/forbidden-black.png +0 -0
  64. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/forbidden-white.png +0 -0
  65. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/forward-black.png +0 -0
  66. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/forward-white.png +0 -0
  67. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/gear-black.png +0 -0
  68. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/gear-white.png +0 -0
  69. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/grid-black.png +0 -0
  70. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/grid-white.png +0 -0
  71. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/heart-black.png +0 -0
  72. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/heart-white.png +0 -0
  73. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/home-black.png +0 -0
  74. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/home-white.png +0 -0
  75. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/info-black.png +0 -0
  76. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/info-white.png +0 -0
  77. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/location-black.png +0 -0
  78. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/location-white.png +0 -0
  79. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/lock-black.png +0 -0
  80. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/lock-white.png +0 -0
  81. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/mail-black.png +0 -0
  82. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/mail-white.png +0 -0
  83. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/minus-black.png +0 -0
  84. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/minus-white.png +0 -0
  85. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/navigation-black.png +0 -0
  86. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/navigation-white.png +0 -0
  87. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/phone-black.png +0 -0
  88. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/phone-white.png +0 -0
  89. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/plus-black.png +0 -0
  90. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/plus-white.png +0 -0
  91. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/power-black.png +0 -0
  92. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/power-white.png +0 -0
  93. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/recycle-black.png +0 -0
  94. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/recycle-white.png +0 -0
  95. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/refresh-black.png +0 -0
  96. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/refresh-white.png +0 -0
  97. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/search-black.png +0 -0
  98. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/search-white.png +0 -0
  99. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/shop-black.png +0 -0
  100. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/shop-white.png +0 -0
  101. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/star-black.png +0 -0
  102. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/star-white.png +0 -0
  103. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/tag-black.png +0 -0
  104. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/tag-white.png +0 -0
  105. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/user-black.png +0 -0
  106. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/user-white.png +0 -0
  107. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/video-black.png +0 -0
  108. data/app/assets/images/mobile-fu-jquery-mobile/icons-png/video-white.png +0 -0
  109. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/action-black.svg +7 -0
  110. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/action-white.svg +7 -0
  111. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/alert-black.svg +8 -0
  112. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/alert-white.svg +8 -0
  113. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-d-black.svg +37 -0
  114. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-d-l-black.svg +37 -0
  115. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-d-l-white.svg +37 -0
  116. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-d-r-black.svg +37 -0
  117. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-d-r-white.svg +37 -0
  118. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-d-white.svg +37 -0
  119. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-l-black.svg +37 -0
  120. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-l-white.svg +37 -0
  121. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-r-black.svg +37 -0
  122. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-r-white.svg +37 -0
  123. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-u-black.svg +37 -0
  124. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-u-l-black.svg +37 -0
  125. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-u-l-white.svg +37 -0
  126. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-u-r-black.svg +37 -0
  127. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-u-r-white.svg +37 -0
  128. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-u-white.svg +37 -0
  129. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/audio-black.svg +40 -0
  130. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/audio-white.svg +40 -0
  131. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/back-black.svg +7 -0
  132. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/back-white.svg +7 -0
  133. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/bars-black.svg +9 -0
  134. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/bars-white.svg +9 -0
  135. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/bullets-black.svg +10 -0
  136. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/bullets-white.svg +11 -0
  137. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/calendar-black.svg +39 -0
  138. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/calendar-white.svg +39 -0
  139. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/camera-black.svg +9 -0
  140. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/camera-white.svg +10 -0
  141. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/carat-d-black.svg +7 -0
  142. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/carat-d-white.svg +7 -0
  143. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/carat-l-black.svg +7 -0
  144. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/carat-l-white.svg +7 -0
  145. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/carat-r-black.svg +7 -0
  146. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/carat-r-white.svg +7 -0
  147. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/carat-u-black.svg +7 -0
  148. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/carat-u-white.svg +7 -0
  149. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/check-black.svg +7 -0
  150. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/check-white.svg +7 -0
  151. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/clock-black.svg +38 -0
  152. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/clock-white.svg +38 -0
  153. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/cloud-black.svg +9 -0
  154. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/cloud-white.svg +9 -0
  155. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/comment-black.svg +37 -0
  156. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/comment-white.svg +37 -0
  157. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/delete-black.svg +37 -0
  158. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/delete-white.svg +37 -0
  159. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/edit-black.svg +37 -0
  160. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/edit-white.svg +37 -0
  161. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/eye-black.svg +8 -0
  162. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/eye-white.svg +8 -0
  163. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/forbidden-black.svg +40 -0
  164. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/forbidden-white.svg +40 -0
  165. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/forward-black.svg +7 -0
  166. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/forward-white.svg +7 -0
  167. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/gear-black.svg +52 -0
  168. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/gear-white.svg +52 -0
  169. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/grid-black.svg +44 -0
  170. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/grid-white.svg +44 -0
  171. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/heart-black.svg +7 -0
  172. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/heart-white.svg +8 -0
  173. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/home-black.svg +37 -0
  174. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/home-white.svg +37 -0
  175. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/info-black.svg +38 -0
  176. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/info-white.svg +38 -0
  177. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/location-black.svg +8 -0
  178. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/location-white.svg +8 -0
  179. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/lock-black.svg +8 -0
  180. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/lock-white.svg +9 -0
  181. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/mail-black.svg +7 -0
  182. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/mail-white.svg +7 -0
  183. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/minus-black.svg +7 -0
  184. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/minus-white.svg +7 -0
  185. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/navigation-black.svg +7 -0
  186. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/navigation-white.svg +7 -0
  187. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/phone-black.svg +12 -0
  188. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/phone-white.svg +12 -0
  189. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/plus-black.svg +37 -0
  190. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/plus-white.svg +37 -0
  191. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/power-black.svg +12 -0
  192. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/power-white.svg +12 -0
  193. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/recycle-black.svg +8 -0
  194. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/recycle-white.svg +9 -0
  195. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/refresh-black.svg +40 -0
  196. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/refresh-white.svg +40 -0
  197. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/search-black.svg +9 -0
  198. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/search-white.svg +9 -0
  199. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/shop-black.svg +9 -0
  200. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/shop-white.svg +9 -0
  201. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/star-black.svg +7 -0
  202. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/star-white.svg +7 -0
  203. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/tag-black.svg +37 -0
  204. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/tag-white.svg +37 -0
  205. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/user-black.svg +41 -0
  206. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/user-white.svg +41 -0
  207. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/video-black.svg +7 -0
  208. data/app/assets/images/mobile-fu-jquery-mobile/icons-svg/video-white.svg +8 -0
  209. data/app/assets/javascripts/jquery.mobile.simpledialog2.js +380 -0
  210. data/app/assets/javascripts/mobile.fu.jquery.mobile.js +15057 -0
  211. data/app/assets/stylesheets/jquery.mobile.simpledialog.min.css +8 -0
  212. data/app/assets/stylesheets/mobile.fu.jquery.mobile.css.scss +4698 -0
  213. data/lib/mobile-fu-for-jquery-mobile.rb +204 -0
  214. data/lib/mobile-fu-for-jquery-mobile/helper.rb +44 -0
  215. data/lib/mobile-fu-for-jquery-mobile/tablet.rb +13 -0
  216. data/lib/mobile-fu-for-jquery-mobile/version.rb +3 -0
  217. data/mobile-fu-for-jquery-mobile-1.0.0.gem +0 -0
  218. data/mobile-fu-for-jquery-mobile.gemspec +31 -0
  219. metadata +335 -0
@@ -0,0 +1,204 @@
1
+ require 'mobile-fu-for-jquery-mobile/tablet'
2
+ require 'rails'
3
+ require 'rack/mobile-detect'
4
+
5
+ module MobileFuForJqueryMobile
6
+ autoload :Helper, 'mobile-fu-for-jquery-mobile/helper'
7
+
8
+ class Railtie < Rails::Railtie
9
+ initializer "mobile-fu-for-jquery-mobile.configure" do |app|
10
+ app.config.middleware.use Rack::MobileDetect
11
+ end
12
+
13
+ if Rails::VERSION::MAJOR >= 3
14
+ initializer "mobile-fu-for-jquery-mobile.action_controller" do |app|
15
+ ActiveSupport.on_load :action_controller do
16
+ include ActionController::MobileFuForJqueryMobile
17
+ end
18
+ end
19
+
20
+ initializer "mobile-fu-for-jquery-mobile.action_view" do |app|
21
+ ActiveSupport.on_load :action_view do
22
+ include MobileFuForJqueryMobile::Helper
23
+ alias_method_chain :stylesheet_link_tag, :mobilization
24
+ end
25
+ end
26
+ end
27
+
28
+ Mime::Type.register_alias "text/html", :mobile
29
+ Mime::Type.register_alias "text/html", :tablet
30
+ end
31
+
32
+ class Engine < ::Rails::Engine
33
+ end
34
+
35
+ end
36
+
37
+ module ActionController
38
+ module MobileFuForJqueryMobile
39
+
40
+ def self.included(base)
41
+ base.extend ClassMethods
42
+ end
43
+
44
+ module ClassMethods
45
+
46
+ # Add this to one of your controllers to use MobileFuForJqueryMobile.
47
+ #
48
+ # class ApplicationController < ActionController::Base
49
+ # has_mobile_fu
50
+ # end
51
+ #
52
+ # If you don't want mobile_fu to set the request format automatically,
53
+ # you can pass false here.
54
+ #
55
+ # class ApplicationController < ActionController::Base
56
+ # has_mobile_fu false
57
+ # end
58
+ #
59
+ def has_mobile_fu(set_request_format = true)
60
+ include ActionController::MobileFuForJqueryMobile::InstanceMethods
61
+
62
+ before_filter :set_request_format if set_request_format
63
+
64
+ helper_method :is_mobile_device?
65
+ helper_method :is_tablet_device?
66
+ helper_method :in_mobile_view?
67
+ helper_method :in_tablet_view?
68
+ helper_method :is_device?
69
+ helper_method :mobile_device
70
+ end
71
+
72
+ # Add this to your controllers to prevent the mobile format from being set for specific actions
73
+ # class AwesomeController < ApplicationController
74
+ # has_no_mobile_fu_for :index
75
+ #
76
+ # def index
77
+ # # Mobile format will not be set, even if user is on a mobile device
78
+ # end
79
+ #
80
+ # def show
81
+ # # Mobile format will be set as normal here if user is on a mobile device
82
+ # end
83
+ # end
84
+ def has_no_mobile_fu_for(*actions)
85
+ @mobile_exempt_actions = actions
86
+ end
87
+
88
+ # Add this to your controllers to only let those actions use the mobile format
89
+ # this method has priority over the #has_no_mobile_fu_for
90
+ # class AwesomeController < ApplicationController
91
+ # has_mobile_fu_for :index
92
+ #
93
+ # def index
94
+ # # Mobile format will be set as normal here if user is on a mobile device
95
+ # end
96
+ #
97
+ # def show
98
+ # # Mobile format will not be set, even if user is on a mobile device
99
+ # end
100
+ # end
101
+ def has_mobile_fu_for(*actions)
102
+ @mobile_include_actions = actions
103
+ end
104
+ end
105
+
106
+ module InstanceMethods
107
+ def set_request_format(force_mobile = false)
108
+ force_mobile ? force_mobile_format : set_mobile_format
109
+ end
110
+ alias :set_device_type :set_request_format
111
+
112
+ # Forces the request format to be :mobile
113
+ def force_mobile_format
114
+ unless request.xhr?
115
+ request.format = :mobile
116
+ session[:mobile_view] = true if session[:mobile_view].nil?
117
+ end
118
+ end
119
+
120
+ # Forces the request format to be :tablet
121
+ def force_tablet_format
122
+ unless request.xhr?
123
+ request.format = :tablet
124
+ session[:tablet_view] = true if session[:tablet_view].nil?
125
+ end
126
+ end
127
+
128
+ # Determines the request format based on whether the device is mobile or if
129
+ # the user has opted to use either the 'Standard' view or 'Mobile' view or
130
+ # 'Tablet' view.
131
+
132
+ def set_mobile_format
133
+ if request.format.html? && mobile_action? && is_mobile_device? && (!request.xhr? || request.headers["jqm-Ajax-Request"])
134
+ request.format = :mobile unless session[:mobile_view] == false
135
+ session[:mobile_view] = true if session[:mobile_view].nil?
136
+ elsif request.format.html? && mobile_action? && is_tablet_device? && (!request.xhr? || request.headers["jqm-Ajax-Request"])
137
+ request.format = :tablet unless session[:tablet_view] == false
138
+ session[:tablet_view] = true if session[:tablet_view].nil?
139
+ end
140
+ end
141
+
142
+ # Returns either true or false depending on whether or not the format of the
143
+ # request is either :mobile or not.
144
+
145
+ def in_mobile_view?
146
+ return false unless request.format
147
+ request.format.to_sym == :mobile
148
+ end
149
+
150
+ # Returns either true or false depending on whether or not the format of the
151
+ # request is either :tablet or not.
152
+
153
+ def in_tablet_view?
154
+ return false unless request.format
155
+ request.format.to_sym == :tablet
156
+ end
157
+
158
+ # Returns either true or false depending on whether or not the user agent of
159
+ # the device making the request is matched to a device in our regex.
160
+
161
+ def is_tablet_device?
162
+ ::MobileFuForJqueryMobile::Tablet.is_a_tablet_device? request.user_agent
163
+ end
164
+
165
+ def is_mobile_device?
166
+ !is_tablet_device? && !!mobile_device
167
+ end
168
+
169
+ def mobile_device
170
+ request.headers['X_MOBILE_DEVICE']
171
+ end
172
+
173
+ # Can check for a specific user agent
174
+ # e.g., is_device?('iphone') or is_device?('mobileexplorer')
175
+
176
+ def is_device?(type)
177
+ request.user_agent.to_s.downcase.include? type.to_s.downcase
178
+ end
179
+
180
+ # Returns true if current action is supposed to use mobile format
181
+ # See #has_mobile_fu_for
182
+ def mobile_action?
183
+ if self.class.instance_variable_get("@mobile_include_actions").nil? #Now we know we dont have any includes, maybe excludes?
184
+ return !mobile_exempt?
185
+ else
186
+ self.class.instance_variable_get("@mobile_include_actions").try(:include?, params[:action].try(:to_sym))
187
+ end
188
+ end
189
+
190
+ # Returns true if current action isn't supposed to use mobile format
191
+ # See #has_no_mobile_fu_for
192
+
193
+ def mobile_exempt?
194
+ self.class.instance_variable_get("@mobile_exempt_actions").try(:include?, params[:action].try(:to_sym))
195
+ end
196
+ end
197
+ end
198
+ end
199
+
200
+ if Rails::VERSION::MAJOR < 3
201
+ ActionController::Base.send :include, ActionController::MobileFuForJqueryMobile
202
+ ActionView::Base.send :include, MobileFuForJqueryMobile::Helper
203
+ ActionView::Base.send :alias_method_chain, :stylesheet_link_tag, :mobilization
204
+ end
@@ -0,0 +1,44 @@
1
+ module MobileFuForJqueryMobile
2
+ module Helper
3
+ JS_ENABLED_DEVICES = %w{iphone ipod ipad mobileexplorer android zune}
4
+
5
+ def js_enabled_mobile_device?
6
+ JS_ENABLED_DEVICES.find { |device| is_device? device }
7
+ end
8
+
9
+ def stylesheet_link_tag_with_mobilization(*sources)
10
+ mobilized_sources = Array.new
11
+
12
+ # Figure out where stylesheets live, which differs depending if the asset
13
+ # pipeline is used or not.
14
+ stylesheets_dir = config.stylesheets_dir # Rails.root/public/stylesheets
15
+
16
+ # Look for mobilized stylesheets in the app/assets path if asset pipeline
17
+ # is enabled, because public/stylesheets will be missing in development
18
+ # mode without precompiling assets first, and may also contain multiple
19
+ # stylesheets with similar names because of checksumming during
20
+ # precompilation.
21
+ if Rails.application.config.respond_to?(:assets) # don't break pre-rails3.1
22
+ if Rails.application.config.assets.enabled
23
+ stylesheets_dir = File.join(Rails.root, 'app/assets/stylesheets/')
24
+ end
25
+ end
26
+
27
+ device_names = respond_to?(:is_mobile_device?) && is_mobile_device? ? ['mobile', mobile_device.downcase] : []
28
+
29
+ sources.each do |source|
30
+ mobilized_sources << source
31
+
32
+ device_names.compact.each do |device_name|
33
+ # support ERB and/or SCSS extensions (e.g., mobile.css.erb, mobile.css.scss.erb)
34
+ possible_source = source.to_s.sub(/\.css.*$/, '') + "_#{device_name}"
35
+
36
+ mobilized_files = Dir.glob(File.join(stylesheets_dir, "#{possible_source}.css*")).map { |f| f.sub(stylesheets_dir, '') }
37
+ mobilized_sources += mobilized_files.map { |f| f.sub(/\.css.*/, '') }
38
+ end
39
+ end
40
+
41
+ stylesheet_link_tag_without_mobilization *mobilized_sources
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,13 @@
1
+ module MobileFuForJqueryMobile
2
+
3
+ module Tablet
4
+
5
+ TABLET_USER_AGENTS = /ipad|ipad.*mobile|^.*android.*nexus(((?:(?!mobile))|(?:(\s(7|10).+))).)*$|samsung.*tablet|galaxy.*tab|sc-01c|gt-p1000|gt-p1003|gt-p1010|gt-p3105|gt-p6210|gt-p6800|gt-p6810|gt-p7100|gt-p7300|gt-p7310|gt-p7500|gt-p7510|sch-i800|sch-i815|sch-i905|sgh-i957|sgh-i987|sgh-t849|sgh-t859|sgh-t869|sph-p100|gt-p3100|gt-p3108|gt-p3110|gt-p5100|gt-p5110|gt-p6200|gt-p7320|gt-p7511|gt-n8000|gt-p8510|sgh-i497|sph-p500|sgh-t779|sch-i705|sch-i915|gt-n8013|gt-p3113|gt-p5113|gt-p8110|gt-n8010|gt-n8005|gt-n8020|gt-p1013|gt-p6201|gt-p7501|gt-n5100|gt-n5110|shv-e140k|shv-e140l|shv-e140s|shv-e150s|shv-e230k|shv-e230l|shv-e230s|shw-m180k|shw-m180l|shw-m180s|shw-m180w|shw-m300w|shw-m305w|shw-m380k|shw-m380s|shw-m380w|shw-m430w|shw-m480k|shw-m480s|shw-m480w|shw-m485w|shw-m486w|shw-m500w|gt-i9228|sch-p739|sch-i925|gt-i9200|gt-i9205|gt-p5200|gt-p5210|sm-t311|sm-t310|sm-t210|sm-t210r|sm-t211|sm-p600|sm-p601|sm-p605|sm-p900|sm-t217|sm-t217a|sm-t217s|sm-p6000|sm-t3100|sgh-i467|xe500|kindle|silk.*accelerated|android.*\b(kfot|kftt|kfjwi|kfjwa|kfote|kfsowi|kfthwi|kfthwa|kfapwi|kfapwa|wfjwae)\b|windows nt [0-9.]+; arm;|hp slate 7|hp elitepad 900|hp-tablet|elitebook.*touch|^.*padfone((?!mobile).)*$|transformer|tf101|tf101g|tf300t|tf300tg|tf300tl|tf700t|tf700kl|tf701t|tf810c|me171|me301t|me302c|me371mg|me370t|me372mg|me172v|me173x|me400c|slider sl101|playbook|rim tablet|htc flyer|htc jetstream|htc-p715a|htc evo view 4g|pg41200|xoom|sholest|mz615|mz605|mz505|mz601|mz602|mz603|mz604|mz606|mz607|mz608|mz609|mz615|mz616|mz617|android.*nook|nookcolor|nook browser|bnrv200|bnrv200a|bntv250|bntv250a|bntv400|bntv600|logicpd zoom2|android.*; \b(a100|a101|a110|a200|a210|a211|a500|a501|a510|a511|a700|a701|w500|w500p|w501|w501p|w510|w511|w700|g100|g100w|b1-a71|b1-710|b1-711|a1-810)\b|w3-810|android.*(at100|at105|at200|at205|at270|at275|at300|at305|at1s5|at500|at570|at700|at830)|toshiba.*folio|\bl-06c|lg-v900|lg-v909\b|android.*\b(f-01d|f-05e|f-10d|m532|q572)\b|pmp3170b|pmp3270b|pmp3470b|pmp7170b|pmp3370b|pmp3570c|pmp5870c|pmp3670b|pmp5570c|pmp5770d|pmp3970b|pmp3870c|pmp5580c|pmp5880d|pmp5780d|pmp5588c|pmp7280c|pmp7280|pmp7880d|pmp5597d|pmp5597|pmp7100d|per3464|per3274|per3574|per3884|per5274|per5474|pmp5097cpro|pmp5097|pmp7380d|pmp5297c|pmp5297c_quad|ideatab|s2110|s6000|k3011|a3000|a1000|a2107|a2109|a1107|thinkpad([ ]+)?tablet|android.*(tab210|tab211|tab224|tab250|tab260|tab264|tab310|tab360|tab364|tab410|tab411|tab420|tab424|tab450|tab460|tab461|tab464|tab465|tab467|tab468)|android.*\boyo\b|life.*(p9212|p9514|p9516|s9512)|lifetab|an10g2|an7bg3|an7fg3|an8g3|an8cg3|an7g3|an9g3|an7dg3|an7dg3st|an7dg3childpad|an10bg3|an10bg3dt|m702pro|megafon v9|\bzte v9\b|e-boda (supreme|impresspeed|izzycomm|essential)|allview.*(viva|alldro|city|speed|all tv|frenzy|quasar|shine|tx1|ax1|ax2)|\b(101g9|80g9|a101it)\b|qilive 97r|novo7|novo8|novo10|novo7aurora|novo7basic|novo7paladin|novo9-spark|sony.*tablet|xperia tablet|sony tablet s|so-03e|sgpt12|sgpt13|sgpt114|sgpt121|sgpt122|sgpt123|sgpt111|sgpt112|sgpt113|sgpt131|sgpt132|sgpt133|sgpt211|sgpt212|sgpt213|sgp311|sgp312|sgp321|ebrd1101|ebrd1102|ebrd1201|android.*(k8gt|u9gt|u10gt|u16gt|u17gt|u18gt|u19gt|u20gt|u23gt|u30gt)|cube u8gt|mid1042|mid1045|mid1125|mid1126|mid7012|mid7014|mid7015|mid7034|mid7035|mid7036|mid7042|mid7048|mid7127|mid8042|mid8048|mid8127|mid9042|mid9740|mid9742|mid7022|mid7010|m9701|m9000|m9100|m806|m1052|m806|t703|mid701|mid713|mid710|mid727|mid760|mid830|mid728|mid933|mid125|mid810|mid732|mid120|mid930|mid800|mid731|mid900|mid100|mid820|mid735|mid980|mid130|mid833|mid737|mid960|mid135|mid860|mid736|mid140|mid930|mid835|mid733|android.*(\bmid\b|mid-560|mtv-t1200|mtv-pnd531|mtv-p1101|mtv-pnd530)|android.*(rk2818|rk2808a|rk2918|rk3066)|rk2738|rk2808a|iq310|fly vision|bq.*(elcano|curie|edison|maxwell|kepler|pascal|tesla|hypatia|platon|newton|livingstone|cervantes|avant)|maxwell.*lite|maxwell.*plus|mediapad|ideos s7|s7-201c|s7-202u|s7-101|s7-103|s7-104|s7-105|s7-106|s7-201|s7-slim|\bn-06d|\bn-08d|pantech.*p4100|broncho.*(n701|n708|n802|a710)|touchpad.*[78910]|\btouchtab\b|z1000|z99 2g|z99|z930|z999|z990|z909|z919|z900|tb07sta|tb10sta|tb07fta|tb10fta|android.*\bnabi|kobo touch|\bk080\b|\bvox\b build|\barc\b build|dslide.*\b(700|701r|702|703r|704|802|970|971|972|973|974|1010|1012)\b|navipad|tb-772a|tm-7045|tm-7055|tm-9750|tm-7016|tm-7024|tm-7026|tm-7041|tm-7043|tm-7047|tm-8041|tm-9741|tm-9747|tm-9748|tm-9751|tm-7022|tm-7021|tm-7020|tm-7011|tm-7010|tm-7023|tm-7025|tm-7037w|tm-7038w|tm-7027w|tm-9720|tm-9725|tm-9737w|tm-1020|tm-9738w|tm-9740|tm-9743w|tb-807a|tb-771a|tb-727a|tb-725a|tb-719a|tb-823a|tb-805a|tb-723a|tb-715a|tb-707a|tb-705a|tb-709a|tb-711a|tb-890hd|tb-880hd|tb-790hd|tb-780hd|tb-770hd|tb-721hd|tb-710hd|tb-434hd|tb-860hd|tb-840hd|tb-760hd|tb-750hd|tb-740hd|tb-730hd|tb-722hd|tb-720hd|tb-700hd|tb-500hd|tb-470hd|tb-431hd|tb-430hd|tb-506|tb-504|tb-446|tb-436|tb-416|tb-146se|tb-126se|playstation.*(portable|vita)|android.*\bg1\b|funbook|micromax.*\b(p250|p560|p360|p362|p600|p300|p350|p500|p275)\b|android.*\b(a39|a37|a34|st8|st10|st7|smart tab3|smart tab2)\b|fine7 genius|fine7 shine|fine7 air|fine8 style|fine9 more|fine10 joy|fine11 wide|\b(pem63|plt1023g|plt1041|plt1044|plt1044g|plt1091|plt4311|plt4311pl|plt4315|plt7030|plt7033|plt7033d|plt7035|plt7035d|plt7044k|plt7045k|plt7045kb|plt7071kg|plt7072|plt7223g|plt7225g|plt7777g|plt7810k|plt7849g|plt7851g|plt7852g|plt8015|plt8031|plt8034|plt8036|plt8080k|plt8082|plt8088|plt8223g|plt8234g|plt8235g|plt8816k|plt9011|plt9045k|plt9233g|plt9735|plt9760g|plt9770g)\b|bq1078|bc1003|bc1077|rk9702|bc9730|bc9001|it9001|bc7008|bc7010|bc708|bc728|bc7012|bc7030|bc7027|bc7026|tpc7102|tpc7103|tpc7105|tpc7106|tpc7107|tpc7201|tpc7203|tpc7205|tpc7210|tpc7708|tpc7709|tpc7712|tpc7110|tpc8101|tpc8103|tpc8105|tpc8106|tpc8203|tpc8205|tpc8503|tpc9106|tpc9701|tpc97101|tpc97103|tpc97105|tpc97106|tpc97111|tpc97113|tpc97203|tpc97603|tpc97809|tpc97205|tpc10101|tpc10103|tpc10106|tpc10111|tpc10203|tpc10205|tpc10503|tx-a1301|tx-m9002|q702|tab-p506|tab-navi-7-3g-m|tab-p517|tab-p-527|tab-p701|tab-p703|tab-p721|tab-p731n|tab-p741|tab-p825|tab-p905|tab-p925|tab-pr945|tab-pl1015|tab-p1025|tab-pi1045|tab-p1325|tab-protab[0-9]+|tab-protab25|tab-protab26|tab-protab27|tab-protab26xl|tab-protab2-ips9|tab-protab30-ips9|tab-protab25xxl|tab-protab26-ips10|tab-protab30-ips10|ov-(steelcore|newbase|basecore|baseone|exellen|quattor|edutab|solution|action|basictab|teddytab|magictab|stream|tb-08|tb-09)|hcl.*tablet|connect-3g-2.0|connect-2g-2.0|me tablet u1|me tablet u2|me tablet g1|me tablet x1|me tablet y2|me tablet sync|dps dream 9|dps dual 7|v97 hd|i75 3g|visture v4( hd)?|visture v5( hd)?|visture v10|ctp(-)?810|ctp(-)?818|ctp(-)?828|ctp(-)?838|ctp(-)?888|ctp(-)?978|ctp(-)?980|ctp(-)?987|ctp(-)?988|ctp(-)?989|\bmt8125|mt8389|mt8135|mt8377\b|concorde([ ]+)?tab|concorde readman|goclever tab|a7goclever|m1042|m7841|m742|r1042bk|r1041|tab a975|tab a7842|tab a741|tab a741l|tab m723g|tab m721|tab a1021|tab i921|tab r721|tab i720|tab t76|tab r70|tab r76.2|tab r106|tab r83.2|tab m813g|tab i721|gcta722|tab i70|tab i71|tab s73|tab r73|tab r74|tab r93|tab r75|tab r76.1|tab a73|tab a93|tab a93.2|tab t72|tab r83|tab r974|tab r973|tab a101|tab a103|tab a104|tab a104.2|r105bk|m713g|a972bk|tab a971|tab r974.2|tab r104|tab r83.3|tab a1042|freetab 9000|freetab 7.4|freetab 7004|freetab 7800|freetab 2096|freetab 7.5|freetab 1014|freetab 1001 |freetab 8001|freetab 9706|freetab 9702|freetab 7003|freetab 7002|freetab 1002|freetab 7801|freetab 1331|freetab 1004|freetab 8002|freetab 8014|freetab 9704|freetab 1003|hudl ht7s3|t-hub2|android.*\b97d\b|tablet(?!.*pc)|viewpad7|bntv250a|mid-wcdma|logicpd zoom2|\ba7eb\b|catnova8|a1_07|ct704|ct1002|\bm721\b|rk30sdk|\bevotab\b|smarttabii10|smarttab10|m758a|et904/.freeze
6
+
7
+ def self.is_a_tablet_device? user_agent
8
+ !!(user_agent.to_s.downcase =~ TABLET_USER_AGENTS)
9
+ end
10
+
11
+ end
12
+
13
+ end
@@ -0,0 +1,3 @@
1
+ module MobileFuForJqueryMobile
2
+ VERSION = "1.0.1"
3
+ end
@@ -0,0 +1,31 @@
1
+ # -*- encoding: utf-8 -*-
2
+ #$:.push File.expand_path("../lib", __FILE__)
3
+ lib = File.expand_path('../lib', __FILE__)
4
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
+
6
+ require "mobile-fu-for-jquery-mobile/version"
7
+ require 'rake'
8
+
9
+ Gem::Specification.new do |s|
10
+ s.name = "mobile-fu-for-jquery-mobile"
11
+ s.version = MobileFuForJqueryMobile::VERSION
12
+ s.platform = Gem::Platform::RUBY
13
+ s.authors = ["Brendan Lim", "Ben Langfeld"]
14
+ s.email = ["weilaixiang86@gmail.com"]
15
+ s.homepage = "https://github.com/xuzh86/mobile-fu-for-jquery-mobile"
16
+ s.summary = %q{ Automatically detect mobile requests from mobile devices in your Rails application.And add jquery mobile lib/assets in you site. }
17
+ s.description = %q{ Want to automatically detect mobile devices that access your Rails application? Mobile Fu allows you to do just that. People can access your site from a Palm, Blackberry, iPhone, iPad, Nokia, etc. and it will automatically adjust the format of the request from :html to :mobile.}
18
+
19
+ s.rubyforge_project = "mobile-fu-for-jquery-mobile"
20
+
21
+ s.files = FileList['lib/**/*.rb', '[A-Z]*', 'app/**/*.*'].to_a #`git ls-files`.split($/)
22
+ s.test_files = FileList['test/*.rb'].to_a
23
+ s.executables = [ ]
24
+ s.require_path = 'lib'
25
+
26
+ s.add_dependency 'rails'
27
+ s.add_dependency 'rack-mobile-detect'
28
+ s.add_development_dependency 'mocha'
29
+ s.add_development_dependency 'rdoc'
30
+ s.add_development_dependency 'httparty'
31
+ end
metadata ADDED
@@ -0,0 +1,335 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: mobile-fu-for-jquery-mobile
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Brendan Lim
8
+ - Ben Langfeld
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2014-03-20 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rails
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - '>='
19
+ - !ruby/object:Gem::Version
20
+ version: '0'
21
+ type: :runtime
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - '>='
26
+ - !ruby/object:Gem::Version
27
+ version: '0'
28
+ - !ruby/object:Gem::Dependency
29
+ name: rack-mobile-detect
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - '>='
33
+ - !ruby/object:Gem::Version
34
+ version: '0'
35
+ type: :runtime
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - '>='
40
+ - !ruby/object:Gem::Version
41
+ version: '0'
42
+ - !ruby/object:Gem::Dependency
43
+ name: mocha
44
+ requirement: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - '>='
47
+ - !ruby/object:Gem::Version
48
+ version: '0'
49
+ type: :development
50
+ prerelease: false
51
+ version_requirements: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - '>='
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
56
+ - !ruby/object:Gem::Dependency
57
+ name: rdoc
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - '>='
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
63
+ type: :development
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ - !ruby/object:Gem::Dependency
71
+ name: httparty
72
+ requirement: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ type: :development
78
+ prerelease: false
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - '>='
82
+ - !ruby/object:Gem::Version
83
+ version: '0'
84
+ description: ' Want to automatically detect mobile devices that access your Rails
85
+ application? Mobile Fu allows you to do just that. People can access your site from
86
+ a Palm, Blackberry, iPhone, iPad, Nokia, etc. and it will automatically adjust the
87
+ format of the request from :html to :mobile.'
88
+ email:
89
+ - weilaixiang86@gmail.com
90
+ executables: []
91
+ extensions: []
92
+ extra_rdoc_files: []
93
+ files:
94
+ - lib/mobile-fu-for-jquery-mobile.rb
95
+ - lib/mobile-fu-for-jquery-mobile/helper.rb
96
+ - lib/mobile-fu-for-jquery-mobile/tablet.rb
97
+ - lib/mobile-fu-for-jquery-mobile/version.rb
98
+ - CHANGELOG
99
+ - Gemfile
100
+ - Gemfile.lock
101
+ - MIT-LICENSE
102
+ - README.md
103
+ - Rakefile
104
+ - mobile-fu-for-jquery-mobile-1.0.0.gem
105
+ - mobile-fu-for-jquery-mobile.gemspec
106
+ - app/assets/images/mobile-fu-jquery-mobile/ajax-loader.gif
107
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/action-black.png
108
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/action-white.png
109
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/alert-black.png
110
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/alert-white.png
111
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-d-black.png
112
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-d-l-black.png
113
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-d-l-white.png
114
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-d-r-black.png
115
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-d-r-white.png
116
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-d-white.png
117
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-l-black.png
118
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-l-white.png
119
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-r-black.png
120
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-r-white.png
121
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-u-black.png
122
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-u-l-black.png
123
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-u-l-white.png
124
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-u-r-black.png
125
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-u-r-white.png
126
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/arrow-u-white.png
127
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/audio-black.png
128
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/audio-white.png
129
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/back-black.png
130
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/back-white.png
131
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/bars-black.png
132
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/bars-white.png
133
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/bullets-black.png
134
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/bullets-white.png
135
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/calendar-black.png
136
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/calendar-white.png
137
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/camera-black.png
138
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/camera-white.png
139
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/carat-d-black.png
140
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/carat-d-white.png
141
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/carat-l-black.png
142
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/carat-l-white.png
143
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/carat-r-black.png
144
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/carat-r-white.png
145
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/carat-u-black.png
146
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/carat-u-white.png
147
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/check-black.png
148
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/check-white.png
149
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/clock-black.png
150
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/clock-white.png
151
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/cloud-black.png
152
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/cloud-white.png
153
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/comment-black.png
154
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/comment-white.png
155
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/delete-black.png
156
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/delete-white.png
157
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/edit-black.png
158
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/edit-white.png
159
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/eye-black.png
160
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/eye-white.png
161
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/forbidden-black.png
162
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/forbidden-white.png
163
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/forward-black.png
164
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/forward-white.png
165
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/gear-black.png
166
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/gear-white.png
167
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/grid-black.png
168
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/grid-white.png
169
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/heart-black.png
170
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/heart-white.png
171
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/home-black.png
172
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/home-white.png
173
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/info-black.png
174
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/info-white.png
175
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/location-black.png
176
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/location-white.png
177
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/lock-black.png
178
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/lock-white.png
179
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/mail-black.png
180
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/mail-white.png
181
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/minus-black.png
182
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/minus-white.png
183
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/navigation-black.png
184
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/navigation-white.png
185
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/phone-black.png
186
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/phone-white.png
187
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/plus-black.png
188
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/plus-white.png
189
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/power-black.png
190
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/power-white.png
191
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/recycle-black.png
192
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/recycle-white.png
193
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/refresh-black.png
194
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/refresh-white.png
195
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/search-black.png
196
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/search-white.png
197
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/shop-black.png
198
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/shop-white.png
199
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/star-black.png
200
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/star-white.png
201
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/tag-black.png
202
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/tag-white.png
203
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/user-black.png
204
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/user-white.png
205
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/video-black.png
206
+ - app/assets/images/mobile-fu-jquery-mobile/icons-png/video-white.png
207
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/action-black.svg
208
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/action-white.svg
209
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/alert-black.svg
210
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/alert-white.svg
211
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-d-black.svg
212
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-d-l-black.svg
213
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-d-l-white.svg
214
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-d-r-black.svg
215
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-d-r-white.svg
216
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-d-white.svg
217
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-l-black.svg
218
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-l-white.svg
219
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-r-black.svg
220
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-r-white.svg
221
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-u-black.svg
222
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-u-l-black.svg
223
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-u-l-white.svg
224
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-u-r-black.svg
225
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-u-r-white.svg
226
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/arrow-u-white.svg
227
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/audio-black.svg
228
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/audio-white.svg
229
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/back-black.svg
230
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/back-white.svg
231
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/bars-black.svg
232
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/bars-white.svg
233
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/bullets-black.svg
234
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/bullets-white.svg
235
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/calendar-black.svg
236
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/calendar-white.svg
237
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/camera-black.svg
238
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/camera-white.svg
239
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/carat-d-black.svg
240
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/carat-d-white.svg
241
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/carat-l-black.svg
242
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/carat-l-white.svg
243
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/carat-r-black.svg
244
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/carat-r-white.svg
245
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/carat-u-black.svg
246
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/carat-u-white.svg
247
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/check-black.svg
248
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/check-white.svg
249
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/clock-black.svg
250
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/clock-white.svg
251
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/cloud-black.svg
252
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/cloud-white.svg
253
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/comment-black.svg
254
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/comment-white.svg
255
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/delete-black.svg
256
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/delete-white.svg
257
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/edit-black.svg
258
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/edit-white.svg
259
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/eye-black.svg
260
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/eye-white.svg
261
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/forbidden-black.svg
262
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/forbidden-white.svg
263
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/forward-black.svg
264
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/forward-white.svg
265
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/gear-black.svg
266
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/gear-white.svg
267
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/grid-black.svg
268
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/grid-white.svg
269
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/heart-black.svg
270
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/heart-white.svg
271
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/home-black.svg
272
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/home-white.svg
273
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/info-black.svg
274
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/info-white.svg
275
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/location-black.svg
276
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/location-white.svg
277
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/lock-black.svg
278
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/lock-white.svg
279
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/mail-black.svg
280
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/mail-white.svg
281
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/minus-black.svg
282
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/minus-white.svg
283
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/navigation-black.svg
284
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/navigation-white.svg
285
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/phone-black.svg
286
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/phone-white.svg
287
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/plus-black.svg
288
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/plus-white.svg
289
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/power-black.svg
290
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/power-white.svg
291
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/recycle-black.svg
292
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/recycle-white.svg
293
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/refresh-black.svg
294
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/refresh-white.svg
295
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/search-black.svg
296
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/search-white.svg
297
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/shop-black.svg
298
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/shop-white.svg
299
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/star-black.svg
300
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/star-white.svg
301
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/tag-black.svg
302
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/tag-white.svg
303
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/user-black.svg
304
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/user-white.svg
305
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/video-black.svg
306
+ - app/assets/images/mobile-fu-jquery-mobile/icons-svg/video-white.svg
307
+ - app/assets/javascripts/jquery.mobile.simpledialog2.js
308
+ - app/assets/javascripts/mobile.fu.jquery.mobile.js
309
+ - app/assets/stylesheets/jquery.mobile.simpledialog.min.css
310
+ - app/assets/stylesheets/mobile.fu.jquery.mobile.css.scss
311
+ homepage: https://github.com/xuzh86/mobile-fu-for-jquery-mobile
312
+ licenses: []
313
+ metadata: {}
314
+ post_install_message:
315
+ rdoc_options: []
316
+ require_paths:
317
+ - lib
318
+ required_ruby_version: !ruby/object:Gem::Requirement
319
+ requirements:
320
+ - - '>='
321
+ - !ruby/object:Gem::Version
322
+ version: '0'
323
+ required_rubygems_version: !ruby/object:Gem::Requirement
324
+ requirements:
325
+ - - '>='
326
+ - !ruby/object:Gem::Version
327
+ version: '0'
328
+ requirements: []
329
+ rubyforge_project: mobile-fu-for-jquery-mobile
330
+ rubygems_version: 2.0.14
331
+ signing_key:
332
+ specification_version: 4
333
+ summary: Automatically detect mobile requests from mobile devices in your Rails application.And
334
+ add jquery mobile lib/assets in you site.
335
+ test_files: []