You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

393 lines
11 KiB

  1. ---
  2. layout : 'default'
  3. css : 'rating'
  4. element : 'rating'
  5. elementType : 'element'
  6. title : 'Rating'
  7. description : 'A rating allows a user to indicate interest in content'
  8. type : 'UI Module'
  9. themes : ['Default']
  10. ---
  11. <%- @partial('header', { tabs: 'module' }) %>
  12. <link rel="stylesheet/less" type="text/css" href="/build/less/definitions/modules/rating.less" />
  13. <script src="/javascript/rating.js"></script>
  14. <div class="main container">
  15. <div class="ui active tab" data-tab="definition">
  16. <div class="peek">
  17. <div class="ui vertical pointing secondary menu">
  18. <a class="active item">Types</a>
  19. <a class="item">Variations</a>
  20. </div>
  21. </div>
  22. <h2 class="ui dividing header">Types</h2>
  23. <div class="example">
  24. <h4 class="ui header">Rating</h4>
  25. <p>A basic rating </p>
  26. <div class="ui rating">
  27. <i class="icon"></i>
  28. </div>
  29. </div>
  30. <div class="example">
  31. <h4 class="ui header">Star</h4>
  32. <p>A rating can use a set of star icons</p>
  33. <div>
  34. Average rating:
  35. <div class="ui star rating">
  36. <i class="icon"></i>
  37. <i class="icon"></i>
  38. <i class="icon"></i>
  39. <i class="icon"></i>
  40. <i class="icon"></i>
  41. </div>
  42. </div>
  43. </div>
  44. <div class="example">
  45. <h4 class="ui header">Heart</h4>
  46. <p>A rating can use a set of heart icons</p>
  47. <div class="ui heart rating">
  48. <i class="icon"></i>
  49. <i class="icon"></i>
  50. <i class="icon"></i>
  51. <i class="icon"></i>
  52. <i class="icon"></i>
  53. </div>
  54. </div>
  55. <h2 class="ui dividing header">Variations</h2>
  56. <div class="example">
  57. <h4 class="ui header">Size</h4>
  58. <p>A rating can vary in size</p>
  59. <div class="another example">
  60. <div class="ui small star rating">
  61. <i class="icon"></i>
  62. <i class="icon"></i>
  63. <i class="icon"></i>
  64. <i class="icon"></i>
  65. <i class="icon"></i>
  66. </div>
  67. </div>
  68. <div class="another example">
  69. <div class="ui star rating">
  70. <i class="icon"></i>
  71. <i class="icon"></i>
  72. <i class="icon"></i>
  73. <i class="icon"></i>
  74. <i class="icon"></i>
  75. </div>
  76. </div>
  77. <div class="another example">
  78. <div class="ui large star rating">
  79. <i class="icon"></i>
  80. <i class="icon"></i>
  81. <i class="icon"></i>
  82. <i class="icon"></i>
  83. <i class="icon"></i>
  84. </div>
  85. </div>
  86. <div class="another example">
  87. <div class="ui huge star rating">
  88. <i class="icon"></i>
  89. <i class="icon"></i>
  90. <i class="icon"></i>
  91. <i class="icon"></i>
  92. <i class="icon"></i>
  93. </div>
  94. </div>
  95. </div>
  96. </div>
  97. <div class="ui tab" data-tab="examples">
  98. <div class="example">
  99. <h3 class="ui header">Setting existing values</h3>
  100. <p>Starting ratings can be set either using metadata values or the setting <code>initialRating</code>.</p>
  101. <div class="ui ignored info message">If a metadata rating is specified it will automatically override any initial rating. This way you can set a default value but also allow it to be overridden.</div>
  102. <div class="ui very relaxed celled list">
  103. <div class="item">
  104. <img class="ui avatar image" src="/images/demo/avatar2.jpg">
  105. <div class="content">
  106. <div class="header">
  107. New York Dog Fair
  108. <div class="ui heart rating" data-rating="2">
  109. <i class="icon"></i>
  110. <i class="icon"></i>
  111. <i class="icon"></i>
  112. <i class="icon"></i>
  113. <i class="icon"></i>
  114. </div>
  115. </div>
  116. A fun day at the fair
  117. </div>
  118. </div>
  119. <div class="item">
  120. <img class="ui avatar image" src="/images/demo/avatar3.jpg">
  121. <div class="content">
  122. <div class="header">
  123. Dog Appreciation Day
  124. <div class="ui heart rating" data-rating="2">
  125. <i class="icon"></i>
  126. <i class="icon"></i>
  127. <i class="icon"></i>
  128. <i class="icon"></i>
  129. <i class="icon"></i>
  130. </div>
  131. </div>
  132. I'd like to tell your dog he's great
  133. </div>
  134. </div>
  135. </div>
  136. </div>
  137. <div class="toggle no example">
  138. <h3 class="ui header">Read-Only Ratings</h3>
  139. <p>You can disable or enable interactive rating</p>
  140. <div class="code" data-type="javascript" data-demo="true">
  141. $('.toggle.example .rating')
  142. .rating('disable')
  143. ;
  144. </div>
  145. <div class="code" data-type="javascript" data-demo="true">
  146. $('.toggle.example .rating')
  147. .rating('enable')
  148. ;
  149. </div>
  150. <div class="ui heart demo rating" data-rating="3">
  151. <i class="icon"></i>
  152. <i class="icon"></i>
  153. <i class="icon"></i>
  154. <i class="icon"></i>
  155. <i class="icon"></i>
  156. </div>
  157. </div>
  158. <div class="clearing no example">
  159. <h3 class="ui header">Clearing Ratings</h3>
  160. <p>When clearable is set to <code>true</code> you can clear the rating by clicking on the current start rating.</p>
  161. <div class="evaluated code" data-type="javascript">
  162. $('.clearing.example .rating')
  163. .rating('setting', 'clearable', true)
  164. ;
  165. </div>
  166. <div class="ui heart demo rating" data-rating="3">
  167. <i class="icon"></i>
  168. <i class="icon"></i>
  169. <i class="icon"></i>
  170. <i class="icon"></i>
  171. <i class="icon"></i>
  172. </div>
  173. </div>
  174. </div>
  175. <div class="ui tab" data-tab="usage">
  176. <h2 class="ui dividing header">Initializing</h2>
  177. <p>To change the range of your rating, simply adjust the number of icons in the initialized html</p>
  178. <div class="ui warning message">
  179. To use any variations besides the basic rating <a href="/elements/icon.html">ui icons</a> must be included to provide the additional icons required.
  180. </div>
  181. <div class="code" data-type="javascript">
  182. $('.ui.rating')
  183. .rating()
  184. ;
  185. </div>
  186. <div class="code" data-type="html">
  187. <div class="ui rating">
  188. <i class="icon"></i>
  189. <i class="icon"></i>
  190. <i class="icon"></i>
  191. <i class="icon"></i>
  192. <i class="icon"></i>
  193. </div>
  194. </div>
  195. <h2 class="ui dividing header">Behavior</h2>
  196. <p>All the following <a href="/module.html#/behavior">behaviors</a> can be called using the syntax:</p>
  197. <div class="code">
  198. $('.ui.rating')
  199. .modal('behavior name', argumentOne, argumentTwo)
  200. ;
  201. </div>
  202. <table class="ui definition celled sortable table segment">
  203. <thead>
  204. <th>Behavior</th>
  205. <th>Description</th>
  206. </thead>
  207. <tbody>
  208. <tr>
  209. <td>set rating(rating)</td>
  210. <td>Sets rating programmatically</td>
  211. </tr>
  212. <tr>
  213. <td>get rating</td>
  214. <td>Gets current rating</td>
  215. </tr>
  216. <tr>
  217. <td>disable</td>
  218. <td>Disables interactive rating mode</td>
  219. </tr>
  220. <tr>
  221. <td>enable</td>
  222. <td>Enables interactive rating mode</td>
  223. </tr>
  224. <tr>
  225. <td>clear rating</td>
  226. <td>Clears current rating</td>
  227. </tr>
  228. </tbody>
  229. </table>
  230. </div>
  231. <div class="ui tab" data-tab="settings">
  232. <h3 class="ui header">
  233. Rating Settings
  234. <div class="sub header">Rating settings modify the rating's behavior</div>
  235. </h3>
  236. <table class="ui celled sortable definition table segment">
  237. <thead>
  238. <th>Setting</th>
  239. <th class="four wide">Default</th>
  240. <th>Description</th>
  241. </thead>
  242. <tbody>
  243. <tr>
  244. <td>initialRating</td>
  245. <td>0</td>
  246. <td>A number representing the default rating to apply</td>
  247. </tr>
  248. <tr>
  249. <td>clearable</td>
  250. <td>auto</td>
  251. <td>By default a rating will be only clearable if there is 1 icon. Setting to true/false will allow or disallow a user to clear their rating</td>
  252. </tr>
  253. <tr>
  254. <td>interactive</td>
  255. <td>true</td>
  256. <td>Whether to enable user's ability to rate</td>
  257. </tr>
  258. </tbody>
  259. </table>
  260. <h3 class="ui header">
  261. Callbacks
  262. <div class="sub header">Callbacks specify a function to occur after a specific behavior.</div>
  263. </h3>
  264. <table class="ui celled sortable definition table segment">
  265. <thead>
  266. <th class="four wide">Setting</th>
  267. <th>Context</th>
  268. <th>Description</th>
  269. </thead>
  270. <tbody>
  271. <tr>
  272. <td>onRate(value)</td>
  273. <td>Rating</td>
  274. <td>Is called after user selects a new rating</td>
  275. </tr>
  276. </tbody>
  277. </table>
  278. <h3 class="ui header">
  279. DOM Settings
  280. <div class="sub header">DOM settings specify how this module should interface with the DOM</div>
  281. </h3>
  282. <table class="ui celled sortable definition table segment">
  283. <thead>
  284. <th>Setting</th>
  285. <th class="four wide">Default</th>
  286. <th>Description</th>
  287. </thead>
  288. <tbody>
  289. <tr>
  290. <td>namespace</td>
  291. <td>rating</td>
  292. <td>Event namespace. Makes sure module teardown does not effect other events attached to an element.</td>
  293. </tr>
  294. <tr>
  295. <td>selector</td>
  296. <td colspan="2">
  297. <div class="code">
  298. selector : {
  299. icon : '.icon'
  300. }
  301. </div>
  302. </td>
  303. </tr>
  304. <tr>
  305. <td>className</td>
  306. <td colspan="2">
  307. <div class="code">
  308. className : {
  309. active : 'active',
  310. hover : 'hover',
  311. loading : 'loading'
  312. },
  313. </div>
  314. </td>
  315. </tr>
  316. </tbody>
  317. </table>
  318. <h3 class="ui header">
  319. Debug Settings
  320. <div class="sub header">Debug settings controls debug output to the console</div>
  321. </h3>
  322. <table class="ui celled sortable definition table segment">
  323. <thead>
  324. <th>Setting</th>
  325. <th class="four wide">Default</th>
  326. <th>Description</th>
  327. </thead>
  328. <tbody>
  329. <tr>
  330. <td>name</td>
  331. <td>Rating</td>
  332. <td>Name used in debug logs</td>
  333. </tr>
  334. <tr>
  335. <td>debug</td>
  336. <td>True</td>
  337. <td>Provides standard debug output to console</td>
  338. </tr>
  339. <tr>
  340. <td>performance</td>
  341. <td>True</td>
  342. <td>Provides standard debug output to console</td>
  343. </tr>
  344. <tr>
  345. <td>verbose</td>
  346. <td>True</td>
  347. <td>Provides ancillary debug output to console</td>
  348. </tr>
  349. <tr>
  350. <td>error</td>
  351. <td colspan="2">
  352. <div class="code">
  353. error : {
  354. action : 'You called a rating action that was not defined'
  355. }
  356. </div>
  357. </td>
  358. </tr>
  359. </tbody>
  360. </table>
  361. </div>
  362. </div>