erp_app 4.0.0 → 4.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1264) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/images/art/desktop-logo.jpg +0 -0
  3. data/app/assets/images/art/desktop-logo.png +0 -0
  4. data/{public → app/assets}/images/btn/left_panel/left_panel_16x16.png +0 -0
  5. data/{public → app/assets}/images/btn/left_right_panel/left_right_panel_16x16.png +0 -0
  6. data/{public → app/assets}/images/btn/right_panel/right_panel_16x16.png +0 -0
  7. data/{public → app/assets}/images/btn/save/save_16x16.png +0 -0
  8. data/{public → app/assets}/images/btn/save_all/save_all_16x16.png +0 -0
  9. data/{public → app/assets}/images/btn_light/add/add_16x16.png +0 -0
  10. data/{public → app/assets}/images/btn_light/left_panel/left_panel_16x16.png +0 -0
  11. data/{public → app/assets}/images/btn_light/left_right_panel/left_right_panel_16x16.png +0 -0
  12. data/{public → app/assets}/images/btn_light/right_panel/right_panel_16x16.png +0 -0
  13. data/{public → app/assets}/images/btn_light/save/save_16x16.png +0 -0
  14. data/{public → app/assets}/images/btn_light/save_all/save_all_16x16.png +0 -0
  15. data/{public → app/assets}/images/checked.gif +0 -0
  16. data/{public → app/assets}/images/erp_app/ajax-loader.gif +0 -0
  17. data/{public → app/assets}/images/erp_app/desktop/applications/file_manager/cancel.png +0 -0
  18. data/{public → app/assets}/images/erp_app/desktop/applications/file_manager/cross.png +0 -0
  19. data/{public → app/assets}/images/erp_app/desktop/applications/file_manager/hourglass.png +0 -0
  20. data/{public → app/assets}/images/erp_app/desktop/applications/file_manager/loading.gif +0 -0
  21. data/{public → app/assets}/images/erp_app/desktop/applications/file_manager/tick.png +0 -0
  22. data/app/assets/images/erp_app/desktop/applications/security_management/manage_capabilities.png +0 -0
  23. data/app/assets/images/erp_app/desktop/applications/security_management/manage_groups.png +0 -0
  24. data/app/assets/images/erp_app/desktop/applications/security_management/manage_roles.png +0 -0
  25. data/app/assets/images/erp_app/desktop/applications/security_management/manage_users.png +0 -0
  26. data/{public → app/assets}/images/erp_app/desktop/compass_logo_start_icon.png +0 -0
  27. data/{public → app/assets}/images/erp_app/desktop/image_add.png +0 -0
  28. data/{public → app/assets}/images/erp_app/desktop/themes.png +0 -0
  29. data/{public → app/assets}/images/erp_app/ext_loading_image.gif +0 -0
  30. data/{public → app/assets}/images/erp_app/mobile/green_light.png +0 -0
  31. data/{public → app/assets}/images/erp_app/mobile/red_light.png +0 -0
  32. data/{public → app/assets}/images/erp_app/mobile/yellow_light.png +0 -0
  33. data/{public → app/assets}/images/erp_app/organizer/applications/crm/business.png +0 -0
  34. data/{public → app/assets}/images/erp_app/organizer/applications/crm/business_64x64.png +0 -0
  35. data/{public → app/assets}/images/erp_app/organizer/applications/crm/customer-contact.png +0 -0
  36. data/{public → app/assets}/images/erp_app/organizer/applications/crm/customer_360_64x64.png +0 -0
  37. data/{public → app/assets}/images/erp_app/organizer/applications/crm/people.png +0 -0
  38. data/{public → app/assets}/images/erp_app/organizer/applications/crm/person.png +0 -0
  39. data/{public → app/assets}/images/erp_app/organizer/applications/crm/toolbar_find.png +0 -0
  40. data/{public → app/assets}/images/erp_app/organizer/applications/crm/vcard.png +0 -0
  41. data/{public → app/assets}/images/help.jpg +0 -0
  42. data/{public → app/assets}/images/icons/accept/accept_16x16.png +0 -0
  43. data/{public → app/assets}/images/icons/accept/accept_24x24.png +0 -0
  44. data/{public → app/assets}/images/icons/accept/accept_32x32.png +0 -0
  45. data/{public → app/assets}/images/icons/add/add_16x16.png +0 -0
  46. data/{public → app/assets}/images/icons/add/add_light_16x16.png +0 -0
  47. data/{public → app/assets}/images/icons/arrow_down_blue/arrow_down_blue_16x16.png +0 -0
  48. data/{public → app/assets}/images/icons/arrow_down_blue/arrow_down_blue_24x24.png +0 -0
  49. data/{public → app/assets}/images/icons/arrow_down_blue/arrow_down_blue_32x32.png +0 -0
  50. data/{public → app/assets}/images/icons/arrow_down_blue/arrow_down_blue_48x48.png +0 -0
  51. data/{public → app/assets}/images/icons/arrow_left_blue/arrow_left_blue_16x16.png +0 -0
  52. data/{public → app/assets}/images/icons/arrow_left_blue/arrow_left_blue_32x32.png +0 -0
  53. data/{public → app/assets}/images/icons/arrow_left_blue/arrow_left_blue_48x48.png +0 -0
  54. data/{public → app/assets}/images/icons/arrow_right_blue/arrow_right_blue_16x16.png +0 -0
  55. data/{public → app/assets}/images/icons/arrow_right_blue/arrow_right_blue_32x32.png +0 -0
  56. data/{public → app/assets}/images/icons/arrow_right_blue/arrow_right_blue_48x48.png +0 -0
  57. data/{public → app/assets}/images/icons/arrow_up_blue/arrow_up_blue_16x16.png +0 -0
  58. data/{public → app/assets}/images/icons/arrow_up_blue/arrow_up_blue_24x24.png +0 -0
  59. data/{public → app/assets}/images/icons/arrow_up_blue/arrow_up_blue_32x32.png +0 -0
  60. data/{public → app/assets}/images/icons/arrow_up_blue/arrow_up_blue_48x48.png +0 -0
  61. data/{public → app/assets}/images/icons/article/article_16x16.png +0 -0
  62. data/app/assets/images/icons/audio/audio_16x16.png +0 -0
  63. data/{public → app/assets}/images/icons/blog/blog_16x16.png +0 -0
  64. data/{public → app/assets}/images/icons/blog/blog_24x24.png +0 -0
  65. data/{public → app/assets}/images/icons/blog/blog_32x32.png +0 -0
  66. data/{public → app/assets}/images/icons/blog/blog_48x48.png +0 -0
  67. data/{public → app/assets}/images/icons/book/book_16x16.png +0 -0
  68. data/{public → app/assets}/images/icons/calendar/calendar_16x16.png +0 -0
  69. data/app/assets/images/icons/calendar/calendar_48x48.png +0 -0
  70. data/{public → app/assets}/images/icons/calendar/calendar_64x64.png +0 -0
  71. data/{public → app/assets}/images/icons/calendar/calendar_light_16x16.png +0 -0
  72. data/{public → app/assets}/images/icons/code/code_16x16.png +0 -0
  73. data/{public → app/assets}/images/icons/console/console_16x16.png +0 -0
  74. data/{public → app/assets}/images/icons/console/console_64x64.png +0 -0
  75. data/{public → app/assets}/images/icons/contact-us/contact-us_48x48.png +0 -0
  76. data/{public → app/assets}/images/icons/content/content_16x16.png +0 -0
  77. data/app/assets/images/icons/control_panel/control_panel_105x105.png +0 -0
  78. data/app/assets/images/icons/control_panel/control_panel_105x105_active.png +0 -0
  79. data/{public → app/assets}/images/icons/control_panel/control_panel_16x16.png +0 -0
  80. data/{public → app/assets}/images/icons/control_panel/control_panel_48x48.png +0 -0
  81. data/{public → app/assets}/images/icons/control_panel/control_panel_64x64.png +0 -0
  82. data/{public → app/assets}/images/icons/copy/copy_16x16.png +0 -0
  83. data/{public → app/assets}/images/icons/creditcards/creditcards_16x16.png +0 -0
  84. data/{public → app/assets}/images/icons/creditcards/creditcards_24x24.png +0 -0
  85. data/{public → app/assets}/images/icons/creditcards/creditcards_32x32.png +0 -0
  86. data/{public → app/assets}/images/icons/creditcards/creditcards_48x48.png +0 -0
  87. data/{public → app/assets}/images/icons/creditcards/creditcards_64x64.png +0 -0
  88. data/{public → app/assets}/images/icons/crm/crm_16x16.png +0 -0
  89. data/{public → app/assets}/images/icons/crm/crm_light_16x16.png +0 -0
  90. data/{public → app/assets}/images/icons/csr/csr_16x16.png +0 -0
  91. data/{public → app/assets}/images/icons/csr/csr_256x256.png +0 -0
  92. data/{public → app/assets}/images/icons/csr/csr_500x500.png +0 -0
  93. data/{public → app/assets}/images/icons/data/data_16x16.png +0 -0
  94. data/{public → app/assets}/images/icons/data/data_32x32.png +0 -0
  95. data/{public → app/assets}/images/icons/data/data_64x64.png +0 -0
  96. data/app/assets/images/icons/database/database_105x105.png +0 -0
  97. data/app/assets/images/icons/database/database_105x105_active.png +0 -0
  98. data/{public → app/assets}/images/icons/database/database_16x16.png +0 -0
  99. data/{public → app/assets}/images/icons/database_column/database_column_16x16.png +0 -0
  100. data/{public → app/assets}/images/icons/db_edit_data/db_edit_data_16x16.png +0 -0
  101. data/{public → app/assets}/images/icons/db_table/db_table_16x16.png +0 -0
  102. data/{public → app/assets}/images/icons/delete/delete_16x16.png +0 -0
  103. data/{public → app/assets}/images/icons/delete/delete_24x24.png +0 -0
  104. data/{public → app/assets}/images/icons/delete/delete_32x32.png +0 -0
  105. data/{public → app/assets}/images/icons/delete/delete_48x48.png +0 -0
  106. data/{public → app/assets}/images/icons/doc_settings/doc_settings_16x16.png +0 -0
  107. data/{public → app/assets}/images/icons/document/document_16x16.png +0 -0
  108. data/{public → app/assets}/images/icons/document/document_24x24.png +0 -0
  109. data/{public → app/assets}/images/icons/document/document_32x32.png +0 -0
  110. data/{public → app/assets}/images/icons/document/document_48x48.png +0 -0
  111. data/{public → app/assets}/images/icons/document_check/document_check_16x16.png +0 -0
  112. data/{public → app/assets}/images/icons/document_check/document_check_24x24.png +0 -0
  113. data/{public → app/assets}/images/icons/document_check/document_check_32x32.png +0 -0
  114. data/{public → app/assets}/images/icons/document_check/document_check_48x48.png +0 -0
  115. data/{public → app/assets}/images/icons/document_down/document_down_16x16.png +0 -0
  116. data/{public → app/assets}/images/icons/document_down/document_down_24x24.png +0 -0
  117. data/{public → app/assets}/images/icons/document_down/document_down_32x32.png +0 -0
  118. data/{public → app/assets}/images/icons/document_down/document_down_48x48.png +0 -0
  119. data/{public → app/assets}/images/icons/document_edit/document_edit_16x16.png +0 -0
  120. data/{public → app/assets}/images/icons/document_edit/document_edit_24x24.png +0 -0
  121. data/{public → app/assets}/images/icons/document_edit/document_edit_32x32.png +0 -0
  122. data/{public → app/assets}/images/icons/document_edit/document_edit_48x48.png +0 -0
  123. data/{public → app/assets}/images/icons/document_info/document_info_16x16.png +0 -0
  124. data/{public → app/assets}/images/icons/document_info/document_info_24x24.png +0 -0
  125. data/{public → app/assets}/images/icons/document_info/document_info_32x32.png +0 -0
  126. data/{public → app/assets}/images/icons/document_info/document_info_48x48.png +0 -0
  127. data/{public → app/assets}/images/icons/document_lock/document_lock_16x16.png +0 -0
  128. data/{public → app/assets}/images/icons/document_lock/document_lock_24x24.png +0 -0
  129. data/{public → app/assets}/images/icons/document_lock/document_lock_32x32.png +0 -0
  130. data/{public → app/assets}/images/icons/document_lock/document_lock_48x48.png +0 -0
  131. data/{public → app/assets}/images/icons/document_ok/document_ok_16x16.png +0 -0
  132. data/{public → app/assets}/images/icons/document_ok/document_ok_24x24.png +0 -0
  133. data/{public → app/assets}/images/icons/document_ok/document_ok_32x32.png +0 -0
  134. data/{public → app/assets}/images/icons/document_ok/document_ok_48x48.png +0 -0
  135. data/{public → app/assets}/images/icons/document_out/document_out_16x16.png +0 -0
  136. data/{public → app/assets}/images/icons/document_out/document_out_24x24.png +0 -0
  137. data/{public → app/assets}/images/icons/document_out/document_out_32x32.png +0 -0
  138. data/{public → app/assets}/images/icons/document_out/document_out_48x48.png +0 -0
  139. data/{public → app/assets}/images/icons/document_pulse/document_pulse_16x16.png +0 -0
  140. data/{public → app/assets}/images/icons/document_pulse/document_pulse_24x24.png +0 -0
  141. data/{public → app/assets}/images/icons/document_pulse/document_pulse_32x32.png +0 -0
  142. data/{public → app/assets}/images/icons/document_pulse/document_pulse_48x48.png +0 -0
  143. data/{public → app/assets}/images/icons/document_pulse/document_pulse_64x64.png +0 -0
  144. data/{public → app/assets}/images/icons/document_up/document_up_16x16.png +0 -0
  145. data/{public → app/assets}/images/icons/document_up/document_up_24x24.png +0 -0
  146. data/{public → app/assets}/images/icons/document_up/document_up_32x32.png +0 -0
  147. data/{public → app/assets}/images/icons/document_up/document_up_48x48.png +0 -0
  148. data/{public → app/assets}/images/icons/documents/documents_16x16.png +0 -0
  149. data/{public → app/assets}/images/icons/documents/documents_24x24.png +0 -0
  150. data/{public → app/assets}/images/icons/documents/documents_32x32.png +0 -0
  151. data/{public → app/assets}/images/icons/documents/documents_48x48.png +0 -0
  152. data/{public → app/assets}/images/icons/edit/edit_16x16.png +0 -0
  153. data/{public → app/assets}/images/icons/edit/edit_24x24.png +0 -0
  154. data/{public → app/assets}/images/icons/edit/edit_32x32.png +0 -0
  155. data/{public → app/assets}/images/icons/edit/edit_48x48.png +0 -0
  156. data/{public → app/assets}/images/icons/exit/exit_16x16.png +0 -0
  157. data/{public → app/assets}/images/icons/exit/exit_24x24.png +0 -0
  158. data/{public → app/assets}/images/icons/exit/exit_32x32.png +0 -0
  159. data/{public → app/assets}/images/icons/exit/exit_48x48.png +0 -0
  160. data/{public → app/assets}/images/icons/eye/eye_16x16.png +0 -0
  161. data/{public → app/assets}/images/icons/eye/eye_24x24.png +0 -0
  162. data/{public → app/assets}/images/icons/eye/eye_32x32.png +0 -0
  163. data/{public → app/assets}/images/icons/eye/eye_48x48.png +0 -0
  164. data/app/assets/images/icons/file-upload/file_upload-light.png +0 -0
  165. data/app/assets/images/icons/file-upload/file_upload_16x16-light.png +0 -0
  166. data/app/assets/images/icons/file-upload/file_upload_16x16.png +0 -0
  167. data/{public → app/assets}/images/icons/file_manager/file_manager_16x16.png +0 -0
  168. data/{public → app/assets}/images/icons/file_manager/file_manager_light_16x16.png +0 -0
  169. data/{public → app/assets}/images/icons/folder/folder_16x16.png +0 -0
  170. data/{public → app/assets}/images/icons/folder/folder_24x24.png +0 -0
  171. data/{public → app/assets}/images/icons/folder/folder_32x32.png +0 -0
  172. data/{public → app/assets}/images/icons/folder/folder_48x48.png +0 -0
  173. data/{public → app/assets}/images/icons/folders/folders_64x64.png +0 -0
  174. data/{public → app/assets}/images/icons/footprints/footprints_16x16.png +0 -0
  175. data/{public → app/assets}/images/icons/footprints/footprints_light_16x16.png +0 -0
  176. data/{public → app/assets}/images/icons/form/form_16x16.png +0 -0
  177. data/{public → app/assets}/images/icons/form/form_light_16x16.png +0 -0
  178. data/{public → app/assets}/images/icons/gantt/gantt_24x24.png +0 -0
  179. data/{public → app/assets}/images/icons/gear/gear_16x16.png +0 -0
  180. data/{public → app/assets}/images/icons/gear/gear_24x24.png +0 -0
  181. data/{public → app/assets}/images/icons/gear/gear_32x32.png +0 -0
  182. data/{public → app/assets}/images/icons/gear/gear_48x48.png +0 -0
  183. data/{public → app/assets}/images/icons/gear/gear_light_16x16.png +0 -0
  184. data/app/assets/images/icons/globe/globe_105x105.png +0 -0
  185. data/app/assets/images/icons/globe/globe_105x105_active.png +0 -0
  186. data/{public → app/assets}/images/icons/globe/globe_16x16.png +0 -0
  187. data/{public → app/assets}/images/icons/globe/globe_64x64.png +0 -0
  188. data/{public → app/assets}/images/icons/globe/globe_light_16x16.png +0 -0
  189. data/{public → app/assets}/images/icons/globe_disconnected/globe_disconnected_16x16.png +0 -0
  190. data/{public → app/assets}/images/icons/globe_disconnected/globe_disconnected_24x24.png +0 -0
  191. data/{public → app/assets}/images/icons/globe_disconnected/globe_disconnected_32x32.png +0 -0
  192. data/{public → app/assets}/images/icons/globe_disconnected/globe_disconnected_48x48.png +0 -0
  193. data/{public → app/assets}/images/icons/google-map/google-map_48x48.png +0 -0
  194. data/{public → app/assets}/images/icons/grid/grid_16x16.png +0 -0
  195. data/{public → app/assets}/images/icons/grid/grid_64x64.png +0 -0
  196. data/app/assets/images/icons/hide/hide_16x16.png +0 -0
  197. data/app/assets/images/icons/hide/hide_32x32.png +0 -0
  198. data/app/assets/images/icons/hide/hide_48x48.png +0 -0
  199. data/{public → app/assets}/images/icons/hierarchy/hierarchy_16x16.png +0 -0
  200. data/{public → app/assets}/images/icons/history/history_16x16.png +0 -0
  201. data/{public → app/assets}/images/icons/history/history_64x64.png +0 -0
  202. data/{public → app/assets}/images/icons/history/history_light_16x16.png +0 -0
  203. data/{public → app/assets}/images/icons/home/home_16x16.png +0 -0
  204. data/{public → app/assets}/images/icons/home/home_48x48.png +0 -0
  205. data/{public → app/assets}/images/icons/ia/ia_16x16.png +0 -0
  206. data/{public → app/assets}/images/icons/index/index_16x16.png +0 -0
  207. data/{public → app/assets}/images/icons/index/index_24x24.png +0 -0
  208. data/{public → app/assets}/images/icons/index/index_32x32.png +0 -0
  209. data/{public → app/assets}/images/icons/index/index_48x48.png +0 -0
  210. data/{public → app/assets}/images/icons/information/information_16x16.png +0 -0
  211. data/app/assets/images/icons/information/information_light_16x16.png +0 -0
  212. data/{public → app/assets}/images/icons/invoicing/invoicing_48x48.png +0 -0
  213. data/{public → app/assets}/images/icons/invoicing/invoicing_64x64.png +0 -0
  214. data/app/assets/images/icons/key/key_105x105.png +0 -0
  215. data/app/assets/images/icons/key/key_105x105_active.png +0 -0
  216. data/app/assets/images/icons/key/key_16x16-light.png +0 -0
  217. data/{public → app/assets}/images/icons/key/key_16x16.png +0 -0
  218. data/{public → app/assets}/images/icons/key/key_64x64.png +0 -0
  219. data/{public → app/assets}/images/icons/knitkit/knitkit_16x16.png +0 -0
  220. data/{public → app/assets}/images/icons/knitkit/knitkit_48x48.png +0 -0
  221. data/{public → app/assets}/images/icons/knitkit/knitkit_light_16x16.png +0 -0
  222. data/app/assets/images/icons/link/link_16x16.png +0 -0
  223. data/app/assets/images/icons/login/login_48x48.png +0 -0
  224. data/{public → app/assets}/images/icons/magnifying-glass/magnifying-glass_48x48.png +0 -0
  225. data/{public → app/assets}/images/icons/mail/mail_16x16.png +0 -0
  226. data/{public → app/assets}/images/icons/mail/mail_24x24.png +0 -0
  227. data/{public → app/assets}/images/icons/mail/mail_32x32.png +0 -0
  228. data/app/assets/images/icons/mail/mail_48x48.png +0 -0
  229. data/app/assets/images/icons/manage_profile/manage_profile_48x48.png +0 -0
  230. data/{public → app/assets}/images/icons/map/map_16x16.png +0 -0
  231. data/{public → app/assets}/images/icons/map/map_24x24.png +0 -0
  232. data/{public → app/assets}/images/icons/map/map_32x32.png +0 -0
  233. data/app/assets/images/icons/map/map_48x48.png +0 -0
  234. data/{public → app/assets}/images/icons/menu/menu_16x16.png +0 -0
  235. data/{public → app/assets}/images/icons/next/next_16x16.png +0 -0
  236. data/{public → app/assets}/images/icons/next/next_24x24.png +0 -0
  237. data/{public → app/assets}/images/icons/next/next_32x32.png +0 -0
  238. data/{public → app/assets}/images/icons/next/next_48x48.png +0 -0
  239. data/{public → app/assets}/images/icons/note/note_16x16.png +0 -0
  240. data/{public → app/assets}/images/icons/note/note_24x24.png +0 -0
  241. data/{public → app/assets}/images/icons/note/note_32x32.png +0 -0
  242. data/{public → app/assets}/images/icons/note/note_48x48.png +0 -0
  243. data/{public → app/assets}/images/icons/ordered_list/ordered_list_16x16.png +0 -0
  244. data/app/assets/images/icons/package/logo.png +0 -0
  245. data/{public → app/assets}/images/icons/package/package_16x16.png +0 -0
  246. data/{public → app/assets}/images/icons/package/package_24x24.png +0 -0
  247. data/{public → app/assets}/images/icons/package/package_32x32.png +0 -0
  248. data/app/assets/images/icons/package/package_48x48.png +0 -0
  249. data/{public → app/assets}/images/icons/package/package_64x64.png +0 -0
  250. data/{public → app/assets}/images/icons/package/package_light_16x16.png +0 -0
  251. data/{public → app/assets}/images/icons/palette/palette_64x64.png +0 -0
  252. data/{public → app/assets}/images/icons/person/person_16x16.png +0 -0
  253. data/{public → app/assets}/images/icons/phone/phone_16x16.png +0 -0
  254. data/{public → app/assets}/images/icons/phone/phone_64x64.png +0 -0
  255. data/{public → app/assets}/images/icons/picture/picture_16x16.png +0 -0
  256. data/{public → app/assets}/images/icons/play/play_16x16.png +0 -0
  257. data/{public → app/assets}/images/icons/preferences/preferences_16x16.png +0 -0
  258. data/{public → app/assets}/images/icons/preferences/preferences_24x24.png +0 -0
  259. data/{public → app/assets}/images/icons/preferences/preferences_32x32.png +0 -0
  260. data/{public → app/assets}/images/icons/preferences/preferences_48x48.png +0 -0
  261. data/{public → app/assets}/images/icons/preview/preview_16x16.png +0 -0
  262. data/{public → app/assets}/images/icons/preview/preview_24x24.png +0 -0
  263. data/{public → app/assets}/images/icons/preview/preview_32x32.png +0 -0
  264. data/{public → app/assets}/images/icons/preview/preview_48x48.png +0 -0
  265. data/{public → app/assets}/images/icons/product/product_16x16.png +0 -0
  266. data/{public → app/assets}/images/icons/product/product_24x24.png +0 -0
  267. data/{public → app/assets}/images/icons/product/product_32x32.png +0 -0
  268. data/app/assets/images/icons/product/product_48x48.png +0 -0
  269. data/{public → app/assets}/images/icons/product/product_64x64.png +0 -0
  270. data/{public → app/assets}/images/icons/product/product_light_16x16.png +0 -0
  271. data/{public → app/assets}/images/icons/properties/properties_16x16.png +0 -0
  272. data/{public → app/assets}/images/icons/properties/properties_24x24.png +0 -0
  273. data/{public → app/assets}/images/icons/properties/properties_32x32.png +0 -0
  274. data/{public → app/assets}/images/icons/properties/properties_48x48.png +0 -0
  275. data/{public → app/assets}/images/icons/query/query_16x16.png +0 -0
  276. data/app/assets/images/icons/recycle/recycle_16x16.png +0 -0
  277. data/{public → app/assets}/images/icons/recycle/recycle_24x24.png +0 -0
  278. data/{public → app/assets}/images/icons/recycle/recycle_32x32.png +0 -0
  279. data/{public → app/assets}/images/icons/recycle/recycle_48x48.png +0 -0
  280. data/{public → app/assets}/images/icons/redo/redo_16x16.png +0 -0
  281. data/{public → app/assets}/images/icons/redo/redo_24x24.png +0 -0
  282. data/{public → app/assets}/images/icons/redo/redo_32x32.png +0 -0
  283. data/{public → app/assets}/images/icons/redo/redo_48x48.png +0 -0
  284. data/{public → app/assets}/images/icons/refresh/refresh_16x16.png +0 -0
  285. data/{public → app/assets}/images/icons/refresh/refresh_24x24.png +0 -0
  286. data/{public → app/assets}/images/icons/refresh/refresh_32x32.png +0 -0
  287. data/{public → app/assets}/images/icons/refresh/refresh_48x48.png +0 -0
  288. data/{public → app/assets}/images/icons/remove/remove_16x16.png +0 -0
  289. data/{public → app/assets}/images/icons/remove/remove_24x24.png +0 -0
  290. data/{public → app/assets}/images/icons/remove/remove_32x32.png +0 -0
  291. data/{public → app/assets}/images/icons/remove/remove_48x48.png +0 -0
  292. data/{public → app/assets}/images/icons/rename/rename_16x16.png +0 -0
  293. data/{public → app/assets}/images/icons/rename/rename_24x24.png +0 -0
  294. data/{public → app/assets}/images/icons/rename/rename_32xr2.png +0 -0
  295. data/{public → app/assets}/images/icons/rename/rename_48x48.png +0 -0
  296. data/{public → app/assets}/images/icons/report/report_16x16.png +0 -0
  297. data/app/assets/images/icons/reset_password/reset_password_48x48.png +0 -0
  298. data/{public → app/assets}/images/icons/rowselect/rowselect_16x16.png +0 -0
  299. data/{public → app/assets}/images/icons/save/save_16x16.png +0 -0
  300. data/{public → app/assets}/images/icons/save/save_24x24.png +0 -0
  301. data/{public → app/assets}/images/icons/save/save_32x32.png +0 -0
  302. data/{public → app/assets}/images/icons/save/save_48x48.png +0 -0
  303. data/{public → app/assets}/images/icons/save_as/save_as_16x16.png +0 -0
  304. data/{public → app/assets}/images/icons/save_as/save_as_24x24.png +0 -0
  305. data/{public → app/assets}/images/icons/save_as/save_as_32x32.png +0 -0
  306. data/{public → app/assets}/images/icons/save_as/save_as_48x48.png +0 -0
  307. data/{public → app/assets}/images/icons/scaffold/scaffold_16x16.png +0 -0
  308. data/{public → app/assets}/images/icons/scaffold/scaffold_light_16x16.png +0 -0
  309. data/{public → app/assets}/images/icons/search/search_16x16.png +0 -0
  310. data/{public → app/assets}/images/icons/search/search_24x24.png +0 -0
  311. data/{public → app/assets}/images/icons/search/search_32x32.png +0 -0
  312. data/app/assets/images/icons/search/search_48x48.png +0 -0
  313. data/{public → app/assets}/images/icons/search/search_light_16x16.png +0 -0
  314. data/{public → app/assets}/images/icons/section/section_16x16.png +0 -0
  315. data/{public → app/assets}/images/icons/section/section_24x24.png +0 -0
  316. data/{public → app/assets}/images/icons/section/section_32x32.png +0 -0
  317. data/{public → app/assets}/images/icons/section/section_48x48.png +0 -0
  318. data/{public → app/assets}/images/icons/section_lock/section_lock_16x16.png +0 -0
  319. data/{public → app/assets}/images/icons/section_lock/section_lock_24x24.png +0 -0
  320. data/{public → app/assets}/images/icons/section_lock/section_lock_32x32.png +0 -0
  321. data/{public → app/assets}/images/icons/section_lock/section_lock_48x48.png +0 -0
  322. data/{public → app/assets}/images/icons/secure/secure_16x16.png +0 -0
  323. data/{public → app/assets}/images/icons/settings/settings_16x16.png +0 -0
  324. data/{public → app/assets}/images/icons/settings/settings_light_16x16.png +0 -0
  325. data/{public → app/assets}/images/icons/shopping_cart/shopping_card_64x64.png +0 -0
  326. data/{public → app/assets}/images/icons/shopping_cart/shopping_cart_32x32.png +0 -0
  327. data/app/assets/images/icons/shopping_cart/shopping_cart_48x48.png +0 -0
  328. data/{public → app/assets}/images/icons/sign_up/sign_up_32x32.png +0 -0
  329. data/app/assets/images/icons/sign_up/sign_up_48x48.png +0 -0
  330. data/{public → app/assets}/images/icons/sign_up/sign_up_64x64.png +0 -0
  331. data/{public → app/assets}/images/icons/simple_arrow/simple_arrow_16x16.png +0 -0
  332. data/{public → app/assets}/images/icons/small_gear/small_gear_16x16.png +0 -0
  333. data/{public → app/assets}/images/icons/sql/sql_16x16.png +0 -0
  334. data/{public → app/assets}/images/icons/tables/tables_16x16.png +0 -0
  335. data/app/assets/images/icons/template/template_16x16.png +0 -0
  336. data/{public → app/assets}/images/icons/theme/theme_16x16.png +0 -0
  337. data/{public → app/assets}/images/icons/theme_upload/theme_upload_16x16.png +0 -0
  338. data/{public → app/assets}/images/icons/ticket/tag_16x16.png +0 -0
  339. data/{public → app/assets}/images/icons/undo/undo_16x16.png +0 -0
  340. data/app/assets/images/icons/unhide/unhide_16x16.png +0 -0
  341. data/app/assets/images/icons/user/user_105x105.png +0 -0
  342. data/app/assets/images/icons/user/user_105x105_active.png +0 -0
  343. data/{public → app/assets}/images/icons/user/user_128x128.png +0 -0
  344. data/{public → app/assets}/images/icons/user/user_16x16.png +0 -0
  345. data/app/assets/images/icons/user/user_48x48.png +0 -0
  346. data/{public → app/assets}/images/icons/user/user_64x64.png +0 -0
  347. data/{public → app/assets}/images/icons/user/user_light_16x16.png +0 -0
  348. data/{public → app/assets}/images/icons/user_mgt/user_mgt_16x16.png +0 -0
  349. data/{public → app/assets}/images/icons/user_mgt/user_mgt_light_16x16.png +0 -0
  350. data/{public → app/assets}/images/icons/vcard/vcard_16x16.png +0 -0
  351. data/{public → app/assets}/images/icons/view/view_16x16.png +0 -0
  352. data/{public → app/assets}/images/icons/view/view_24x24.png +0 -0
  353. data/{public → app/assets}/images/icons/view/view_32x32.png +0 -0
  354. data/{public → app/assets}/images/icons/view/view_48x48.png +0 -0
  355. data/{public → app/assets}/images/icons/warning/waring_16x16.png +0 -0
  356. data/app/assets/images/icons/website/website_105x105.png +0 -0
  357. data/app/assets/images/icons/website/website_105x105_active.png +0 -0
  358. data/{public → app/assets}/images/icons/website/website_16x16.png +0 -0
  359. data/{public → app/assets}/images/icons/website_download/website_download_16x16.png +0 -0
  360. data/{public → app/assets}/images/icons/website_publications/website_publications_16x16.png +0 -0
  361. data/{public → app/assets}/images/icons/website_upload/website_upload_16x16.png +0 -0
  362. data/{public → app/assets}/images/img_blank.png +0 -0
  363. data/{public → app/assets}/images/loading_icon.gif +0 -0
  364. data/app/assets/images/splash/icons/console_icon.png +0 -0
  365. data/app/assets/images/splash/icons/console_icon_active.png +0 -0
  366. data/app/assets/images/splash/icons/db_icon.png +0 -0
  367. data/app/assets/images/splash/icons/db_icon_active.png +0 -0
  368. data/app/assets/images/splash/icons/help_icon.png +0 -0
  369. data/app/assets/images/splash/icons/help_icon_active.png +0 -0
  370. data/{public → app/assets}/images/splash_screen/browse_docs_icon.png +0 -0
  371. data/{public → app/assets}/images/splash_screen/contact_mgt_icon.png +0 -0
  372. data/{public → app/assets}/images/splash_screen/desktop_icon.png +0 -0
  373. data/{public → app/assets}/images/tab/tab-default-close.png +0 -0
  374. data/{public → app/assets}/images/unchecked.gif +0 -0
  375. data/{public → app/assets}/images/wallpaper/truenorth_tech.png +0 -0
  376. data/app/assets/javascripts/codemirror_compassae.js +31 -0
  377. data/app/assets/javascripts/erp_app/authentication/compass_user.js +97 -0
  378. data/app/assets/javascripts/erp_app/desktop/app.js +15 -0
  379. data/app/assets/javascripts/erp_app/desktop/applications/audit_log_viewer/app.js +13 -0
  380. data/app/assets/javascripts/erp_app/desktop/applications/audit_log_viewer/module.js +38 -0
  381. data/app/assets/javascripts/erp_app/desktop/applications/configuration_management/app.js +17 -0
  382. data/{public → app/assets}/javascripts/erp_app/desktop/applications/configuration_management/configuration_options_panel.js +0 -0
  383. data/{public → app/assets}/javascripts/erp_app/desktop/applications/configuration_management/configuration_tree_panel.js +0 -0
  384. data/{public → app/assets}/javascripts/erp_app/desktop/applications/configuration_management/configuration_types_panel.js +0 -0
  385. data/app/assets/javascripts/erp_app/desktop/applications/configuration_management/module.js +96 -0
  386. data/{public/javascripts/erp_app/desktop/applications/configuration_management/stores.0.js → app/assets/javascripts/erp_app/desktop/applications/configuration_management/stores.js} +0 -0
  387. data/app/assets/javascripts/erp_app/desktop/applications/file_manager/app.js +13 -0
  388. data/app/assets/javascripts/erp_app/desktop/applications/file_manager/module.js +134 -0
  389. data/app/assets/javascripts/erp_app/desktop/applications/job_tracker/app.js +14 -0
  390. data/{public → app/assets}/javascripts/erp_app/desktop/applications/job_tracker/jobs_grid.js +0 -0
  391. data/app/assets/javascripts/erp_app/desktop/applications/job_tracker/module.js +44 -0
  392. data/app/assets/javascripts/erp_app/desktop/applications/security_management/app.js +24 -0
  393. data/app/assets/javascripts/erp_app/desktop/applications/security_management/capabilities_panel.js +54 -0
  394. data/app/assets/javascripts/erp_app/desktop/applications/security_management/capabilities_widget.js +245 -0
  395. data/{public → app/assets}/javascripts/erp_app/desktop/applications/security_management/common_widget.js +0 -0
  396. data/app/assets/javascripts/erp_app/desktop/applications/security_management/groups_effective_security.js +80 -0
  397. data/app/assets/javascripts/erp_app/desktop/applications/security_management/groups_panel.js +271 -0
  398. data/app/assets/javascripts/erp_app/desktop/applications/security_management/groups_widget.js +245 -0
  399. data/app/assets/javascripts/erp_app/desktop/applications/security_management/mixins/widget.js +39 -0
  400. data/app/assets/javascripts/erp_app/desktop/applications/security_management/module.js +155 -0
  401. data/app/assets/javascripts/erp_app/desktop/applications/security_management/north_panel.js +23 -0
  402. data/app/assets/javascripts/erp_app/desktop/applications/security_management/roles_panel.js +334 -0
  403. data/app/assets/javascripts/erp_app/desktop/applications/security_management/roles_widget.js +258 -0
  404. data/app/assets/javascripts/erp_app/desktop/applications/security_management/south_panel.js +70 -0
  405. data/app/assets/javascripts/erp_app/desktop/applications/system_management/app.js +15 -0
  406. data/app/assets/javascripts/erp_app/desktop/applications/system_management/form.js +100 -0
  407. data/app/assets/javascripts/erp_app/desktop/applications/system_management/module.js +227 -0
  408. data/app/assets/javascripts/erp_app/desktop/applications/system_management/stores.js +48 -0
  409. data/app/assets/javascripts/erp_app/desktop/applications/tail/app.js +14 -0
  410. data/{public → app/assets}/javascripts/erp_app/desktop/applications/tail/module.js +0 -0
  411. data/{public → app/assets}/javascripts/erp_app/desktop/applications/tail/tail_panel.js +0 -0
  412. data/app/assets/javascripts/erp_app/desktop/applications/user_management/app.js +13 -0
  413. data/app/assets/javascripts/erp_app/desktop/applications/user_management/module.js +454 -0
  414. data/app/assets/javascripts/erp_app/desktop/applications/web_navigator/app.js +13 -0
  415. data/{public → app/assets}/javascripts/erp_app/desktop/applications/web_navigator/module.js +0 -0
  416. data/app/assets/javascripts/erp_app/desktop/ext_ux_desktop_module.js +1016 -0
  417. data/app/assets/javascripts/erp_app/desktop/select_roles_window.js +267 -0
  418. data/app/assets/javascripts/erp_app/ecommerce/credit_card_window.js +343 -0
  419. data/app/assets/javascripts/erp_app/jquery_support.js +45 -0
  420. data/app/assets/javascripts/erp_app/login/ResetPassword.js +128 -0
  421. data/app/assets/javascripts/erp_app/login/mobile.js +77 -0
  422. data/app/assets/javascripts/erp_app/login/window.js +238 -0
  423. data/app/assets/javascripts/erp_app/organizer/app.js +15 -0
  424. data/app/assets/javascripts/erp_app/organizer/applications/crm/app.js +14 -0
  425. data/app/assets/javascripts/erp_app/organizer/applications/crm/base.js +64 -0
  426. data/{public → app/assets}/javascripts/erp_app/organizer/applications/crm/relationship_grid.js +0 -0
  427. data/app/assets/javascripts/erp_app/organizer/layout.js +258 -0
  428. data/{public → app/assets}/javascripts/erp_app/organizer/preference_window.js +0 -0
  429. data/app/assets/javascripts/erp_app/shared/DateTimeField.js +77 -0
  430. data/app/assets/javascripts/erp_app/shared/MoneyField.js +120 -0
  431. data/app/assets/javascripts/erp_app/shared/MultiOptions.js +182 -0
  432. data/app/assets/javascripts/erp_app/shared/Party/AppsInstalledPanel.js +302 -0
  433. data/app/assets/javascripts/erp_app/shared/Party/LoginInfoPanel.js +291 -0
  434. data/app/assets/javascripts/erp_app/shared/Party/SecurityPanel.js +448 -0
  435. data/app/assets/javascripts/erp_app/shared/Party/UserTypePanel.js +198 -0
  436. data/{public → app/assets}/javascripts/erp_app/shared/PartySearchField.js +0 -0
  437. data/app/assets/javascripts/erp_app/shared/TimePickerField.js +189 -0
  438. data/{public → app/assets}/javascripts/erp_app/shared/TransitionCardLayout.js +0 -0
  439. data/app/assets/javascripts/erp_app/shared/TypeSelectionTree.js +510 -0
  440. data/app/assets/javascripts/erp_app/shared/active_ext/active_ext_grid.js +351 -0
  441. data/{public → app/assets}/javascripts/erp_app/shared/active_ext/active_ext_grid_panel.js +0 -0
  442. data/app/assets/javascripts/erp_app/shared/audit_log/GridPanel.js +214 -0
  443. data/{public → app/assets}/javascripts/erp_app/shared/audit_log/ItemGridPanel.js +0 -0
  444. data/app/assets/javascripts/erp_app/shared/audit_log/TabPanel.js +116 -0
  445. data/app/assets/javascripts/erp_app/shared/compass_ckeditor.js +267 -0
  446. data/app/assets/javascripts/erp_app/shared/compass_codemirror.js +464 -0
  447. data/{public → app/assets}/javascripts/erp_app/shared/configuration/configuration_form.js +0 -0
  448. data/app/assets/javascripts/erp_app/shared/configuration/configuration_panel.js +141 -0
  449. data/{public → app/assets}/javascripts/erp_app/shared/coolclock/tray_clock2.js +0 -0
  450. data/app/assets/javascripts/erp_app/shared/crm/ContactMechanismGrid.js +754 -0
  451. data/app/assets/javascripts/erp_app/shared/crm/PartyDetailsPanel.js +344 -0
  452. data/app/assets/javascripts/erp_app/shared/crm/PartyForm.js +321 -0
  453. data/{public → app/assets}/javascripts/erp_app/shared/crm/PartyFormPanel.js +0 -0
  454. data/app/assets/javascripts/erp_app/shared/crm/PartyGrid.js +595 -0
  455. data/app/assets/javascripts/erp_app/shared/crm/UserForm.js +302 -0
  456. data/app/assets/javascripts/erp_app/shared/crm/UsersGrid.js +535 -0
  457. data/app/assets/javascripts/erp_app/shared/dynamic_editable_grid.js +181 -0
  458. data/app/assets/javascripts/erp_app/shared/dynamic_editable_grid_loader_panel.js +65 -0
  459. data/app/assets/javascripts/erp_app/shared/dynamic_form_fields.js +104 -0
  460. data/{public → app/assets}/javascripts/erp_app/shared/encryption/encryption.js +0 -0
  461. data/app/assets/javascripts/erp_app/shared/erp_app_shared.js +13 -0
  462. data/app/assets/javascripts/erp_app/shared/file_manager_tree.js +750 -0
  463. data/app/assets/javascripts/erp_app/shared/file_upload/Ext.ux.panel.UploadPanel.js +581 -0
  464. data/{public → app/assets}/javascripts/erp_app/shared/file_upload/plupload.flash.swf +0 -0
  465. data/{public → app/assets}/javascripts/erp_app/shared/file_upload/plupload.full.js +0 -0
  466. data/{public → app/assets}/javascripts/erp_app/shared/file_upload/plupload.silverlight.xap +0 -0
  467. data/app/assets/javascripts/erp_app/shared/file_upload/upload_window.js +65 -0
  468. data/{public → app/assets}/javascripts/erp_app/shared/google_map_panel.js +0 -0
  469. data/app/assets/javascripts/erp_app/shared/notes_grid.js +338 -0
  470. data/{public → app/assets}/javascripts/erp_app/shared/preferences/application_management_panel.js +0 -0
  471. data/{public → app/assets}/javascripts/erp_app/shared/preferences/form.js +0 -0
  472. data/app/assets/javascripts/erp_app/shared/profile_management_panel.js +140 -0
  473. data/{public → app/assets}/javascripts/erp_app/shared/status_window.js +0 -0
  474. data/app/assets/javascripts/erp_app/utility.js +809 -0
  475. data/app/assets/javascripts/erp_app/widgets.js +122 -0
  476. data/{public → app/assets}/javascripts/jquery_plugins/jquery.address.min.js +0 -0
  477. data/{public → app/assets}/javascripts/jquery_plugins/jquery.loadmask.min.js +0 -0
  478. data/app/assets/stylesheets/codemirror_compassae.css +14 -0
  479. data/app/assets/stylesheets/erp_app/desktop/applications/audit_log_viewer/app.css +11 -0
  480. data/app/assets/stylesheets/erp_app/desktop/applications/configuration_management/app.css +11 -0
  481. data/app/assets/stylesheets/erp_app/desktop/applications/file_manager/app.css +11 -0
  482. data/app/assets/stylesheets/erp_app/desktop/applications/job_tracker/app.css +11 -0
  483. data/app/assets/stylesheets/erp_app/desktop/applications/scaffold/app.css +11 -0
  484. data/app/assets/stylesheets/erp_app/desktop/applications/security_management/app.css +12 -0
  485. data/{public → app/assets}/stylesheets/erp_app/desktop/applications/security_management/styles.css +0 -0
  486. data/app/assets/stylesheets/erp_app/desktop/applications/tail/app.css +11 -0
  487. data/app/assets/stylesheets/erp_app/desktop/applications/user_management/app.css +11 -0
  488. data/app/assets/stylesheets/erp_app/desktop/base.css +262 -0
  489. data/app/assets/stylesheets/erp_app/login/main.css +17 -0
  490. data/app/assets/stylesheets/erp_app/organizer/applications/crm/app.css +12 -0
  491. data/app/assets/stylesheets/erp_app/organizer/base.css +19 -0
  492. data/app/assets/stylesheets/erp_app/shared/compass-ext-all.css +599 -0
  493. data/app/assets/stylesheets/erp_app/shared/crm.css +45 -0
  494. data/app/assets/stylesheets/erp_app/shared/erp_app_shared.css +12 -0
  495. data/{public → app/assets}/stylesheets/erp_app/shared/grid_cell.css +0 -0
  496. data/{public → app/assets}/stylesheets/erp_app/shared/hover_finger.css +0 -0
  497. data/app/assets/stylesheets/jquery_plugins/jquery.loadmask.css +53 -0
  498. data/app/controllers/api/v1/applications_controller.rb +179 -0
  499. data/app/controllers/erp_app/application_controller.rb +7 -1
  500. data/app/controllers/erp_app/desktop/base_controller.rb +0 -1
  501. data/app/controllers/erp_app/desktop/file_manager/base_controller.rb +5 -3
  502. data/app/controllers/erp_app/desktop/system_management/types_controller.rb +126 -0
  503. data/app/controllers/erp_app/desktop/user_management/application_management_controller.rb +68 -36
  504. data/app/controllers/erp_app/desktop/user_management/base_controller.rb +0 -0
  505. data/app/controllers/erp_app/desktop/user_management/role_management_controller.rb +0 -0
  506. data/app/controllers/erp_app/login_controller.rb +30 -2
  507. data/app/controllers/erp_app/organizer/base_controller.rb +3 -30
  508. data/app/controllers/erp_app/organizer/crm/contact_mechanisms_controller.rb +4 -2
  509. data/app/controllers/erp_app/organizer/crm/parties_controller.rb +26 -2
  510. data/app/controllers/erp_app/organizer/crm/users_controller.rb +22 -0
  511. data/app/controllers/erp_app/public_controller.rb +3 -0
  512. data/app/controllers/erp_app/shared/audit_log_controller.rb +1 -1
  513. data/app/controllers/erp_app/shared/configuration_controller.rb +1 -1
  514. data/app/controllers/erp_app/shared/notes_controller.rb +0 -6
  515. data/app/controllers/erp_app/widget_proxy_controller.rb +19 -5
  516. data/app/mailers/crm_mailer.rb +2 -1
  517. data/app/models/application.rb +88 -6
  518. data/app/models/configuration.rb +7 -0
  519. data/app/models/configuration_item.rb +6 -0
  520. data/app/models/extensions/party.rb +9 -0
  521. data/app/models/extensions/user.rb +42 -15
  522. data/app/models/preference_type.rb +1 -1
  523. data/app/views/erp_app/desktop/base/index.erb +253 -203
  524. data/app/views/erp_app/login/index.erb +28 -20
  525. data/app/views/erp_app/login/reset_password.erb +30 -0
  526. data/app/views/erp_app/organizer/base/index.erb +28 -23
  527. data/app/views/erp_app/organizer/crm/parties/details.erb +1 -1
  528. data/config/routes.rb +29 -17
  529. data/db/data_migrations/20110728201729_erp_app_setup.rb +168 -240
  530. data/db/data_migrations/20110728201730_add_system_management_tool.rb +27 -0
  531. data/db/data_migrations/20150929185612_add_applications_to_dba_org.rb +31 -0
  532. data/db/migrate/20080805000096_base_app_framework.rb +36 -44
  533. data/lib/erp_app.rb +2 -2
  534. data/lib/erp_app/config.rb +9 -3
  535. data/lib/erp_app/engine.rb +114 -12
  536. data/lib/erp_app/extensions/compass_ae/erp_tech_svcs/session_controller.rb +27 -0
  537. data/lib/erp_app/extensions/railties/action_view/base.rb +32 -6
  538. data/lib/erp_app/extensions/railties/action_view/helpers/include_helper.rb +37 -30
  539. data/lib/erp_app/version.rb +1 -1
  540. data/lib/erp_app/widgets/base.rb +6 -4
  541. data/lib/erp_app/widgets/loader.rb +1 -1
  542. data/lib/erp_app/widgets/railties/action_view/helpers/widget_helper.rb +12 -12
  543. data/lib/generators/admin_tool/USAGE +23 -0
  544. data/lib/generators/admin_tool/admin_tool_generator.rb +28 -0
  545. data/lib/generators/admin_tool/templates/INSTALL +23 -0
  546. data/lib/generators/{desktop_application/templates/public/module.js.erb → admin_tool/templates/assets/javascripts/Module.js.erb} +0 -0
  547. data/lib/generators/admin_tool/templates/assets/javascripts/app.js.erb +17 -0
  548. data/lib/generators/admin_tool/templates/assets/stylesheets/app.css.erb +11 -0
  549. data/lib/generators/{desktop_application → admin_tool}/templates/controllers/controller_template.erb +0 -0
  550. data/lib/generators/{desktop_application → admin_tool}/templates/migrate/migration_template.erb +0 -0
  551. data/lib/generators/application/USAGE +23 -0
  552. data/lib/generators/application/application_generator.rb +28 -0
  553. data/lib/generators/application/templates/INSTALL +23 -0
  554. data/lib/generators/application/templates/assets/javascripts/Application.js.erb +20 -0
  555. data/lib/generators/application/templates/assets/javascripts/app.js.erb +17 -0
  556. data/lib/generators/application/templates/assets/stylesheets/app.css.erb +11 -0
  557. data/lib/generators/application/templates/controllers/controller_template.erb +9 -0
  558. data/lib/generators/application/templates/migrate/migration_template.erb +21 -0
  559. data/lib/generators/cms_widget/templates/engine/engine_template.erb +2 -2
  560. data/lib/generators/cms_widget/templates/helpers/controller/controller_helper_template.erb +1 -1
  561. data/lib/generators/cms_widget/templates/helpers/view/view_helper_template.erb +1 -1
  562. data/lib/generators/cms_widget/templates/javascript/base.js.erb +1 -1
  563. data/public/javascripts/{erp_app/ckeditor → ckeditor}/ckeditor.js +0 -0
  564. data/public/javascripts/ckeditor/config.js +14 -0
  565. data/public/javascripts/{erp_app/ckeditor → ckeditor}/contents.css +0 -0
  566. data/public/javascripts/{erp_app/ckeditor → ckeditor}/lang/en.js +0 -0
  567. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/a11yhelp.js +0 -0
  568. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/_translationstatus.txt +0 -0
  569. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/ar.js +0 -0
  570. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/bg.js +0 -0
  571. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/ca.js +0 -0
  572. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/cs.js +0 -0
  573. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/cy.js +0 -0
  574. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/da.js +0 -0
  575. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/de.js +0 -0
  576. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/el.js +0 -0
  577. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/en.js +0 -0
  578. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/eo.js +0 -0
  579. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/es.js +0 -0
  580. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/et.js +0 -0
  581. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/fa.js +0 -0
  582. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/fi.js +0 -0
  583. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/fr-ca.js +0 -0
  584. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/fr.js +0 -0
  585. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/gl.js +0 -0
  586. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/gu.js +0 -0
  587. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/he.js +0 -0
  588. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/hi.js +0 -0
  589. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/hr.js +0 -0
  590. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/hu.js +0 -0
  591. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/id.js +0 -0
  592. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/it.js +0 -0
  593. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/ja.js +0 -0
  594. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/km.js +0 -0
  595. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/ku.js +0 -0
  596. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/lt.js +0 -0
  597. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/lv.js +0 -0
  598. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/mk.js +0 -0
  599. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/mn.js +0 -0
  600. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/nb.js +0 -0
  601. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/nl.js +0 -0
  602. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/no.js +0 -0
  603. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/pl.js +0 -0
  604. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/pt-br.js +0 -0
  605. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/pt.js +0 -0
  606. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/ro.js +0 -0
  607. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/ru.js +0 -0
  608. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/si.js +0 -0
  609. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/sk.js +0 -0
  610. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/sl.js +0 -0
  611. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/sq.js +0 -0
  612. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/sr-latn.js +0 -0
  613. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/sr.js +0 -0
  614. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/sv.js +0 -0
  615. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/th.js +0 -0
  616. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/tr.js +0 -0
  617. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/ug.js +0 -0
  618. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/uk.js +0 -0
  619. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/vi.js +0 -0
  620. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/a11yhelp/dialogs/lang/zh-cn.js +0 -0
  621. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/about/dialogs/about.js +0 -0
  622. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/about/dialogs/hidpi/logo_ckeditor.png +0 -0
  623. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/about/dialogs/logo_ckeditor.png +0 -0
  624. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/clipboard/dialogs/paste.js +0 -0
  625. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/codemirror/lang/en.js +0 -0
  626. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/codemirror/plugin.js +0 -0
  627. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/colordialog/dialogs/colordialog.js +0 -0
  628. data/public/javascripts/ckeditor/plugins/compasssave/plugin.js +22 -0
  629. data/public/javascripts/ckeditor/plugins/dialog/dialogDefinition.js +1006 -0
  630. data/public/javascripts/ckeditor/plugins/dialog/plugin.js +3232 -0
  631. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/div/dialogs/div.js +0 -0
  632. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/fakeobjects/images/spacer.gif +0 -0
  633. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/find/dialogs/find.js +0 -0
  634. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/flash/dialogs/flash.js +0 -0
  635. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/flash/images/placeholder.png +0 -0
  636. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/forms/dialogs/button.js +0 -0
  637. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/forms/dialogs/checkbox.js +0 -0
  638. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/forms/dialogs/form.js +0 -0
  639. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/forms/dialogs/hiddenfield.js +0 -0
  640. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/forms/dialogs/radio.js +0 -0
  641. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/forms/dialogs/select.js +0 -0
  642. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/forms/dialogs/textarea.js +0 -0
  643. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/forms/dialogs/textfield.js +0 -0
  644. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/forms/images/hiddenfield.gif +0 -0
  645. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/icons.png +0 -0
  646. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/icons_hidpi.png +0 -0
  647. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/iframe/dialogs/iframe.js +0 -0
  648. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/iframe/images/placeholder.png +0 -0
  649. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/image/dialogs/image.js +0 -0
  650. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/image/images/noimage.png +0 -0
  651. data/public/javascripts/ckeditor/plugins/inlineeditsave/plugin.js +42 -0
  652. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/config.js +0 -0
  653. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/dialogs/jwplayer.js +0 -0
  654. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/help.txt +0 -0
  655. data/public/javascripts/erp_app/ckeditor/plugins/jwplayer/jwplayer/JW Player Quick Start Guide.pdf b/data/public/javascripts/ckeditor/plugins/jwplayer/jwplayer/JW Player Quick Start → Guide.pdf +0 -0
  656. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/jwplayer/jwPlayer.gif +0 -0
  657. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/jwplayer/jwplayer.js +0 -0
  658. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/jwplayer/license.txt +0 -0
  659. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/jwplayer/player.swf +0 -0
  660. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/jwplayer/preview.jpg +0 -0
  661. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/jwplayer/readme.html +0 -0
  662. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/jwplayer/skin/beelden.zip +0 -0
  663. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/jwplayer/skin/glow.zip +0 -0
  664. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/jwplayer/skin/modieus.zip +0 -0
  665. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/jwplayer/skin/simple.zip +0 -0
  666. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/jwplayer/skin/snel.zip +0 -0
  667. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/jwplayer/skin/stijl.zip +0 -0
  668. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/jwplayer/skin/stormtrooper.zip +0 -0
  669. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/jwplayer/swfobject.js +0 -0
  670. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/jwplayer/video.mp4 +0 -0
  671. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/jwplayer/yt.swf +0 -0
  672. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/jwplayer/plugin.js +0 -0
  673. data/public/javascripts/ckeditor/plugins/knitkitthemes/plugin.js +116 -0
  674. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/link/dialogs/anchor.js +0 -0
  675. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/link/dialogs/link.js +0 -0
  676. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/link/images/anchor.png +0 -0
  677. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/link/images/hidpi/anchor.png +0 -0
  678. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/liststyle/dialogs/liststyle.js +0 -0
  679. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/magicline/images/hidpi/icon.png +0 -0
  680. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/magicline/images/icon.png +0 -0
  681. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/pagebreak/images/pagebreak.gif +0 -0
  682. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/pastefromword/filter/default.js +0 -0
  683. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/preview/preview.html +0 -0
  684. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/scayt/LICENSE.md +0 -0
  685. data/public/javascripts/ckeditor/plugins/scayt/README.md +25 -0
  686. data/public/javascripts/ckeditor/plugins/scayt/dialogs/options.js +473 -0
  687. data/public/javascripts/ckeditor/plugins/scayt/dialogs/toolbar.css +71 -0
  688. data/public/javascripts/ckeditor/plugins/scayt/icons/hidpi/scayt.png +0 -0
  689. data/public/javascripts/ckeditor/plugins/scayt/icons/scayt.png +0 -0
  690. data/public/javascripts/ckeditor/plugins/scayt/lang/af.js +34 -0
  691. data/public/javascripts/ckeditor/plugins/scayt/lang/ar.js +34 -0
  692. data/public/javascripts/ckeditor/plugins/scayt/lang/bg.js +34 -0
  693. data/public/javascripts/ckeditor/plugins/scayt/lang/bn.js +34 -0
  694. data/public/javascripts/ckeditor/plugins/scayt/lang/bs.js +34 -0
  695. data/public/javascripts/ckeditor/plugins/scayt/lang/ca.js +34 -0
  696. data/public/javascripts/ckeditor/plugins/scayt/lang/cs.js +34 -0
  697. data/public/javascripts/ckeditor/plugins/scayt/lang/cy.js +34 -0
  698. data/public/javascripts/ckeditor/plugins/scayt/lang/da.js +34 -0
  699. data/public/javascripts/ckeditor/plugins/scayt/lang/de.js +34 -0
  700. data/public/javascripts/ckeditor/plugins/scayt/lang/el.js +34 -0
  701. data/public/javascripts/ckeditor/plugins/scayt/lang/en-au.js +34 -0
  702. data/public/javascripts/ckeditor/plugins/scayt/lang/en-ca.js +34 -0
  703. data/public/javascripts/ckeditor/plugins/scayt/lang/en-gb.js +34 -0
  704. data/public/javascripts/ckeditor/plugins/scayt/lang/en.js +34 -0
  705. data/public/javascripts/ckeditor/plugins/scayt/lang/eo.js +34 -0
  706. data/public/javascripts/ckeditor/plugins/scayt/lang/es.js +34 -0
  707. data/public/javascripts/ckeditor/plugins/scayt/lang/et.js +34 -0
  708. data/public/javascripts/ckeditor/plugins/scayt/lang/eu.js +34 -0
  709. data/public/javascripts/ckeditor/plugins/scayt/lang/fa.js +34 -0
  710. data/public/javascripts/ckeditor/plugins/scayt/lang/fi.js +34 -0
  711. data/public/javascripts/ckeditor/plugins/scayt/lang/fo.js +34 -0
  712. data/public/javascripts/ckeditor/plugins/scayt/lang/fr-ca.js +34 -0
  713. data/public/javascripts/ckeditor/plugins/scayt/lang/fr.js +34 -0
  714. data/public/javascripts/ckeditor/plugins/scayt/lang/gl.js +34 -0
  715. data/public/javascripts/ckeditor/plugins/scayt/lang/gu.js +34 -0
  716. data/public/javascripts/ckeditor/plugins/scayt/lang/he.js +34 -0
  717. data/public/javascripts/ckeditor/plugins/scayt/lang/hi.js +34 -0
  718. data/public/javascripts/ckeditor/plugins/scayt/lang/hr.js +34 -0
  719. data/public/javascripts/ckeditor/plugins/scayt/lang/hu.js +34 -0
  720. data/public/javascripts/ckeditor/plugins/scayt/lang/is.js +34 -0
  721. data/public/javascripts/ckeditor/plugins/scayt/lang/it.js +34 -0
  722. data/public/javascripts/ckeditor/plugins/scayt/lang/ja.js +34 -0
  723. data/public/javascripts/ckeditor/plugins/scayt/lang/ka.js +34 -0
  724. data/public/javascripts/ckeditor/plugins/scayt/lang/km.js +34 -0
  725. data/public/javascripts/ckeditor/plugins/scayt/lang/ko.js +34 -0
  726. data/public/javascripts/ckeditor/plugins/scayt/lang/ku.js +34 -0
  727. data/public/javascripts/ckeditor/plugins/scayt/lang/lt.js +34 -0
  728. data/public/javascripts/ckeditor/plugins/scayt/lang/lv.js +34 -0
  729. data/public/javascripts/ckeditor/plugins/scayt/lang/mk.js +34 -0
  730. data/public/javascripts/ckeditor/plugins/scayt/lang/mn.js +34 -0
  731. data/public/javascripts/ckeditor/plugins/scayt/lang/ms.js +34 -0
  732. data/public/javascripts/ckeditor/plugins/scayt/lang/nb.js +34 -0
  733. data/public/javascripts/ckeditor/plugins/scayt/lang/nl.js +34 -0
  734. data/public/javascripts/ckeditor/plugins/scayt/lang/no.js +34 -0
  735. data/public/javascripts/ckeditor/plugins/scayt/lang/pl.js +34 -0
  736. data/public/javascripts/ckeditor/plugins/scayt/lang/pt-br.js +34 -0
  737. data/public/javascripts/ckeditor/plugins/scayt/lang/pt.js +34 -0
  738. data/public/javascripts/ckeditor/plugins/scayt/lang/ro.js +34 -0
  739. data/public/javascripts/ckeditor/plugins/scayt/lang/ru.js +34 -0
  740. data/public/javascripts/ckeditor/plugins/scayt/lang/sk.js +34 -0
  741. data/public/javascripts/ckeditor/plugins/scayt/lang/sl.js +34 -0
  742. data/public/javascripts/ckeditor/plugins/scayt/lang/sr-latn.js +34 -0
  743. data/public/javascripts/ckeditor/plugins/scayt/lang/sr.js +34 -0
  744. data/public/javascripts/ckeditor/plugins/scayt/lang/sv.js +34 -0
  745. data/public/javascripts/ckeditor/plugins/scayt/lang/th.js +34 -0
  746. data/public/javascripts/ckeditor/plugins/scayt/lang/tr.js +34 -0
  747. data/public/javascripts/ckeditor/plugins/scayt/lang/ug.js +34 -0
  748. data/public/javascripts/ckeditor/plugins/scayt/lang/uk.js +34 -0
  749. data/public/javascripts/ckeditor/plugins/scayt/lang/vi.js +34 -0
  750. data/public/javascripts/ckeditor/plugins/scayt/lang/zh-cn.js +34 -0
  751. data/public/javascripts/ckeditor/plugins/scayt/lang/zh.js +34 -0
  752. data/public/javascripts/ckeditor/plugins/scayt/plugin.js +894 -0
  753. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/showblocks/images/block_address.png +0 -0
  754. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/showblocks/images/block_blockquote.png +0 -0
  755. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/showblocks/images/block_div.png +0 -0
  756. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/showblocks/images/block_h1.png +0 -0
  757. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/showblocks/images/block_h2.png +0 -0
  758. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/showblocks/images/block_h3.png +0 -0
  759. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/showblocks/images/block_h4.png +0 -0
  760. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/showblocks/images/block_h5.png +0 -0
  761. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/showblocks/images/block_h6.png +0 -0
  762. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/showblocks/images/block_p.png +0 -0
  763. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/showblocks/images/block_pre.png +0 -0
  764. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/dialogs/smiley.js +0 -0
  765. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/angel_smile.gif +0 -0
  766. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/angry_smile.gif +0 -0
  767. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/broken_heart.gif +0 -0
  768. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/confused_smile.gif +0 -0
  769. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/cry_smile.gif +0 -0
  770. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/devil_smile.gif +0 -0
  771. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/embaressed_smile.gif +0 -0
  772. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/embarrassed_smile.gif +0 -0
  773. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/envelope.gif +0 -0
  774. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/heart.gif +0 -0
  775. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/kiss.gif +0 -0
  776. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/lightbulb.gif +0 -0
  777. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/omg_smile.gif +0 -0
  778. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/regular_smile.gif +0 -0
  779. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/sad_smile.gif +0 -0
  780. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/shades_smile.gif +0 -0
  781. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/teeth_smile.gif +0 -0
  782. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/thumbs_down.gif +0 -0
  783. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/thumbs_up.gif +0 -0
  784. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/tongue_smile.gif +0 -0
  785. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/tounge_smile.gif +0 -0
  786. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/whatchutalkingabout_smile.gif +0 -0
  787. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/smiley/images/wink_smile.gif +0 -0
  788. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/_translationstatus.txt +0 -0
  789. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/ar.js +0 -0
  790. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/bg.js +0 -0
  791. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/ca.js +0 -0
  792. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/cs.js +0 -0
  793. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/cy.js +0 -0
  794. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/de.js +0 -0
  795. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/el.js +0 -0
  796. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/en.js +0 -0
  797. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/eo.js +0 -0
  798. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/es.js +0 -0
  799. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/et.js +0 -0
  800. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/fa.js +0 -0
  801. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/fi.js +0 -0
  802. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/fr-ca.js +0 -0
  803. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/fr.js +0 -0
  804. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/gl.js +0 -0
  805. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/he.js +0 -0
  806. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/hr.js +0 -0
  807. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/hu.js +0 -0
  808. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/id.js +0 -0
  809. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/it.js +0 -0
  810. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/ja.js +0 -0
  811. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/ku.js +0 -0
  812. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/lv.js +0 -0
  813. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/nb.js +0 -0
  814. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/nl.js +0 -0
  815. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/no.js +0 -0
  816. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/pl.js +0 -0
  817. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/pt-br.js +0 -0
  818. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/pt.js +0 -0
  819. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/ru.js +0 -0
  820. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/si.js +0 -0
  821. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/sk.js +0 -0
  822. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/sl.js +0 -0
  823. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/sq.js +0 -0
  824. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/sv.js +0 -0
  825. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/th.js +0 -0
  826. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/tr.js +0 -0
  827. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/ug.js +0 -0
  828. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/uk.js +0 -0
  829. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/vi.js +0 -0
  830. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/lang/zh-cn.js +0 -0
  831. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/specialchar/dialogs/specialchar.js +0 -0
  832. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/syntaxhighlight/dialogs/syntaxhighlight.js +0 -0
  833. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/syntaxhighlight/icons/syntaxhighlight.png +0 -0
  834. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/syntaxhighlight/lang/de.js +0 -0
  835. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/syntaxhighlight/lang/en.js +0 -0
  836. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/syntaxhighlight/lang/fr.js +0 -0
  837. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/syntaxhighlight/lang/zh-cn.js +0 -0
  838. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/syntaxhighlight/plugin.js +0 -0
  839. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/table/dialogs/table.js +0 -0
  840. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/tabletools/dialogs/tableCell.js +0 -0
  841. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/templates/dialogs/templates.css +0 -0
  842. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/templates/dialogs/templates.js +0 -0
  843. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/templates/templates/default.js +0 -0
  844. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/templates/templates/images/template1.gif +0 -0
  845. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/templates/templates/images/template2.gif +0 -0
  846. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/templates/templates/images/template3.gif +0 -0
  847. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/wsc/LICENSE.md +0 -0
  848. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/wsc/README.md +0 -0
  849. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/wsc/dialogs/ciframe.html +0 -0
  850. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/wsc/dialogs/tmp.html +0 -0
  851. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/wsc/dialogs/tmpFrameset.html +0 -0
  852. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/wsc/dialogs/wsc.css +0 -0
  853. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/wsc/dialogs/wsc.js +0 -0
  854. data/public/javascripts/{erp_app/ckeditor → ckeditor}/plugins/wsc/dialogs/wsc_ie.js +0 -0
  855. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/dialog.css +0 -0
  856. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/dialog_ie.css +0 -0
  857. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/dialog_ie7.css +0 -0
  858. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/dialog_ie8.css +0 -0
  859. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/dialog_iequirks.css +0 -0
  860. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/dialog_opera.css +0 -0
  861. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/editor.css +0 -0
  862. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/editor_gecko.css +0 -0
  863. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/editor_ie.css +0 -0
  864. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/editor_ie7.css +0 -0
  865. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/editor_ie8.css +0 -0
  866. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/editor_iequirks.css +0 -0
  867. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/icons.png +0 -0
  868. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/icons_hidpi.png +0 -0
  869. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/images/arrow.png +0 -0
  870. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/images/close.png +0 -0
  871. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/images/hidpi/close.png +0 -0
  872. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/images/hidpi/lock-open.png +0 -0
  873. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/images/hidpi/lock.png +0 -0
  874. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/images/hidpi/refresh.png +0 -0
  875. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/images/lock-open.png +0 -0
  876. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/images/lock.png +0 -0
  877. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/images/refresh.png +0 -0
  878. data/public/javascripts/{erp_app/ckeditor → ckeditor}/skins/moono/readme.md +0 -0
  879. data/public/javascripts/{erp_app/ckeditor → ckeditor}/styles.js +0 -0
  880. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/close.png +0 -0
  881. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/closeX.png +0 -0
  882. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/controlbar-black-border.gif +0 -0
  883. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/controlbar-text-buttons.png +0 -0
  884. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/controlbar-white-small.gif +0 -0
  885. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/controlbar-white.gif +0 -0
  886. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/controlbar2.gif +0 -0
  887. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/controlbar3.gif +0 -0
  888. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/controlbar4-hover.gif +0 -0
  889. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/controlbar4.gif +0 -0
  890. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/fullexpand.gif +0 -0
  891. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/geckodimmer.png +0 -0
  892. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/icon.gif +0 -0
  893. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/loader.gif +0 -0
  894. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/loader.white.gif +0 -0
  895. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/outlines/Outlines.psd +0 -0
  896. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/outlines/beveled.png +0 -0
  897. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/outlines/drop-shadow.png +0 -0
  898. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/outlines/glossy-dark.png +0 -0
  899. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/outlines/outer-glow.png +0 -0
  900. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/outlines/rounded-black.png +0 -0
  901. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/outlines/rounded-white.png +0 -0
  902. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/resize.gif +0 -0
  903. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/scrollarrows.png +0 -0
  904. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/zoomin.cur +0 -0
  905. data/public/javascripts/{erp_app/highslide/highslide → highslide}/graphics/zoomout.cur +0 -0
  906. data/public/javascripts/highslide/highslide-full.js +3320 -0
  907. data/public/javascripts/highslide/highslide-full.min.js +9 -0
  908. data/public/javascripts/highslide/highslide-full.packed.js +9 -0
  909. data/public/javascripts/{erp_app/highslide/highslide → highslide}/highslide-ie6.css +0 -0
  910. data/public/javascripts/highslide/highslide-with-gallery.js +2657 -0
  911. data/public/javascripts/highslide/highslide-with-gallery.min.js +9 -0
  912. data/public/javascripts/highslide/highslide-with-gallery.packed.js +9 -0
  913. data/public/javascripts/highslide/highslide-with-html.js +2481 -0
  914. data/public/javascripts/highslide/highslide-with-html.min.js +9 -0
  915. data/public/javascripts/highslide/highslide-with-html.packed.js +9 -0
  916. data/public/javascripts/highslide/highslide.cfg.js +27 -0
  917. data/public/javascripts/highslide/highslide.css +889 -0
  918. data/public/javascripts/highslide/highslide.js +1891 -0
  919. data/public/javascripts/highslide/highslide.min.js +9 -0
  920. data/public/javascripts/highslide/highslide.packed.js +9 -0
  921. data/spec/models/organizer_application_spec.rb +3 -3
  922. metadata +914 -980
  923. data/app/assets/stylesheets/erp_app/application.css +0 -7
  924. data/app/controllers/erp_app/desktop/scaffold/base_controller.rb +0 -90
  925. data/app/controllers/erp_app/desktop/security_management/base_controller.rb +0 -47
  926. data/app/controllers/erp_app/desktop/security_management/capabilities_controller.rb +0 -125
  927. data/app/controllers/erp_app/desktop/security_management/groups_controller.rb +0 -198
  928. data/app/controllers/erp_app/desktop/security_management/roles_controller.rb +0 -183
  929. data/app/controllers/erp_app/desktop/security_management/users_controller.rb +0 -140
  930. data/app/controllers/erp_app/mobile/base_controller.rb +0 -21
  931. data/app/controllers/erp_app/mobile/login_controller.rb +0 -11
  932. data/app/controllers/erp_app/mobile/user_management/base_controller.rb +0 -20
  933. data/app/models/app_container.rb +0 -31
  934. data/app/models/desktop.rb +0 -72
  935. data/app/models/mobile.rb +0 -9
  936. data/app/models/mobile_application.rb +0 -6
  937. data/app/models/organizer.rb +0 -11
  938. data/app/models/organizer_application.rb +0 -2
  939. data/app/observers/user_app_container_observer.rb +0 -20
  940. data/app/views/erp_app/mobile/base/index.erb +0 -44
  941. data/app/views/erp_app/mobile/login/index.erb +0 -21
  942. data/config/initializers/erp_app.rb +0 -5
  943. data/db/data_migrations/20110728201733_update_preferences.rb +0 -52
  944. data/db/data_migrations/20110816161238_create_desktop_app_audit_log_viewer.rb +0 -23
  945. data/db/data_migrations/20110817160743_add_file_manager_application.rb +0 -31
  946. data/db/data_migrations/20111108183739_add_default_capabilities.rb +0 -22
  947. data/db/data_migrations/20111108183740_add_new_contact_widgets.rb +0 -41
  948. data/db/data_migrations/20120229160222_add_userinfo_widget.rb +0 -28
  949. data/db/data_migrations/20120405193721_create_party_and_role_type_for_communication_events.rb +0 -10
  950. data/db/data_migrations/20120411180756_create_user_management_mobile_application.rb +0 -16
  951. data/db/data_migrations/20120418164215_create_configuration_management_desktop_application.rb +0 -26
  952. data/db/data_migrations/20121018143910_create_job_tracker_desktop_application.rb +0 -22
  953. data/db/data_migrations/20121018172347_created_tracked_jobs.rb +0 -14
  954. data/db/data_migrations/20121130201859_upgrade_remove_system_mgmt_app.rb +0 -15
  955. data/db/data_migrations/20121218175028_create_security_management_desktop_application.rb +0 -28
  956. data/db/data_migrations/20130411200351_add_job_tracker_mobile_app.rb +0 -16
  957. data/db/data_migrations/20130703181549_create_tail_desktop_application.rb +0 -19
  958. data/db/data_migrations/20131102171801_add_customer_role_type.rb +0 -11
  959. data/db/data_migrations/20131108191057_add_customer_employee_reln.rb +0 -26
  960. data/db/data_migrations/20140122205941_remove_theme_preference.rb +0 -21
  961. data/db/migrate/20120920145259_add_job_tracker.rb +0 -19
  962. data/db/migrate/20130410182333_update_mobile_application.rb +0 -27
  963. data/db/migrate/20131112013049_add_erp_app_missing_indexes.rb +0 -31
  964. data/db/migrate/20131129205550_add_precedence_to_configuration_item_types.rb +0 -7
  965. data/lib/active_ext/active_ext.rb +0 -587
  966. data/lib/active_ext/core.rb +0 -105
  967. data/lib/active_ext/data_structures/column.rb +0 -21
  968. data/lib/active_ext/data_structures/columns.rb +0 -69
  969. data/lib/active_ext/data_structures/data_structures.rb +0 -2
  970. data/lib/active_ext/ext_helpers/column_builder.rb +0 -136
  971. data/lib/active_ext/ext_helpers/data_helper.rb +0 -67
  972. data/lib/active_ext/ext_helpers/ext_helpers.rb +0 -5
  973. data/lib/active_ext/ext_helpers/field_builder.rb +0 -146
  974. data/lib/active_ext/ext_helpers/form_builder.rb +0 -49
  975. data/lib/active_ext/ext_helpers/table_builder.rb +0 -77
  976. data/lib/erp_app/application_resource_loader.rb +0 -4
  977. data/lib/erp_app/application_resource_loader/base_loader.rb +0 -17
  978. data/lib/erp_app/application_resource_loader/desktop_organizer_loader.rb +0 -71
  979. data/lib/erp_app/application_resource_loader/mobile_loader.rb +0 -46
  980. data/lib/erp_app/application_resource_loader/shared_loader.rb +0 -26
  981. data/lib/erp_app/extensions/railties/action_view/helpers/active_ext_helper.rb +0 -17
  982. data/lib/erp_app/extensions/railties/action_view/helpers/tag_helper.rb +0 -38
  983. data/lib/generators/active_ext/USAGE +0 -16
  984. data/lib/generators/active_ext/active_ext_generator.rb +0 -43
  985. data/lib/generators/active_ext/templates/INSTALL +0 -11
  986. data/lib/generators/active_ext/templates/controllers/controller_template.erb +0 -23
  987. data/lib/generators/active_ext/templates/public/module.js.erb +0 -16
  988. data/lib/generators/active_ext/templates/views/create.html.erb +0 -19
  989. data/lib/generators/active_ext/templates/views/edit.html.erb +0 -65
  990. data/lib/generators/active_ext/templates/views/new.html.erb +0 -41
  991. data/lib/generators/active_ext/templates/views/show.html.erb +0 -58
  992. data/lib/generators/active_ext/templates/views/update.html.erb +0 -1
  993. data/lib/generators/compass_ae_mobile/USAGE +0 -9
  994. data/lib/generators/compass_ae_mobile/compass_ae_mobile_generator.rb +0 -38
  995. data/lib/generators/compass_ae_mobile/templates/controllers/controller_template.erb +0 -4
  996. data/lib/generators/compass_ae_mobile/templates/javascripts/main_template.erb +0 -29
  997. data/lib/generators/compass_ae_mobile/templates/views/view_template.erb +0 -25
  998. data/lib/generators/desktop_application/USAGE +0 -24
  999. data/lib/generators/desktop_application/desktop_application_generator.rb +0 -25
  1000. data/lib/generators/desktop_application/templates/INSTALL +0 -25
  1001. data/lib/generators/mobile_application/USAGE +0 -24
  1002. data/lib/generators/mobile_application/mobile_application_generator.rb +0 -25
  1003. data/lib/generators/mobile_application/templates/controllers/controller_template.erb +0 -13
  1004. data/lib/generators/mobile_application/templates/migrate/migration_template.erb +0 -14
  1005. data/lib/generators/mobile_application/templates/public/app.js.erb +0 -24
  1006. data/lib/generators/organizer_application/USAGE +0 -27
  1007. data/lib/generators/organizer_application/organizer_application_generator.rb +0 -25
  1008. data/lib/generators/organizer_application/templates/INSTALL +0 -28
  1009. data/lib/generators/organizer_application/templates/controllers/controller_template.erb +0 -12
  1010. data/lib/generators/organizer_application/templates/migrate/migration_template.erb +0 -14
  1011. data/lib/generators/organizer_application/templates/public/base.js.erb +0 -28
  1012. data/public/images/art/compass-ae-logo-reverse-1.png +0 -0
  1013. data/public/images/erp_app/desktop/applications/security_management/manage_capabilities.png +0 -0
  1014. data/public/images/erp_app/desktop/applications/security_management/manage_groups.png +0 -0
  1015. data/public/images/erp_app/desktop/applications/security_management/manage_roles.png +0 -0
  1016. data/public/images/erp_app/desktop/applications/security_management/manage_users.png +0 -0
  1017. data/public/images/icons/fieldtypes/business_party.png +0 -0
  1018. data/public/images/icons/fieldtypes/check.png +0 -0
  1019. data/public/images/icons/fieldtypes/date.png +0 -0
  1020. data/public/images/icons/fieldtypes/display.png +0 -0
  1021. data/public/images/icons/fieldtypes/email.png +0 -0
  1022. data/public/images/icons/fieldtypes/file.png +0 -0
  1023. data/public/images/icons/fieldtypes/file_assets.png +0 -0
  1024. data/public/images/icons/fieldtypes/image.png +0 -0
  1025. data/public/images/icons/fieldtypes/money.png +0 -0
  1026. data/public/images/icons/fieldtypes/number.png +0 -0
  1027. data/public/images/icons/fieldtypes/password.png +0 -0
  1028. data/public/images/icons/fieldtypes/question.png +0 -0
  1029. data/public/images/icons/fieldtypes/radio.png +0 -0
  1030. data/public/images/icons/fieldtypes/select.png +0 -0
  1031. data/public/images/icons/fieldtypes/text.png +0 -0
  1032. data/public/images/icons/fieldtypes/text.psd +0 -0
  1033. data/public/images/icons/fieldtypes/text_area.png +0 -0
  1034. data/public/images/icons/fieldtypes/time.png +0 -0
  1035. data/public/images/icons/fieldtypes/yes_no.png +0 -0
  1036. data/public/images/icons/login/login_48x48.png +0 -0
  1037. data/public/images/icons/mail/mail_48x48.png +0 -0
  1038. data/public/images/icons/manage-profile/manage-profile_48x48.png +0 -0
  1039. data/public/images/icons/map/map_48x48.png +0 -0
  1040. data/public/images/icons/package/package_48x48.png +0 -0
  1041. data/public/images/icons/product/product_48x48.png +0 -0
  1042. data/public/images/icons/recycle/recycle_16x16.png +0 -0
  1043. data/public/images/icons/reset-password/reset-password_48x48.png +0 -0
  1044. data/public/images/icons/search/search_48x48.png +0 -0
  1045. data/public/images/icons/shopping_cart/shopping_cart_48x48.png +0 -0
  1046. data/public/images/icons/sign_up/sign_up_48x48.png +0 -0
  1047. data/public/images/icons/signup/signup_48x48.png +0 -0
  1048. data/public/javascripts/erp_app/authentication/compass_user.js +0 -94
  1049. data/public/javascripts/erp_app/ckeditor/config.js +0 -12
  1050. data/public/javascripts/erp_app/ckeditor/plugins/compasssave/plugin.js +0 -22
  1051. data/public/javascripts/erp_app/ckeditor/plugins/dialog/dialogDefinition.js +0 -4
  1052. data/public/javascripts/erp_app/ckeditor/plugins/inlineeditsave/plugin.js +0 -42
  1053. data/public/javascripts/erp_app/ckeditor/plugins/knitkitthemes/plugin.js +0 -116
  1054. data/public/javascripts/erp_app/ckeditor/plugins/scayt/README.md +0 -25
  1055. data/public/javascripts/erp_app/ckeditor/plugins/scayt/dialogs/options.js +0 -20
  1056. data/public/javascripts/erp_app/ckeditor/plugins/scayt/dialogs/toolbar.css +0 -71
  1057. data/public/javascripts/erp_app/ckeditor_example_config_override.js +0 -45
  1058. data/public/javascripts/erp_app/codemirror/lib/codemirror.css +0 -272
  1059. data/public/javascripts/erp_app/codemirror/lib/codemirror.js +0 -55
  1060. data/public/javascripts/erp_app/codemirror/theme/3024-day.css +0 -34
  1061. data/public/javascripts/erp_app/codemirror/theme/3024-night.css +0 -34
  1062. data/public/javascripts/erp_app/codemirror/theme/ambiance-mobile.css +0 -5
  1063. data/public/javascripts/erp_app/codemirror/theme/ambiance.css +0 -74
  1064. data/public/javascripts/erp_app/codemirror/theme/base16-dark.css +0 -34
  1065. data/public/javascripts/erp_app/codemirror/theme/base16-light.css +0 -34
  1066. data/public/javascripts/erp_app/codemirror/theme/blackboard.css +0 -28
  1067. data/public/javascripts/erp_app/codemirror/theme/cobalt.css +0 -21
  1068. data/public/javascripts/erp_app/codemirror/theme/eclipse.css +0 -23
  1069. data/public/javascripts/erp_app/codemirror/theme/elegant.css +0 -13
  1070. data/public/javascripts/erp_app/codemirror/theme/erlang-dark.css +0 -30
  1071. data/public/javascripts/erp_app/codemirror/theme/lesser-dark.css +0 -43
  1072. data/public/javascripts/erp_app/codemirror/theme/mbo.css +0 -37
  1073. data/public/javascripts/erp_app/codemirror/theme/mdn-like.css +0 -44
  1074. data/public/javascripts/erp_app/codemirror/theme/midnight.css +0 -43
  1075. data/public/javascripts/erp_app/codemirror/theme/monokai.css +0 -29
  1076. data/public/javascripts/erp_app/codemirror/theme/neat.css +0 -12
  1077. data/public/javascripts/erp_app/codemirror/theme/neo.css +0 -40
  1078. data/public/javascripts/erp_app/codemirror/theme/night.css +0 -24
  1079. data/public/javascripts/erp_app/codemirror/theme/paraiso-dark.css +0 -34
  1080. data/public/javascripts/erp_app/codemirror/theme/paraiso-light.css +0 -34
  1081. data/public/javascripts/erp_app/codemirror/theme/pastel-on-dark.css +0 -48
  1082. data/public/javascripts/erp_app/codemirror/theme/rubyblue.css +0 -21
  1083. data/public/javascripts/erp_app/codemirror/theme/solarized.css +0 -167
  1084. data/public/javascripts/erp_app/codemirror/theme/the-matrix.css +0 -26
  1085. data/public/javascripts/erp_app/codemirror/theme/tomorrow-night-eighties.css +0 -34
  1086. data/public/javascripts/erp_app/codemirror/theme/twilight.css +0 -28
  1087. data/public/javascripts/erp_app/codemirror/theme/vibrant-ink.css +0 -30
  1088. data/public/javascripts/erp_app/codemirror/theme/xq-dark.css +0 -49
  1089. data/public/javascripts/erp_app/codemirror/theme/xq-light.css +0 -43
  1090. data/public/javascripts/erp_app/codemirror_highlight.js +0 -17
  1091. data/public/javascripts/erp_app/desktop/applications/audit_log_viewer/module.js +0 -38
  1092. data/public/javascripts/erp_app/desktop/applications/configuration_management/module.js +0 -95
  1093. data/public/javascripts/erp_app/desktop/applications/control_panel/module.js +0 -73
  1094. data/public/javascripts/erp_app/desktop/applications/file_manager/module.js +0 -120
  1095. data/public/javascripts/erp_app/desktop/applications/job_tracker/module.js +0 -44
  1096. data/public/javascripts/erp_app/desktop/applications/scaffold/models_tree_panel.js +0 -86
  1097. data/public/javascripts/erp_app/desktop/applications/scaffold/module.js +0 -62
  1098. data/public/javascripts/erp_app/desktop/applications/security_management/capabilities_panel.js +0 -62
  1099. data/public/javascripts/erp_app/desktop/applications/security_management/capabilities_widget.js +0 -241
  1100. data/public/javascripts/erp_app/desktop/applications/security_management/groups_effective_security.js +0 -94
  1101. data/public/javascripts/erp_app/desktop/applications/security_management/groups_panel.js +0 -298
  1102. data/public/javascripts/erp_app/desktop/applications/security_management/groups_widget.js +0 -241
  1103. data/public/javascripts/erp_app/desktop/applications/security_management/module.js +0 -173
  1104. data/public/javascripts/erp_app/desktop/applications/security_management/north_panel.js +0 -31
  1105. data/public/javascripts/erp_app/desktop/applications/security_management/roles_panel.js +0 -309
  1106. data/public/javascripts/erp_app/desktop/applications/security_management/roles_widget.js +0 -241
  1107. data/public/javascripts/erp_app/desktop/applications/security_management/south_panel.js +0 -126
  1108. data/public/javascripts/erp_app/desktop/applications/security_management/users_effective_security.js +0 -128
  1109. data/public/javascripts/erp_app/desktop/applications/security_management/users_panel.js +0 -59
  1110. data/public/javascripts/erp_app/desktop/applications/security_management/users_widget.js +0 -245
  1111. data/public/javascripts/erp_app/desktop/applications/user_management/module.js +0 -469
  1112. data/public/javascripts/erp_app/desktop/applications/user_management/personal_info_panel.js +0 -117
  1113. data/public/javascripts/erp_app/desktop/applications/user_management/role_management_panel.js +0 -208
  1114. data/public/javascripts/erp_app/desktop/applications/user_management/user_application_mgt_panel.js +0 -206
  1115. data/public/javascripts/erp_app/desktop/ext_ux_desktop_module.js +0 -1014
  1116. data/public/javascripts/erp_app/ecommerce/credit_card_window.js +0 -329
  1117. data/public/javascripts/erp_app/highslide/examples/ajax.html +0 -51
  1118. data/public/javascripts/erp_app/highslide/examples/flash.html +0 -61
  1119. data/public/javascripts/erp_app/highslide/examples/gallery-controls-in-heading.html +0 -89
  1120. data/public/javascripts/erp_app/highslide/examples/gallery-dark.html +0 -93
  1121. data/public/javascripts/erp_app/highslide/examples/gallery-floating-caption.html +0 -91
  1122. data/public/javascripts/erp_app/highslide/examples/gallery-floating-thumbs.html +0 -144
  1123. data/public/javascripts/erp_app/highslide/examples/gallery-horizontal-strip.html +0 -147
  1124. data/public/javascripts/erp_app/highslide/examples/gallery-in-box.html +0 -95
  1125. data/public/javascripts/erp_app/highslide/examples/gallery-in-page.html +0 -221
  1126. data/public/javascripts/erp_app/highslide/examples/gallery-thumbstrip-above.html +0 -142
  1127. data/public/javascripts/erp_app/highslide/examples/gallery-vertical-strip.html +0 -178
  1128. data/public/javascripts/erp_app/highslide/examples/gallery-white.html +0 -90
  1129. data/public/javascripts/erp_app/highslide/examples/headline.html +0 -49
  1130. data/public/javascripts/erp_app/highslide/examples/html.html +0 -67
  1131. data/public/javascripts/erp_app/highslide/examples/iframe.html +0 -44
  1132. data/public/javascripts/erp_app/highslide/examples/image-map.html +0 -49
  1133. data/public/javascripts/erp_app/highslide/examples/includes/Flash.swf +0 -0
  1134. data/public/javascripts/erp_app/highslide/examples/includes/ajax.htm +0 -45
  1135. data/public/javascripts/erp_app/highslide/examples/includes/include-short.htm +0 -40
  1136. data/public/javascripts/erp_app/highslide/examples/inline.html +0 -50
  1137. data/public/javascripts/erp_app/highslide/examples/mini-galleries.html +0 -135
  1138. data/public/javascripts/erp_app/highslide/examples/mini-gallery.html +0 -89
  1139. data/public/javascripts/erp_app/highslide/examples/no-border.html +0 -62
  1140. data/public/javascripts/erp_app/highslide/examples/no-outline.html +0 -52
  1141. data/public/javascripts/erp_app/highslide/examples/outer-glow.html +0 -53
  1142. data/public/javascripts/erp_app/highslide/examples/white-10px.html +0 -51
  1143. data/public/javascripts/erp_app/highslide/examples/white-rounded-outline.html +0 -51
  1144. data/public/javascripts/erp_app/highslide/examples/youtube.html +0 -62
  1145. data/public/javascripts/erp_app/highslide/highslide/highslide-full.js +0 -3302
  1146. data/public/javascripts/erp_app/highslide/highslide/highslide-full.min.js +0 -9
  1147. data/public/javascripts/erp_app/highslide/highslide/highslide-full.packed.js +0 -9
  1148. data/public/javascripts/erp_app/highslide/highslide/highslide-with-gallery.js +0 -2639
  1149. data/public/javascripts/erp_app/highslide/highslide/highslide-with-gallery.min.js +0 -9
  1150. data/public/javascripts/erp_app/highslide/highslide/highslide-with-gallery.packed.js +0 -9
  1151. data/public/javascripts/erp_app/highslide/highslide/highslide-with-html.js +0 -2476
  1152. data/public/javascripts/erp_app/highslide/highslide/highslide-with-html.min.js +0 -9
  1153. data/public/javascripts/erp_app/highslide/highslide/highslide-with-html.packed.js +0 -9
  1154. data/public/javascripts/erp_app/highslide/highslide/highslide.css +0 -886
  1155. data/public/javascripts/erp_app/highslide/highslide/highslide.js +0 -1886
  1156. data/public/javascripts/erp_app/highslide/highslide/highslide.min.js +0 -9
  1157. data/public/javascripts/erp_app/highslide/highslide/highslide.packed.js +0 -9
  1158. data/public/javascripts/erp_app/highslide/images/full-image.jpg +0 -0
  1159. data/public/javascripts/erp_app/highslide/images/full6.jpg +0 -0
  1160. data/public/javascripts/erp_app/highslide/images/gallery1.jpg +0 -0
  1161. data/public/javascripts/erp_app/highslide/images/gallery1.thumb.jpg +0 -0
  1162. data/public/javascripts/erp_app/highslide/images/gallery2.jpg +0 -0
  1163. data/public/javascripts/erp_app/highslide/images/gallery2.thumb.jpg +0 -0
  1164. data/public/javascripts/erp_app/highslide/images/gallery3.jpg +0 -0
  1165. data/public/javascripts/erp_app/highslide/images/gallery3.thumb.jpg +0 -0
  1166. data/public/javascripts/erp_app/highslide/images/nordic.gif +0 -0
  1167. data/public/javascripts/erp_app/highslide/images/thumb6.jpg +0 -0
  1168. data/public/javascripts/erp_app/highslide/images/thumbnail.jpg +0 -0
  1169. data/public/javascripts/erp_app/highslide/images/thumbstrip01.jpg +0 -0
  1170. data/public/javascripts/erp_app/highslide/images/thumbstrip01.thumb.png +0 -0
  1171. data/public/javascripts/erp_app/highslide/images/thumbstrip02.jpg +0 -0
  1172. data/public/javascripts/erp_app/highslide/images/thumbstrip02.thumb.png +0 -0
  1173. data/public/javascripts/erp_app/highslide/images/thumbstrip03.jpg +0 -0
  1174. data/public/javascripts/erp_app/highslide/images/thumbstrip03.thumb.png +0 -0
  1175. data/public/javascripts/erp_app/highslide/images/thumbstrip04.jpg +0 -0
  1176. data/public/javascripts/erp_app/highslide/images/thumbstrip04.thumb.png +0 -0
  1177. data/public/javascripts/erp_app/highslide/images/thumbstrip05.jpg +0 -0
  1178. data/public/javascripts/erp_app/highslide/images/thumbstrip05.thumb.png +0 -0
  1179. data/public/javascripts/erp_app/highslide/images/thumbstrip06.jpg +0 -0
  1180. data/public/javascripts/erp_app/highslide/images/thumbstrip06.thumb.png +0 -0
  1181. data/public/javascripts/erp_app/highslide/images/thumbstrip07.jpg +0 -0
  1182. data/public/javascripts/erp_app/highslide/images/thumbstrip07.thumb.png +0 -0
  1183. data/public/javascripts/erp_app/highslide/images/thumbstrip08.jpg +0 -0
  1184. data/public/javascripts/erp_app/highslide/images/thumbstrip08.thumb.png +0 -0
  1185. data/public/javascripts/erp_app/highslide/images/thumbstrip09.jpg +0 -0
  1186. data/public/javascripts/erp_app/highslide/images/thumbstrip09.thumb.png +0 -0
  1187. data/public/javascripts/erp_app/highslide/images/thumbstrip10.jpg +0 -0
  1188. data/public/javascripts/erp_app/highslide/images/thumbstrip10.thumb.png +0 -0
  1189. data/public/javascripts/erp_app/highslide/images/thumbstrip11.jpg +0 -0
  1190. data/public/javascripts/erp_app/highslide/images/thumbstrip11.thumb.png +0 -0
  1191. data/public/javascripts/erp_app/highslide/images/thumbstrip12.jpg +0 -0
  1192. data/public/javascripts/erp_app/highslide/images/thumbstrip12.thumb.png +0 -0
  1193. data/public/javascripts/erp_app/highslide/images/thumbstrip13.jpg +0 -0
  1194. data/public/javascripts/erp_app/highslide/images/thumbstrip13.thumb.png +0 -0
  1195. data/public/javascripts/erp_app/highslide/images/thumbstrip14.jpg +0 -0
  1196. data/public/javascripts/erp_app/highslide/images/thumbstrip14.thumb.png +0 -0
  1197. data/public/javascripts/erp_app/highslide/images/thumbstrip15.jpg +0 -0
  1198. data/public/javascripts/erp_app/highslide/images/thumbstrip15.thumb.png +0 -0
  1199. data/public/javascripts/erp_app/highslide/images/thumbstrip16.jpg +0 -0
  1200. data/public/javascripts/erp_app/highslide/images/thumbstrip16.thumb.png +0 -0
  1201. data/public/javascripts/erp_app/highslide/images/thumbstrip17.jpg +0 -0
  1202. data/public/javascripts/erp_app/highslide/images/thumbstrip17.thumb.png +0 -0
  1203. data/public/javascripts/erp_app/highslide/images/thumbstrip18.jpg +0 -0
  1204. data/public/javascripts/erp_app/highslide/images/thumbstrip18.thumb.png +0 -0
  1205. data/public/javascripts/erp_app/highslide/images/thumbstrip19.jpg +0 -0
  1206. data/public/javascripts/erp_app/highslide/images/thumbstrip19.thumb.png +0 -0
  1207. data/public/javascripts/erp_app/highslide/images/thumbstrip20.jpg +0 -0
  1208. data/public/javascripts/erp_app/highslide/images/thumbstrip20.thumb.png +0 -0
  1209. data/public/javascripts/erp_app/highslide/images/thumbstrip21.jpg +0 -0
  1210. data/public/javascripts/erp_app/highslide/images/thumbstrip21.thumb.png +0 -0
  1211. data/public/javascripts/erp_app/highslide/images/thumbstrip22.jpg +0 -0
  1212. data/public/javascripts/erp_app/highslide/images/thumbstrip22.thumb.png +0 -0
  1213. data/public/javascripts/erp_app/highslide/images/thumbstrip23.jpg +0 -0
  1214. data/public/javascripts/erp_app/highslide/images/thumbstrip23.thumb.png +0 -0
  1215. data/public/javascripts/erp_app/highslide/images/thumbstrip24.jpg +0 -0
  1216. data/public/javascripts/erp_app/highslide/images/thumbstrip24.thumb.png +0 -0
  1217. data/public/javascripts/erp_app/highslide/index.htm +0 -68
  1218. data/public/javascripts/erp_app/jquery_support.js +0 -31
  1219. data/public/javascripts/erp_app/login/mobile.js +0 -58
  1220. data/public/javascripts/erp_app/login/window.js +0 -124
  1221. data/public/javascripts/erp_app/mobile/app.js +0 -74
  1222. data/public/javascripts/erp_app/mobile/applications/job_tracker/app.js +0 -177
  1223. data/public/javascripts/erp_app/mobile/applications/job_tracker/model/job.js +0 -15
  1224. data/public/javascripts/erp_app/mobile/applications/job_tracker/store/jobs.js +0 -16
  1225. data/public/javascripts/erp_app/mobile/applications/job_tracker/view/templates.js +0 -22
  1226. data/public/javascripts/erp_app/mobile/applications/user_management/app.js +0 -112
  1227. data/public/javascripts/erp_app/mobile/applications/user_management/app/model/user.js +0 -14
  1228. data/public/javascripts/erp_app/mobile/applications/user_management/app/store/users.js +0 -19
  1229. data/public/javascripts/erp_app/mobile/applications/user_management/app/view/templates.js +0 -34
  1230. data/public/javascripts/erp_app/mobile/mobile_base.js +0 -10
  1231. data/public/javascripts/erp_app/organizer/applications/crm/base.js +0 -64
  1232. data/public/javascripts/erp_app/organizer/default_menu_tree_panel.js +0 -69
  1233. data/public/javascripts/erp_app/organizer/layout.js +0 -267
  1234. data/public/javascripts/erp_app/shared/MoneyField.js +0 -119
  1235. data/public/javascripts/erp_app/shared/active_ext/active_ext_grid.js +0 -351
  1236. data/public/javascripts/erp_app/shared/audit_log/GridPanel.js +0 -214
  1237. data/public/javascripts/erp_app/shared/audit_log/TabPanel.js +0 -103
  1238. data/public/javascripts/erp_app/shared/compass_ckeditor.js +0 -264
  1239. data/public/javascripts/erp_app/shared/compass_codemirror.js +0 -466
  1240. data/public/javascripts/erp_app/shared/configuration/configuration_panel.js +0 -128
  1241. data/public/javascripts/erp_app/shared/crm/ContactMechanismGrid.js +0 -812
  1242. data/public/javascripts/erp_app/shared/crm/PartyDetailsPanel.js +0 -344
  1243. data/public/javascripts/erp_app/shared/crm/PartyForm.js +0 -321
  1244. data/public/javascripts/erp_app/shared/crm/PartyGrid.js +0 -591
  1245. data/public/javascripts/erp_app/shared/crm/UserForm.js +0 -307
  1246. data/public/javascripts/erp_app/shared/crm/UsersGrid.js +0 -492
  1247. data/public/javascripts/erp_app/shared/dynamic_editable_grid.js +0 -140
  1248. data/public/javascripts/erp_app/shared/dynamic_editable_grid_loader_panel.js +0 -64
  1249. data/public/javascripts/erp_app/shared/dynamic_form_fields.js +0 -99
  1250. data/public/javascripts/erp_app/shared/file_manager_tree.js +0 -722
  1251. data/public/javascripts/erp_app/shared/file_upload/Ext.ux.panel.UploadPanel.js +0 -580
  1252. data/public/javascripts/erp_app/shared/file_upload/upload_window.js +0 -63
  1253. data/public/javascripts/erp_app/shared/notes_grid.js +0 -338
  1254. data/public/javascripts/erp_app/shared/profile_management_panel.js +0 -137
  1255. data/public/javascripts/erp_app/utility.js +0 -654
  1256. data/public/javascripts/erp_app/widgets.js +0 -82
  1257. data/public/stylesheets/erp_app/desktop/base.css +0 -254
  1258. data/public/stylesheets/erp_app/login/main.css +0 -4
  1259. data/public/stylesheets/erp_app/mobile/applications/user_management/main.css +0 -21
  1260. data/public/stylesheets/erp_app/mobile/mobile.css +0 -47
  1261. data/public/stylesheets/erp_app/organizer/base.css +0 -6
  1262. data/public/stylesheets/erp_app/shared/compass-ext-all.css +0 -547
  1263. data/public/stylesheets/erp_app/shared/crm.css +0 -45
  1264. data/public/stylesheets/jquery_plugins/jquery.loadmask.css +0 -40
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Name: Highslide JS
3
+ * Version: 4.1.13 (2011-10-06)
4
+ * Config: default +slideshow +positioning +transitions +viewport +thumbstrip
5
+ * Author: Torstein Hønsi
6
+ * Support: www.highslide.com/support
7
+ * License: www.highslide.com/#license
8
+ */
9
+ if(!hs){var hs={lang:{cssDirection:"ltr",loadingText:"Loading...",loadingTitle:"Click to cancel",focusTitle:"Click to bring to front",fullExpandTitle:"Expand to actual size (f)",creditsText:"Powered by <i>Highslide JS</i>",creditsTitle:"Go to the Highslide JS homepage",previousText:"Previous",nextText:"Next",moveText:"Move",closeText:"Close",closeTitle:"Close (esc)",resizeTitle:"Resize",playText:"Play",playTitle:"Play slideshow (spacebar)",pauseText:"Pause",pauseTitle:"Pause slideshow (spacebar)",previousTitle:"Previous (arrow left)",nextTitle:"Next (arrow right)",moveTitle:"Move",fullExpandText:"1:1",number:"Image %1 of %2",restoreTitle:"Click to close image, click and drag to move. Use arrow keys for next and previous."},graphicsDir:"highslide/graphics/",expandCursor:"zoomin.cur",restoreCursor:"zoomout.cur",expandDuration:250,restoreDuration:250,marginLeft:15,marginRight:15,marginTop:15,marginBottom:15,zIndexCounter:1001,loadingOpacity:0.75,allowMultipleInstances:true,numberOfImagesToPreload:5,outlineWhileAnimating:2,outlineStartOffset:3,padToMinWidth:false,fullExpandPosition:"bottom right",fullExpandOpacity:1,showCredits:true,creditsHref:"http://highslide.com/",creditsTarget:"_self",enableKeyListener:true,openerTagNames:["a"],transitions:[],transitionDuration:250,dimmingOpacity:0,dimmingDuration:50,anchor:"auto",align:"auto",targetX:null,targetY:null,dragByHeading:true,minWidth:200,minHeight:200,allowSizeReduction:true,outlineType:"drop-shadow",skin:{controls:'<div class="highslide-controls"><ul><li class="highslide-previous"><a href="#" title="{hs.lang.previousTitle}"><span>{hs.lang.previousText}</span></a></li><li class="highslide-play"><a href="#" title="{hs.lang.playTitle}"><span>{hs.lang.playText}</span></a></li><li class="highslide-pause"><a href="#" title="{hs.lang.pauseTitle}"><span>{hs.lang.pauseText}</span></a></li><li class="highslide-next"><a href="#" title="{hs.lang.nextTitle}"><span>{hs.lang.nextText}</span></a></li><li class="highslide-move"><a href="#" title="{hs.lang.moveTitle}"><span>{hs.lang.moveText}</span></a></li><li class="highslide-full-expand"><a href="#" title="{hs.lang.fullExpandTitle}"><span>{hs.lang.fullExpandText}</span></a></li><li class="highslide-close"><a href="#" title="{hs.lang.closeTitle}" ><span>{hs.lang.closeText}</span></a></li></ul></div>'},preloadTheseImages:[],continuePreloading:true,expanders:[],overrides:["allowSizeReduction","useBox","anchor","align","targetX","targetY","outlineType","outlineWhileAnimating","captionId","captionText","captionEval","captionOverlay","headingId","headingText","headingEval","headingOverlay","creditsPosition","dragByHeading","autoplay","numberPosition","transitions","dimmingOpacity","width","height","wrapperClassName","minWidth","minHeight","maxWidth","maxHeight","pageOrigin","slideshowGroup","easing","easingClose","fadeInOut","src"],overlays:[],idCounter:0,oPos:{x:["leftpanel","left","center","right","rightpanel"],y:["above","top","middle","bottom","below"]},mouse:{},headingOverlay:{},captionOverlay:{},timers:[],slideshows:[],pendingOutlines:{},clones:{},onReady:[],uaVersion:/Trident\/4\.0/.test(navigator.userAgent)?8:parseFloat((navigator.userAgent.toLowerCase().match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1]),ie:(document.all&&!window.opera),safari:/Safari/.test(navigator.userAgent),geckoMac:/Macintosh.+rv:1\.[0-8].+Gecko/.test(navigator.userAgent),$:function(a){if(a){return document.getElementById(a)}},push:function(a,b){a[a.length]=b},createElement:function(a,f,e,d,c){var b=document.createElement(a);if(f){hs.extend(b,f)}if(c){hs.setStyles(b,{padding:0,border:"none",margin:0})}if(e){hs.setStyles(b,e)}if(d){d.appendChild(b)}return b},extend:function(b,c){for(var a in c){b[a]=c[a]}return b},setStyles:function(b,c){for(var a in c){if(hs.ieLt9&&a=="opacity"){if(c[a]>0.99){b.style.removeAttribute("filter")}else{b.style.filter="alpha(opacity="+(c[a]*100)+")"}}else{b.style[a]=c[a]}}},animate:function(f,a,d){var c,g,j;if(typeof d!="object"||d===null){var i=arguments;d={duration:i[2],easing:i[3],complete:i[4]}}if(typeof d.duration!="number"){d.duration=250}d.easing=Math[d.easing]||Math.easeInQuad;d.curAnim=hs.extend({},a);for(var b in a){var h=new hs.fx(f,d,b);c=parseFloat(hs.css(f,b))||0;g=parseFloat(a[b]);j=b!="opacity"?"px":"";h.custom(c,g,j)}},css:function(a,c){if(a.style[c]){return a.style[c]}else{if(document.defaultView){return document.defaultView.getComputedStyle(a,null).getPropertyValue(c)}else{if(c=="opacity"){c="filter"}var b=a.currentStyle[c.replace(/\-(\w)/g,function(e,d){return d.toUpperCase()})];if(c=="filter"){b=b.replace(/alpha\(opacity=([0-9]+)\)/,function(e,d){return d/100})}return b===""?1:b}}},getPageSize:function(){var f=document,b=window,e=f.compatMode&&f.compatMode!="BackCompat"?f.documentElement:f.body,g=hs.ie&&(hs.uaVersion<9||typeof pageXOffset=="undefined");var c=g?e.clientWidth:(f.documentElement.clientWidth||self.innerWidth),a=g?e.clientHeight:self.innerHeight;hs.page={width:c,height:a,scrollLeft:g?e.scrollLeft:pageXOffset,scrollTop:g?e.scrollTop:pageYOffset};return hs.page},getPosition:function(a){var b={x:a.offsetLeft,y:a.offsetTop};while(a.offsetParent){a=a.offsetParent;b.x+=a.offsetLeft;b.y+=a.offsetTop;if(a!=document.body&&a!=document.documentElement){b.x-=a.scrollLeft;b.y-=a.scrollTop}}return b},expand:function(b,g,d,c){if(!b){b=hs.createElement("a",null,{display:"none"},hs.container)}if(typeof b.getParams=="function"){return g}try{new hs.Expander(b,g,d);return false}catch(f){return true}},getElementByClass:function(e,c,d){var b=e.getElementsByTagName(c);for(var a=0;a<b.length;a++){if((new RegExp(d)).test(b[a].className)){return b[a]}}return null},replaceLang:function(c){c=c.replace(/\s/g," ");var b=/{hs\.lang\.([^}]+)\}/g,d=c.match(b),e;if(d){for(var a=0;a<d.length;a++){e=d[a].replace(b,"$1");if(typeof hs.lang[e]!="undefined"){c=c.replace(d[a],hs.lang[e])}}}return c},focusTopmost:function(){var c=0,b=-1,a=hs.expanders,e,f;for(var d=0;d<a.length;d++){e=a[d];if(e){f=e.wrapper.style.zIndex;if(f&&f>c){c=f;b=d}}}if(b==-1){hs.focusKey=-1}else{a[b].focus()}},getParam:function(b,d){b.getParams=b.onclick;var c=b.getParams?b.getParams():null;b.getParams=null;return(c&&typeof c[d]!="undefined")?c[d]:(typeof hs[d]!="undefined"?hs[d]:null)},getSrc:function(b){var c=hs.getParam(b,"src");if(c){return c}return b.href},getNode:function(e){var c=hs.$(e),d=hs.clones[e],b={};if(!c&&!d){return null}if(!d){d=c.cloneNode(true);d.id="";hs.clones[e]=d;return c}else{return d.cloneNode(true)}},discardElement:function(a){if(a){hs.garbageBin.appendChild(a)}hs.garbageBin.innerHTML=""},dim:function(d){if(!hs.dimmer){a=true;hs.dimmer=hs.createElement("div",{className:"highslide-dimming highslide-viewport-size",owner:"",onclick:function(){hs.close()}},{visibility:"visible",opacity:0},hs.container,true);if(/(Android|iPad|iPhone|iPod)/.test(navigator.userAgent)){var b=document.body;function c(){hs.setStyles(hs.dimmer,{width:b.scrollWidth+"px",height:b.scrollHeight+"px"})}c();hs.addEventListener(window,"resize",c)}}hs.dimmer.style.display="";var a=hs.dimmer.owner=="";hs.dimmer.owner+="|"+d.key;if(a){if(hs.geckoMac&&hs.dimmingGeckoFix){hs.setStyles(hs.dimmer,{background:"url("+hs.graphicsDir+"geckodimmer.png)",opacity:1})}else{hs.animate(hs.dimmer,{opacity:d.dimmingOpacity},hs.dimmingDuration)}}},undim:function(a){if(!hs.dimmer){return}if(typeof a!="undefined"){hs.dimmer.owner=hs.dimmer.owner.replace("|"+a,"")}if((typeof a!="undefined"&&hs.dimmer.owner!="")||(hs.upcoming&&hs.getParam(hs.upcoming,"dimmingOpacity"))){return}if(hs.geckoMac&&hs.dimmingGeckoFix){hs.dimmer.style.display="none"}else{hs.animate(hs.dimmer,{opacity:0},hs.dimmingDuration,null,function(){hs.dimmer.style.display="none"})}},transit:function(a,d){var b=d||hs.getExpander();d=b;if(hs.upcoming){return false}else{hs.last=b}hs.removeEventListener(document,window.opera?"keypress":"keydown",hs.keyHandler);try{hs.upcoming=a;a.onclick()}catch(c){hs.last=hs.upcoming=null}try{if(!a||d.transitions[1]!="crossfade"){d.close()}}catch(c){}return false},previousOrNext:function(a,c){var b=hs.getExpander(a);if(b){return hs.transit(b.getAdjacentAnchor(c),b)}else{return false}},previous:function(a){return hs.previousOrNext(a,-1)},next:function(a){return hs.previousOrNext(a,1)},keyHandler:function(a){if(!a){a=window.event}if(!a.target){a.target=a.srcElement}if(typeof a.target.form!="undefined"){return true}var b=hs.getExpander();var c=null;switch(a.keyCode){case 70:if(b){b.doFullExpand()}return true;case 32:c=2;break;case 34:case 39:case 40:c=1;break;case 8:case 33:case 37:case 38:c=-1;break;case 27:case 13:c=0}if(c!==null){if(c!=2){hs.removeEventListener(document,window.opera?"keypress":"keydown",hs.keyHandler)}if(!hs.enableKeyListener){return true}if(a.preventDefault){a.preventDefault()}else{a.returnValue=false}if(b){if(c==0){b.close()}else{if(c==2){if(b.slideshow){b.slideshow.hitSpace()}}else{if(b.slideshow){b.slideshow.pause()}hs.previousOrNext(b.key,c)}}return false}}return true},registerOverlay:function(a){hs.push(hs.overlays,hs.extend(a,{hsId:"hsId"+hs.idCounter++}))},addSlideshow:function(b){var d=b.slideshowGroup;if(typeof d=="object"){for(var c=0;c<d.length;c++){var e={};for(var a in b){e[a]=b[a]}e.slideshowGroup=d[c];hs.push(hs.slideshows,e)}}else{hs.push(hs.slideshows,b)}},getWrapperKey:function(c,b){var e,d=/^highslide-wrapper-([0-9]+)$/;e=c;while(e.parentNode){if(e.hsKey!==undefined){return e.hsKey}if(e.id&&d.test(e.id)){return e.id.replace(d,"$1")}e=e.parentNode}if(!b){e=c;while(e.parentNode){if(e.tagName&&hs.isHsAnchor(e)){for(var a=0;a<hs.expanders.length;a++){var f=hs.expanders[a];if(f&&f.a==e){return a}}}e=e.parentNode}}return null},getExpander:function(b,a){if(typeof b=="undefined"){return hs.expanders[hs.focusKey]||null}if(typeof b=="number"){return hs.expanders[b]||null}if(typeof b=="string"){b=hs.$(b)}return hs.expanders[hs.getWrapperKey(b,a)]||null},isHsAnchor:function(b){return(b.onclick&&b.onclick.toString().replace(/\s/g," ").match(/hs.(htmlE|e)xpand/))},reOrder:function(){for(var a=0;a<hs.expanders.length;a++){if(hs.expanders[a]&&hs.expanders[a].isExpanded){hs.focusTopmost()}}},mouseClickHandler:function(d){if(!d){d=window.event}if(d.button>1){return true}if(!d.target){d.target=d.srcElement}var b=d.target;while(b.parentNode&&!(/highslide-(image|move|html|resize)/.test(b.className))){b=b.parentNode}var f=hs.getExpander(b);if(f&&(f.isClosing||!f.isExpanded)){return true}if(f&&d.type=="mousedown"){if(d.target.form){return true}var a=b.className.match(/highslide-(image|move|resize)/);if(a){hs.dragArgs={exp:f,type:a[1],left:f.x.pos,width:f.x.size,top:f.y.pos,height:f.y.size,clickX:d.clientX,clickY:d.clientY};hs.addEventListener(document,"mousemove",hs.dragHandler);if(d.preventDefault){d.preventDefault()}if(/highslide-(image|html)-blur/.test(f.content.className)){f.focus();hs.hasFocused=true}return false}}else{if(d.type=="mouseup"){hs.removeEventListener(document,"mousemove",hs.dragHandler);if(hs.dragArgs){if(hs.styleRestoreCursor&&hs.dragArgs.type=="image"){hs.dragArgs.exp.content.style.cursor=hs.styleRestoreCursor}var c=hs.dragArgs.hasDragged;if(!c&&!hs.hasFocused&&!/(move|resize)/.test(hs.dragArgs.type)){f.close()}else{if(c||(!c&&hs.hasHtmlExpanders)){hs.dragArgs.exp.doShowHide("hidden")}}hs.hasFocused=false;hs.dragArgs=null}else{if(/highslide-image-blur/.test(b.className)){b.style.cursor=hs.styleRestoreCursor}}}}return false},dragHandler:function(c){if(!hs.dragArgs){return true}if(!c){c=window.event}var b=hs.dragArgs,d=b.exp;b.dX=c.clientX-b.clickX;b.dY=c.clientY-b.clickY;var f=Math.sqrt(Math.pow(b.dX,2)+Math.pow(b.dY,2));if(!b.hasDragged){b.hasDragged=(b.type!="image"&&f>0)||(f>(hs.dragSensitivity||5))}if(b.hasDragged&&c.clientX>5&&c.clientY>5){if(b.type=="resize"){d.resize(b)}else{d.moveTo(b.left+b.dX,b.top+b.dY);if(b.type=="image"){d.content.style.cursor="move"}}}return false},wrapperMouseHandler:function(c){try{if(!c){c=window.event}var b=/mouseover/i.test(c.type);if(!c.target){c.target=c.srcElement}if(!c.relatedTarget){c.relatedTarget=b?c.fromElement:c.toElement}var d=hs.getExpander(c.target);if(!d.isExpanded){return}if(!d||!c.relatedTarget||hs.getExpander(c.relatedTarget,true)==d||hs.dragArgs){return}for(var a=0;a<d.overlays.length;a++){(function(){var e=hs.$("hsId"+d.overlays[a]);if(e&&e.hideOnMouseOut){if(b){hs.setStyles(e,{visibility:"visible",display:""})}hs.animate(e,{opacity:b?e.opacity:0},e.dur)}})()}}catch(c){}},addEventListener:function(a,c,b){if(a==document&&c=="ready"){hs.push(hs.onReady,b)}try{a.addEventListener(c,b,false)}catch(d){try{a.detachEvent("on"+c,b);a.attachEvent("on"+c,b)}catch(d){a["on"+c]=b}}},removeEventListener:function(a,c,b){try{a.removeEventListener(c,b,false)}catch(d){try{a.detachEvent("on"+c,b)}catch(d){a["on"+c]=null}}},preloadFullImage:function(b){if(hs.continuePreloading&&hs.preloadTheseImages[b]&&hs.preloadTheseImages[b]!="undefined"){var a=document.createElement("img");a.onload=function(){a=null;hs.preloadFullImage(b+1)};a.src=hs.preloadTheseImages[b]}},preloadImages:function(c){if(c&&typeof c!="object"){hs.numberOfImagesToPreload=c}var a=hs.getAnchors();for(var b=0;b<a.images.length&&b<hs.numberOfImagesToPreload;b++){hs.push(hs.preloadTheseImages,hs.getSrc(a.images[b]))}if(hs.outlineType){new hs.Outline(hs.outlineType,function(){hs.preloadFullImage(0)})}else{hs.preloadFullImage(0)}if(hs.restoreCursor){var d=hs.createElement("img",{src:hs.graphicsDir+hs.restoreCursor})}},init:function(){if(!hs.container){hs.ieLt7=hs.ie&&hs.uaVersion<7;hs.ieLt9=hs.ie&&hs.uaVersion<9;hs.getPageSize();for(var a in hs.langDefaults){if(typeof hs[a]!="undefined"){hs.lang[a]=hs[a]}else{if(typeof hs.lang[a]=="undefined"&&typeof hs.langDefaults[a]!="undefined"){hs.lang[a]=hs.langDefaults[a]}}}hs.container=hs.createElement("div",{className:"highslide-container"},{position:"absolute",left:0,top:0,width:"100%",zIndex:hs.zIndexCounter,direction:"ltr"},document.body,true);hs.loading=hs.createElement("a",{className:"highslide-loading",title:hs.lang.loadingTitle,innerHTML:hs.lang.loadingText,href:"javascript:;"},{position:"absolute",top:"-9999px",opacity:hs.loadingOpacity,zIndex:1},hs.container);hs.garbageBin=hs.createElement("div",null,{display:"none"},hs.container);hs.viewport=hs.createElement("div",{className:"highslide-viewport highslide-viewport-size"},{visibility:(hs.safari&&hs.uaVersion<525)?"visible":"hidden"},hs.container,1);Math.linearTween=function(f,e,h,g){return h*f/g+e};Math.easeInQuad=function(f,e,h,g){return h*(f/=g)*f+e};Math.easeOutQuad=function(f,e,h,g){return -h*(f/=g)*(f-2)+e};hs.hideSelects=hs.ieLt7;hs.hideIframes=((window.opera&&hs.uaVersion<9)||navigator.vendor=="KDE"||(hs.ieLt7&&hs.uaVersion<5.5))}},ready:function(){if(hs.isReady){return}hs.isReady=true;for(var a=0;a<hs.onReady.length;a++){hs.onReady[a]()}},updateAnchors:function(){var a,c,k=[],h=[],b={},l;for(var e=0;e<hs.openerTagNames.length;e++){c=document.getElementsByTagName(hs.openerTagNames[e]);for(var d=0;d<c.length;d++){a=c[d];l=hs.isHsAnchor(a);if(l){hs.push(k,a);if(l[0]=="hs.expand"){hs.push(h,a)}var f=hs.getParam(a,"slideshowGroup")||"none";if(!b[f]){b[f]=[]}hs.push(b[f],a)}}}hs.anchors={all:k,groups:b,images:h};return hs.anchors},getAnchors:function(){return hs.anchors||hs.updateAnchors()},close:function(a){var b=hs.getExpander(a);if(b){b.close()}return false}};hs.fx=function(b,a,c){this.options=a;this.elem=b;this.prop=c;if(!a.orig){a.orig={}}};hs.fx.prototype={update:function(){(hs.fx.step[this.prop]||hs.fx.step._default)(this);if(this.options.step){this.options.step.call(this.elem,this.now,this)}},custom:function(e,d,c){this.startTime=(new Date()).getTime();this.start=e;this.end=d;this.unit=c;this.now=this.start;this.pos=this.state=0;var a=this;function b(f){return a.step(f)}b.elem=this.elem;if(b()&&hs.timers.push(b)==1){hs.timerId=setInterval(function(){var g=hs.timers;for(var f=0;f<g.length;f++){if(!g[f]()){g.splice(f--,1)}}if(!g.length){clearInterval(hs.timerId)}},13)}},step:function(d){var c=(new Date()).getTime();if(d||c>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var a=true;for(var b in this.options.curAnim){if(this.options.curAnim[b]!==true){a=false}}if(a){if(this.options.complete){this.options.complete.call(this.elem)}}return false}else{var e=c-this.startTime;this.state=e/this.options.duration;this.pos=this.options.easing(e,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};hs.extend(hs.fx,{step:{opacity:function(a){hs.setStyles(a.elem,{opacity:a.now})},_default:function(a){try{if(a.elem.style&&a.elem.style[a.prop]!=null){a.elem.style[a.prop]=a.now+a.unit}else{a.elem[a.prop]=a.now}}catch(b){}}}});hs.Outline=function(g,e){this.onLoad=e;this.outlineType=g;var a=hs.uaVersion,f;this.hasAlphaImageLoader=hs.ie&&hs.uaVersion<7;if(!g){if(e){e()}return}hs.init();this.table=hs.createElement("table",{cellSpacing:0},{visibility:"hidden",position:"absolute",borderCollapse:"collapse",width:0},hs.container,true);var b=hs.createElement("tbody",null,null,this.table,1);this.td=[];for(var c=0;c<=8;c++){if(c%3==0){f=hs.createElement("tr",null,{height:"auto"},b,true)}this.td[c]=hs.createElement("td",null,null,f,true);var d=c!=4?{lineHeight:0,fontSize:0}:{position:"relative"};hs.setStyles(this.td[c],d)}this.td[4].className=g+" highslide-outline";this.preloadGraphic()};hs.Outline.prototype={preloadGraphic:function(){var b=hs.graphicsDir+(hs.outlinesDir||"outlines/")+this.outlineType+".png";var a=hs.safari&&hs.uaVersion<525?hs.container:null;this.graphic=hs.createElement("img",null,{position:"absolute",top:"-9999px"},a,true);var c=this;this.graphic.onload=function(){c.onGraphicLoad()};this.graphic.src=b},onGraphicLoad:function(){var d=this.offset=this.graphic.width/4,f=[[0,0],[0,-4],[-2,0],[0,-8],0,[-2,-8],[0,-2],[0,-6],[-2,-2]],c={height:(2*d)+"px",width:(2*d)+"px"};for(var b=0;b<=8;b++){if(f[b]){if(this.hasAlphaImageLoader){var a=(b==1||b==7)?"100%":this.graphic.width+"px";var e=hs.createElement("div",null,{width:"100%",height:"100%",position:"relative",overflow:"hidden"},this.td[b],true);hs.createElement("div",null,{filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale, src='"+this.graphic.src+"')",position:"absolute",width:a,height:this.graphic.height+"px",left:(f[b][0]*d)+"px",top:(f[b][1]*d)+"px"},e,true)}else{hs.setStyles(this.td[b],{background:"url("+this.graphic.src+") "+(f[b][0]*d)+"px "+(f[b][1]*d)+"px"})}if(window.opera&&(b==3||b==5)){hs.createElement("div",null,c,this.td[b],true)}hs.setStyles(this.td[b],c)}}this.graphic=null;if(hs.pendingOutlines[this.outlineType]){hs.pendingOutlines[this.outlineType].destroy()}hs.pendingOutlines[this.outlineType]=this;if(this.onLoad){this.onLoad()}},setPosition:function(g,e,c,b,f){var d=this.exp,a=d.wrapper.style,e=e||0,g=g||{x:d.x.pos+e,y:d.y.pos+e,w:d.x.get("wsize")-2*e,h:d.y.get("wsize")-2*e};if(c){this.table.style.visibility=(g.h>=4*this.offset)?"visible":"hidden"}hs.setStyles(this.table,{left:(g.x-this.offset)+"px",top:(g.y-this.offset)+"px",width:(g.w+2*this.offset)+"px"});g.w-=2*this.offset;g.h-=2*this.offset;hs.setStyles(this.td[4],{width:g.w>=0?g.w+"px":0,height:g.h>=0?g.h+"px":0});if(this.hasAlphaImageLoader){this.td[3].style.height=this.td[5].style.height=this.td[4].style.height}},destroy:function(a){if(a){this.table.style.visibility="hidden"}else{hs.discardElement(this.table)}}};hs.Dimension=function(b,a){this.exp=b;this.dim=a;this.ucwh=a=="x"?"Width":"Height";this.wh=this.ucwh.toLowerCase();this.uclt=a=="x"?"Left":"Top";this.lt=this.uclt.toLowerCase();this.ucrb=a=="x"?"Right":"Bottom";this.rb=this.ucrb.toLowerCase();this.p1=this.p2=0};hs.Dimension.prototype={get:function(a){switch(a){case"loadingPos":return this.tpos+this.tb+(this.t-hs.loading["offset"+this.ucwh])/2;case"loadingPosXfade":return this.pos+this.cb+this.p1+(this.size-hs.loading["offset"+this.ucwh])/2;case"wsize":return this.size+2*this.cb+this.p1+this.p2;case"fitsize":return this.clientSize-this.marginMin-this.marginMax;case"maxsize":return this.get("fitsize")-2*this.cb-this.p1-this.p2;case"opos":return this.pos-(this.exp.outline?this.exp.outline.offset:0);case"osize":return this.get("wsize")+(this.exp.outline?2*this.exp.outline.offset:0);case"imgPad":return this.imgSize?Math.round((this.size-this.imgSize)/2):0}},calcBorders:function(){this.cb=(this.exp.content["offset"+this.ucwh]-this.t)/2;this.marginMax=hs["margin"+this.ucrb]},calcThumb:function(){this.t=this.exp.el[this.wh]?parseInt(this.exp.el[this.wh]):this.exp.el["offset"+this.ucwh];this.tpos=this.exp.tpos[this.dim];this.tb=(this.exp.el["offset"+this.ucwh]-this.t)/2;if(this.tpos==0||this.tpos==-1){this.tpos=(hs.page[this.wh]/2)+hs.page["scroll"+this.uclt]}},calcExpanded:function(){var a=this.exp;this.justify="auto";if(a.align=="center"){this.justify="center"}else{if(new RegExp(this.lt).test(a.anchor)){this.justify=null}else{if(new RegExp(this.rb).test(a.anchor)){this.justify="max"}}}this.pos=this.tpos-this.cb+this.tb;if(this.maxHeight&&this.dim=="x"){a.maxWidth=Math.min(a.maxWidth||this.full,a.maxHeight*this.full/a.y.full)}this.size=Math.min(this.full,a["max"+this.ucwh]||this.full);this.minSize=a.allowSizeReduction?Math.min(a["min"+this.ucwh],this.full):this.full;if(a.isImage&&a.useBox){this.size=a[this.wh];this.imgSize=this.full}if(this.dim=="x"&&hs.padToMinWidth){this.minSize=a.minWidth}this.target=a["target"+this.dim.toUpperCase()];this.marginMin=hs["margin"+this.uclt];this.scroll=hs.page["scroll"+this.uclt];this.clientSize=hs.page[this.wh]},setSize:function(a){var b=this.exp;if(b.isImage&&(b.useBox||hs.padToMinWidth)){this.imgSize=a;this.size=Math.max(this.size,this.imgSize);b.content.style[this.lt]=this.get("imgPad")+"px"}else{this.size=a}b.content.style[this.wh]=a+"px";b.wrapper.style[this.wh]=this.get("wsize")+"px";if(b.outline){b.outline.setPosition()}if(this.dim=="x"&&b.overlayBox){b.sizeOverlayBox(true)}if(this.dim=="x"&&b.slideshow&&b.isImage){if(a==this.full){b.slideshow.disable("full-expand")}else{b.slideshow.enable("full-expand")}}},setPos:function(a){this.pos=a;this.exp.wrapper.style[this.lt]=a+"px";if(this.exp.outline){this.exp.outline.setPosition()}}};hs.Expander=function(k,f,b,l){if(document.readyState&&hs.ie&&!hs.isReady){hs.addEventListener(document,"ready",function(){new hs.Expander(k,f,b,l)});return}this.a=k;this.custom=b;this.contentType=l||"image";this.isImage=!this.isHtml;hs.continuePreloading=false;this.overlays=[];this.last=hs.last;hs.last=null;hs.init();var m=this.key=hs.expanders.length;for(var g=0;g<hs.overrides.length;g++){var c=hs.overrides[g];this[c]=f&&typeof f[c]!="undefined"?f[c]:hs[c]}if(!this.src){this.src=k.href}var d=(f&&f.thumbnailId)?hs.$(f.thumbnailId):k;d=this.thumb=d.getElementsByTagName("img")[0]||d;this.thumbsUserSetId=d.id||k.id;for(var g=0;g<hs.expanders.length;g++){if(hs.expanders[g]&&hs.expanders[g].a==k&&!(this.last&&this.transitions[1]=="crossfade")){hs.expanders[g].focus();return false}}if(!hs.allowSimultaneousLoading){for(var g=0;g<hs.expanders.length;g++){if(hs.expanders[g]&&hs.expanders[g].thumb!=d&&!hs.expanders[g].onLoadStarted){hs.expanders[g].cancelLoading()}}}hs.expanders[m]=this;if(!hs.allowMultipleInstances&&!hs.upcoming){if(hs.expanders[m-1]){hs.expanders[m-1].close()}if(typeof hs.focusKey!="undefined"&&hs.expanders[hs.focusKey]){hs.expanders[hs.focusKey].close()}}this.el=d;this.tpos=this.pageOrigin||hs.getPosition(d);hs.getPageSize();var j=this.x=new hs.Dimension(this,"x");j.calcThumb();var h=this.y=new hs.Dimension(this,"y");h.calcThumb();this.wrapper=hs.createElement("div",{id:"highslide-wrapper-"+this.key,className:"highslide-wrapper "+this.wrapperClassName},{visibility:"hidden",position:"absolute",zIndex:hs.zIndexCounter+=2},null,true);this.wrapper.onmouseover=this.wrapper.onmouseout=hs.wrapperMouseHandler;if(this.contentType=="image"&&this.outlineWhileAnimating==2){this.outlineWhileAnimating=0}if(!this.outlineType||(this.last&&this.isImage&&this.transitions[1]=="crossfade")){this[this.contentType+"Create"]()}else{if(hs.pendingOutlines[this.outlineType]){this.connectOutline();this[this.contentType+"Create"]()}else{this.showLoading();var e=this;new hs.Outline(this.outlineType,function(){e.connectOutline();e[e.contentType+"Create"]()})}}return true};hs.Expander.prototype={error:function(a){if(hs.debug){alert("Line "+a.lineNumber+": "+a.message)}else{window.location.href=this.src}},connectOutline:function(){var a=this.outline=hs.pendingOutlines[this.outlineType];a.exp=this;a.table.style.zIndex=this.wrapper.style.zIndex-1;hs.pendingOutlines[this.outlineType]=null},showLoading:function(){if(this.onLoadStarted||this.loading){return}this.loading=hs.loading;var c=this;this.loading.onclick=function(){c.cancelLoading()};var c=this,a=this.x.get("loadingPos")+"px",b=this.y.get("loadingPos")+"px";if(!d&&this.last&&this.transitions[1]=="crossfade"){var d=this.last}if(d){a=d.x.get("loadingPosXfade")+"px";b=d.y.get("loadingPosXfade")+"px";this.loading.style.zIndex=hs.zIndexCounter++}setTimeout(function(){if(c.loading){hs.setStyles(c.loading,{left:a,top:b,zIndex:hs.zIndexCounter++})}},100)},imageCreate:function(){var b=this;var a=document.createElement("img");this.content=a;a.onload=function(){if(hs.expanders[b.key]){b.contentLoaded()}};if(hs.blockRightClick){a.oncontextmenu=function(){return false}}a.className="highslide-image";hs.setStyles(a,{visibility:"hidden",display:"block",position:"absolute",maxWidth:"9999px",zIndex:3});a.title=hs.lang.restoreTitle;if(hs.safari&&hs.uaVersion<525){hs.container.appendChild(a)}if(hs.ie&&hs.flushImgSize){a.src=null}a.src=this.src;this.showLoading()},contentLoaded:function(){try{if(!this.content){return}this.content.onload=null;if(this.onLoadStarted){return}else{this.onLoadStarted=true}var j=this.x,g=this.y;if(this.loading){hs.setStyles(this.loading,{top:"-9999px"});this.loading=null}j.full=this.content.width;g.full=this.content.height;hs.setStyles(this.content,{width:j.t+"px",height:g.t+"px"});this.wrapper.appendChild(this.content);hs.container.appendChild(this.wrapper);j.calcBorders();g.calcBorders();hs.setStyles(this.wrapper,{left:(j.tpos+j.tb-j.cb)+"px",top:(g.tpos+j.tb-g.cb)+"px"});this.initSlideshow();this.getOverlays();var f=j.full/g.full;j.calcExpanded();this.justify(j);g.calcExpanded();this.justify(g);if(this.overlayBox){this.sizeOverlayBox(0,1)}if(this.allowSizeReduction){this.correctRatio(f);var k=this.slideshow;if(k&&this.last&&k.controls&&k.fixedControls){var h=k.overlayOptions.position||"",a;for(var c in hs.oPos){for(var b=0;b<5;b++){a=this[c];if(h.match(hs.oPos[c][b])){a.pos=this.last[c].pos+(this.last[c].p1-a.p1)+(this.last[c].size-a.size)*[0,0,0.5,1,1][b];if(k.fixedControls=="fit"){if(a.pos+a.size+a.p1+a.p2>a.scroll+a.clientSize-a.marginMax){a.pos=a.scroll+a.clientSize-a.size-a.marginMin-a.marginMax-a.p1-a.p2}if(a.pos<a.scroll+a.marginMin){a.pos=a.scroll+a.marginMin}}}}}}if(this.isImage&&this.x.full>(this.x.imgSize||this.x.size)){this.createFullExpand();if(this.overlays.length==1){this.sizeOverlayBox()}}}this.show()}catch(d){this.error(d)}},justify:function(f,b){var g,h=f.target,e=f==this.x?"x":"y";if(h&&h.match(/ /)){g=h.split(" ");h=g[0]}if(h&&hs.$(h)){f.pos=hs.getPosition(hs.$(h))[e];if(g&&g[1]&&g[1].match(/^[-]?[0-9]+px$/)){f.pos+=parseInt(g[1])}if(f.size<f.minSize){f.size=f.minSize}}else{if(f.justify=="auto"||f.justify=="center"){var d=false;var a=f.exp.allowSizeReduction;if(f.justify=="center"){f.pos=Math.round(f.scroll+(f.clientSize+f.marginMin-f.marginMax-f.get("wsize"))/2)}else{f.pos=Math.round(f.pos-((f.get("wsize")-f.t)/2))}if(f.pos<f.scroll+f.marginMin){f.pos=f.scroll+f.marginMin;d=true}if(!b&&f.size<f.minSize){f.size=f.minSize;a=false}if(f.pos+f.get("wsize")>f.scroll+f.clientSize-f.marginMax){if(!b&&d&&a){f.size=Math.min(f.size,f.get(e=="y"?"fitsize":"maxsize"))}else{if(f.get("wsize")<f.get("fitsize")){f.pos=f.scroll+f.clientSize-f.marginMax-f.get("wsize")}else{f.pos=f.scroll+f.marginMin;if(!b&&a){f.size=f.get(e=="y"?"fitsize":"maxsize")}}}}if(!b&&f.size<f.minSize){f.size=f.minSize;a=false}}else{if(f.justify=="max"){f.pos=Math.floor(f.pos-f.size+f.t)}}}if(f.pos<f.marginMin){var c=f.pos;f.pos=f.marginMin;if(a&&!b){f.size=f.size-(f.pos-c)}}},correctRatio:function(c){var a=this.x,g=this.y,e=false,d=Math.min(a.full,a.size),b=Math.min(g.full,g.size),f=(this.useBox||hs.padToMinWidth);if(d/b>c){d=b*c;if(d<a.minSize){d=a.minSize;b=d/c}e=true}else{if(d/b<c){b=d/c;e=true}}if(hs.padToMinWidth&&a.full<a.minSize){a.imgSize=a.full;g.size=g.imgSize=g.full}else{if(this.useBox){a.imgSize=d;g.imgSize=b}else{a.size=d;g.size=b}}e=this.fitOverlayBox(this.useBox?null:c,e);if(f&&g.size<g.imgSize){g.imgSize=g.size;a.imgSize=g.size*c}if(e||f){a.pos=a.tpos-a.cb+a.tb;a.minSize=a.size;this.justify(a,true);g.pos=g.tpos-g.cb+g.tb;g.minSize=g.size;this.justify(g,true);if(this.overlayBox){this.sizeOverlayBox()}}},fitOverlayBox:function(b,c){var a=this.x,d=this.y;if(this.overlayBox){while(d.size>this.minHeight&&a.size>this.minWidth&&d.get("wsize")>d.get("fitsize")){d.size-=10;if(b){a.size=d.size*b}this.sizeOverlayBox(0,1);c=true}}return c},show:function(){var a=this.x,b=this.y;this.doShowHide("hidden");if(this.slideshow&&this.slideshow.thumbstrip){this.slideshow.thumbstrip.selectThumb()}this.changeSize(1,{wrapper:{width:a.get("wsize"),height:b.get("wsize"),left:a.pos,top:b.pos},content:{left:a.p1+a.get("imgPad"),top:b.p1+b.get("imgPad"),width:a.imgSize||a.size,height:b.imgSize||b.size}},hs.expandDuration)},changeSize:function(d,i,b){var k=this.transitions,e=d?(this.last?this.last.a:null):hs.upcoming,j=(k[1]&&e&&hs.getParam(e,"transitions")[1]==k[1])?k[1]:k[0];if(this[j]&&j!="expand"){this[j](d,i);return}if(this.outline&&!this.outlineWhileAnimating){if(d){this.outline.setPosition()}else{this.outline.destroy()}}if(!d){this.destroyOverlays()}var c=this,h=c.x,g=c.y,f=this.easing;if(!d){f=this.easingClose||f}var a=d?function(){if(c.outline){c.outline.table.style.visibility="visible"}setTimeout(function(){c.afterExpand()},50)}:function(){c.afterClose()};if(d){hs.setStyles(this.wrapper,{width:h.t+"px",height:g.t+"px"})}if(this.fadeInOut){hs.setStyles(this.wrapper,{opacity:d?0:1});hs.extend(i.wrapper,{opacity:d})}hs.animate(this.wrapper,i.wrapper,{duration:b,easing:f,step:function(n,l){if(c.outline&&c.outlineWhileAnimating&&l.prop=="top"){var m=d?l.pos:1-l.pos;var o={w:h.t+(h.get("wsize")-h.t)*m,h:g.t+(g.get("wsize")-g.t)*m,x:h.tpos+(h.pos-h.tpos)*m,y:g.tpos+(g.pos-g.tpos)*m};c.outline.setPosition(o,0,1)}}});hs.animate(this.content,i.content,b,f,a);if(d){this.wrapper.style.visibility="visible";this.content.style.visibility="visible";this.a.className+=" highslide-active-anchor"}},fade:function(f,h){this.outlineWhileAnimating=false;var c=this,j=f?hs.expandDuration:0;if(f){hs.animate(this.wrapper,h.wrapper,0);hs.setStyles(this.wrapper,{opacity:0,visibility:"visible"});hs.animate(this.content,h.content,0);this.content.style.visibility="visible";hs.animate(this.wrapper,{opacity:1},j,null,function(){c.afterExpand()})}if(this.outline){this.outline.table.style.zIndex=this.wrapper.style.zIndex;var b=f||-1,d=this.outline.offset,a=f?3:d,g=f?d:3;for(var e=a;b*e<=b*g;e+=b,j+=25){(function(){var i=f?g-e:a-e;setTimeout(function(){c.outline.setPosition(0,i,1)},j)})()}}if(f){}else{setTimeout(function(){if(c.outline){c.outline.destroy(c.preserveContent)}c.destroyOverlays();hs.animate(c.wrapper,{opacity:0},hs.restoreDuration,null,function(){c.afterClose()})},j)}},crossfade:function(g,m,o){if(!g){return}var f=this,p=this.last,l=this.x,k=this.y,d=p.x,b=p.y,a=this.wrapper,i=this.content,c=this.overlayBox;hs.removeEventListener(document,"mousemove",hs.dragHandler);hs.setStyles(i,{width:(l.imgSize||l.size)+"px",height:(k.imgSize||k.size)+"px"});if(c){c.style.overflow="visible"}this.outline=p.outline;if(this.outline){this.outline.exp=f}p.outline=null;var h=hs.createElement("div",{className:"highslide-"+this.contentType},{position:"absolute",zIndex:4,overflow:"hidden",display:"none"});var j={oldImg:p,newImg:this};for(var e in j){this[e]=j[e].content.cloneNode(1);hs.setStyles(this[e],{position:"absolute",border:0,visibility:"visible"});h.appendChild(this[e])}a.appendChild(h);if(c){c.className="";a.appendChild(c)}h.style.display="";p.content.style.display="none";if(hs.safari&&hs.uaVersion<525){this.wrapper.style.visibility="visible"}hs.animate(a,{width:l.size},{duration:hs.transitionDuration,step:function(u,r){var x=r.pos,q=1-x;var w,s={},t=["pos","size","p1","p2"];for(var v in t){w=t[v];s["x"+w]=Math.round(q*d[w]+x*l[w]);s["y"+w]=Math.round(q*b[w]+x*k[w]);s.ximgSize=Math.round(q*(d.imgSize||d.size)+x*(l.imgSize||l.size));s.ximgPad=Math.round(q*d.get("imgPad")+x*l.get("imgPad"));s.yimgSize=Math.round(q*(b.imgSize||b.size)+x*(k.imgSize||k.size));s.yimgPad=Math.round(q*b.get("imgPad")+x*k.get("imgPad"))}if(f.outline){f.outline.setPosition({x:s.xpos,y:s.ypos,w:s.xsize+s.xp1+s.xp2+2*l.cb,h:s.ysize+s.yp1+s.yp2+2*k.cb})}p.wrapper.style.clip="rect("+(s.ypos-b.pos)+"px, "+(s.xsize+s.xp1+s.xp2+s.xpos+2*d.cb-d.pos)+"px, "+(s.ysize+s.yp1+s.yp2+s.ypos+2*b.cb-b.pos)+"px, "+(s.xpos-d.pos)+"px)";hs.setStyles(i,{top:(s.yp1+k.get("imgPad"))+"px",left:(s.xp1+l.get("imgPad"))+"px",marginTop:(k.pos-s.ypos)+"px",marginLeft:(l.pos-s.xpos)+"px"});hs.setStyles(a,{top:s.ypos+"px",left:s.xpos+"px",width:(s.xp1+s.xp2+s.xsize+2*l.cb)+"px",height:(s.yp1+s.yp2+s.ysize+2*k.cb)+"px"});hs.setStyles(h,{width:(s.ximgSize||s.xsize)+"px",height:(s.yimgSize||s.ysize)+"px",left:(s.xp1+s.ximgPad)+"px",top:(s.yp1+s.yimgPad)+"px",visibility:"visible"});hs.setStyles(f.oldImg,{top:(b.pos-s.ypos+b.p1-s.yp1+b.get("imgPad")-s.yimgPad)+"px",left:(d.pos-s.xpos+d.p1-s.xp1+d.get("imgPad")-s.ximgPad)+"px"});hs.setStyles(f.newImg,{opacity:x,top:(k.pos-s.ypos+k.p1-s.yp1+k.get("imgPad")-s.yimgPad)+"px",left:(l.pos-s.xpos+l.p1-s.xp1+l.get("imgPad")-s.ximgPad)+"px"});if(c){hs.setStyles(c,{width:s.xsize+"px",height:s.ysize+"px",left:(s.xp1+l.cb)+"px",top:(s.yp1+k.cb)+"px"})}},complete:function(){a.style.visibility=i.style.visibility="visible";i.style.display="block";hs.discardElement(h);f.afterExpand();p.afterClose();f.last=null}})},reuseOverlay:function(d,c){if(!this.last){return false}for(var b=0;b<this.last.overlays.length;b++){var a=hs.$("hsId"+this.last.overlays[b]);if(a&&a.hsId==d.hsId){this.genOverlayBox();a.reuse=this.key;hs.push(this.overlays,this.last.overlays[b]);return true}}return false},afterExpand:function(){this.isExpanded=true;this.focus();if(this.dimmingOpacity){hs.dim(this)}if(hs.upcoming&&hs.upcoming==this.a){hs.upcoming=null}this.prepareNextOutline();var c=hs.page,b=hs.mouse.x+c.scrollLeft,a=hs.mouse.y+c.scrollTop;this.mouseIsOver=this.x.pos<b&&b<this.x.pos+this.x.get("wsize")&&this.y.pos<a&&a<this.y.pos+this.y.get("wsize");if(this.overlayBox){this.showOverlays()}},prepareNextOutline:function(){var a=this.key;var b=this.outlineType;new hs.Outline(b,function(){try{hs.expanders[a].preloadNext()}catch(c){}})},preloadNext:function(){var b=this.getAdjacentAnchor(1);if(b&&b.onclick.toString().match(/hs\.expand/)){var a=hs.createElement("img",{src:hs.getSrc(b)})}},getAdjacentAnchor:function(c){var b=this.getAnchorIndex(),a=hs.anchors.groups[this.slideshowGroup||"none"];if(a&&!a[b+c]&&this.slideshow&&this.slideshow.repeat){if(c==1){return a[0]}else{if(c==-1){return a[a.length-1]}}}return(a&&a[b+c])||null},getAnchorIndex:function(){var a=hs.getAnchors().groups[this.slideshowGroup||"none"];if(a){for(var b=0;b<a.length;b++){if(a[b]==this.a){return b}}}return null},getNumber:function(){if(this[this.numberPosition]){var a=hs.anchors.groups[this.slideshowGroup||"none"];if(a){var b=hs.lang.number.replace("%1",this.getAnchorIndex()+1).replace("%2",a.length);this[this.numberPosition].innerHTML='<div class="highslide-number">'+b+"</div>"+this[this.numberPosition].innerHTML}}},initSlideshow:function(){if(!this.last){for(var c=0;c<hs.slideshows.length;c++){var b=hs.slideshows[c],d=b.slideshowGroup;if(typeof d=="undefined"||d===null||d===this.slideshowGroup){this.slideshow=new hs.Slideshow(this.key,b)}}}else{this.slideshow=this.last.slideshow}var b=this.slideshow;if(!b){return}var a=b.expKey=this.key;b.checkFirstAndLast();b.disable("full-expand");if(b.controls){this.createOverlay(hs.extend(b.overlayOptions||{},{overlayId:b.controls,hsId:"controls",zIndex:5}))}if(b.thumbstrip){b.thumbstrip.add(this)}if(!this.last&&this.autoplay){b.play(true)}if(b.autoplay){b.autoplay=setTimeout(function(){hs.next(a)},(b.interval||500))}},cancelLoading:function(){hs.discardElement(this.wrapper);hs.expanders[this.key]=null;if(hs.upcoming==this.a){hs.upcoming=null}hs.undim(this.key);if(this.loading){hs.loading.style.left="-9999px"}},writeCredits:function(){if(this.credits){return}this.credits=hs.createElement("a",{href:hs.creditsHref,target:hs.creditsTarget,className:"highslide-credits",innerHTML:hs.lang.creditsText,title:hs.lang.creditsTitle});this.createOverlay({overlayId:this.credits,position:this.creditsPosition||"top left",hsId:"credits"})},getInline:function(types,addOverlay){for(var i=0;i<types.length;i++){var type=types[i],s=null;if(!this[type+"Id"]&&this.thumbsUserSetId){this[type+"Id"]=type+"-for-"+this.thumbsUserSetId}if(this[type+"Id"]){this[type]=hs.getNode(this[type+"Id"])}if(!this[type]&&!this[type+"Text"]&&this[type+"Eval"]){try{s=eval(this[type+"Eval"])}catch(e){}}if(!this[type]&&this[type+"Text"]){s=this[type+"Text"]}if(!this[type]&&!s){this[type]=hs.getNode(this.a["_"+type+"Id"]);if(!this[type]){var next=this.a.nextSibling;while(next&&!hs.isHsAnchor(next)){if((new RegExp("highslide-"+type)).test(next.className||null)){if(!next.id){this.a["_"+type+"Id"]=next.id="hsId"+hs.idCounter++}this[type]=hs.getNode(next.id);break}next=next.nextSibling}}}if(!this[type]&&!s&&this.numberPosition==type){s="\n"}if(!this[type]&&s){this[type]=hs.createElement("div",{className:"highslide-"+type,innerHTML:s})}if(addOverlay&&this[type]){var o={position:(type=="heading")?"above":"below"};for(var x in this[type+"Overlay"]){o[x]=this[type+"Overlay"][x]}o.overlayId=this[type];this.createOverlay(o)}}},doShowHide:function(a){if(hs.hideSelects){this.showHideElements("SELECT",a)}if(hs.hideIframes){this.showHideElements("IFRAME",a)}if(hs.geckoMac){this.showHideElements("*",a)}},showHideElements:function(c,b){var e=document.getElementsByTagName(c);var a=c=="*"?"overflow":"visibility";for(var f=0;f<e.length;f++){if(a=="visibility"||(document.defaultView.getComputedStyle(e[f],"").getPropertyValue("overflow")=="auto"||e[f].getAttribute("hidden-by")!=null)){var h=e[f].getAttribute("hidden-by");if(b=="visible"&&h){h=h.replace("["+this.key+"]","");e[f].setAttribute("hidden-by",h);if(!h){e[f].style[a]=e[f].origProp}}else{if(b=="hidden"){var k=hs.getPosition(e[f]);k.w=e[f].offsetWidth;k.h=e[f].offsetHeight;if(!this.dimmingOpacity){var j=(k.x+k.w<this.x.get("opos")||k.x>this.x.get("opos")+this.x.get("osize"));var g=(k.y+k.h<this.y.get("opos")||k.y>this.y.get("opos")+this.y.get("osize"))}var d=hs.getWrapperKey(e[f]);if(!j&&!g&&d!=this.key){if(!h){e[f].setAttribute("hidden-by","["+this.key+"]");e[f].origProp=e[f].style[a];e[f].style[a]="hidden"}else{if(h.indexOf("["+this.key+"]")==-1){e[f].setAttribute("hidden-by",h+"["+this.key+"]")}}}else{if((h=="["+this.key+"]"||hs.focusKey==d)&&d!=this.key){e[f].setAttribute("hidden-by","");e[f].style[a]=e[f].origProp||""}else{if(h&&h.indexOf("["+this.key+"]")>-1){e[f].setAttribute("hidden-by",h.replace("["+this.key+"]",""))}}}}}}}},focus:function(){this.wrapper.style.zIndex=hs.zIndexCounter+=2;for(var a=0;a<hs.expanders.length;a++){if(hs.expanders[a]&&a==hs.focusKey){var b=hs.expanders[a];b.content.className+=" highslide-"+b.contentType+"-blur";b.content.style.cursor=hs.ieLt7?"hand":"pointer";b.content.title=hs.lang.focusTitle}}if(this.outline){this.outline.table.style.zIndex=this.wrapper.style.zIndex-1}this.content.className="highslide-"+this.contentType;this.content.title=hs.lang.restoreTitle;if(hs.restoreCursor){hs.styleRestoreCursor=window.opera?"pointer":"url("+hs.graphicsDir+hs.restoreCursor+"), pointer";if(hs.ieLt7&&hs.uaVersion<6){hs.styleRestoreCursor="hand"}this.content.style.cursor=hs.styleRestoreCursor}hs.focusKey=this.key;hs.addEventListener(document,window.opera?"keypress":"keydown",hs.keyHandler)},moveTo:function(a,b){this.x.setPos(a);this.y.setPos(b)},resize:function(d){var a,b,c=d.width/d.height;a=Math.max(d.width+d.dX,Math.min(this.minWidth,this.x.full));if(this.isImage&&Math.abs(a-this.x.full)<12){a=this.x.full}b=a/c;if(b<Math.min(this.minHeight,this.y.full)){b=Math.min(this.minHeight,this.y.full);if(this.isImage){a=b*c}}this.resizeTo(a,b)},resizeTo:function(a,b){this.y.setSize(b);this.x.setSize(a);this.wrapper.style.height=this.y.get("wsize")+"px"},close:function(){if(this.isClosing||!this.isExpanded){return}if(this.transitions[1]=="crossfade"&&hs.upcoming){hs.getExpander(hs.upcoming).cancelLoading();hs.upcoming=null}this.isClosing=true;if(this.slideshow&&!hs.upcoming){this.slideshow.pause()}hs.removeEventListener(document,window.opera?"keypress":"keydown",hs.keyHandler);try{this.content.style.cursor="default";this.changeSize(0,{wrapper:{width:this.x.t,height:this.y.t,left:this.x.tpos-this.x.cb+this.x.tb,top:this.y.tpos-this.y.cb+this.y.tb},content:{left:0,top:0,width:this.x.t,height:this.y.t}},hs.restoreDuration)}catch(a){this.afterClose()}},createOverlay:function(e){var d=e.overlayId,a=(e.relativeTo=="viewport"&&!/panel$/.test(e.position));if(typeof d=="string"){d=hs.getNode(d)}if(e.html){d=hs.createElement("div",{innerHTML:e.html})}if(!d||typeof d=="string"){return}d.style.display="block";e.hsId=e.hsId||e.overlayId;if(this.transitions[1]=="crossfade"&&this.reuseOverlay(e,d)){return}this.genOverlayBox();var c=e.width&&/^[0-9]+(px|%)$/.test(e.width)?e.width:"auto";if(/^(left|right)panel$/.test(e.position)&&!/^[0-9]+px$/.test(e.width)){c="200px"}var b=hs.createElement("div",{id:"hsId"+hs.idCounter++,hsId:e.hsId},{position:"absolute",visibility:"hidden",width:c,direction:hs.lang.cssDirection||"",opacity:0},a?hs.viewport:this.overlayBox,true);if(a){b.hsKey=this.key}b.appendChild(d);hs.extend(b,{opacity:1,offsetX:0,offsetY:0,dur:(e.fade===0||e.fade===false||(e.fade==2&&hs.ie))?0:250});hs.extend(b,e);if(this.gotOverlays){this.positionOverlay(b);if(!b.hideOnMouseOut||this.mouseIsOver){hs.animate(b,{opacity:b.opacity},b.dur)}}hs.push(this.overlays,hs.idCounter-1)},positionOverlay:function(e){var f=e.position||"middle center",c=(e.relativeTo=="viewport"),b=e.offsetX,a=e.offsetY;if(c){hs.viewport.style.display="block";e.hsKey=this.key;if(e.offsetWidth>e.parentNode.offsetWidth){e.style.width="100%"}}else{if(e.parentNode!=this.overlayBox){this.overlayBox.appendChild(e)}}if(/left$/.test(f)){e.style.left=b+"px"}if(/center$/.test(f)){hs.setStyles(e,{left:"50%",marginLeft:(b-Math.round(e.offsetWidth/2))+"px"})}if(/right$/.test(f)){e.style.right=-b+"px"}if(/^leftpanel$/.test(f)){hs.setStyles(e,{right:"100%",marginRight:this.x.cb+"px",top:-this.y.cb+"px",bottom:-this.y.cb+"px",overflow:"auto"});this.x.p1=e.offsetWidth}else{if(/^rightpanel$/.test(f)){hs.setStyles(e,{left:"100%",marginLeft:this.x.cb+"px",top:-this.y.cb+"px",bottom:-this.y.cb+"px",overflow:"auto"});this.x.p2=e.offsetWidth}}var d=e.parentNode.offsetHeight;e.style.height="auto";if(c&&e.offsetHeight>d){e.style.height=hs.ieLt7?d+"px":"100%"}if(/^top/.test(f)){e.style.top=a+"px"}if(/^middle/.test(f)){hs.setStyles(e,{top:"50%",marginTop:(a-Math.round(e.offsetHeight/2))+"px"})}if(/^bottom/.test(f)){e.style.bottom=-a+"px"}if(/^above$/.test(f)){hs.setStyles(e,{left:(-this.x.p1-this.x.cb)+"px",right:(-this.x.p2-this.x.cb)+"px",bottom:"100%",marginBottom:this.y.cb+"px",width:"auto"});this.y.p1=e.offsetHeight}else{if(/^below$/.test(f)){hs.setStyles(e,{position:"relative",left:(-this.x.p1-this.x.cb)+"px",right:(-this.x.p2-this.x.cb)+"px",top:"100%",marginTop:this.y.cb+"px",width:"auto"});this.y.p2=e.offsetHeight;e.style.position="absolute"}}},getOverlays:function(){this.getInline(["heading","caption"],true);this.getNumber();if(this.heading&&this.dragByHeading){this.heading.className+=" highslide-move"}if(hs.showCredits){this.writeCredits()}for(var a=0;a<hs.overlays.length;a++){var d=hs.overlays[a],e=d.thumbnailId,b=d.slideshowGroup;if((!e&&!b)||(e&&e==this.thumbsUserSetId)||(b&&b===this.slideshowGroup)){this.createOverlay(d)}}var c=[];for(var a=0;a<this.overlays.length;a++){var d=hs.$("hsId"+this.overlays[a]);if(/panel$/.test(d.position)){this.positionOverlay(d)}else{hs.push(c,d)}}for(var a=0;a<c.length;a++){this.positionOverlay(c[a])}this.gotOverlays=true},genOverlayBox:function(){if(!this.overlayBox){this.overlayBox=hs.createElement("div",{className:this.wrapperClassName},{position:"absolute",width:(this.x.size||(this.useBox?this.width:null)||this.x.full)+"px",height:(this.y.size||this.y.full)+"px",visibility:"hidden",overflow:"hidden",zIndex:hs.ie?4:"auto"},hs.container,true)}},sizeOverlayBox:function(f,d){var c=this.overlayBox,a=this.x,h=this.y;hs.setStyles(c,{width:a.size+"px",height:h.size+"px"});if(f||d){for(var e=0;e<this.overlays.length;e++){var g=hs.$("hsId"+this.overlays[e]);var b=(hs.ieLt7||document.compatMode=="BackCompat");if(g&&/^(above|below)$/.test(g.position)){if(b){g.style.width=(c.offsetWidth+2*a.cb+a.p1+a.p2)+"px"}h[g.position=="above"?"p1":"p2"]=g.offsetHeight}if(g&&b&&/^(left|right)panel$/.test(g.position)){g.style.height=(c.offsetHeight+2*h.cb)+"px"}}}if(f){hs.setStyles(this.content,{top:h.p1+"px"});hs.setStyles(c,{top:(h.p1+h.cb)+"px"})}},showOverlays:function(){var a=this.overlayBox;a.className="";hs.setStyles(a,{top:(this.y.p1+this.y.cb)+"px",left:(this.x.p1+this.x.cb)+"px",overflow:"visible"});if(hs.safari){a.style.visibility="visible"}this.wrapper.appendChild(a);for(var c=0;c<this.overlays.length;c++){var d=hs.$("hsId"+this.overlays[c]);d.style.zIndex=d.zIndex||4;if(!d.hideOnMouseOut||this.mouseIsOver){d.style.visibility="visible";hs.setStyles(d,{visibility:"visible",display:""});hs.animate(d,{opacity:d.opacity},d.dur)}}},destroyOverlays:function(){if(!this.overlays.length){return}if(this.slideshow){var d=this.slideshow.controls;if(d&&hs.getExpander(d)==this){d.parentNode.removeChild(d)}}for(var a=0;a<this.overlays.length;a++){var b=hs.$("hsId"+this.overlays[a]);if(b&&b.parentNode==hs.viewport&&hs.getExpander(b)==this){hs.discardElement(b)}}hs.discardElement(this.overlayBox)},createFullExpand:function(){if(this.slideshow&&this.slideshow.controls){this.slideshow.enable("full-expand");return}this.fullExpandLabel=hs.createElement("a",{href:"javascript:hs.expanders["+this.key+"].doFullExpand();",title:hs.lang.fullExpandTitle,className:"highslide-full-expand"});this.createOverlay({overlayId:this.fullExpandLabel,position:hs.fullExpandPosition,hideOnMouseOut:true,opacity:hs.fullExpandOpacity})},doFullExpand:function(){try{if(this.fullExpandLabel){hs.discardElement(this.fullExpandLabel)}this.focus();var c=this.x.size,a=this.y.size;this.resizeTo(this.x.full,this.y.full);var b=this.x.pos-(this.x.size-c)/2;if(b<hs.marginLeft){b=hs.marginLeft}var f=this.y.pos-(this.y.size-a)/2;if(f<hs.marginTop){f=hs.marginTop}this.moveTo(b,f);this.doShowHide("hidden")}catch(d){this.error(d)}},afterClose:function(){this.a.className=this.a.className.replace("highslide-active-anchor","");this.doShowHide("visible");if(this.outline&&this.outlineWhileAnimating){this.outline.destroy()}hs.discardElement(this.wrapper);this.destroyOverlays();if(!hs.viewport.childNodes.length){hs.viewport.style.display="none"}if(this.dimmingOpacity){hs.undim(this.key)}hs.expanders[this.key]=null;hs.reOrder()}};hs.Slideshow=function(c,b){if(hs.dynamicallyUpdateAnchors!==false){hs.updateAnchors()}this.expKey=c;for(var a in b){this[a]=b[a]}if(this.useControls){this.getControls()}if(this.thumbstrip){this.thumbstrip=hs.Thumbstrip(this)}};hs.Slideshow.prototype={getControls:function(){this.controls=hs.createElement("div",{innerHTML:hs.replaceLang(hs.skin.controls)},null,hs.container);var b=["play","pause","previous","next","move","full-expand","close"];this.btn={};var c=this;for(var a=0;a<b.length;a++){this.btn[b[a]]=hs.getElementByClass(this.controls,"li","highslide-"+b[a]);this.enable(b[a])}this.btn.pause.style.display="none"},checkFirstAndLast:function(){if(this.repeat||!this.controls){return}var c=hs.expanders[this.expKey],b=c.getAnchorIndex(),a=/disabled$/;if(b==0){this.disable("previous")}else{if(a.test(this.btn.previous.getElementsByTagName("a")[0].className)){this.enable("previous")}}if(b+1==hs.anchors.groups[c.slideshowGroup||"none"].length){this.disable("next");this.disable("play")}else{if(a.test(this.btn.next.getElementsByTagName("a")[0].className)){this.enable("next");this.enable("play")}}},enable:function(d){if(!this.btn){return}var c=this,b=this.btn[d].getElementsByTagName("a")[0],e=/disabled$/;b.onclick=function(){c[d]();return false};if(e.test(b.className)){b.className=b.className.replace(e,"")}},disable:function(c){if(!this.btn){return}var b=this.btn[c].getElementsByTagName("a")[0];b.onclick=function(){return false};if(!/disabled$/.test(b.className)){b.className+=" disabled"}},hitSpace:function(){if(this.autoplay){this.pause()}else{this.play()}},play:function(a){if(this.btn){this.btn.play.style.display="none";this.btn.pause.style.display=""}this.autoplay=true;if(!a){hs.next(this.expKey)}},pause:function(){if(this.btn){this.btn.pause.style.display="none";this.btn.play.style.display=""}clearTimeout(this.autoplay);this.autoplay=null},previous:function(){this.pause();hs.previous(this.btn.previous)},next:function(){this.pause();hs.next(this.btn.next)},move:function(){},"full-expand":function(){hs.getExpander().doFullExpand()},close:function(){hs.close(this.btn.close)}};hs.Thumbstrip=function(k){function p(i){hs.extend(f||{},{overlayId:r,hsId:"thumbstrip",className:"highslide-thumbstrip-"+m+"-overlay "+(f.className||"")});if(hs.ieLt7){f.fade=0}i.createOverlay(f);hs.setStyles(r.parentNode,{overflow:"hidden"})}function c(i){d(undefined,Math.round(i*r[h?"offsetWidth":"offsetHeight"]*0.7))}function d(L,M){if(L===undefined){for(var K=0;K<j.length;K++){if(j[K]==hs.expanders[k.expKey].a){L=K;break}}}if(L===undefined){return}var G=r.getElementsByTagName("a"),z=G[L],w=z.parentNode,y=h?"Left":"Top",N=h?"Right":"Bottom",I=h?"Width":"Height",B="offset"+y,H="offset"+I,x=n.parentNode.parentNode[H],F=x-s[H],v=parseInt(s.style[h?"left":"top"])||0,C=v,D=20;if(M!==undefined){C=v-M;if(F>0){F=0}if(C>0){C=0}if(C<F){C=F}}else{for(var K=0;K<G.length;K++){G[K].className=""}z.className="highslide-active-anchor";var J=L>0?G[L-1].parentNode[B]:w[B],A=w[B]+w[H]+(G[L+1]?G[L+1].parentNode[H]:0);if(A>x-v){C=x-A}else{if(J<-v){C=-J}}}var E=w[B]+(w[H]-g[H])/2+C;hs.animate(s,h?{left:C}:{top:C},null,"easeOutQuad");hs.animate(g,h?{left:E}:{top:E},null,"easeOutQuad");l.style.display=C<0?"block":"none";t.style.display=(C>F)?"block":"none"}var j=hs.anchors.groups[hs.expanders[k.expKey].slideshowGroup||"none"],f=k.thumbstrip,m=f.mode||"horizontal",u=(m=="float"),o=u?["div","ul","li","span"]:["table","tbody","tr","td"],h=(m=="horizontal"),r=hs.createElement("div",{className:"highslide-thumbstrip highslide-thumbstrip-"+m,innerHTML:'<div class="highslide-thumbstrip-inner"><'+o[0]+"><"+o[1]+"></"+o[1]+"></"+o[0]+'></div><div class="highslide-scroll-up"><div></div></div><div class="highslide-scroll-down"><div></div></div><div class="highslide-marker"><div></div></div>'},{display:"none"},hs.container),e=r.childNodes,n=e[0],l=e[1],t=e[2],g=e[3],s=n.firstChild,a=r.getElementsByTagName(o[1])[0],b;for(var q=0;q<j.length;q++){if(q==0||!h){b=hs.createElement(o[2],null,null,a)}(function(){var v=j[q],i=hs.createElement(o[3],null,null,b),w=q;hs.createElement("a",{href:v.href,title:v.title,onclick:function(){if(/highslide-active-anchor/.test(this.className)){return false}hs.getExpander(this).focus();return hs.transit(v)},innerHTML:hs.stripItemFormatter?hs.stripItemFormatter(v):v.innerHTML},null,i)})()}if(!u){l.onclick=function(){c(-1)};t.onclick=function(){c(1)};hs.addEventListener(a,document.onmousewheel!==undefined?"mousewheel":"DOMMouseScroll",function(i){var v=0;i=i||window.event;if(i.wheelDelta){v=i.wheelDelta/120;if(hs.opera){v=-v}}else{if(i.detail){v=-i.detail/3}}if(v){c(-v*0.2)}if(i.preventDefault){i.preventDefault()}i.returnValue=false})}return{add:p,selectThumb:d}};hs.langDefaults=hs.lang;var HsExpander=hs.Expander;if(hs.ie&&window==window.top){(function(){try{document.documentElement.doScroll("left")}catch(a){setTimeout(arguments.callee,50);return}hs.ready()})()}hs.addEventListener(document,"DOMContentLoaded",hs.ready);hs.addEventListener(window,"load",hs.ready);hs.addEventListener(document,"ready",function(){if(hs.expandCursor||hs.dimmingOpacity){var d=hs.createElement("style",{type:"text/css"},null,document.getElementsByTagName("HEAD")[0]),c=document.compatMode=="BackCompat";function b(f,g){if(hs.ie&&(hs.uaVersion<9||c)){var e=document.styleSheets[document.styleSheets.length-1];if(typeof(e.addRule)=="object"){e.addRule(f,g)}}else{d.appendChild(document.createTextNode(f+" {"+g+"}"))}}function a(e){return"expression( ( ( ignoreMe = document.documentElement."+e+" ? document.documentElement."+e+" : document.body."+e+" ) ) + 'px' );"}if(hs.expandCursor){b(".highslide img","cursor: url("+hs.graphicsDir+hs.expandCursor+"), pointer !important;")}b(".highslide-viewport-size",hs.ie&&(hs.uaVersion<7||c)?"position: absolute; left:"+a("scrollLeft")+"top:"+a("scrollTop")+"width:"+a("clientWidth")+"height:"+a("clientHeight"):"position: fixed; width: 100%; height: 100%; left: 0; top: 0")}});hs.addEventListener(window,"resize",function(){hs.getPageSize();if(hs.viewport){for(var a=0;a<hs.viewport.childNodes.length;a++){var b=hs.viewport.childNodes[a],c=hs.getExpander(b);c.positionOverlay(b);if(b.hsId=="thumbstrip"){c.slideshow.thumbstrip.selectThumb()}}}});hs.addEventListener(document,"mousemove",function(a){hs.mouse={x:a.clientX,y:a.clientY}});hs.addEventListener(document,"mousedown",hs.mouseClickHandler);hs.addEventListener(document,"mouseup",hs.mouseClickHandler);hs.addEventListener(document,"ready",hs.getAnchors);hs.addEventListener(window,"load",hs.preloadImages)};
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Name: Highslide JS
3
+ * Version: 4.1.13 (2011-10-06)
4
+ * Config: default +slideshow +positioning +transitions +viewport +thumbstrip +packed
5
+ * Author: Torstein Hønsi
6
+ * Support: www.highslide.com/support
7
+ * License: www.highslide.com/#license
8
+ */
9
+ eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('q(!m){u m={18:{9C:\'9t\',9f:\'bb...\',9g:\'8o 1L ba\',9Y:\'8o 1L bd 1L bw\',7p:\'bx 1L bl B (f)\',aS:\'bp by <i>8H 8I</i>\',b0:\'bn 1L bj 8H 8I bz\',8T:\'8C\',8U:\'8D\',8w:\'8E\',8v:\'8J\',8t:\'8J (bv)\',bu:\'bg\',8P:\'8G\',8A:\'8G 1g (8B)\',8N:\'8F\',8M:\'8F 1g (8B)\',8S:\'8C (8l 14)\',8O:\'8D (8l 2V)\',8s:\'8E\',8r:\'1:1\',3n:\'b9 %1 bq %2\',84:\'8o 1L 26 2M, c4 8L c6 1L 3i. c0 8l c1 K 1p 8L 3c.\'},4p:\'L/bX/\',5M:\'bI.4y\',5m:\'bK.4y\',7f:53,8p:53,4L:15,9M:15,4j:15,9K:15,4z:bE,91:0.75,9j:J,7A:5,3B:2,bP:3,4R:1f,at:\'4g 2V\',aq:1,an:J,aF:\'bQ://L.c2/\',aE:\'bO\',8V:J,8e:[\'a\'],2Z:[],aL:53,3I:0,7G:50,3Q:\'2n\',6H:\'2n\',8y:H,8x:H,7v:J,5c:8R,5w:8R,5q:J,1B:\'bR-bS\',a6:{2B:\'<X 2s="L-2B"><7V>\'+\'<1R 2s="L-3c">\'+\'<a 1Y="#" 1X="{m.18.8S}">\'+\'<23>{m.18.8T}</23></a>\'+\'</1R>\'+\'<1R 2s="L-3r">\'+\'<a 1Y="#" 1X="{m.18.8A}">\'+\'<23>{m.18.8P}</23></a>\'+\'</1R>\'+\'<1R 2s="L-2S">\'+\'<a 1Y="#" 1X="{m.18.8M}">\'+\'<23>{m.18.8N}</23></a>\'+\'</1R>\'+\'<1R 2s="L-1p">\'+\'<a 1Y="#" 1X="{m.18.8O}">\'+\'<23>{m.18.8U}</23></a>\'+\'</1R>\'+\'<1R 2s="L-3i">\'+\'<a 1Y="#" 1X="{m.18.8s}">\'+\'<23>{m.18.8w}</23></a>\'+\'</1R>\'+\'<1R 2s="L-1a-2D">\'+\'<a 1Y="#" 1X="{m.18.7p}">\'+\'<23>{m.18.8r}</23></a>\'+\'</1R>\'+\'<1R 2s="L-26">\'+\'<a 1Y="#" 1X="{m.18.8t}" >\'+\'<23>{m.18.8v}</23></a>\'+\'</1R>\'+\'</7V></X>\'},4X:[],6Z:J,W:[],6V:[\'5q\',\'30\',\'3Q\',\'6H\',\'8y\',\'8x\',\'1B\',\'3B\',\'bG\',\'bH\',\'bJ\',\'8u\',\'bW\',\'cd\',\'cc\',\'8z\',\'aW\',\'7v\',\'3D\',\'5b\',\'2Z\',\'3I\',\'M\',\'1b\',\'7B\',\'5c\',\'5w\',\'6F\',\'6R\',\'9i\',\'2t\',\'2r\',\'aT\',\'aD\',\'1G\'],1x:[],4V:0,7q:{x:[\'9H\',\'14\',\'4i\',\'2V\',\'9L\'],y:[\'4T\',\'11\',\'8h\',\'4g\',\'6D\']},66:{},8z:{},8u:{},3u:[],4U:[],48:{},7I:{},5G:[],21:/ca\\/4\\.0/.19(4B.5r)?8:8n((4B.5r.5Y().2H(/.+(?:9y|c9|ce|2m)[\\/: ]([\\d.]+)/)||[0,\'0\'])[1]),2m:(R.52&&!1A.3q),4u:/cf/.19(4B.5r),5Z:/ci.+9y:1\\.[0-8].+cg/.19(4B.5r),$:z(1M){q(1M)D R.c7(1M)},2p:z(2o,3j){2o[2o.S]=3j},1c:z(9m,4k,3P,8b,9n){u C=R.1c(9m);q(4k)m.3b(C,4k);q(9n)m.V(C,{bY:0,aM:\'1F\',6S:0});q(3P)m.V(C,3P);q(8b)8b.2E(C);D C},3b:z(C,4k){K(u x 2T 4k)C[x]=4k[x];D C},V:z(C,3P){K(u x 2T 3P){q(m.4d&&x==\'1n\'){q(3P[x]>0.99)C.G.c5(\'5j\');I C.G.5j=\'9o(1n=\'+(3P[x]*28)+\')\'}I C.G[x]=3P[x]}},2b:z(C,Z,31){u 41,4v,47;q(1q 31!=\'6q\'||31===H){u 36=9V;31={3J:36[2],2r:36[3],63:36[4]}}q(1q 31.3J!=\'3n\')31.3J=53;31.2r=1d[31.2r]||1d.93;31.5S=m.3b({},Z);K(u 35 2T Z){u e=24 m.1E(C,31,35);41=8n(m.7U(C,35))||0;4v=8n(Z[35]);47=35!=\'1n\'?\'F\':\'\';e.3F(41,4v,47)}},7U:z(C,Z){q(C.G[Z]){D C.G[Z]}I q(R.6T){D R.6T.9P(C,H).9Q(Z)}I{q(Z==\'1n\')Z=\'5j\';u 3j=C.bf[Z.2j(/\\-(\\w)/g,z(a,b){D b.92()})];q(Z==\'5j\')3j=3j.2j(/9o\\(1n=([0-9]+)\\)/,z(a,b){D b/28});D 3j===\'\'?1:3j}},6v:z(){u d=R,w=1A,5d=d.6i&&d.6i!=\'7P\'?d.4l:d.3x,4d=m.2m&&(m.21<9||1q 9l==\'1C\');u M=4d?5d.8m:(d.4l.8m||5J.b2),1b=4d?5d.aK:5J.b3;m.3S={M:M,1b:1b,5l:4d?5d.5l:9l,5i:4d?5d.5i:be};D m.3S},6g:z(C){u p={x:C.4f,y:C.9h};4o(C.9k){C=C.9k;p.x+=C.4f;p.y+=C.9h;q(C!=R.3x&&C!=R.4l){p.x-=C.5l;p.y-=C.5i}}D p},2D:z(a,2O,3F,T){q(!a)a=m.1c(\'a\',H,{1u:\'1F\'},m.22);q(1q a.5u==\'z\')D 2O;2d{24 m.4Z(a,2O,3F);D 1f}1W(e){D J}},a4:z(C,4F,U){u 1i=C.2L(4F);K(u i=0;i<1i.S;i++){q((24 5X(U)).19(1i[i].U)){D 1i[i]}}D H},a7:z(s){s=s.2j(/\\s/g,\' \');u 1T=/{m\\.18\\.([^}]+)\\}/g,4S=s.2H(1T),18;q(4S)K(u i=0;i<4S.S;i++){18=4S[i].2j(1T,"$1");q(1q m.18[18]!=\'1C\')s=s.2j(4S[i],m.18[18])}D s},9w:z(){u 7J=0,6j=-1,W=m.W,A,1r;K(u i=0;i<W.S;i++){A=W[i];q(A){1r=A.Q.G.1r;q(1r&&1r>7J){7J=1r;6j=i}}}q(6j==-1)m.3v=-1;I W[6j].43()},5h:z(a,5p){a.5u=a.2G;u p=a.5u?a.5u():H;a.5u=H;D(p&&1q p[5p]!=\'1C\')?p[5p]:(1q m[5p]!=\'1C\'?m[5p]:H)},73:z(a){u 1G=m.5h(a,\'1G\');q(1G)D 1G;D a.1Y},4W:z(1M){u 3w=m.$(1M),45=m.7I[1M],a={};q(!3w&&!45)D H;q(!45){45=3w.7j(J);45.1M=\'\';m.7I[1M]=45;D 3w}I{D 45.7j(J)}},3H:z(d){q(d)m.8j.2E(d);m.8j.2R=\'\'},1m:z(A){q(!m.2a){7E=J;m.2a=m.1c(\'X\',{U:\'L-bk L-1Z-B\',4x:\'\',2G:z(){m.26()}},{1e:\'1D\',1n:0},m.22,J);q(/(bm|bt|bo|br)/.19(4B.5r)){u 3x=R.3x;z 7H(){m.V(m.2a,{M:3x.bA+\'F\',1b:3x.b5+\'F\'})}7H();m.1Q(1A,\'3O\',7H)}}m.2a.G.1u=\'\';u 7E=m.2a.4x==\'\';m.2a.4x+=\'|\'+A.P;q(7E){q(m.5Z&&m.9q)m.V(m.2a,{9e:\'5O(\'+m.4p+\'bh.97)\',1n:1});I m.2b(m.2a,{1n:A.3I},m.7G)}},7Q:z(P){q(!m.2a)D;q(1q P!=\'1C\')m.2a.4x=m.2a.4x.2j(\'|\'+P,\'\');q((1q P!=\'1C\'&&m.2a.4x!=\'\')||(m.1U&&m.5h(m.1U,\'3I\')))D;q(m.5Z&&m.9q)m.2a.G.1u=\'1F\';I m.2b(m.2a,{1n:0},m.7G,H,z(){m.2a.G.1u=\'1F\'})},83:z(6n,A){u Y=A||m.2h();A=Y;q(m.1U)D 1f;I m.Y=Y;m.49(R,1A.3q?\'5P\':\'5Q\',m.4N);2d{m.1U=6n;6n.2G()}1W(e){m.Y=m.1U=H}2d{q(!6n||A.2Z[1]!=\'3Y\')A.26()}1W(e){}D 1f},6d:z(C,1P){u A=m.2h(C);q(A)D m.83(A.7b(1P),A);I D 1f},3c:z(C){D m.6d(C,-1)},1p:z(C){D m.6d(C,1)},4N:z(e){q(!e)e=1A.29;q(!e.2i)e.2i=e.7l;q(1q e.2i.9x!=\'1C\')D J;u A=m.2h();u 1P=H;8Y(e.cq){1I 70:q(A)A.6k();D J;1I 32:1P=2;5B;1I 34:1I 39:1I 40:1P=1;5B;1I 8:1I 33:1I 37:1I 38:1P=-1;5B;1I 27:1I 13:1P=0}q(1P!==H){q(1P!=2)m.49(R,1A.3q?\'5P\':\'5Q\',m.4N);q(!m.8V)D J;q(e.4D)e.4D();I e.9W=1f;q(A){q(1P==0){A.26()}I q(1P==2){q(A.1g)A.1g.ad()}I{q(A.1g)A.1g.2S();m.6d(A.P,1P)}D 1f}}D J},d5:z(O){m.2p(m.1x,m.3b(O,{1H:\'1H\'+m.4V++}))},d4:z(1h){u 2C=1h.2t;q(1q 2C==\'6q\'){K(u i=0;i<2C.S;i++){u o={};K(u x 2T 1h)o[x]=1h[x];o.2t=2C[i];m.2p(m.4U,o)}}I{m.2p(m.4U,1h)}},86:z(7N,65){u C,1T=/^L-Q-([0-9]+)$/;C=7N;4o(C.1O){q(C.5F!==1C)D C.5F;q(C.1M&&1T.19(C.1M))D C.1M.2j(1T,"$1");C=C.1O}q(!65){C=7N;4o(C.1O){q(C.4F&&m.5L(C)){K(u P=0;P<m.W.S;P++){u A=m.W[P];q(A&&A.a==C)D P}}C=C.1O}}D H},2h:z(C,65){q(1q C==\'1C\')D m.W[m.3v]||H;q(1q C==\'3n\')D m.W[C]||H;q(1q C==\'8q\')C=m.$(C);D m.W[m.86(C,65)]||H},5L:z(a){D(a.2G&&a.2G.aI().2j(/\\s/g,\' \').2H(/m.(d6|e)d7/))},ai:z(){K(u i=0;i<m.W.S;i++)q(m.W[i]&&m.W[i].55)m.9w()},87:z(e){q(!e)e=1A.29;q(e.d9>1)D J;q(!e.2i)e.2i=e.7l;u C=e.2i;4o(C.1O&&!(/L-(2M|3i|5W|3O)/.19(C.U))){C=C.1O}u A=m.2h(C);q(A&&(A.8c||!A.55))D J;q(A&&e.T==\'aH\'){q(e.2i.9x)D J;u 2H=C.U.2H(/L-(2M|3i|3O)/);q(2H){m.2I={A:A,T:2H[1],14:A.x.E,M:A.x.B,11:A.y.E,1b:A.y.B,9v:e.6c,9u:e.68};m.1Q(R,\'6o\',m.5V);q(e.4D)e.4D();q(/L-(2M|5W)-89/.19(A.17.U)){A.43();m.7R=J}D 1f}}I q(e.T==\'aA\'){m.49(R,\'6o\',m.5V);q(m.2I){q(m.4I&&m.2I.T==\'2M\')m.2I.A.17.G.46=m.4I;u 3y=m.2I.3y;q(!3y&&!m.7R&&!/(3i|3O)/.19(m.2I.T)){A.26()}I q(3y||(!3y&&m.d8)){m.2I.A.5s(\'1s\')}m.7R=1f;m.2I=H}I q(/L-2M-89/.19(C.U)){C.G.46=m.4I}}D 1f},5V:z(e){q(!m.2I)D J;q(!e)e=1A.29;u a=m.2I,A=a.A;a.5T=e.6c-a.9v;a.7o=e.68-a.9u;u 7s=1d.ck(1d.9r(a.5T,2)+1d.9r(a.7o,2));q(!a.3y)a.3y=(a.T!=\'2M\'&&7s>0)||(7s>(m.cX||5));q(a.3y&&e.6c>5&&e.68>5){q(a.T==\'3O\')A.3O(a);I{A.7C(a.14+a.5T,a.11+a.7o);q(a.T==\'2M\')A.17.G.46=\'3i\'}}D 1f},8Q:z(e){2d{q(!e)e=1A.29;u 6C=/cW/i.19(e.T);q(!e.2i)e.2i=e.7l;q(!e.6E)e.6E=6C?e.db:e.di;u A=m.2h(e.2i);q(!A.55)D;q(!A||!e.6E||m.2h(e.6E,J)==A||m.2I)D;K(u i=0;i<A.1x.S;i++)(z(){u o=m.$(\'1H\'+A.1x[i]);q(o&&o.69){q(6C)m.V(o,{1e:\'1D\',1u:\'\'});m.2b(o,{1n:6C?o.1n:0},o.3t)}})()}1W(e){}},1Q:z(C,29,3l){q(C==R&&29==\'3s\'){m.2p(m.5G,3l)}2d{C.1Q(29,3l,1f)}1W(e){2d{C.9s(\'54\'+29,3l);C.dn(\'54\'+29,3l)}1W(e){C[\'54\'+29]=3l}}},49:z(C,29,3l){2d{C.49(29,3l,1f)}1W(e){2d{C.9s(\'54\'+29,3l)}1W(e){C[\'54\'+29]=H}}},6A:z(i){q(m.6Z&&m.4X[i]&&m.4X[i]!=\'1C\'){u 1y=R.1c(\'1y\');1y.64=z(){1y=H;m.6A(i+1)};1y.1G=m.4X[i]}},9R:z(3n){q(3n&&1q 3n!=\'6q\')m.7A=3n;u 2o=m.60();K(u i=0;i<2o.4A.S&&i<m.7A;i++){m.2p(m.4X,m.73(2o.4A[i]))}q(m.1B)24 m.4O(m.1B,z(){m.6A(0)});I m.6A(0);q(m.5m)u 4y=m.1c(\'1y\',{1G:m.4p+m.5m})},71:z(){q(!m.22){m.3E=m.2m&&m.21<7;m.4d=m.2m&&m.21<9;m.6v();K(u x 2T m.5U){q(1q m[x]!=\'1C\')m.18[x]=m[x];I q(1q m.18[x]==\'1C\'&&1q m.5U[x]!=\'1C\')m.18[x]=m.5U[x]}m.22=m.1c(\'X\',{U:\'L-22\'},{1j:\'2v\',14:0,11:0,M:\'28%\',1r:m.4z,9F:\'9t\'},R.3x,J);m.1S=m.1c(\'a\',{U:\'L-1S\',1X:m.18.9g,2R:m.18.9f,1Y:\'av:;\'},{1j:\'2v\',11:\'-4P\',1n:m.91,1r:1},m.22);m.8j=m.1c(\'X\',H,{1u:\'1F\'},m.22);m.1Z=m.1c(\'X\',{U:\'L-1Z L-1Z-B\'},{1e:(m.4u&&m.21<6t)?\'1D\':\'1s\'},m.22,1);1d.de=z(t,b,c,d){D c*t/d+b};1d.93=z(t,b,c,d){D c*(t/=d)*t+b};1d.7n=z(t,b,c,d){D-c*(t/=d)*(t-2)+b};m.9U=m.3E;m.9z=((1A.3q&&m.21<9)||4B.cU==\'cV\'||(m.3E&&m.21<5.5))}},3s:z(){q(m.6I)D;m.6I=J;K(u i=0;i<m.5G.S;i++)m.5G[i]()},7O:z(){u C,1i,52=[],4A=[],2N={},1T;K(u i=0;i<m.8e.S;i++){1i=R.2L(m.8e[i]);K(u j=0;j<1i.S;j++){C=1i[j];1T=m.5L(C);q(1T){m.2p(52,C);q(1T[0]==\'m.2D\')m.2p(4A,C);u g=m.5h(C,\'2t\')||\'1F\';q(!2N[g])2N[g]=[];m.2p(2N[g],C)}}}m.3R={52:52,2N:2N,4A:4A};D m.3R},60:z(){D m.3R||m.7O()},26:z(C){u A=m.2h(C);q(A)A.26();D 1f}};m.1E=z(2F,1h,Z){k.1h=1h;k.2F=2F;k.Z=Z;q(!1h.8Z)1h.8Z={}};m.1E.5o={8a:z(){(m.1E.3k[k.Z]||m.1E.3k.96)(k);q(k.1h.3k)k.1h.3k.95(k.2F,k.4c,k)},3F:z(72,1L,47){k.80=(24 8X()).94();k.41=72;k.4v=1L;k.47=47;k.4c=k.41;k.E=k.7X=0;u 5J=k;z t(5N){D 5J.3k(5N)}t.2F=k.2F;q(t()&&m.3u.2p(t)==1){m.8W=cx(z(){u 3u=m.3u;K(u i=0;i<3u.S;i++)q(!3u[i]())3u.cw(i--,1);q(!3u.S){cv(m.8W)}},13)}},3k:z(5N){u t=(24 8X()).94();q(5N||t>=k.1h.3J+k.80){k.4c=k.4v;k.E=k.7X=1;k.8a();k.1h.5S[k.Z]=J;u 8d=J;K(u i 2T k.1h.5S)q(k.1h.5S[i]!==J)8d=1f;q(8d){q(k.1h.63)k.1h.63.95(k.2F)}D 1f}I{u n=t-k.80;k.7X=n/k.1h.3J;k.E=k.1h.2r(n,0,1,k.1h.3J);k.4c=k.41+((k.4v-k.41)*k.E);k.8a()}D J}};m.3b(m.1E,{3k:{1n:z(1E){m.V(1E.2F,{1n:1E.4c})},96:z(1E){2d{q(1E.2F.G&&1E.2F.G[1E.Z]!=H)1E.2F.G[1E.Z]=1E.4c+1E.47;I 1E.2F[1E.Z]=1E.4c}1W(e){}}}});m.4O=z(1B,3V){k.3V=3V;k.1B=1B;u v=m.21,3L;k.7h=m.2m&&m.21<7;q(!1B){q(3V)3V();D}m.71();k.1V=m.1c(\'1V\',{cr:0},{1e:\'1s\',1j:\'2v\',cC:\'cD\',M:0},m.22,J);u 4a=m.1c(\'4a\',H,H,k.1V,1);k.2e=[];K(u i=0;i<=8;i++){q(i%3==0)3L=m.1c(\'3L\',H,{1b:\'2n\'},4a,J);k.2e[i]=m.1c(\'2e\',H,H,3L,J);u G=i!=4?{cP:0,cO:0}:{1j:\'8i\'};m.V(k.2e[i],G)}k.2e[4].U=1B+\' L-16\';k.98()};m.4O.5o={98:z(){u 1G=m.4p+(m.cN||"cQ/")+k.1B+".97";u 9a=m.4u&&m.21<6t?m.22:H;k.3d=m.1c(\'1y\',H,{1j:\'2v\',11:\'-4P\'},9a,J);u 7T=k;k.3d.64=z(){7T.9b()};k.3d.1G=1G},9b:z(){u o=k.1k=k.3d.M/4,E=[[0,0],[0,-4],[-2,0],[0,-8],0,[-2,-8],[0,-2],[0,-6],[-2,-2]],1m={1b:(2*o)+\'F\',M:(2*o)+\'F\'};K(u i=0;i<=8;i++){q(E[i]){q(k.7h){u w=(i==1||i==7)?\'28%\':k.3d.M+\'F\';u X=m.1c(\'X\',H,{M:\'28%\',1b:\'28%\',1j:\'8i\',3a:\'1s\'},k.2e[i],J);m.1c(\'X\',H,{5j:"cL:cG.cF.cE(cH=cI, 1G=\'"+k.3d.1G+"\')",1j:\'2v\',M:w,1b:k.3d.1b+\'F\',14:(E[i][0]*o)+\'F\',11:(E[i][1]*o)+\'F\'},X,J)}I{m.V(k.2e[i],{9e:\'5O(\'+k.3d.1G+\') \'+(E[i][0]*o)+\'F \'+(E[i][1]*o)+\'F\'})}q(1A.3q&&(i==3||i==5))m.1c(\'X\',H,1m,k.2e[i],J);m.V(k.2e[i],1m)}}k.3d=H;q(m.48[k.1B])m.48[k.1B].5x();m.48[k.1B]=k;q(k.3V)k.3V()},3Z:z(E,1k,9d,3t,2r){u A=k.A,cK=A.Q.G,1k=1k||0,E=E||{x:A.x.E+1k,y:A.y.E+1k,w:A.x.N(\'1N\')-2*1k,h:A.y.N(\'1N\')-2*1k};q(9d)k.1V.G.1e=(E.h>=4*k.1k)?\'1D\':\'1s\';m.V(k.1V,{14:(E.x-k.1k)+\'F\',11:(E.y-k.1k)+\'F\',M:(E.w+2*k.1k)+\'F\'});E.w-=2*k.1k;E.h-=2*k.1k;m.V(k.2e[4],{M:E.w>=0?E.w+\'F\':0,1b:E.h>=0?E.h+\'F\':0});q(k.7h)k.2e[3].G.1b=k.2e[5].G.1b=k.2e[4].G.1b},5x:z(9c){q(9c)k.1V.G.1e=\'1s\';I m.3H(k.1V)}};m.6r=z(A,1m){k.A=A;k.1m=1m;k.3m=1m==\'x\'?\'ah\':\'au\';k.3G=k.3m.5Y();k.4M=1m==\'x\'?\'af\':\'ag\';k.6B=k.4M.5Y();k.7d=1m==\'x\'?\'a5\':\'a8\';k.90=k.7d.5Y();k.1o=k.2z=0};m.6r.5o={N:z(P){8Y(P){1I\'78\':D k.1K+k.3o+(k.t-m.1S[\'1k\'+k.3m])/2;1I\'6Q\':D k.E+k.cb+k.1o+(k.B-m.1S[\'1k\'+k.3m])/2;1I\'1N\':D k.B+2*k.cb+k.1o+k.2z;1I\'4n\':D k.3W-k.2P-k.3X;1I\'7a\':D k.N(\'4n\')-2*k.cb-k.1o-k.2z;1I\'5t\':D k.E-(k.A.16?k.A.16.1k:0);1I\'7M\':D k.N(\'1N\')+(k.A.16?2*k.A.16.1k:0);1I\'2f\':D k.1z?1d.2y((k.B-k.1z)/2):0}},74:z(){k.cb=(k.A.17[\'1k\'+k.3m]-k.t)/2;k.3X=m[\'6S\'+k.7d]},6X:z(){k.t=k.A.C[k.3G]?7L(k.A.C[k.3G]):k.A.C[\'1k\'+k.3m];k.1K=k.A.1K[k.1m];k.3o=(k.A.C[\'1k\'+k.3m]-k.t)/2;q(k.1K==0||k.1K==-1){k.1K=(m.3S[k.3G]/2)+m.3S[\'1J\'+k.4M]}},6P:z(){u A=k.A;k.2k=\'2n\';q(A.6H==\'4i\')k.2k=\'4i\';I q(24 5X(k.6B).19(A.3Q))k.2k=H;I q(24 5X(k.90).19(A.3Q))k.2k=\'56\';k.E=k.1K-k.cb+k.3o;q(k.6R&&k.1m==\'x\')A.6F=1d.2X(A.6F||k.1a,A.6R*k.1a/A.y.1a);k.B=1d.2X(k.1a,A[\'56\'+k.3m]||k.1a);k.2q=A.5q?1d.2X(A[\'2X\'+k.3m],k.1a):k.1a;q(A.3A&&A.30){k.B=A[k.3G];k.1z=k.1a}q(k.1m==\'x\'&&m.4R)k.2q=A.5c;k.2i=A[\'2i\'+k.1m.92()];k.2P=m[\'6S\'+k.4M];k.1J=m.3S[\'1J\'+k.4M];k.3W=m.3S[k.3G]},82:z(i){u A=k.A;q(A.3A&&(A.30||m.4R)){k.1z=i;k.B=1d.56(k.B,k.1z);A.17.G[k.6B]=k.N(\'2f\')+\'F\'}I k.B=i;A.17.G[k.3G]=i+\'F\';A.Q.G[k.3G]=k.N(\'1N\')+\'F\';q(A.16)A.16.3Z();q(k.1m==\'x\'&&A.1l)A.4K(J);q(k.1m==\'x\'&&A.1g&&A.3A){q(i==k.1a)A.1g.4J(\'1a-2D\');I A.1g.3T(\'1a-2D\')}},7Z:z(i){k.E=i;k.A.Q.G[k.6B]=i+\'F\';q(k.A.16)k.A.16.3Z()}};m.4Z=z(a,2O,3F,2Q){q(R.cs&&m.2m&&!m.6I){m.1Q(R,\'3s\',z(){24 m.4Z(a,2O,3F,2Q)});D}k.a=a;k.3F=3F;k.2Q=2Q||\'2M\';k.3A=!k.cp;m.6Z=1f;k.1x=[];k.Y=m.Y;m.Y=H;m.71();u P=k.P=m.W.S;K(u i=0;i<m.6V.S;i++){u 35=m.6V[i];k[35]=2O&&1q 2O[35]!=\'1C\'?2O[35]:m[35]}q(!k.1G)k.1G=a.1Y;u C=(2O&&2O.7y)?m.$(2O.7y):a;C=k.9p=C.2L(\'1y\')[0]||C;k.6x=C.1M||a.1M;K(u i=0;i<m.W.S;i++){q(m.W[i]&&m.W[i].a==a&&!(k.Y&&k.2Z[1]==\'3Y\')){m.W[i].43();D 1f}}q(!m.cm)K(u i=0;i<m.W.S;i++){q(m.W[i]&&m.W[i].9p!=C&&!m.W[i].6G){m.W[i].5K()}}m.W[P]=k;q(!m.9j&&!m.1U){q(m.W[P-1])m.W[P-1].26();q(1q m.3v!=\'1C\'&&m.W[m.3v])m.W[m.3v].26()}k.C=C;k.1K=k.9i||m.6g(C);m.6v();u x=k.x=24 m.6r(k,\'x\');x.6X();u y=k.y=24 m.6r(k,\'y\');y.6X();k.Q=m.1c(\'X\',{1M:\'L-Q-\'+k.P,U:\'L-Q \'+k.7B},{1e:\'1s\',1j:\'2v\',1r:m.4z+=2},H,J);k.Q.cu=k.Q.cB=m.8Q;q(k.2Q==\'2M\'&&k.3B==2)k.3B=0;q(!k.1B||(k.Y&&k.3A&&k.2Z[1]==\'3Y\')){k[k.2Q+\'6J\']()}I q(m.48[k.1B]){k.6L();k[k.2Q+\'6J\']()}I{k.6U();u A=k;24 m.4O(k.1B,z(){A.6L();A[A.2Q+\'6J\']()})}D J};m.4Z.5o={7D:z(e){q(m.dm)dk(\'do \'+e.d0+\': \'+e.d1);I 1A.cZ.1Y=k.1G},6L:z(){u 16=k.16=m.48[k.1B];16.A=k;16.1V.G.1r=k.Q.G.1r-1;m.48[k.1B]=H},6U:z(){q(k.6G||k.1S)D;k.1S=m.1S;u A=k;k.1S.2G=z(){A.5K()};u A=k,l=k.x.N(\'78\')+\'F\',t=k.y.N(\'78\')+\'F\';q(!2l&&k.Y&&k.2Z[1]==\'3Y\')u 2l=k.Y;q(2l){l=2l.x.N(\'6Q\')+\'F\';t=2l.y.N(\'6Q\')+\'F\';k.1S.G.1r=m.4z++}4r(z(){q(A.1S)m.V(A.1S,{14:l,11:t,1r:m.4z++})},28)},da:z(){u A=k;u 1y=R.1c(\'1y\');k.17=1y;1y.64=z(){q(m.W[A.P])A.8K()};q(m.cY)1y.dj=z(){D 1f};1y.U=\'L-2M\';m.V(1y,{1e:\'1s\',1u:\'4H\',1j:\'2v\',6F:\'4P\',1r:3});1y.1X=m.18.84;q(m.4u&&m.21<6t)m.22.2E(1y);q(m.2m&&m.dc)1y.1G=H;1y.1G=k.1G;k.6U()},8K:z(){2d{q(!k.17)D;k.17.64=H;q(k.6G)D;I k.6G=J;u x=k.x,y=k.y;q(k.1S){m.V(k.1S,{11:\'-4P\'});k.1S=H}x.1a=k.17.M;y.1a=k.17.1b;m.V(k.17,{M:x.t+\'F\',1b:y.t+\'F\'});k.Q.2E(k.17);m.22.2E(k.Q);x.74();y.74();m.V(k.Q,{14:(x.1K+x.3o-x.cb)+\'F\',11:(y.1K+x.3o-y.cb)+\'F\'});k.aB();k.9J();u 2x=x.1a/y.1a;x.6P();k.2k(x);y.6P();k.2k(y);q(k.1l)k.4K(0,1);q(k.5q){k.aZ(2x);u 1v=k.1g;q(1v&&k.Y&&1v.2B&&1v.ar){u E=1v.aC.1j||\'\',p;K(u 1m 2T m.7q)K(u i=0;i<5;i++){p=k[1m];q(E.2H(m.7q[1m][i])){p.E=k.Y[1m].E+(k.Y[1m].1o-p.1o)+(k.Y[1m].B-p.B)*[0,0,.5,1,1][i];q(1v.ar==\'dg\'){q(p.E+p.B+p.1o+p.2z>p.1J+p.3W-p.3X)p.E=p.1J+p.3W-p.B-p.2P-p.3X-p.1o-p.2z;q(p.E<p.1J+p.2P)p.E=p.1J+p.2P}}}}q(k.3A&&k.x.1a>(k.x.1z||k.x.B)){k.ap();q(k.1x.S==1)k.4K()}}k.aG()}1W(e){k.7D(e)}},2k:z(p,4C){u 4b,2l=p.2i,1m=p==k.x?\'x\':\'y\';q(2l&&2l.2H(/ /)){4b=2l.dh(\' \');2l=4b[0]}q(2l&&m.$(2l)){p.E=m.6g(m.$(2l))[1m];q(4b&&4b[1]&&4b[1].2H(/^[-]?[0-9]+F$/))p.E+=7L(4b[1]);q(p.B<p.2q)p.B=p.2q}I q(p.2k==\'2n\'||p.2k==\'4i\'){u 79=1f;u 4q=p.A.5q;q(p.2k==\'4i\')p.E=1d.2y(p.1J+(p.3W+p.2P-p.3X-p.N(\'1N\'))/2);I p.E=1d.2y(p.E-((p.N(\'1N\')-p.t)/2));q(p.E<p.1J+p.2P){p.E=p.1J+p.2P;79=J}q(!4C&&p.B<p.2q){p.B=p.2q;4q=1f}q(p.E+p.N(\'1N\')>p.1J+p.3W-p.3X){q(!4C&&79&&4q){p.B=1d.2X(p.B,p.N(1m==\'y\'?\'4n\':\'7a\'))}I q(p.N(\'1N\')<p.N(\'4n\')){p.E=p.1J+p.3W-p.3X-p.N(\'1N\')}I{p.E=p.1J+p.2P;q(!4C&&4q)p.B=p.N(1m==\'y\'?\'4n\':\'7a\')}}q(!4C&&p.B<p.2q){p.B=p.2q;4q=1f}}I q(p.2k==\'56\'){p.E=1d.df(p.E-p.B+p.t)}q(p.E<p.2P){u aU=p.E;p.E=p.2P;q(4q&&!4C)p.B=p.B-(p.E-aU)}},aZ:z(2x){u x=k.x,y=k.y,3e=1f,2A=1d.2X(x.1a,x.B),2Y=1d.2X(y.1a,y.B),30=(k.30||m.4R);q(2A/2Y>2x){ 2A=2Y*2x;q(2A<x.2q){2A=x.2q;2Y=2A/2x}3e=J}I q(2A/2Y<2x){ 2Y=2A/2x;3e=J}q(m.4R&&x.1a<x.2q){x.1z=x.1a;y.B=y.1z=y.1a}I q(k.30){x.1z=2A;y.1z=2Y}I{x.B=2A;y.B=2Y}3e=k.aY(k.30?H:2x,3e);q(30&&y.B<y.1z){y.1z=y.B;x.1z=y.B*2x}q(3e||30){x.E=x.1K-x.cb+x.3o;x.2q=x.B;k.2k(x,J);y.E=y.1K-y.cb+y.3o;y.2q=y.B;k.2k(y,J);q(k.1l)k.4K()}},aY:z(2x,3e){u x=k.x,y=k.y;q(k.1l){4o(y.B>k.5w&&x.B>k.5c&&y.N(\'1N\')>y.N(\'4n\')){y.B-=10;q(2x)x.B=y.B*2x;k.4K(0,1);3e=J}}D 3e},aG:z(){u x=k.x,y=k.y;k.5s(\'1s\');q(k.1g&&k.1g.2g)k.1g.2g.4G();k.8f(1,{Q:{M:x.N(\'1N\'),1b:y.N(\'1N\'),14:x.E,11:y.E},17:{14:x.1o+x.N(\'2f\'),11:y.1o+y.N(\'2f\'),M:x.1z||x.B,1b:y.1z||y.B}},m.7f)},8f:z(1t,1L,3t){u 5k=k.2Z,6M=1t?(k.Y?k.Y.a:H):m.1U,t=(5k[1]&&6M&&m.5h(6M,\'2Z\')[1]==5k[1])?5k[1]:5k[0];q(k[t]&&t!=\'2D\'){k[t](1t,1L);D}q(k.16&&!k.3B){q(1t)k.16.3Z();I k.16.5x()}q(!1t)k.67();u A=k,x=A.x,y=A.y,2r=k.2r;q(!1t)2r=k.aT||2r;u ay=1t?z(){q(A.16)A.16.1V.G.1e="1D";4r(z(){A.62()},50)}:z(){A.5v()};q(1t)m.V(k.Q,{M:x.t+\'F\',1b:y.t+\'F\'});q(k.aD){m.V(k.Q,{1n:1t?0:1});m.3b(1L.Q,{1n:1t})}m.2b(k.Q,1L.Q,{3J:3t,2r:2r,3k:z(3j,36){q(A.16&&A.3B&&36.Z==\'11\'){u 4Q=1t?36.E:1-36.E;u E={w:x.t+(x.N(\'1N\')-x.t)*4Q,h:y.t+(y.N(\'1N\')-y.t)*4Q,x:x.1K+(x.E-x.1K)*4Q,y:y.1K+(y.E-y.1K)*4Q};A.16.3Z(E,0,1)}}});m.2b(k.17,1L.17,3t,2r,ay);q(1t){k.Q.G.1e=\'1D\';k.17.G.1e=\'1D\';k.a.U+=\' L-42-3Q\'}},5n:z(1t,1L){k.3B=1f;u A=k,t=1t?m.7f:0;q(1t){m.2b(k.Q,1L.Q,0);m.V(k.Q,{1n:0,1e:\'1D\'});m.2b(k.17,1L.17,0);k.17.G.1e=\'1D\';m.2b(k.Q,{1n:1},t,H,z(){A.62()})}q(k.16){k.16.1V.G.1r=k.Q.G.1r;u 5D=1t||-1,1k=k.16.1k,7c=1t?3:1k,6Y=1t?1k:3;K(u i=7c;5D*i<=5D*6Y;i+=5D,t+=25){(z(){u o=1t?6Y-i:7c-i;4r(z(){A.16.3Z(0,o,1)},t)})()}}q(1t){}I{4r(z(){q(A.16)A.16.5x(A.cz);A.67();m.2b(A.Q,{1n:0},m.8p,H,z(){A.5v()})},t)}},3Y:z(1t,1L,72){q(!1t)D;u A=k,Y=k.Y,x=k.x,y=k.y,2W=Y.x,2U=Y.y,Q=k.Q,17=k.17,1l=k.1l;m.49(R,\'6o\',m.5V);m.V(17,{M:(x.1z||x.B)+\'F\',1b:(y.1z||y.B)+\'F\'});q(1l)1l.G.3a=\'1D\';k.16=Y.16;q(k.16)k.16.A=A;Y.16=H;u 4s=m.1c(\'X\',{U:\'L-\'+k.2Q},{1j:\'2v\',1r:4,3a:\'1s\',1u:\'1F\'});u 77={aO:Y,aR:k};K(u n 2T 77){k[n]=77[n].17.7j(1);m.V(k[n],{1j:\'2v\',aM:0,1e:\'1D\'});4s.2E(k[n])}Q.2E(4s);q(1l){1l.U=\'\';Q.2E(1l)}4s.G.1u=\'\';Y.17.G.1u=\'1F\';q(m.4u&&m.21<6t){k.Q.G.1e=\'1D\'}m.2b(Q,{M:x.B},{3J:m.aL,3k:z(3j,36){u E=36.E,3U=1-E;u Z,B={},6N=[\'E\',\'B\',\'1o\',\'2z\'];K(u n 2T 6N){Z=6N[n];B[\'x\'+Z]=1d.2y(3U*2W[Z]+E*x[Z]);B[\'y\'+Z]=1d.2y(3U*2U[Z]+E*y[Z]);B.aJ=1d.2y(3U*(2W.1z||2W.B)+E*(x.1z||x.B));B.6p=1d.2y(3U*2W.N(\'2f\')+E*x.N(\'2f\'));B.aN=1d.2y(3U*(2U.1z||2U.B)+E*(y.1z||y.B));B.6f=1d.2y(3U*2U.N(\'2f\')+E*y.N(\'2f\'))}q(A.16)A.16.3Z({x:B.2K,y:B.2J,w:B.58+B.3C+B.6O+2*x.cb,h:B.5a+B.3z+B.6W+2*y.cb});Y.Q.G.ct=\'cn(\'+(B.2J-2U.E)+\'F, \'+(B.58+B.3C+B.6O+B.2K+2*2W.cb-2W.E)+\'F, \'+(B.5a+B.3z+B.6W+B.2J+2*2U.cb-2U.E)+\'F, \'+(B.2K-2W.E)+\'F)\';m.V(17,{11:(B.3z+y.N(\'2f\'))+\'F\',14:(B.3C+x.N(\'2f\'))+\'F\',4j:(y.E-B.2J)+\'F\',4L:(x.E-B.2K)+\'F\'});m.V(Q,{11:B.2J+\'F\',14:B.2K+\'F\',M:(B.3C+B.6O+B.58+2*x.cb)+\'F\',1b:(B.3z+B.6W+B.5a+2*y.cb)+\'F\'});m.V(4s,{M:(B.aJ||B.58)+\'F\',1b:(B.aN||B.5a)+\'F\',14:(B.3C+B.6p)+\'F\',11:(B.3z+B.6f)+\'F\',1e:\'1D\'});m.V(A.aO,{11:(2U.E-B.2J+2U.1o-B.3z+2U.N(\'2f\')-B.6f)+\'F\',14:(2W.E-B.2K+2W.1o-B.3C+2W.N(\'2f\')-B.6p)+\'F\'});m.V(A.aR,{1n:E,11:(y.E-B.2J+y.1o-B.3z+y.N(\'2f\')-B.6f)+\'F\',14:(x.E-B.2K+x.1o-B.3C+x.N(\'2f\')-B.6p)+\'F\'});q(1l)m.V(1l,{M:B.58+\'F\',1b:B.5a+\'F\',14:(B.3C+x.cb)+\'F\',11:(B.3z+y.cb)+\'F\'})},63:z(){Q.G.1e=17.G.1e=\'1D\';17.G.1u=\'4H\';m.3H(4s);A.62();Y.5v();A.Y=H}})},9E:z(o,C){q(!k.Y)D 1f;K(u i=0;i<k.Y.1x.S;i++){u 61=m.$(\'1H\'+k.Y.1x[i]);q(61&&61.1H==o.1H){k.7z();61.cl=k.P;m.2p(k.1x,k.Y.1x[i]);D J}}D 1f},62:z(){k.55=J;k.43();q(k.3I)m.1m(k);q(m.1U&&m.1U==k.a)m.1U=H;k.aQ();u p=m.3S,7i=m.66.x+p.5l,7e=m.66.y+p.5i;k.7m=k.x.E<7i&&7i<k.x.E+k.x.N(\'1N\')&&k.y.E<7e&&7e<k.y.E+k.y.N(\'1N\');q(k.1l)k.ak()},aQ:z(){u P=k.P;u 1B=k.1B;24 m.4O(1B,z(){2d{m.W[P].aP()}1W(e){}})},aP:z(){u 1p=k.7b(1);q(1p&&1p.2G.aI().2H(/m\\.2D/))u 1y=m.1c(\'1y\',{1G:m.73(1p)})},7b:z(1P){u 7g=k.6e(),as=m.3R.2N[k.2t||\'1F\'];q(as&&!as[7g+1P]&&k.1g&&k.1g.ab){q(1P==1)D as[0];I q(1P==-1)D as[as.S-1]}D(as&&as[7g+1P])||H},6e:z(){u 2o=m.60().2N[k.2t||\'1F\'];q(2o)K(u i=0;i<2o.S;i++){q(2o[i]==k.a)D i}D H},a3:z(){q(k[k.5b]){u 2o=m.3R.2N[k.2t||\'1F\'];q(2o){u s=m.18.3n.2j(\'%1\',k.6e()+1).2j(\'%2\',2o.S);k[k.5b].2R=\'<X 2s="L-3n">\'+s+\'</X>\'+k[k.5b].2R}}},aB:z(){q(!k.Y){K(u i=0;i<m.4U.S;i++){u 1v=m.4U[i],2C=1v.2t;q(1q 2C==\'1C\'||2C===H||2C===k.2t)k.1g=24 m.7S(k.P,1v)}}I{k.1g=k.Y.1g}u 1v=k.1g;q(!1v)D;u P=1v.3N=k.P;1v.aa();1v.4J(\'1a-2D\');q(1v.2B){k.4h(m.3b(1v.aC||{},{44:1v.2B,1H:\'2B\',1r:5}))}q(1v.2g)1v.2g.6s(k);q(!k.Y&&k.3D)1v.3r(J);q(1v.3D){1v.3D=4r(z(){m.1p(P)},(1v.cT||cS))}},5K:z(){m.3H(k.Q);m.W[k.P]=H;q(m.1U==k.a)m.1U=H;m.7Q(k.P);q(k.1S)m.1S.G.14=\'-4P\'},am:z(){q(k.4Y)D;k.4Y=m.1c(\'a\',{1Y:m.aF,2i:m.aE,U:\'L-4Y\',2R:m.18.aS,1X:m.18.b0});k.4h({44:k.4Y,1j:k.aW||\'11 14\',1H:\'4Y\'})},a2:z(76,aw){K(u i=0;i<76.S;i++){u T=76[i],s=H;q(!k[T+\'4t\']&&k.6x)k[T+\'4t\']=T+\'-K-\'+k.6x;q(k[T+\'4t\'])k[T]=m.4W(k[T+\'4t\']);q(!k[T]&&!k[T+\'6K\']&&k[T+\'aX\'])2d{s=cJ(k[T+\'aX\'])}1W(e){}q(!k[T]&&k[T+\'6K\']){s=k[T+\'6K\']}q(!k[T]&&!s){k[T]=m.4W(k.a[\'aV\'+T+\'4t\']);q(!k[T]){u 1p=k.a.b1;4o(1p&&!m.5L(1p)){q((24 5X(\'L-\'+T)).19(1p.U||H)){q(!1p.1M)k.a[\'aV\'+T+\'4t\']=1p.1M=\'1H\'+m.4V++;k[T]=m.4W(1p.1M);5B}1p=1p.b1}}}q(!k[T]&&!s&&k.5b==T)s=\'\\n\';q(!k[T]&&s)k[T]=m.1c(\'X\',{U:\'L-\'+T,2R:s});q(aw&&k[T]){u o={1j:(T==\'6z\')?\'4T\':\'6D\'};K(u x 2T k[T+\'9T\'])o[x]=k[T+\'9T\'][x];o.44=k[T];k.4h(o)}}},5s:z(1e){q(m.9U)k.5I(\'cM\',1e);q(m.9z)k.5I(\'cR\',1e);q(m.5Z)k.5I(\'*\',1e)},5I:z(4F,1e){u 1i=R.2L(4F);u Z=4F==\'*\'?\'3a\':\'1e\';K(u i=0;i<1i.S;i++){q(Z==\'1e\'||(R.6T.9P(1i[i],"").9Q(\'3a\')==\'2n\'||1i[i].a1(\'1s-by\')!=H)){u 2u=1i[i].a1(\'1s-by\');q(1e==\'1D\'&&2u){2u=2u.2j(\'[\'+k.P+\']\',\'\');1i[i].5A(\'1s-by\',2u);q(!2u)1i[i].G[Z]=1i[i].88}I q(1e==\'1s\'){u 3g=m.6g(1i[i]);3g.w=1i[i].2c;3g.h=1i[i].3f;q(!k.3I){u ax=(3g.x+3g.w<k.x.N(\'5t\')||3g.x>k.x.N(\'5t\')+k.x.N(\'7M\'));u 9Z=(3g.y+3g.h<k.y.N(\'5t\')||3g.y>k.y.N(\'5t\')+k.y.N(\'7M\'))}u 5H=m.86(1i[i]);q(!ax&&!9Z&&5H!=k.P){q(!2u){1i[i].5A(\'1s-by\',\'[\'+k.P+\']\');1i[i].88=1i[i].G[Z];1i[i].G[Z]=\'1s\'}I q(2u.9X(\'[\'+k.P+\']\')==-1){1i[i].5A(\'1s-by\',2u+\'[\'+k.P+\']\')}}I q((2u==\'[\'+k.P+\']\'||m.3v==5H)&&5H!=k.P){1i[i].5A(\'1s-by\',\'\');1i[i].G[Z]=1i[i].88||\'\'}I q(2u&&2u.9X(\'[\'+k.P+\']\')>-1){1i[i].5A(\'1s-by\',2u.2j(\'[\'+k.P+\']\',\'\'))}}}}},43:z(){k.Q.G.1r=m.4z+=2;K(u i=0;i<m.W.S;i++){q(m.W[i]&&i==m.3v){u 5g=m.W[i];5g.17.U+=\' L-\'+5g.2Q+\'-89\';5g.17.G.46=m.3E?\'9O\':\'5R\';5g.17.1X=m.18.9Y}}q(k.16)k.16.1V.G.1r=k.Q.G.1r-1;k.17.U=\'L-\'+k.2Q;k.17.1X=m.18.84;q(m.5m){m.4I=1A.3q?\'5R\':\'5O(\'+m.4p+m.5m+\'), 5R\';q(m.3E&&m.21<6)m.4I=\'9O\';k.17.G.46=m.4I}m.3v=k.P;m.1Q(R,1A.3q?\'5P\':\'5Q\',m.4N)},7C:z(x,y){k.x.7Z(x);k.y.7Z(y)},3O:z(e){u w,h,r=e.M/e.1b;w=1d.56(e.M+e.5T,1d.2X(k.5c,k.x.1a));q(k.3A&&1d.co(w-k.x.1a)<12)w=k.x.1a;h=w/r;q(h<1d.2X(k.5w,k.y.1a)){h=1d.2X(k.5w,k.y.1a);q(k.3A)w=h*r}k.7k(w,h)},7k:z(w,h){k.y.82(h);k.x.82(w);k.Q.G.1b=k.y.N(\'1N\')+\'F\'},26:z(){q(k.8c||!k.55)D;q(k.2Z[1]==\'3Y\'&&m.1U){m.2h(m.1U).5K();m.1U=H}k.8c=J;q(k.1g&&!m.1U)k.1g.2S();m.49(R,1A.3q?\'5P\':\'5Q\',m.4N);2d{k.17.G.46=\'cA\';k.8f(0,{Q:{M:k.x.t,1b:k.y.t,14:k.x.1K-k.x.cb+k.x.3o,11:k.y.1K-k.y.cb+k.y.3o},17:{14:0,11:0,M:k.x.t,1b:k.y.t}},m.8p)}1W(e){k.5v()}},4h:z(o){u C=o.44,4E=(o.9A==\'1Z\'&&!/6w$/.19(o.1j));q(1q C==\'8q\')C=m.4W(C);q(o.5W)C=m.1c(\'X\',{2R:o.5W});q(!C||1q C==\'8q\')D;C.G.1u=\'4H\';o.1H=o.1H||o.44;q(k.2Z[1]==\'3Y\'&&k.9E(o,C))D;k.7z();u M=o.M&&/^[0-9]+(F|%)$/.19(o.M)?o.M:\'2n\';q(/^(14|2V)6w$/.19(o.1j)&&!/^[0-9]+F$/.19(o.M))M=\'cy\';u O=m.1c(\'X\',{1M:\'1H\'+m.4V++,1H:o.1H},{1j:\'2v\',1e:\'1s\',M:M,9F:m.18.9C||\'\',1n:0},4E?m.1Z:k.1l,J);q(4E)O.5F=k.P;O.2E(C);m.3b(O,{1n:1,9B:0,9G:0,3t:(o.5n===0||o.5n===1f||(o.5n==2&&m.2m))?0:53});m.3b(O,o);q(k.al){k.5y(O);q(!O.69||k.7m)m.2b(O,{1n:O.1n},O.3t)}m.2p(k.1x,m.4V-1)},5y:z(O){u p=O.1j||\'8h 4i\',4E=(O.9A==\'1Z\'),5E=O.9B,5C=O.9G;q(4E){m.1Z.G.1u=\'4H\';O.5F=k.P;q(O.2c>O.1O.2c)O.G.M=\'28%\'}I q(O.1O!=k.1l)k.1l.2E(O);q(/14$/.19(p))O.G.14=5E+\'F\';q(/4i$/.19(p))m.V(O,{14:\'50%\',4L:(5E-1d.2y(O.2c/2))+\'F\'});q(/2V$/.19(p))O.G.2V=-5E+\'F\';q(/^9H$/.19(p)){m.V(O,{2V:\'28%\',9M:k.x.cb+\'F\',11:-k.y.cb+\'F\',4g:-k.y.cb+\'F\',3a:\'2n\'});k.x.1o=O.2c}I q(/^9L$/.19(p)){m.V(O,{14:\'28%\',4L:k.x.cb+\'F\',11:-k.y.cb+\'F\',4g:-k.y.cb+\'F\',3a:\'2n\'});k.x.2z=O.2c}u 8g=O.1O.3f;O.G.1b=\'2n\';q(4E&&O.3f>8g)O.G.1b=m.3E?8g+\'F\':\'28%\';q(/^11/.19(p))O.G.11=5C+\'F\';q(/^8h/.19(p))m.V(O,{11:\'50%\',4j:(5C-1d.2y(O.3f/2))+\'F\'});q(/^4g/.19(p))O.G.4g=-5C+\'F\';q(/^4T$/.19(p)){m.V(O,{14:(-k.x.1o-k.x.cb)+\'F\',2V:(-k.x.2z-k.x.cb)+\'F\',4g:\'28%\',9K:k.y.cb+\'F\',M:\'2n\'});k.y.1o=O.3f}I q(/^6D$/.19(p)){m.V(O,{1j:\'8i\',14:(-k.x.1o-k.x.cb)+\'F\',2V:(-k.x.2z-k.x.cb)+\'F\',11:\'28%\',4j:k.y.cb+\'F\',M:\'2n\'});k.y.2z=O.3f;O.G.1j=\'2v\'}},9J:z(){k.a2([\'6z\',\'dd\'],J);k.a3();q(k.6z&&k.7v)k.6z.U+=\' L-3i\';q(m.an)k.am();K(u i=0;i<m.1x.S;i++){u o=m.1x[i],6y=o.7y,2C=o.2t;q((!6y&&!2C)||(6y&&6y==k.6x)||(2C&&2C===k.2t)){k.4h(o)}}u 6u=[];K(u i=0;i<k.1x.S;i++){u o=m.$(\'1H\'+k.1x[i]);q(/6w$/.19(o.1j))k.5y(o);I m.2p(6u,o)}K(u i=0;i<6u.S;i++)k.5y(6u[i]);k.al=J},7z:z(){q(!k.1l)k.1l=m.1c(\'X\',{U:k.7B},{1j:\'2v\',M:(k.x.B||(k.30?k.M:H)||k.x.1a)+\'F\',1b:(k.y.B||k.y.1a)+\'F\',1e:\'1s\',3a:\'1s\',1r:m.2m?4:\'2n\'},m.22,J)},4K:z(7t,aj){u 1l=k.1l,x=k.x,y=k.y;m.V(1l,{M:x.B+\'F\',1b:y.B+\'F\'});q(7t||aj){K(u i=0;i<k.1x.S;i++){u o=m.$(\'1H\'+k.1x[i]);u 7u=(m.3E||R.6i==\'7P\');q(o&&/^(4T|6D)$/.19(o.1j)){q(7u){o.G.M=(1l.2c+2*x.cb+x.1o+x.2z)+\'F\'}y[o.1j==\'4T\'?\'1o\':\'2z\']=o.3f}q(o&&7u&&/^(14|2V)6w$/.19(o.1j)){o.G.1b=(1l.3f+2*y.cb)+\'F\'}}}q(7t){m.V(k.17,{11:y.1o+\'F\'});m.V(1l,{11:(y.1o+y.cb)+\'F\'})}},ak:z(){u b=k.1l;b.U=\'\';m.V(b,{11:(k.y.1o+k.y.cb)+\'F\',14:(k.x.1o+k.x.cb)+\'F\',3a:\'1D\'});q(m.4u)b.G.1e=\'1D\';k.Q.2E(b);K(u i=0;i<k.1x.S;i++){u o=m.$(\'1H\'+k.1x[i]);o.G.1r=o.1r||4;q(!o.69||k.7m){o.G.1e=\'1D\';m.V(o,{1e:\'1D\',1u:\'\'});m.2b(o,{1n:o.1n},o.3t)}}},67:z(){q(!k.1x.S)D;q(k.1g){u c=k.1g.2B;q(c&&m.2h(c)==k)c.1O.dl(c)}K(u i=0;i<k.1x.S;i++){u o=m.$(\'1H\'+k.1x[i]);q(o&&o.1O==m.1Z&&m.2h(o)==k)m.3H(o)}m.3H(k.1l)},ap:z(){q(k.1g&&k.1g.2B){k.1g.3T(\'1a-2D\');D}k.6a=m.1c(\'a\',{1Y:\'av:m.W[\'+k.P+\'].6k();\',1X:m.18.7p,U:\'L-1a-2D\'});k.4h({44:k.6a,1j:m.at,69:J,1n:m.aq})},6k:z(){2d{q(k.6a)m.3H(k.6a);k.43();u 2A=k.x.B,2Y=k.y.B;k.7k(k.x.1a,k.y.1a);u 2K=k.x.E-(k.x.B-2A)/2;q(2K<m.4L)2K=m.4L;u 2J=k.y.E-(k.y.B-2Y)/2;q(2J<m.4j)2J=m.4j;k.7C(2K,2J);k.5s(\'1s\')}1W(e){k.7D(e)}},5v:z(){k.a.U=k.a.U.2j(\'L-42-3Q\',\'\');k.5s(\'1D\');q(k.16&&k.3B)k.16.5x();m.3H(k.Q);k.67();q(!m.1Z.6l.S)m.1Z.G.1u=\'1F\';q(k.3I)m.7Q(k.P);m.W[k.P]=H;m.ai()}};m.7S=z(3N,1h){q(m.d2!==1f)m.7O();k.3N=3N;K(u x 2T 1h)k[x]=1h[x];q(k.d3)k.a9();q(k.2g)k.2g=m.ae(k)};m.7S.5o={a9:z(){k.2B=m.1c(\'X\',{2R:m.a7(m.a6.2B)},H,m.22);u 59=[\'3r\',\'2S\',\'3c\',\'1p\',\'3i\',\'1a-2D\',\'26\'];k.1w={};u 7T=k;K(u i=0;i<59.S;i++){k.1w[59[i]]=m.a4(k.2B,\'1R\',\'L-\'+59[i]);k.3T(59[i])}k.1w.2S.G.1u=\'1F\'},aa:z(){q(k.ab||!k.2B)D;u A=m.W[k.3N],4y=A.6e(),1T=/6m$/;q(4y==0)k.4J(\'3c\');I q(1T.19(k.1w.3c.2L(\'a\')[0].U))k.3T(\'3c\');q(4y+1==m.3R.2N[A.2t||\'1F\'].S){k.4J(\'1p\');k.4J(\'3r\')}I q(1T.19(k.1w.1p.2L(\'a\')[0].U)){k.3T(\'1p\');k.3T(\'3r\')}},3T:z(1w){q(!k.1w)D;u a0=k,a=k.1w[1w].2L(\'a\')[0],1T=/6m$/;a.2G=z(){a0[1w]();D 1f};q(1T.19(a.U))a.U=a.U.2j(1T,\'\')},4J:z(1w){q(!k.1w)D;u a=k.1w[1w].2L(\'a\')[0];a.2G=z(){D 1f};q(!/6m$/.19(a.U))a.U+=\' 6m\'},ad:z(){q(k.3D)k.2S();I k.3r()},3r:z(ac){q(k.1w){k.1w.3r.G.1u=\'1F\';k.1w.2S.G.1u=\'\'}k.3D=J;q(!ac)m.1p(k.3N)},2S:z(){q(k.1w){k.1w.2S.G.1u=\'1F\';k.1w.3r.G.1u=\'\'}b8(k.3D);k.3D=H},3c:z(){k.2S();m.3c(k.1w.3c)},1p:z(){k.2S();m.1p(k.1w.1p)},3i:z(){},\'1a-2D\':z(){m.2h().6k()},26:z(){m.26(k.1w.26)}};m.ae=z(1g){z 6s(A){m.3b(1h||{},{44:4e,1H:\'2g\',U:\'L-2g-\'+4m+\'-O \'+(1h.U||\'\')});q(m.3E)1h.5n=0;A.4h(1h);m.V(4e.1O,{3a:\'1s\'})};z 1J(3h){4G(1C,1d.2y(3h*4e[3p?\'2c\':\'3f\']*0.7))};z 4G(i,7K){q(i===1C)K(u j=0;j<51.S;j++){q(51[j]==m.W[1g.3N].a){i=j;5B}}q(i===1C)D;u as=4e.2L(\'a\'),42=as[i],3M=42.1O,14=3p?\'af\':\'ag\',2V=3p?\'a5\':\'a8\',M=3p?\'ah\':\'au\',4f=\'1k\'+14,2c=\'1k\'+M,6h=X.1O.1O[2c],4w=6h-1V[2c],5z=7L(1V.G[3p?\'14\':\'11\'])||0,2w=5z,bs=20;q(7K!==1C){2w=5z-7K;q(4w>0)4w=0;q(2w>0)2w=0;q(2w<4w)2w=4w}I{K(u j=0;j<as.S;j++)as[j].U=\'\';42.U=\'L-42-3Q\';u 7F=i>0?as[i-1].1O[4f]:3M[4f],7x=3M[4f]+3M[2c]+(as[i+1]?as[i+1].1O[2c]:0);q(7x>6h-5z)2w=6h-7x;I q(7F<-5z)2w=-7F}u 7r=3M[4f]+(3M[2c]-6b[2c])/2+2w;m.2b(1V,3p?{14:2w}:{11:2w},H,\'7n\');m.2b(6b,3p?{14:7r}:{11:7r},H,\'7n\');7Y.G.1u=2w<0?\'4H\':\'1F\';85.G.1u=(2w>4w)?\'4H\':\'1F\'};u 51=m.3R.2N[m.W[1g.3N].2t||\'1F\'],1h=1g.2g,4m=1h.4m||\'ao\',81=(4m==\'bi\'),3K=81?[\'X\',\'7V\',\'1R\',\'23\']:[\'1V\',\'4a\',\'3L\',\'2e\'],3p=(4m==\'ao\'),4e=m.1c(\'X\',{U:\'L-2g L-2g-\'+4m,2R:\'<X 2s="L-2g-b4">\'+\'<\'+3K[0]+\'><\'+3K[1]+\'></\'+3K[1]+\'></\'+3K[0]+\'></X>\'+\'<X 2s="L-1J-1t"><X></X></X>\'+\'<X 2s="L-1J-b6"><X></X></X>\'+\'<X 2s="L-6b"><X></X></X>\'},{1u:\'1F\'},m.22),57=4e.6l,X=57[0],7Y=57[1],85=57[2],6b=57[3],1V=X.b7,4a=4e.2L(3K[1])[0],3L;K(u i=0;i<51.S;i++){q(i==0||!3p)3L=m.1c(3K[2],H,H,4a);(z(){u a=51[i],3M=m.1c(3K[3],H,H,3L),cj=i;m.1c(\'a\',{1Y:a.1Y,1X:a.1X,2G:z(){q(/L-42-3Q/.19(k.U))D 1f;m.2h(k).43();D m.83(a)},2R:m.9I?m.9I(a):a.2R},H,3M)})()}q(!81){7Y.2G=z(){1J(-1)};85.2G=z(){1J(1)};m.1Q(4a,R.c3!==1C?\'bB\':\'bZ\',z(e){u 3h=0;e=e||1A.29;q(e.9D){3h=e.9D/ch;q(m.3q)3h=-3h}I q(e.9N){3h=-e.9N/3}q(3h)1J(-3h*0.2);q(e.4D)e.4D();e.9W=1f})}D{6s:6s,4G:4G}};m.5U=m.18;u bC=m.4Z;q(m.2m&&1A==1A.11){(z(){2d{R.4l.bD(\'14\')}1W(e){4r(9V.bF,50);D}m.3s()})()}m.1Q(R,\'bL\',m.3s);m.1Q(1A,\'az\',m.3s);m.1Q(R,\'3s\',z(){q(m.5M||m.3I){u G=m.1c(\'G\',{T:\'bM/7U\'},H,R.2L(\'bT\')[0]),8k=R.6i==\'7P\';z 5e(7w,7W){q(m.2m&&(m.21<9||8k)){u Y=R.9S[R.9S.S-1];q(1q(Y.5e)=="6q")Y.5e(7w,7W)}I{G.2E(R.bU(7w+" {"+7W+"}"))}}z 5f(Z){D\'bV( ( ( bN = R.4l.\'+Z+\' ? R.4l.\'+Z+\' : R.3x.\'+Z+\' ) ) + \\\'F\\\' );\'}q(m.5M)5e(\'.L 1y\',\'46: 5O(\'+m.4p+m.5M+\'), 5R !c8;\');5e(\'.L-1Z-B\',m.2m&&(m.21<7||8k)?\'1j: 2v; \'+\'14:\'+5f(\'5l\')+\'11:\'+5f(\'5i\')+\'M:\'+5f(\'8m\')+\'1b:\'+5f(\'aK\'):\'1j: bc; M: 28%; 1b: 28%; 14: 0; 11: 0\')}});m.1Q(1A,\'3O\',z(){m.6v();q(m.1Z)K(u i=0;i<m.1Z.6l.S;i++){u 3w=m.1Z.6l[i],A=m.2h(3w);A.5y(3w);q(3w.1H==\'2g\')A.1g.2g.4G()}});m.1Q(R,\'6o\',z(e){m.66={x:e.6c,y:e.68}});m.1Q(R,\'aH\',m.87);m.1Q(R,\'aA\',m.87);m.1Q(R,\'3s\',m.60);m.1Q(1A,\'az\',m.9R)}',62,831,'||||||||||||||||||||this||hs||||if||||var|||||function|exp|size|el|return|pos|px|style|null|else|true|for|highslide|width|get|overlay|key|wrapper|document|length|type|className|setStyles|expanders|div|last|prop||top|||left||outline|content|lang|test|full|height|createElement|Math|visibility|false|slideshow|options|els|position|offset|overlayBox|dim|opacity|p1|next|typeof|zIndex|hidden|up|display|ss|btn|overlays|img|imgSize|window|outlineType|undefined|visible|fx|none|src|hsId|case|scroll|tpos|to|id|wsize|parentNode|op|addEventListener|li|loading|re|upcoming|table|catch|title|href|viewport||uaVersion|container|span|new||close||100|event|dimmer|animate|offsetWidth|try|td|imgPad|thumbstrip|getExpander|target|replace|justify|tgt|ie|auto|arr|push|minSize|easing|class|slideshowGroup|hiddenBy|absolute|tblPos|ratio|round|p2|xSize|controls|sg|expand|appendChild|elem|onclick|match|dragArgs|ypos|xpos|getElementsByTagName|image|groups|params|marginMin|contentType|innerHTML|pause|in|lastY|right|lastX|min|ySize|transitions|useBox|opt||||name|args||||overflow|extend|previous|graphic|changed|offsetHeight|elPos|delta|move|val|step|func|ucwh|number|tb|isX|opera|play|ready|dur|timers|focusKey|node|body|hasDragged|yp1|isImage|outlineWhileAnimating|xp1|autoplay|ieLt7|custom|wh|discardElement|dimmingOpacity|duration|tree|tr|cell|expKey|resize|styles|anchor|anchors|page|enable|invPos|onLoad|clientSize|marginMax|crossfade|setPosition||start|active|focus|overlayId|clone|cursor|unit|pendingOutlines|removeEventListener|tbody|tgtArr|now|ieLt9|dom|offsetLeft|bottom|createOverlay|center|marginTop|attribs|documentElement|mode|fitsize|while|graphicsDir|allowReduce|setTimeout|fadeBox|Id|safari|end|minTblPos|owner|cur|zIndexCounter|images|navigator|moveOnly|preventDefault|relToVP|tagName|selectThumb|block|styleRestoreCursor|disable|sizeOverlayBox|marginLeft|uclt|keyHandler|Outline|9999px|fac|padToMinWidth|matches|above|slideshows|idCounter|getNode|preloadTheseImages|credits|Expander||group|all|250|on|isExpanded|max|domCh|xsize|buttons|ysize|numberPosition|minWidth|iebody|addRule|fix|blurExp|getParam|scrollTop|filter|trans|scrollLeft|restoreCursor|fade|prototype|param|allowSizeReduction|userAgent|doShowHide|opos|getParams|afterClose|minHeight|destroy|positionOverlay|curTblPos|setAttribute|break|offY|dir|offX|hsKey|onReady|wrapperKey|showHideElements|self|cancelLoading|isHsAnchor|expandCursor|gotoEnd|url|keypress|keydown|pointer|curAnim|dX|langDefaults|dragHandler|html|RegExp|toLowerCase|geckoMac|getAnchors|oDiv|afterExpand|complete|onload|expOnly|mouse|destroyOverlays|clientY|hideOnMouseOut|fullExpandLabel|marker|clientX|previousOrNext|getAnchorIndex|yimgPad|getPosition|overlayWidth|compatMode|topmostKey|doFullExpand|childNodes|disabled|adj|mousemove|ximgPad|object|Dimension|add|525|os|getPageSize|panel|thumbsUserSetId|tId|heading|preloadFullImage|lt|over|below|relatedTarget|maxWidth|onLoadStarted|align|isReady|Create|Text|connectOutline|other|props|xp2|calcExpanded|loadingPosXfade|maxHeight|margin|defaultView|showLoading|overrides|yp2|calcThumb|endOff|continuePreloading||init|from|getSrc|calcBorders||types|names|loadingPos|hasMovedMin|maxsize|getAdjacentAnchor|startOff|ucrb|mY|expandDuration|current|hasAlphaImageLoader|mX|cloneNode|resizeTo|srcElement|mouseIsOver|easeOutQuad|dY|fullExpandTitle|oPos|markerPos|distance|doWrapper|ie6|dragByHeading|sel|activeRight|thumbnailId|genOverlayBox|numberOfImagesToPreload|wrapperClassName|moveTo|error|isNew|activeLeft|dimmingDuration|pixDimmerSize|clones|topZ|scrollBy|parseInt|osize|element|updateAnchors|BackCompat|undim|hasFocused|Slideshow|pThis|css|ul|dec|state|scrollUp|setPos|startTime|floatMode|setSize|transit|restoreTitle|scrollDown|getWrapperKey|mouseClickHandler|origProp|blur|update|parent|isClosing|done|openerTagNames|changeSize|parOff|middle|relative|garbageBin|backCompat|arrow|clientWidth|parseFloat|Click|restoreDuration|string|fullExpandText|moveTitle|closeTitle|captionOverlay|closeText|moveText|targetY|targetX|headingOverlay|playTitle|spacebar|Previous|Next|Move|Pause|Play|Highslide|JS|Close|contentLoaded|and|pauseTitle|pauseText|nextTitle|playText|wrapperMouseHandler|200|previousTitle|previousText|nextText|enableKeyListener|timerId|Date|switch|orig|rb|loadingOpacity|toUpperCase|easeInQuad|getTime|call|_default|png|preloadGraphic||appendTo|onGraphicLoad|hide|vis|background|loadingText|loadingTitle|offsetTop|pageOrigin|allowMultipleInstances|offsetParent|pageXOffset|tag|nopad|alpha|thumb|dimmingGeckoFix|pow|detachEvent|ltr|clickY|clickX|focusTopmost|form|rv|hideIframes|relativeTo|offsetX|cssDirection|wheelDelta|reuseOverlay|direction|offsetY|leftpanel|stripItemFormatter|getOverlays|marginBottom|rightpanel|marginRight|detail|hand|getComputedStyle|getPropertyValue|preloadImages|styleSheets|Overlay|hideSelects|arguments|returnValue|indexOf|focusTitle|clearsY|sls|getAttribute|getInline|getNumber|getElementByClass|Right|skin|replaceLang|Bottom|getControls|checkFirstAndLast|repeat|wait|hitSpace|Thumbstrip|Left|Top|Width|reOrder|doPanels|showOverlays|gotOverlays|writeCredits|showCredits|horizontal|createFullExpand|fullExpandOpacity|fixedControls||fullExpandPosition|Height|javascript|addOverlay|clearsX|after|load|mouseup|initSlideshow|overlayOptions|fadeInOut|creditsTarget|creditsHref|show|mousedown|toString|ximgSize|clientHeight|transitionDuration|border|yimgSize|oldImg|preloadNext|prepareNextOutline|newImg|creditsText|easingClose|tmpMin|_|creditsPosition|Eval|fitOverlayBox|correctRatio|creditsTitle|nextSibling|innerWidth|innerHeight|inner|scrollHeight|down|firstChild|clearTimeout|Image|cancel|Loading|fixed|bring|pageYOffset|currentStyle|Resize|geckodimmer|float|the|dimming|actual|Android|Go|iPhone|Powered|of|iPod|mgnRight|iPad|resizeTitle|esc|front|Expand||homepage|scrollWidth|mousewheel|HsExpander|doScroll|1001|callee|captionId|captionText|zoomin|captionEval|zoomout|DOMContentLoaded|text|ignoreMe|_self|outlineStartOffset|http|drop|shadow|HEAD|createTextNode|expression|headingId|graphics|padding|DOMMouseScroll|Use|keys|com|onmousewheel|click|removeAttribute|drag|getElementById|important|it|Trident||headingEval|headingText|ra|Safari|Gecko|120|Macintosh|pI|sqrt|reuse|allowSimultaneousLoading|rect|abs|isHtml|keyCode|cellSpacing|readyState|clip|onmouseover|clearInterval|splice|setInterval|200px|preserveContent|default|onmouseout|borderCollapse|collapse|AlphaImageLoader|Microsoft|DXImageTransform|sizingMethod|scale|eval|stl|progid|SELECT|outlinesDir|fontSize|lineHeight|outlines|IFRAME|500|interval|vendor|KDE|mouseover|dragSensitivity|blockRightClick|location|lineNumber|message|dynamicallyUpdateAnchors|useControls|addSlideshow|registerOverlay|htmlE|xpand|hasHtmlExpanders|button|imageCreate|fromElement|flushImgSize|caption|linearTween|floor|fit|split|toElement|oncontextmenu|alert|removeChild|debug|attachEvent|Line'.split('|'),0,{}))
@@ -0,0 +1,2481 @@
1
+ /**
2
+ * Name: Highslide JS
3
+ * Version: 4.1.13 (2011-10-06)
4
+ * Config: default +inline +ajax +iframe +flash
5
+ * Author: Torstein Hønsi
6
+ * Support: www.highslide.com/support
7
+ * License: www.highslide.com/#license
8
+ */
9
+ if (!hs) { var hs = {
10
+ // Language strings
11
+ lang : {
12
+ cssDirection: 'ltr',
13
+ loadingText : 'Loading...',
14
+ loadingTitle : 'Click to cancel',
15
+ focusTitle : 'Click to bring to front',
16
+ fullExpandTitle : 'Expand to actual size (f)',
17
+ creditsText : 'Powered by <i>Highslide JS</i>',
18
+ creditsTitle : 'Go to the Highslide JS homepage',
19
+ previousText : 'Previous',
20
+ nextText : 'Next',
21
+ moveText : 'Move',
22
+ closeText : 'Close',
23
+ closeTitle : 'Close (esc)',
24
+ resizeTitle : 'Resize',
25
+ playText : 'Play',
26
+ playTitle : 'Play slideshow (spacebar)',
27
+ pauseText : 'Pause',
28
+ pauseTitle : 'Pause slideshow (spacebar)',
29
+ previousTitle : 'Previous (arrow left)',
30
+ nextTitle : 'Next (arrow right)',
31
+ moveTitle : 'Move',
32
+ fullExpandText : '1:1',
33
+ restoreTitle : 'Click to close image, click and drag to move. Use arrow keys for next and previous.'
34
+ },
35
+ // See http://highslide.com/ref for examples of settings
36
+ graphicsDir : 'highslide/graphics/',
37
+ expandCursor : 'zoomin.cur', // null disables
38
+ restoreCursor : 'zoomout.cur', // null disables
39
+ expandDuration : 250, // milliseconds
40
+ restoreDuration : 250,
41
+ marginLeft : 15,
42
+ marginRight : 15,
43
+ marginTop : 15,
44
+ marginBottom : 15,
45
+ zIndexCounter : 1001, // adjust to other absolutely positioned elements
46
+ loadingOpacity : 0.75,
47
+ allowMultipleInstances: true,
48
+ numberOfImagesToPreload : 5,
49
+ outlineWhileAnimating : 2, // 0 = never, 1 = always, 2 = HTML only
50
+ outlineStartOffset : 3, // ends at 10
51
+ padToMinWidth : false, // pad the popup width to make room for wide caption
52
+ fullExpandPosition : 'bottom right',
53
+ fullExpandOpacity : 1,
54
+ showCredits : true, // you can set this to false if you want
55
+ creditsHref : 'http://highslide.com/',
56
+ creditsTarget : '_self',
57
+ enableKeyListener : true,
58
+ openerTagNames : ['a'], // Add more to allow slideshow indexing
59
+
60
+ allowWidthReduction : false,
61
+ allowHeightReduction : true,
62
+ preserveContent : true, // Preserve changes made to the content and position of HTML popups.
63
+ objectLoadTime : 'before', // Load iframes 'before' or 'after' expansion.
64
+ cacheAjax : true, // Cache ajax popups for instant display. Can be overridden for each popup.
65
+ dragByHeading: true,
66
+ minWidth: 200,
67
+ minHeight: 200,
68
+ allowSizeReduction: true, // allow the image to reduce to fit client size. If false, this overrides minWidth and minHeight
69
+ outlineType : 'drop-shadow', // set null to disable outlines
70
+ skin : {
71
+ contentWrapper:
72
+ '<div class="highslide-header"><ul>'+
73
+ '<li class="highslide-previous">'+
74
+ '<a href="#" title="{hs.lang.previousTitle}" onclick="return hs.previous(this)">'+
75
+ '<span>{hs.lang.previousText}</span></a>'+
76
+ '</li>'+
77
+ '<li class="highslide-next">'+
78
+ '<a href="#" title="{hs.lang.nextTitle}" onclick="return hs.next(this)">'+
79
+ '<span>{hs.lang.nextText}</span></a>'+
80
+ '</li>'+
81
+ '<li class="highslide-move">'+
82
+ '<a href="#" title="{hs.lang.moveTitle}" onclick="return false">'+
83
+ '<span>{hs.lang.moveText}</span></a>'+
84
+ '</li>'+
85
+ '<li class="highslide-close">'+
86
+ '<a href="#" title="{hs.lang.closeTitle}" onclick="return hs.close(this)">'+
87
+ '<span>{hs.lang.closeText}</span></a>'+
88
+ '</li>'+
89
+ '</ul></div>'+
90
+ '<div class="highslide-body"></div>'+
91
+ '<div class="highslide-footer"><div>'+
92
+ '<span class="highslide-resize" title="{hs.lang.resizeTitle}"><span></span></span>'+
93
+ '</div></div>'
94
+ },
95
+ // END OF YOUR SETTINGS
96
+
97
+
98
+ // declare internal properties
99
+ preloadTheseImages : [],
100
+ continuePreloading: true,
101
+ expanders : [],
102
+ overrides : [
103
+ 'allowSizeReduction',
104
+ 'useBox',
105
+ 'outlineType',
106
+ 'outlineWhileAnimating',
107
+ 'captionId',
108
+ 'captionText',
109
+ 'captionEval',
110
+ 'captionOverlay',
111
+ 'headingId',
112
+ 'headingText',
113
+ 'headingEval',
114
+ 'headingOverlay',
115
+ 'creditsPosition',
116
+ 'dragByHeading',
117
+
118
+ 'width',
119
+ 'height',
120
+
121
+ 'contentId',
122
+ 'allowWidthReduction',
123
+ 'allowHeightReduction',
124
+ 'preserveContent',
125
+ 'maincontentId',
126
+ 'maincontentText',
127
+ 'maincontentEval',
128
+ 'objectType',
129
+ 'cacheAjax',
130
+ 'objectWidth',
131
+ 'objectHeight',
132
+ 'objectLoadTime',
133
+ 'swfOptions',
134
+ 'wrapperClassName',
135
+ 'minWidth',
136
+ 'minHeight',
137
+ 'maxWidth',
138
+ 'maxHeight',
139
+ 'pageOrigin',
140
+ 'slideshowGroup',
141
+ 'easing',
142
+ 'easingClose',
143
+ 'fadeInOut',
144
+ 'src'
145
+ ],
146
+ overlays : [],
147
+ idCounter : 0,
148
+ oPos : {
149
+ x: ['leftpanel', 'left', 'center', 'right', 'rightpanel'],
150
+ y: ['above', 'top', 'middle', 'bottom', 'below']
151
+ },
152
+ mouse: {},
153
+ headingOverlay: {},
154
+ captionOverlay: {},
155
+ swfOptions: { flashvars: {}, params: {}, attributes: {} },
156
+ timers : [],
157
+
158
+ pendingOutlines : {},
159
+ sleeping : [],
160
+ preloadTheseAjax : [],
161
+ cacheBindings : [],
162
+ cachedGets : {},
163
+ clones : {},
164
+ onReady: [],
165
+ uaVersion: /Trident\/4\.0/.test(navigator.userAgent) ? 8 :
166
+ parseFloat((navigator.userAgent.toLowerCase().match( /.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/ ) || [0,'0'])[1]),
167
+ ie : (document.all && !window.opera),
168
+ //ie : navigator && /MSIE [678]/.test(navigator.userAgent), // ie9 compliant?
169
+ safari : /Safari/.test(navigator.userAgent),
170
+ geckoMac : /Macintosh.+rv:1\.[0-8].+Gecko/.test(navigator.userAgent),
171
+
172
+ $ : function (id) {
173
+ if (id) return document.getElementById(id);
174
+ },
175
+
176
+ push : function (arr, val) {
177
+ arr[arr.length] = val;
178
+ },
179
+
180
+ createElement : function (tag, attribs, styles, parent, nopad) {
181
+ var el = document.createElement(tag);
182
+ if (attribs) hs.extend(el, attribs);
183
+ if (nopad) hs.setStyles(el, {padding: 0, border: 'none', margin: 0});
184
+ if (styles) hs.setStyles(el, styles);
185
+ if (parent) parent.appendChild(el);
186
+ return el;
187
+ },
188
+
189
+ extend : function (el, attribs) {
190
+ for (var x in attribs) el[x] = attribs[x];
191
+ return el;
192
+ },
193
+
194
+ setStyles : function (el, styles) {
195
+ for (var x in styles) {
196
+ if (hs.ieLt9 && x == 'opacity') {
197
+ if (styles[x] > 0.99) el.style.removeAttribute('filter');
198
+ else el.style.filter = 'alpha(opacity='+ (styles[x] * 100) +')';
199
+ }
200
+ else el.style[x] = styles[x];
201
+ }
202
+ },
203
+ animate: function(el, prop, opt) {
204
+ var start,
205
+ end,
206
+ unit;
207
+ if (typeof opt != 'object' || opt === null) {
208
+ var args = arguments;
209
+ opt = {
210
+ duration: args[2],
211
+ easing: args[3],
212
+ complete: args[4]
213
+ };
214
+ }
215
+ if (typeof opt.duration != 'number') opt.duration = 250;
216
+ opt.easing = Math[opt.easing] || Math.easeInQuad;
217
+ opt.curAnim = hs.extend({}, prop);
218
+ for (var name in prop) {
219
+ var e = new hs.fx(el, opt , name );
220
+
221
+ start = parseFloat(hs.css(el, name)) || 0;
222
+ end = parseFloat(prop[name]);
223
+ unit = name != 'opacity' ? 'px' : '';
224
+
225
+ e.custom( start, end, unit );
226
+ }
227
+ },
228
+ css: function(el, prop) {
229
+ if (el.style[prop]) {
230
+ return el.style[prop];
231
+ } else if (document.defaultView) {
232
+ return document.defaultView.getComputedStyle(el, null).getPropertyValue(prop);
233
+
234
+ } else {
235
+ if (prop == 'opacity') prop = 'filter';
236
+ var val = el.currentStyle[prop.replace(/\-(\w)/g, function (a, b){ return b.toUpperCase(); })];
237
+ if (prop == 'filter')
238
+ val = val.replace(/alpha\(opacity=([0-9]+)\)/,
239
+ function (a, b) { return b / 100 });
240
+ return val === '' ? 1 : val;
241
+ }
242
+ },
243
+
244
+ getPageSize : function () {
245
+ var d = document, w = window, iebody = d.compatMode && d.compatMode != 'BackCompat'
246
+ ? d.documentElement : d.body,
247
+ ieLt9 = hs.ie && (hs.uaVersion < 9 || typeof pageXOffset == 'undefined');
248
+
249
+ var width = ieLt9 ? iebody.clientWidth :
250
+ (d.documentElement.clientWidth || self.innerWidth),
251
+ height = ieLt9 ? iebody.clientHeight : self.innerHeight;
252
+ hs.page = {
253
+ width: width,
254
+ height: height,
255
+ scrollLeft: ieLt9 ? iebody.scrollLeft : pageXOffset,
256
+ scrollTop: ieLt9 ? iebody.scrollTop : pageYOffset
257
+ };
258
+ return hs.page;
259
+ },
260
+
261
+ getPosition : function(el) {
262
+ var p = { x: el.offsetLeft, y: el.offsetTop };
263
+ while (el.offsetParent) {
264
+ el = el.offsetParent;
265
+ p.x += el.offsetLeft;
266
+ p.y += el.offsetTop;
267
+ if (el != document.body && el != document.documentElement) {
268
+ p.x -= el.scrollLeft;
269
+ p.y -= el.scrollTop;
270
+ }
271
+ }
272
+ return p;
273
+ },
274
+
275
+ expand : function(a, params, custom, type) {
276
+ if (!a) a = hs.createElement('a', null, { display: 'none' }, hs.container);
277
+ if (typeof a.getParams == 'function') return params;
278
+ if (type == 'html') {
279
+ for (var i = 0; i < hs.sleeping.length; i++) {
280
+ if (hs.sleeping[i] && hs.sleeping[i].a == a) {
281
+ hs.sleeping[i].awake();
282
+ hs.sleeping[i] = null;
283
+ return false;
284
+ }
285
+ }
286
+ hs.hasHtmlExpanders = true;
287
+ }
288
+ try {
289
+ new hs.Expander(a, params, custom, type);
290
+ return false;
291
+ } catch (e) { return true; }
292
+ },
293
+
294
+ htmlExpand : function(a, params, custom) {
295
+ return hs.expand(a, params, custom, 'html');
296
+ },
297
+
298
+ getSelfRendered : function() {
299
+ return hs.createElement('div', {
300
+ className: 'highslide-html-content',
301
+ innerHTML: hs.replaceLang(hs.skin.contentWrapper)
302
+ });
303
+ },
304
+ getElementByClass : function (el, tagName, className) {
305
+ var els = el.getElementsByTagName(tagName);
306
+ for (var i = 0; i < els.length; i++) {
307
+ if ((new RegExp(className)).test(els[i].className)) {
308
+ return els[i];
309
+ }
310
+ }
311
+ return null;
312
+ },
313
+ replaceLang : function(s) {
314
+ s = s.replace(/\s/g, ' ');
315
+ var re = /{hs\.lang\.([^}]+)\}/g,
316
+ matches = s.match(re),
317
+ lang;
318
+ if (matches) for (var i = 0; i < matches.length; i++) {
319
+ lang = matches[i].replace(re, "$1");
320
+ if (typeof hs.lang[lang] != 'undefined') s = s.replace(matches[i], hs.lang[lang]);
321
+ }
322
+ return s;
323
+ },
324
+
325
+
326
+ getCacheBinding : function (a) {
327
+ for (var i = 0; i < hs.cacheBindings.length; i++) {
328
+ if (hs.cacheBindings[i][0] == a) {
329
+ var c = hs.cacheBindings[i][1];
330
+ hs.cacheBindings[i][1] = c.cloneNode(1);
331
+ return c;
332
+ }
333
+ }
334
+ return null;
335
+ },
336
+
337
+ preloadAjax : function (e) {
338
+ var arr = hs.getAnchors();
339
+ for (var i = 0; i < arr.htmls.length; i++) {
340
+ var a = arr.htmls[i];
341
+ if (hs.getParam(a, 'objectType') == 'ajax' && hs.getParam(a, 'cacheAjax'))
342
+ hs.push(hs.preloadTheseAjax, a);
343
+ }
344
+
345
+ hs.preloadAjaxElement(0);
346
+ },
347
+
348
+ preloadAjaxElement : function (i) {
349
+ if (!hs.preloadTheseAjax[i]) return;
350
+ var a = hs.preloadTheseAjax[i];
351
+ var cache = hs.getNode(hs.getParam(a, 'contentId'));
352
+ if (!cache) cache = hs.getSelfRendered();
353
+ var ajax = new hs.Ajax(a, cache, 1);
354
+ ajax.onError = function () { };
355
+ ajax.onLoad = function () {
356
+ hs.push(hs.cacheBindings, [a, cache]);
357
+ hs.preloadAjaxElement(i + 1);
358
+ };
359
+ ajax.run();
360
+ },
361
+
362
+ focusTopmost : function() {
363
+ var topZ = 0,
364
+ topmostKey = -1,
365
+ expanders = hs.expanders,
366
+ exp,
367
+ zIndex;
368
+ for (var i = 0; i < expanders.length; i++) {
369
+ exp = expanders[i];
370
+ if (exp) {
371
+ zIndex = exp.wrapper.style.zIndex;
372
+ if (zIndex && zIndex > topZ) {
373
+ topZ = zIndex;
374
+ topmostKey = i;
375
+ }
376
+ }
377
+ }
378
+ if (topmostKey == -1) hs.focusKey = -1;
379
+ else expanders[topmostKey].focus();
380
+ },
381
+
382
+ getParam : function (a, param) {
383
+ a.getParams = a.onclick;
384
+ var p = a.getParams ? a.getParams() : null;
385
+ a.getParams = null;
386
+
387
+ return (p && typeof p[param] != 'undefined') ? p[param] :
388
+ (typeof hs[param] != 'undefined' ? hs[param] : null);
389
+ },
390
+
391
+ getSrc : function (a) {
392
+ var src = hs.getParam(a, 'src');
393
+ if (src) return src;
394
+ return a.href;
395
+ },
396
+
397
+ getNode : function (id) {
398
+ var node = hs.$(id), clone = hs.clones[id], a = {};
399
+ if (!node && !clone) return null;
400
+ if (!clone) {
401
+ clone = node.cloneNode(true);
402
+ clone.id = '';
403
+ hs.clones[id] = clone;
404
+ return node;
405
+ } else {
406
+ return clone.cloneNode(true);
407
+ }
408
+ },
409
+
410
+ discardElement : function(d) {
411
+ if (d) hs.garbageBin.appendChild(d);
412
+ hs.garbageBin.innerHTML = '';
413
+ },
414
+ transit : function (adj, exp) {
415
+ var last = exp || hs.getExpander();
416
+ exp = last;
417
+ if (hs.upcoming) return false;
418
+ else hs.last = last;
419
+ hs.removeEventListener(document, window.opera ? 'keypress' : 'keydown', hs.keyHandler);
420
+ try {
421
+ hs.upcoming = adj;
422
+ adj.onclick();
423
+ } catch (e){
424
+ hs.last = hs.upcoming = null;
425
+ }
426
+ try {
427
+ exp.close();
428
+ } catch (e) {}
429
+ return false;
430
+ },
431
+
432
+ previousOrNext : function (el, op) {
433
+ var exp = hs.getExpander(el);
434
+ if (exp) return hs.transit(exp.getAdjacentAnchor(op), exp);
435
+ else return false;
436
+ },
437
+
438
+ previous : function (el) {
439
+ return hs.previousOrNext(el, -1);
440
+ },
441
+
442
+ next : function (el) {
443
+ return hs.previousOrNext(el, 1);
444
+ },
445
+
446
+ keyHandler : function(e) {
447
+ if (!e) e = window.event;
448
+ if (!e.target) e.target = e.srcElement; // ie
449
+ if (typeof e.target.form != 'undefined') return true; // form element has focus
450
+ var exp = hs.getExpander();
451
+
452
+ var op = null;
453
+ switch (e.keyCode) {
454
+ case 70: // f
455
+ if (exp) exp.doFullExpand();
456
+ return true;
457
+ case 32: // Space
458
+ case 34: // Page Down
459
+ case 39: // Arrow right
460
+ case 40: // Arrow down
461
+ op = 1;
462
+ break;
463
+ case 8: // Backspace
464
+ case 33: // Page Up
465
+ case 37: // Arrow left
466
+ case 38: // Arrow up
467
+ op = -1;
468
+ break;
469
+ case 27: // Escape
470
+ case 13: // Enter
471
+ op = 0;
472
+ }
473
+ if (op !== null) {hs.removeEventListener(document, window.opera ? 'keypress' : 'keydown', hs.keyHandler);
474
+ if (!hs.enableKeyListener) return true;
475
+
476
+ if (e.preventDefault) e.preventDefault();
477
+ else e.returnValue = false;
478
+ if (exp) {
479
+ if (op == 0) {
480
+ exp.close();
481
+ } else {
482
+ hs.previousOrNext(exp.key, op);
483
+ }
484
+ return false;
485
+ }
486
+ }
487
+ return true;
488
+ },
489
+
490
+
491
+ registerOverlay : function (overlay) {
492
+ hs.push(hs.overlays, hs.extend(overlay, { hsId: 'hsId'+ hs.idCounter++ } ));
493
+ },
494
+
495
+
496
+ getWrapperKey : function (element, expOnly) {
497
+ var el, re = /^highslide-wrapper-([0-9]+)$/;
498
+ // 1. look in open expanders
499
+ el = element;
500
+ while (el.parentNode) {
501
+ if (el.id && re.test(el.id)) return el.id.replace(re, "$1");
502
+ el = el.parentNode;
503
+ }
504
+ // 2. look in thumbnail
505
+ if (!expOnly) {
506
+ el = element;
507
+ while (el.parentNode) {
508
+ if (el.tagName && hs.isHsAnchor(el)) {
509
+ for (var key = 0; key < hs.expanders.length; key++) {
510
+ var exp = hs.expanders[key];
511
+ if (exp && exp.a == el) return key;
512
+ }
513
+ }
514
+ el = el.parentNode;
515
+ }
516
+ }
517
+ return null;
518
+ },
519
+
520
+ getExpander : function (el, expOnly) {
521
+ if (typeof el == 'undefined') return hs.expanders[hs.focusKey] || null;
522
+ if (typeof el == 'number') return hs.expanders[el] || null;
523
+ if (typeof el == 'string') el = hs.$(el);
524
+ return hs.expanders[hs.getWrapperKey(el, expOnly)] || null;
525
+ },
526
+
527
+ isHsAnchor : function (a) {
528
+ return (a.onclick && a.onclick.toString().replace(/\s/g, ' ').match(/hs.(htmlE|e)xpand/));
529
+ },
530
+
531
+ reOrder : function () {
532
+ for (var i = 0; i < hs.expanders.length; i++)
533
+ if (hs.expanders[i] && hs.expanders[i].isExpanded) hs.focusTopmost();
534
+ },
535
+
536
+ mouseClickHandler : function(e)
537
+ {
538
+ if (!e) e = window.event;
539
+ if (e.button > 1) return true;
540
+ if (!e.target) e.target = e.srcElement;
541
+
542
+ var el = e.target;
543
+ while (el.parentNode
544
+ && !(/highslide-(image|move|html|resize)/.test(el.className)))
545
+ {
546
+ el = el.parentNode;
547
+ }
548
+ var exp = hs.getExpander(el);
549
+ if (exp && (exp.isClosing || !exp.isExpanded)) return true;
550
+
551
+ if (exp && e.type == 'mousedown') {
552
+ if (e.target.form) return true;
553
+ var match = el.className.match(/highslide-(image|move|resize)/);
554
+ if (match) {
555
+ hs.dragArgs = {
556
+ exp: exp ,
557
+ type: match[1],
558
+ left: exp.x.pos,
559
+ width: exp.x.size,
560
+ top: exp.y.pos,
561
+ height: exp.y.size,
562
+ clickX: e.clientX,
563
+ clickY: e.clientY
564
+ };
565
+
566
+
567
+ hs.addEventListener(document, 'mousemove', hs.dragHandler);
568
+ if (e.preventDefault) e.preventDefault(); // FF
569
+
570
+ if (/highslide-(image|html)-blur/.test(exp.content.className)) {
571
+ exp.focus();
572
+ hs.hasFocused = true;
573
+ }
574
+ return false;
575
+ }
576
+ else if (/highslide-html/.test(el.className) && hs.focusKey != exp.key) {
577
+ exp.focus();
578
+ exp.doShowHide('hidden');
579
+ }
580
+ } else if (e.type == 'mouseup') {
581
+
582
+ hs.removeEventListener(document, 'mousemove', hs.dragHandler);
583
+
584
+ if (hs.dragArgs) {
585
+ if (hs.styleRestoreCursor && hs.dragArgs.type == 'image')
586
+ hs.dragArgs.exp.content.style.cursor = hs.styleRestoreCursor;
587
+ var hasDragged = hs.dragArgs.hasDragged;
588
+
589
+ if (!hasDragged &&!hs.hasFocused && !/(move|resize)/.test(hs.dragArgs.type)) {
590
+ exp.close();
591
+ }
592
+ else if (hasDragged || (!hasDragged && hs.hasHtmlExpanders)) {
593
+ hs.dragArgs.exp.doShowHide('hidden');
594
+ }
595
+
596
+ if (hs.dragArgs.exp.releaseMask)
597
+ hs.dragArgs.exp.releaseMask.style.display = 'none';
598
+ hs.hasFocused = false;
599
+ hs.dragArgs = null;
600
+
601
+ } else if (/highslide-image-blur/.test(el.className)) {
602
+ el.style.cursor = hs.styleRestoreCursor;
603
+ }
604
+ }
605
+ return false;
606
+ },
607
+
608
+ dragHandler : function(e)
609
+ {
610
+ if (!hs.dragArgs) return true;
611
+ if (!e) e = window.event;
612
+ var a = hs.dragArgs, exp = a.exp;
613
+ if (exp.iframe) {
614
+ if (!exp.releaseMask) exp.releaseMask = hs.createElement('div', null,
615
+ { position: 'absolute', width: exp.x.size+'px', height: exp.y.size+'px',
616
+ left: exp.x.cb+'px', top: exp.y.cb+'px', zIndex: 4, background: (hs.ieLt9 ? 'white' : 'none'),
617
+ opacity: 0.01 },
618
+ exp.wrapper, true);
619
+ if (exp.releaseMask.style.display == 'none')
620
+ exp.releaseMask.style.display = '';
621
+ }
622
+
623
+ a.dX = e.clientX - a.clickX;
624
+ a.dY = e.clientY - a.clickY;
625
+
626
+ var distance = Math.sqrt(Math.pow(a.dX, 2) + Math.pow(a.dY, 2));
627
+ if (!a.hasDragged) a.hasDragged = (a.type != 'image' && distance > 0)
628
+ || (distance > (hs.dragSensitivity || 5));
629
+
630
+ if (a.hasDragged && e.clientX > 5 && e.clientY > 5) {
631
+
632
+ if (a.type == 'resize') exp.resize(a);
633
+ else {
634
+ exp.moveTo(a.left + a.dX, a.top + a.dY);
635
+ if (a.type == 'image') exp.content.style.cursor = 'move';
636
+ }
637
+ }
638
+ return false;
639
+ },
640
+
641
+ wrapperMouseHandler : function (e) {
642
+ try {
643
+ if (!e) e = window.event;
644
+ var over = /mouseover/i.test(e.type);
645
+ if (!e.target) e.target = e.srcElement; // ie
646
+ if (!e.relatedTarget) e.relatedTarget =
647
+ over ? e.fromElement : e.toElement; // ie
648
+ var exp = hs.getExpander(e.target);
649
+ if (!exp.isExpanded) return;
650
+ if (!exp || !e.relatedTarget || hs.getExpander(e.relatedTarget, true) == exp
651
+ || hs.dragArgs) return;
652
+ for (var i = 0; i < exp.overlays.length; i++) (function() {
653
+ var o = hs.$('hsId'+ exp.overlays[i]);
654
+ if (o && o.hideOnMouseOut) {
655
+ if (over) hs.setStyles(o, { visibility: 'visible', display: '' });
656
+ hs.animate(o, { opacity: over ? o.opacity : 0 }, o.dur);
657
+ }
658
+ })();
659
+ } catch (e) {}
660
+ },
661
+ addEventListener : function (el, event, func) {
662
+ if (el == document && event == 'ready') {
663
+ hs.push(hs.onReady, func);
664
+ }
665
+ try {
666
+ el.addEventListener(event, func, false);
667
+ } catch (e) {
668
+ try {
669
+ el.detachEvent('on'+ event, func);
670
+ el.attachEvent('on'+ event, func);
671
+ } catch (e) {
672
+ el['on'+ event] = func;
673
+ }
674
+ }
675
+ },
676
+
677
+ removeEventListener : function (el, event, func) {
678
+ try {
679
+ el.removeEventListener(event, func, false);
680
+ } catch (e) {
681
+ try {
682
+ el.detachEvent('on'+ event, func);
683
+ } catch (e) {
684
+ el['on'+ event] = null;
685
+ }
686
+ }
687
+ },
688
+
689
+ preloadFullImage : function (i) {
690
+ if (hs.continuePreloading && hs.preloadTheseImages[i] && hs.preloadTheseImages[i] != 'undefined') {
691
+ var img = document.createElement('img');
692
+ img.onload = function() {
693
+ img = null;
694
+ hs.preloadFullImage(i + 1);
695
+ };
696
+ img.src = hs.preloadTheseImages[i];
697
+ }
698
+ },
699
+ preloadImages : function (number) {
700
+ if (number && typeof number != 'object') hs.numberOfImagesToPreload = number;
701
+
702
+ var arr = hs.getAnchors();
703
+ for (var i = 0; i < arr.images.length && i < hs.numberOfImagesToPreload; i++) {
704
+ hs.push(hs.preloadTheseImages, hs.getSrc(arr.images[i]));
705
+ }
706
+
707
+ // preload outlines
708
+ if (hs.outlineType) new hs.Outline(hs.outlineType, function () { hs.preloadFullImage(0)} );
709
+ else
710
+
711
+ hs.preloadFullImage(0);
712
+
713
+ // preload cursor
714
+ if (hs.restoreCursor) var cur = hs.createElement('img', { src: hs.graphicsDir + hs.restoreCursor });
715
+ },
716
+
717
+
718
+ init : function () {
719
+ if (!hs.container) {
720
+
721
+ hs.ieLt7 = hs.ie && hs.uaVersion < 7;
722
+ hs.ieLt9 = hs.ie && hs.uaVersion < 9;
723
+
724
+ hs.getPageSize();
725
+ hs.ie6SSL = hs.ieLt7 && location.protocol == 'https:';
726
+ for (var x in hs.langDefaults) {
727
+ if (typeof hs[x] != 'undefined') hs.lang[x] = hs[x];
728
+ else if (typeof hs.lang[x] == 'undefined' && typeof hs.langDefaults[x] != 'undefined')
729
+ hs.lang[x] = hs.langDefaults[x];
730
+ }
731
+
732
+ hs.container = hs.createElement('div', {
733
+ className: 'highslide-container'
734
+ }, {
735
+ position: 'absolute',
736
+ left: 0,
737
+ top: 0,
738
+ width: '100%',
739
+ zIndex: hs.zIndexCounter,
740
+ direction: 'ltr'
741
+ },
742
+ document.body,
743
+ true
744
+ );
745
+ hs.loading = hs.createElement('a', {
746
+ className: 'highslide-loading',
747
+ title: hs.lang.loadingTitle,
748
+ innerHTML: hs.lang.loadingText,
749
+ href: 'javascript:;'
750
+ }, {
751
+ position: 'absolute',
752
+ top: '-9999px',
753
+ opacity: hs.loadingOpacity,
754
+ zIndex: 1
755
+ }, hs.container
756
+ );
757
+ hs.garbageBin = hs.createElement('div', null, { display: 'none' }, hs.container);
758
+ hs.clearing = hs.createElement('div', null,
759
+ { clear: 'both', paddingTop: '1px' }, null, true);
760
+
761
+ // http://www.robertpenner.com/easing/
762
+ Math.linearTween = function (t, b, c, d) {
763
+ return c*t/d + b;
764
+ };
765
+ Math.easeInQuad = function (t, b, c, d) {
766
+ return c*(t/=d)*t + b;
767
+ };
768
+
769
+ hs.hideSelects = hs.ieLt7;
770
+ hs.hideIframes = ((window.opera && hs.uaVersion < 9) || navigator.vendor == 'KDE'
771
+ || (hs.ieLt7 && hs.uaVersion < 5.5));
772
+ }
773
+ },
774
+ ready : function() {
775
+ if (hs.isReady) return;
776
+ hs.isReady = true;
777
+ for (var i = 0; i < hs.onReady.length; i++) hs.onReady[i]();
778
+ },
779
+
780
+ updateAnchors : function() {
781
+ var el, els, all = [], images = [], htmls = [],groups = {}, re;
782
+
783
+ for (var i = 0; i < hs.openerTagNames.length; i++) {
784
+ els = document.getElementsByTagName(hs.openerTagNames[i]);
785
+ for (var j = 0; j < els.length; j++) {
786
+ el = els[j];
787
+ re = hs.isHsAnchor(el);
788
+ if (re) {
789
+ hs.push(all, el);
790
+ if (re[0] == 'hs.expand') hs.push(images, el);
791
+ else if (re[0] == 'hs.htmlExpand') hs.push(htmls, el);
792
+ var g = hs.getParam(el, 'slideshowGroup') || 'none';
793
+ if (!groups[g]) groups[g] = [];
794
+ hs.push(groups[g], el);
795
+ }
796
+ }
797
+ }
798
+ hs.anchors = { all: all, groups: groups, images: images, htmls: htmls };
799
+ return hs.anchors;
800
+
801
+ },
802
+
803
+ getAnchors : function() {
804
+ return hs.anchors || hs.updateAnchors();
805
+ },
806
+
807
+
808
+ close : function(el) {
809
+ var exp = hs.getExpander(el);
810
+ if (exp) exp.close();
811
+ return false;
812
+ }
813
+ }; // end hs object
814
+ hs.fx = function( elem, options, prop ){
815
+ this.options = options;
816
+ this.elem = elem;
817
+ this.prop = prop;
818
+
819
+ if (!options.orig) options.orig = {};
820
+ };
821
+ hs.fx.prototype = {
822
+ update: function(){
823
+ (hs.fx.step[this.prop] || hs.fx.step._default)(this);
824
+
825
+ if (this.options.step)
826
+ this.options.step.call(this.elem, this.now, this);
827
+
828
+ },
829
+ custom: function(from, to, unit){
830
+ this.startTime = (new Date()).getTime();
831
+ this.start = from;
832
+ this.end = to;
833
+ this.unit = unit;// || this.unit || "px";
834
+ this.now = this.start;
835
+ this.pos = this.state = 0;
836
+
837
+ var self = this;
838
+ function t(gotoEnd){
839
+ return self.step(gotoEnd);
840
+ }
841
+
842
+ t.elem = this.elem;
843
+
844
+ if ( t() && hs.timers.push(t) == 1 ) {
845
+ hs.timerId = setInterval(function(){
846
+ var timers = hs.timers;
847
+
848
+ for ( var i = 0; i < timers.length; i++ )
849
+ if ( !timers[i]() )
850
+ timers.splice(i--, 1);
851
+
852
+ if ( !timers.length ) {
853
+ clearInterval(hs.timerId);
854
+ }
855
+ }, 13);
856
+ }
857
+ },
858
+ step: function(gotoEnd){
859
+ var t = (new Date()).getTime();
860
+ if ( gotoEnd || t >= this.options.duration + this.startTime ) {
861
+ this.now = this.end;
862
+ this.pos = this.state = 1;
863
+ this.update();
864
+
865
+ this.options.curAnim[ this.prop ] = true;
866
+
867
+ var done = true;
868
+ for ( var i in this.options.curAnim )
869
+ if ( this.options.curAnim[i] !== true )
870
+ done = false;
871
+
872
+ if ( done ) {
873
+ if (this.options.complete) this.options.complete.call(this.elem);
874
+ }
875
+ return false;
876
+ } else {
877
+ var n = t - this.startTime;
878
+ this.state = n / this.options.duration;
879
+ this.pos = this.options.easing(n, 0, 1, this.options.duration);
880
+ this.now = this.start + ((this.end - this.start) * this.pos);
881
+ this.update();
882
+ }
883
+ return true;
884
+ }
885
+
886
+ };
887
+
888
+ hs.extend( hs.fx, {
889
+ step: {
890
+
891
+ opacity: function(fx){
892
+ hs.setStyles(fx.elem, { opacity: fx.now });
893
+ },
894
+
895
+ _default: function(fx){
896
+ try {
897
+ if ( fx.elem.style && fx.elem.style[ fx.prop ] != null )
898
+ fx.elem.style[ fx.prop ] = fx.now + fx.unit;
899
+ else
900
+ fx.elem[ fx.prop ] = fx.now;
901
+ } catch (e) {}
902
+ }
903
+ }
904
+ });
905
+
906
+ hs.Outline = function (outlineType, onLoad) {
907
+ this.onLoad = onLoad;
908
+ this.outlineType = outlineType;
909
+ var v = hs.uaVersion, tr;
910
+
911
+ this.hasAlphaImageLoader = hs.ie && hs.uaVersion < 7;
912
+ if (!outlineType) {
913
+ if (onLoad) onLoad();
914
+ return;
915
+ }
916
+
917
+ hs.init();
918
+ this.table = hs.createElement(
919
+ 'table', {
920
+ cellSpacing: 0
921
+ }, {
922
+ visibility: 'hidden',
923
+ position: 'absolute',
924
+ borderCollapse: 'collapse',
925
+ width: 0
926
+ },
927
+ hs.container,
928
+ true
929
+ );
930
+ var tbody = hs.createElement('tbody', null, null, this.table, 1);
931
+
932
+ this.td = [];
933
+ for (var i = 0; i <= 8; i++) {
934
+ if (i % 3 == 0) tr = hs.createElement('tr', null, { height: 'auto' }, tbody, true);
935
+ this.td[i] = hs.createElement('td', null, null, tr, true);
936
+ var style = i != 4 ? { lineHeight: 0, fontSize: 0} : { position : 'relative' };
937
+ hs.setStyles(this.td[i], style);
938
+ }
939
+ this.td[4].className = outlineType +' highslide-outline';
940
+
941
+ this.preloadGraphic();
942
+ };
943
+
944
+ hs.Outline.prototype = {
945
+ preloadGraphic : function () {
946
+ var src = hs.graphicsDir + (hs.outlinesDir || "outlines/")+ this.outlineType +".png";
947
+
948
+ var appendTo = hs.safari && hs.uaVersion < 525 ? hs.container : null;
949
+ this.graphic = hs.createElement('img', null, { position: 'absolute',
950
+ top: '-9999px' }, appendTo, true); // for onload trigger
951
+
952
+ var pThis = this;
953
+ this.graphic.onload = function() { pThis.onGraphicLoad(); };
954
+
955
+ this.graphic.src = src;
956
+ },
957
+
958
+ onGraphicLoad : function () {
959
+ var o = this.offset = this.graphic.width / 4,
960
+ pos = [[0,0],[0,-4],[-2,0],[0,-8],0,[-2,-8],[0,-2],[0,-6],[-2,-2]],
961
+ dim = { height: (2*o) +'px', width: (2*o) +'px' };
962
+ for (var i = 0; i <= 8; i++) {
963
+ if (pos[i]) {
964
+ if (this.hasAlphaImageLoader) {
965
+ var w = (i == 1 || i == 7) ? '100%' : this.graphic.width +'px';
966
+ var div = hs.createElement('div', null, { width: '100%', height: '100%', position: 'relative', overflow: 'hidden'}, this.td[i], true);
967
+ hs.createElement ('div', null, {
968
+ filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale, src='"+ this.graphic.src + "')",
969
+ position: 'absolute',
970
+ width: w,
971
+ height: this.graphic.height +'px',
972
+ left: (pos[i][0]*o)+'px',
973
+ top: (pos[i][1]*o)+'px'
974
+ },
975
+ div,
976
+ true);
977
+ } else {
978
+ hs.setStyles(this.td[i], { background: 'url('+ this.graphic.src +') '+ (pos[i][0]*o)+'px '+(pos[i][1]*o)+'px'});
979
+ }
980
+
981
+ if (window.opera && (i == 3 || i ==5))
982
+ hs.createElement('div', null, dim, this.td[i], true);
983
+
984
+ hs.setStyles (this.td[i], dim);
985
+ }
986
+ }
987
+ this.graphic = null;
988
+ if (hs.pendingOutlines[this.outlineType]) hs.pendingOutlines[this.outlineType].destroy();
989
+ hs.pendingOutlines[this.outlineType] = this;
990
+ if (this.onLoad) this.onLoad();
991
+ },
992
+
993
+ setPosition : function (pos, offset, vis, dur, easing) {
994
+ var exp = this.exp,
995
+ stl = exp.wrapper.style,
996
+ offset = offset || 0,
997
+ pos = pos || {
998
+ x: exp.x.pos + offset,
999
+ y: exp.y.pos + offset,
1000
+ w: exp.x.get('wsize') - 2 * offset,
1001
+ h: exp.y.get('wsize') - 2 * offset
1002
+ };
1003
+ if (vis) this.table.style.visibility = (pos.h >= 4 * this.offset)
1004
+ ? 'visible' : 'hidden';
1005
+ hs.setStyles(this.table, {
1006
+ left: (pos.x - this.offset) +'px',
1007
+ top: (pos.y - this.offset) +'px',
1008
+ width: (pos.w + 2 * this.offset) +'px'
1009
+ });
1010
+
1011
+ pos.w -= 2 * this.offset;
1012
+ pos.h -= 2 * this.offset;
1013
+ hs.setStyles (this.td[4], {
1014
+ width: pos.w >= 0 ? pos.w +'px' : 0,
1015
+ height: pos.h >= 0 ? pos.h +'px' : 0
1016
+ });
1017
+ if (this.hasAlphaImageLoader) this.td[3].style.height
1018
+ = this.td[5].style.height = this.td[4].style.height;
1019
+
1020
+ },
1021
+
1022
+ destroy : function(hide) {
1023
+ if (hide) this.table.style.visibility = 'hidden';
1024
+ else hs.discardElement(this.table);
1025
+ }
1026
+ };
1027
+
1028
+ hs.Dimension = function(exp, dim) {
1029
+ this.exp = exp;
1030
+ this.dim = dim;
1031
+ this.ucwh = dim == 'x' ? 'Width' : 'Height';
1032
+ this.wh = this.ucwh.toLowerCase();
1033
+ this.uclt = dim == 'x' ? 'Left' : 'Top';
1034
+ this.lt = this.uclt.toLowerCase();
1035
+ this.ucrb = dim == 'x' ? 'Right' : 'Bottom';
1036
+ this.rb = this.ucrb.toLowerCase();
1037
+ this.p1 = this.p2 = 0;
1038
+ };
1039
+ hs.Dimension.prototype = {
1040
+ get : function(key) {
1041
+ switch (key) {
1042
+ case 'loadingPos':
1043
+ return this.tpos + this.tb + (this.t - hs.loading['offset'+ this.ucwh]) / 2;
1044
+ case 'wsize':
1045
+ return this.size + 2 * this.cb + this.p1 + this.p2;
1046
+ case 'fitsize':
1047
+ return this.clientSize - this.marginMin - this.marginMax;
1048
+ case 'maxsize':
1049
+ return this.get('fitsize') - 2 * this.cb - this.p1 - this.p2 ;
1050
+ case 'opos':
1051
+ return this.pos - (this.exp.outline ? this.exp.outline.offset : 0);
1052
+ case 'osize':
1053
+ return this.get('wsize') + (this.exp.outline ? 2*this.exp.outline.offset : 0);
1054
+ case 'imgPad':
1055
+ return this.imgSize ? Math.round((this.size - this.imgSize) / 2) : 0;
1056
+
1057
+ }
1058
+ },
1059
+ calcBorders: function() {
1060
+ // correct for borders
1061
+ this.cb = (this.exp.content['offset'+ this.ucwh] - this.t) / 2;
1062
+
1063
+ this.marginMax = hs['margin'+ this.ucrb];
1064
+ },
1065
+ calcThumb: function() {
1066
+ this.t = this.exp.el[this.wh] ? parseInt(this.exp.el[this.wh]) :
1067
+ this.exp.el['offset'+ this.ucwh];
1068
+ this.tpos = this.exp.tpos[this.dim];
1069
+ this.tb = (this.exp.el['offset'+ this.ucwh] - this.t) / 2;
1070
+ if (this.tpos == 0 || this.tpos == -1) {
1071
+ this.tpos = (hs.page[this.wh] / 2) + hs.page['scroll'+ this.uclt];
1072
+ };
1073
+ },
1074
+ calcExpanded: function() {
1075
+ var exp = this.exp;
1076
+ this.justify = 'auto';
1077
+
1078
+
1079
+ // size and position
1080
+ this.pos = this.tpos - this.cb + this.tb;
1081
+
1082
+ if (this.maxHeight && this.dim == 'x')
1083
+ exp.maxWidth = Math.min(exp.maxWidth || this.full, exp.maxHeight * this.full / exp.y.full);
1084
+
1085
+ this.size = Math.min(this.full, exp['max'+ this.ucwh] || this.full);
1086
+ this.minSize = exp.allowSizeReduction ?
1087
+ Math.min(exp['min'+ this.ucwh], this.full) :this.full;
1088
+ if (exp.isImage && exp.useBox) {
1089
+ this.size = exp[this.wh];
1090
+ this.imgSize = this.full;
1091
+ }
1092
+ if (this.dim == 'x' && hs.padToMinWidth) this.minSize = exp.minWidth;
1093
+ this.marginMin = hs['margin'+ this.uclt];
1094
+ this.scroll = hs.page['scroll'+ this.uclt];
1095
+ this.clientSize = hs.page[this.wh];
1096
+ },
1097
+ setSize: function(i) {
1098
+ var exp = this.exp;
1099
+ if (exp.isImage && (exp.useBox || hs.padToMinWidth)) {
1100
+ this.imgSize = i;
1101
+ this.size = Math.max(this.size, this.imgSize);
1102
+ exp.content.style[this.lt] = this.get('imgPad')+'px';
1103
+ } else
1104
+ this.size = i;
1105
+
1106
+ exp.content.style[this.wh] = i +'px';
1107
+ exp.wrapper.style[this.wh] = this.get('wsize') +'px';
1108
+ if (exp.outline) exp.outline.setPosition();
1109
+ if (exp.releaseMask) exp.releaseMask.style[this.wh] = i +'px';
1110
+ if (this.dim == 'y' && exp.iDoc && exp.body.style.height != 'auto') try {
1111
+ exp.iDoc.body.style.overflow = 'auto';
1112
+ } catch (e) {}
1113
+ if (exp.isHtml) {
1114
+ var d = exp.scrollerDiv;
1115
+ if (this.sizeDiff === undefined)
1116
+ this.sizeDiff = exp.innerContent['offset'+ this.ucwh] - d['offset'+ this.ucwh];
1117
+ d.style[this.wh] = (this.size - this.sizeDiff) +'px';
1118
+
1119
+ if (this.dim == 'x') exp.mediumContent.style.width = 'auto';
1120
+ if (exp.body) exp.body.style[this.wh] = 'auto';
1121
+ }
1122
+ if (this.dim == 'x' && exp.overlayBox) exp.sizeOverlayBox(true);
1123
+ },
1124
+ setPos: function(i) {
1125
+ this.pos = i;
1126
+ this.exp.wrapper.style[this.lt] = i +'px';
1127
+
1128
+ if (this.exp.outline) this.exp.outline.setPosition();
1129
+
1130
+ }
1131
+ };
1132
+
1133
+ hs.Expander = function(a, params, custom, contentType) {
1134
+ if (document.readyState && hs.ie && !hs.isReady) {
1135
+ hs.addEventListener(document, 'ready', function() {
1136
+ new hs.Expander(a, params, custom, contentType);
1137
+ });
1138
+ return;
1139
+ }
1140
+ this.a = a;
1141
+ this.custom = custom;
1142
+ this.contentType = contentType || 'image';
1143
+ this.isHtml = (contentType == 'html');
1144
+ this.isImage = !this.isHtml;
1145
+
1146
+ hs.continuePreloading = false;
1147
+ this.overlays = [];
1148
+ hs.init();
1149
+ var key = this.key = hs.expanders.length;
1150
+ // override inline parameters
1151
+ for (var i = 0; i < hs.overrides.length; i++) {
1152
+ var name = hs.overrides[i];
1153
+ this[name] = params && typeof params[name] != 'undefined' ?
1154
+ params[name] : hs[name];
1155
+ }
1156
+ if (!this.src) this.src = a.href;
1157
+
1158
+ // get thumb
1159
+ var el = (params && params.thumbnailId) ? hs.$(params.thumbnailId) : a;
1160
+ el = this.thumb = el.getElementsByTagName('img')[0] || el;
1161
+ this.thumbsUserSetId = el.id || a.id;
1162
+
1163
+ // check if already open
1164
+ for (var i = 0; i < hs.expanders.length; i++) {
1165
+ if (hs.expanders[i] && hs.expanders[i].a == a) {
1166
+ hs.expanders[i].focus();
1167
+ return false;
1168
+ }
1169
+ }
1170
+
1171
+ // cancel other
1172
+ if (!hs.allowSimultaneousLoading) for (var i = 0; i < hs.expanders.length; i++) {
1173
+ if (hs.expanders[i] && hs.expanders[i].thumb != el && !hs.expanders[i].onLoadStarted) {
1174
+ hs.expanders[i].cancelLoading();
1175
+ }
1176
+ }
1177
+ hs.expanders[key] = this;
1178
+ if (!hs.allowMultipleInstances && !hs.upcoming) {
1179
+ if (hs.expanders[key-1]) hs.expanders[key-1].close();
1180
+ if (typeof hs.focusKey != 'undefined' && hs.expanders[hs.focusKey])
1181
+ hs.expanders[hs.focusKey].close();
1182
+ }
1183
+
1184
+ // initiate metrics
1185
+ this.el = el;
1186
+ this.tpos = this.pageOrigin || hs.getPosition(el);
1187
+ hs.getPageSize();
1188
+ var x = this.x = new hs.Dimension(this, 'x');
1189
+ x.calcThumb();
1190
+ var y = this.y = new hs.Dimension(this, 'y');
1191
+ y.calcThumb();
1192
+ this.wrapper = hs.createElement(
1193
+ 'div', {
1194
+ id: 'highslide-wrapper-'+ this.key,
1195
+ className: 'highslide-wrapper '+ this.wrapperClassName
1196
+ }, {
1197
+ visibility: 'hidden',
1198
+ position: 'absolute',
1199
+ zIndex: hs.zIndexCounter += 2
1200
+ }, null, true );
1201
+
1202
+ this.wrapper.onmouseover = this.wrapper.onmouseout = hs.wrapperMouseHandler;
1203
+ if (this.contentType == 'image' && this.outlineWhileAnimating == 2)
1204
+ this.outlineWhileAnimating = 0;
1205
+
1206
+ // get the outline
1207
+ if (!this.outlineType) {
1208
+ this[this.contentType +'Create']();
1209
+
1210
+ } else if (hs.pendingOutlines[this.outlineType]) {
1211
+ this.connectOutline();
1212
+ this[this.contentType +'Create']();
1213
+
1214
+ } else {
1215
+ this.showLoading();
1216
+ var exp = this;
1217
+ new hs.Outline(this.outlineType,
1218
+ function () {
1219
+ exp.connectOutline();
1220
+ exp[exp.contentType +'Create']();
1221
+ }
1222
+ );
1223
+ }
1224
+ return true;
1225
+ };
1226
+
1227
+ hs.Expander.prototype = {
1228
+ error : function(e) {
1229
+ if (hs.debug) alert ('Line '+ e.lineNumber +': '+ e.message);
1230
+ else window.location.href = this.src;
1231
+ },
1232
+
1233
+ connectOutline : function() {
1234
+ var outline = this.outline = hs.pendingOutlines[this.outlineType];
1235
+ outline.exp = this;
1236
+ outline.table.style.zIndex = this.wrapper.style.zIndex - 1;
1237
+ hs.pendingOutlines[this.outlineType] = null;
1238
+ },
1239
+
1240
+ showLoading : function() {
1241
+ if (this.onLoadStarted || this.loading) return;
1242
+
1243
+ this.loading = hs.loading;
1244
+ var exp = this;
1245
+ this.loading.onclick = function() {
1246
+ exp.cancelLoading();
1247
+ };
1248
+ var exp = this,
1249
+ l = this.x.get('loadingPos') +'px',
1250
+ t = this.y.get('loadingPos') +'px';
1251
+ setTimeout(function () {
1252
+ if (exp.loading) hs.setStyles(exp.loading, { left: l, top: t, zIndex: hs.zIndexCounter++ })}
1253
+ , 100);
1254
+ },
1255
+
1256
+ imageCreate : function() {
1257
+ var exp = this;
1258
+
1259
+ var img = document.createElement('img');
1260
+ this.content = img;
1261
+ img.onload = function () {
1262
+ if (hs.expanders[exp.key]) exp.contentLoaded();
1263
+ };
1264
+ if (hs.blockRightClick) img.oncontextmenu = function() { return false; };
1265
+ img.className = 'highslide-image';
1266
+ hs.setStyles(img, {
1267
+ visibility: 'hidden',
1268
+ display: 'block',
1269
+ position: 'absolute',
1270
+ maxWidth: '9999px',
1271
+ zIndex: 3
1272
+ });
1273
+ img.title = hs.lang.restoreTitle;
1274
+ if (hs.safari && hs.uaVersion < 525) hs.container.appendChild(img);
1275
+ if (hs.ie && hs.flushImgSize) img.src = null;
1276
+ img.src = this.src;
1277
+
1278
+ this.showLoading();
1279
+ },
1280
+
1281
+ htmlCreate : function () {
1282
+
1283
+ this.content = hs.getCacheBinding(this.a);
1284
+ if (!this.content)
1285
+ this.content = hs.getNode(this.contentId);
1286
+ if (!this.content)
1287
+ this.content = hs.getSelfRendered();
1288
+ this.getInline(['maincontent']);
1289
+ if (this.maincontent) {
1290
+ var body = hs.getElementByClass(this.content, 'div', 'highslide-body');
1291
+ if (body) body.appendChild(this.maincontent);
1292
+ this.maincontent.style.display = 'block';
1293
+ }
1294
+
1295
+ var innerContent = this.innerContent = this.content;
1296
+
1297
+ if (/(swf|iframe)/.test(this.objectType)) this.setObjContainerSize(innerContent);
1298
+
1299
+ // the content tree
1300
+ hs.container.appendChild(this.wrapper);
1301
+ hs.setStyles( this.wrapper, {
1302
+ position: 'static',
1303
+ padding: '0 '+ hs.marginRight +'px 0 '+ hs.marginLeft +'px'
1304
+ });
1305
+ this.content = hs.createElement(
1306
+ 'div', {
1307
+ className: 'highslide-html'
1308
+ }, {
1309
+ position: 'relative',
1310
+ zIndex: 3,
1311
+ height: 0,
1312
+ overflow: 'hidden'
1313
+ },
1314
+ this.wrapper
1315
+ );
1316
+ this.mediumContent = hs.createElement('div', null, null, this.content, 1);
1317
+ this.mediumContent.appendChild(innerContent);
1318
+
1319
+ hs.setStyles (innerContent, {
1320
+ position: 'relative',
1321
+ display: 'block',
1322
+ direction: hs.lang.cssDirection || ''
1323
+ });
1324
+ if (this.width) innerContent.style.width = this.width +'px';
1325
+ if (this.height) hs.setStyles(innerContent, {
1326
+ height: this.height +'px',
1327
+ overflow: 'hidden'
1328
+ });
1329
+ if (innerContent.offsetWidth < this.minWidth)
1330
+ innerContent.style.width = this.minWidth +'px';
1331
+
1332
+
1333
+
1334
+ if (this.objectType == 'ajax' && !hs.getCacheBinding(this.a)) {
1335
+ this.showLoading();
1336
+ var exp = this;
1337
+ var ajax = new hs.Ajax(this.a, innerContent);
1338
+ ajax.src = this.src;
1339
+ ajax.onLoad = function () { if (hs.expanders[exp.key]) exp.contentLoaded(); };
1340
+ ajax.onError = function () { location.href = exp.src; };
1341
+ ajax.run();
1342
+ }
1343
+ else
1344
+
1345
+ if (this.objectType == 'iframe' && this.objectLoadTime == 'before') {
1346
+ this.writeExtendedContent();
1347
+ }
1348
+ else
1349
+ this.contentLoaded();
1350
+ },
1351
+
1352
+ contentLoaded : function() {
1353
+ try {
1354
+ if (!this.content) return;
1355
+ this.content.onload = null;
1356
+ if (this.onLoadStarted) return;
1357
+ else this.onLoadStarted = true;
1358
+
1359
+ var x = this.x, y = this.y;
1360
+
1361
+ if (this.loading) {
1362
+ hs.setStyles(this.loading, { top: '-9999px' });
1363
+ this.loading = null;
1364
+ }
1365
+ if (this.isImage) {
1366
+ x.full = this.content.width;
1367
+ y.full = this.content.height;
1368
+
1369
+ hs.setStyles(this.content, {
1370
+ width: x.t +'px',
1371
+ height: y.t +'px'
1372
+ });
1373
+ this.wrapper.appendChild(this.content);
1374
+ hs.container.appendChild(this.wrapper);
1375
+ } else if (this.htmlGetSize) this.htmlGetSize();
1376
+
1377
+ x.calcBorders();
1378
+ y.calcBorders();
1379
+
1380
+ hs.setStyles (this.wrapper, {
1381
+ left: (x.tpos + x.tb - x.cb) +'px',
1382
+ top: (y.tpos + x.tb - y.cb) +'px'
1383
+ });
1384
+ this.getOverlays();
1385
+
1386
+ var ratio = x.full / y.full;
1387
+ x.calcExpanded();
1388
+ this.justify(x);
1389
+
1390
+ y.calcExpanded();
1391
+ this.justify(y);
1392
+ if (this.isHtml) this.htmlSizeOperations();
1393
+ if (this.overlayBox) this.sizeOverlayBox(0, 1);
1394
+
1395
+
1396
+ if (this.allowSizeReduction) {
1397
+ if (this.isImage)
1398
+ this.correctRatio(ratio);
1399
+ else this.fitOverlayBox();
1400
+ if (this.isImage && this.x.full > (this.x.imgSize || this.x.size)) {
1401
+ this.createFullExpand();
1402
+ if (this.overlays.length == 1) this.sizeOverlayBox();
1403
+ }
1404
+ }
1405
+ this.show();
1406
+
1407
+ } catch (e) {
1408
+ this.error(e);
1409
+ }
1410
+ },
1411
+
1412
+
1413
+ setObjContainerSize : function(parent, auto) {
1414
+ var c = hs.getElementByClass(parent, 'DIV', 'highslide-body');
1415
+ if (/(iframe|swf)/.test(this.objectType)) {
1416
+ if (this.objectWidth) c.style.width = this.objectWidth +'px';
1417
+ if (this.objectHeight) c.style.height = this.objectHeight +'px';
1418
+ }
1419
+ },
1420
+
1421
+ writeExtendedContent : function () {
1422
+ if (this.hasExtendedContent) return;
1423
+ var exp = this;
1424
+ this.body = hs.getElementByClass(this.innerContent, 'DIV', 'highslide-body');
1425
+ if (this.objectType == 'iframe') {
1426
+ this.showLoading();
1427
+ var ruler = hs.clearing.cloneNode(1);
1428
+ this.body.appendChild(ruler);
1429
+ this.newWidth = this.innerContent.offsetWidth;
1430
+ if (!this.objectWidth) this.objectWidth = ruler.offsetWidth;
1431
+ var hDiff = this.innerContent.offsetHeight - this.body.offsetHeight,
1432
+ h = this.objectHeight || hs.page.height - hDiff - hs.marginTop - hs.marginBottom,
1433
+ onload = this.objectLoadTime == 'before' ?
1434
+ ' onload="if (hs.expanders['+ this.key +']) hs.expanders['+ this.key +'].contentLoaded()" ' : '';
1435
+ this.body.innerHTML += '<iframe name="hs'+ (new Date()).getTime() +'" frameborder="0" key="'+ this.key +'" '
1436
+ +' style="width:'+ this.objectWidth +'px; height:'+ h +'px" '
1437
+ + onload +' src="'+ this.src +'" ></iframe>';
1438
+ this.ruler = this.body.getElementsByTagName('div')[0];
1439
+ this.iframe = this.body.getElementsByTagName('iframe')[0];
1440
+
1441
+ if (this.objectLoadTime == 'after') this.correctIframeSize();
1442
+
1443
+ }
1444
+ if (this.objectType == 'swf') {
1445
+ this.body.id = this.body.id || 'hs-flash-id-' + this.key;
1446
+ var a = this.swfOptions;
1447
+ if (!a.params) a.params = {};
1448
+ if (typeof a.params.wmode == 'undefined') a.params.wmode = 'transparent';
1449
+ if (swfobject) swfobject.embedSWF(this.src, this.body.id, this.objectWidth, this.objectHeight,
1450
+ a.version || '7', a.expressInstallSwfurl, a.flashvars, a.params, a.attributes);
1451
+ }
1452
+ this.hasExtendedContent = true;
1453
+ },
1454
+ htmlGetSize : function() {
1455
+ if (this.iframe && !this.objectHeight) { // loadtime before
1456
+ this.iframe.style.height = this.body.style.height = this.getIframePageHeight() +'px';
1457
+ }
1458
+ this.innerContent.appendChild(hs.clearing);
1459
+ if (!this.x.full) this.x.full = this.innerContent.offsetWidth;
1460
+ this.y.full = this.innerContent.offsetHeight;
1461
+ this.innerContent.removeChild(hs.clearing);
1462
+ if (hs.ie && this.newHeight > parseInt(this.innerContent.currentStyle.height)) { // ie css bug
1463
+ this.newHeight = parseInt(this.innerContent.currentStyle.height);
1464
+ }
1465
+ hs.setStyles( this.wrapper, { position: 'absolute', padding: '0'});
1466
+ hs.setStyles( this.content, { width: this.x.t +'px', height: this.y.t +'px'});
1467
+
1468
+ },
1469
+
1470
+ getIframePageHeight : function() {
1471
+ var h;
1472
+ try {
1473
+ var doc = this.iDoc = this.iframe.contentDocument || this.iframe.contentWindow.document;
1474
+ var clearing = doc.createElement('div');
1475
+ clearing.style.clear = 'both';
1476
+ doc.body.appendChild(clearing);
1477
+ h = clearing.offsetTop;
1478
+ if (hs.ie) h += parseInt(doc.body.currentStyle.marginTop)
1479
+ + parseInt(doc.body.currentStyle.marginBottom) - 1;
1480
+ } catch (e) { // other domain
1481
+ h = 300;
1482
+ }
1483
+ return h;
1484
+ },
1485
+ correctIframeSize : function () {
1486
+ var wDiff = this.innerContent.offsetWidth - this.ruler.offsetWidth;
1487
+ hs.discardElement(this.ruler);
1488
+ if (wDiff < 0) wDiff = 0;
1489
+
1490
+ var hDiff = this.innerContent.offsetHeight - this.iframe.offsetHeight;
1491
+ if (this.iDoc && !this.objectHeight && !this.height && this.y.size == this.y.full) try {
1492
+ this.iDoc.body.style.overflow = 'hidden';
1493
+ } catch (e) {}
1494
+ hs.setStyles(this.iframe, {
1495
+ width: Math.abs(this.x.size - wDiff) +'px',
1496
+ height: Math.abs(this.y.size - hDiff) +'px'
1497
+ });
1498
+ hs.setStyles(this.body, {
1499
+ width: this.iframe.style.width,
1500
+ height: this.iframe.style.height
1501
+ });
1502
+
1503
+ this.scrollingContent = this.iframe;
1504
+ this.scrollerDiv = this.scrollingContent;
1505
+
1506
+ },
1507
+ htmlSizeOperations : function () {
1508
+
1509
+ this.setObjContainerSize(this.innerContent);
1510
+
1511
+
1512
+ if (this.objectType == 'swf' && this.objectLoadTime == 'before') this.writeExtendedContent();
1513
+
1514
+ // handle minimum size
1515
+ if (this.x.size < this.x.full && !this.allowWidthReduction) this.x.size = this.x.full;
1516
+ if (this.y.size < this.y.full && !this.allowHeightReduction) this.y.size = this.y.full;
1517
+ this.scrollerDiv = this.innerContent;
1518
+ hs.setStyles(this.mediumContent, {
1519
+ position: 'relative',
1520
+ width: this.x.size +'px'
1521
+ });
1522
+ hs.setStyles(this.innerContent, {
1523
+ border: 'none',
1524
+ width: 'auto',
1525
+ height: 'auto'
1526
+ });
1527
+ var node = hs.getElementByClass(this.innerContent, 'DIV', 'highslide-body');
1528
+ if (node && !/(iframe|swf)/.test(this.objectType)) {
1529
+ var cNode = node; // wrap to get true size
1530
+ node = hs.createElement(cNode.nodeName, null, {overflow: 'hidden'}, null, true);
1531
+ cNode.parentNode.insertBefore(node, cNode);
1532
+ node.appendChild(hs.clearing); // IE6
1533
+ node.appendChild(cNode);
1534
+
1535
+ var wDiff = this.innerContent.offsetWidth - node.offsetWidth;
1536
+ var hDiff = this.innerContent.offsetHeight - node.offsetHeight;
1537
+ node.removeChild(hs.clearing);
1538
+
1539
+ var kdeBugCorr = hs.safari || navigator.vendor == 'KDE' ? 1 : 0; // KDE repainting bug
1540
+ hs.setStyles(node, {
1541
+ width: (this.x.size - wDiff - kdeBugCorr) +'px',
1542
+ height: (this.y.size - hDiff) +'px',
1543
+ overflow: 'auto',
1544
+ position: 'relative'
1545
+ }
1546
+ );
1547
+ if (kdeBugCorr && cNode.offsetHeight > node.offsetHeight) {
1548
+ node.style.width = (parseInt(node.style.width) + kdeBugCorr) + 'px';
1549
+ }
1550
+ this.scrollingContent = node;
1551
+ this.scrollerDiv = this.scrollingContent;
1552
+ }
1553
+ if (this.iframe && this.objectLoadTime == 'before') this.correctIframeSize();
1554
+ if (!this.scrollingContent && this.y.size < this.mediumContent.offsetHeight) this.scrollerDiv = this.content;
1555
+
1556
+ if (this.scrollerDiv == this.content && !this.allowWidthReduction && !/(iframe|swf)/.test(this.objectType)) {
1557
+ this.x.size += 17; // room for scrollbars
1558
+ }
1559
+ if (this.scrollerDiv && this.scrollerDiv.offsetHeight > this.scrollerDiv.parentNode.offsetHeight) {
1560
+ setTimeout("try { hs.expanders["+ this.key +"].scrollerDiv.style.overflow = 'auto'; } catch(e) {}",
1561
+ hs.expandDuration);
1562
+ }
1563
+ },
1564
+
1565
+ justify : function (p, moveOnly) {
1566
+ var tgtArr, tgt = p.target, dim = p == this.x ? 'x' : 'y';
1567
+
1568
+ var hasMovedMin = false;
1569
+
1570
+ var allowReduce = p.exp.allowSizeReduction;
1571
+ p.pos = Math.round(p.pos - ((p.get('wsize') - p.t) / 2));
1572
+ if (p.pos < p.scroll + p.marginMin) {
1573
+ p.pos = p.scroll + p.marginMin;
1574
+ hasMovedMin = true;
1575
+ }
1576
+ if (!moveOnly && p.size < p.minSize) {
1577
+ p.size = p.minSize;
1578
+ allowReduce = false;
1579
+ }
1580
+ if (p.pos + p.get('wsize') > p.scroll + p.clientSize - p.marginMax) {
1581
+ if (!moveOnly && hasMovedMin && allowReduce) {
1582
+ p.size = Math.min(p.size, p.get(dim == 'y' ? 'fitsize' : 'maxsize'));
1583
+ } else if (p.get('wsize') < p.get('fitsize')) {
1584
+ p.pos = p.scroll + p.clientSize - p.marginMax - p.get('wsize');
1585
+ } else { // image larger than viewport
1586
+ p.pos = p.scroll + p.marginMin;
1587
+ if (!moveOnly && allowReduce) p.size = p.get(dim == 'y' ? 'fitsize' : 'maxsize');
1588
+ }
1589
+ }
1590
+
1591
+ if (!moveOnly && p.size < p.minSize) {
1592
+ p.size = p.minSize;
1593
+ allowReduce = false;
1594
+ }
1595
+
1596
+
1597
+
1598
+ if (p.pos < p.marginMin) {
1599
+ var tmpMin = p.pos;
1600
+ p.pos = p.marginMin;
1601
+
1602
+ if (allowReduce && !moveOnly) p.size = p.size - (p.pos - tmpMin);
1603
+
1604
+ }
1605
+ },
1606
+
1607
+ correctRatio : function(ratio) {
1608
+ var x = this.x,
1609
+ y = this.y,
1610
+ changed = false,
1611
+ xSize = Math.min(x.full, x.size),
1612
+ ySize = Math.min(y.full, y.size),
1613
+ useBox = (this.useBox || hs.padToMinWidth);
1614
+
1615
+ if (xSize / ySize > ratio) { // width greater
1616
+ xSize = ySize * ratio;
1617
+ if (xSize < x.minSize) { // below minWidth
1618
+ xSize = x.minSize;
1619
+ ySize = xSize / ratio;
1620
+ }
1621
+ changed = true;
1622
+
1623
+ } else if (xSize / ySize < ratio) { // height greater
1624
+ ySize = xSize / ratio;
1625
+ changed = true;
1626
+ }
1627
+
1628
+ if (hs.padToMinWidth && x.full < x.minSize) {
1629
+ x.imgSize = x.full;
1630
+ y.size = y.imgSize = y.full;
1631
+ } else if (this.useBox) {
1632
+ x.imgSize = xSize;
1633
+ y.imgSize = ySize;
1634
+ } else {
1635
+ x.size = xSize;
1636
+ y.size = ySize;
1637
+ }
1638
+ changed = this.fitOverlayBox(this.useBox ? null : ratio, changed);
1639
+ if (useBox && y.size < y.imgSize) {
1640
+ y.imgSize = y.size;
1641
+ x.imgSize = y.size * ratio;
1642
+ }
1643
+ if (changed || useBox) {
1644
+ x.pos = x.tpos - x.cb + x.tb;
1645
+ x.minSize = x.size;
1646
+ this.justify(x, true);
1647
+
1648
+ y.pos = y.tpos - y.cb + y.tb;
1649
+ y.minSize = y.size;
1650
+ this.justify(y, true);
1651
+ if (this.overlayBox) this.sizeOverlayBox();
1652
+ }
1653
+
1654
+
1655
+ },
1656
+ fitOverlayBox : function(ratio, changed) {
1657
+ var x = this.x, y = this.y;
1658
+ if (this.overlayBox && (this.isImage || this.allowHeightReduction)) {
1659
+ while (y.size > this.minHeight && x.size > this.minWidth
1660
+ && y.get('wsize') > y.get('fitsize')) {
1661
+ y.size -= 10;
1662
+ if (ratio) x.size = y.size * ratio;
1663
+ this.sizeOverlayBox(0, 1);
1664
+ changed = true;
1665
+ }
1666
+ }
1667
+ return changed;
1668
+ },
1669
+
1670
+ show : function () {
1671
+ var x = this.x, y = this.y;
1672
+ this.doShowHide('hidden');
1673
+
1674
+ // Apply size change
1675
+ this.changeSize(
1676
+ 1, {
1677
+ wrapper: {
1678
+ width : x.get('wsize'),
1679
+ height : y.get('wsize'),
1680
+ left: x.pos,
1681
+ top: y.pos
1682
+ },
1683
+ content: {
1684
+ left: x.p1 + x.get('imgPad'),
1685
+ top: y.p1 + y.get('imgPad'),
1686
+ width:x.imgSize ||x.size,
1687
+ height:y.imgSize ||y.size
1688
+ }
1689
+ },
1690
+ hs.expandDuration
1691
+ );
1692
+ },
1693
+
1694
+ changeSize : function(up, to, dur) {
1695
+
1696
+ if (this.outline && !this.outlineWhileAnimating) {
1697
+ if (up) this.outline.setPosition();
1698
+ else this.outline.destroy(
1699
+ (this.isHtml && this.preserveContent));
1700
+ }
1701
+
1702
+
1703
+ if (!up) this.destroyOverlays();
1704
+
1705
+ var exp = this,
1706
+ x = exp.x,
1707
+ y = exp.y,
1708
+ easing = this.easing;
1709
+ if (!up) easing = this.easingClose || easing;
1710
+ var after = up ?
1711
+ function() {
1712
+
1713
+ if (exp.outline) exp.outline.table.style.visibility = "visible";
1714
+ setTimeout(function() {
1715
+ exp.afterExpand();
1716
+ }, 50);
1717
+ } :
1718
+ function() {
1719
+ exp.afterClose();
1720
+ };
1721
+ if (up) hs.setStyles( this.wrapper, {
1722
+ width: x.t +'px',
1723
+ height: y.t +'px'
1724
+ });
1725
+ if (up && this.isHtml) {
1726
+ hs.setStyles(this.wrapper, {
1727
+ left: (x.tpos - x.cb + x.tb) +'px',
1728
+ top: (y.tpos - y.cb + y.tb) +'px'
1729
+ });
1730
+ }
1731
+ if (this.fadeInOut) {
1732
+ hs.setStyles(this.wrapper, { opacity: up ? 0 : 1 });
1733
+ hs.extend(to.wrapper, { opacity: up });
1734
+ }
1735
+ hs.animate( this.wrapper, to.wrapper, {
1736
+ duration: dur,
1737
+ easing: easing,
1738
+ step: function(val, args) {
1739
+ if (exp.outline && exp.outlineWhileAnimating && args.prop == 'top') {
1740
+ var fac = up ? args.pos : 1 - args.pos;
1741
+ var pos = {
1742
+ w: x.t + (x.get('wsize') - x.t) * fac,
1743
+ h: y.t + (y.get('wsize') - y.t) * fac,
1744
+ x: x.tpos + (x.pos - x.tpos) * fac,
1745
+ y: y.tpos + (y.pos - y.tpos) * fac
1746
+ };
1747
+ exp.outline.setPosition(pos, 0, 1);
1748
+ }
1749
+ if (exp.isHtml) {
1750
+ if (args.prop == 'left')
1751
+ exp.mediumContent.style.left = (x.pos - val) +'px';
1752
+ if (args.prop == 'top')
1753
+ exp.mediumContent.style.top = (y.pos - val) +'px';
1754
+ }
1755
+ }
1756
+ });
1757
+ hs.animate( this.content, to.content, dur, easing, after);
1758
+ if (up) {
1759
+ this.wrapper.style.visibility = 'visible';
1760
+ this.content.style.visibility = 'visible';
1761
+ if (this.isHtml) this.innerContent.style.visibility = 'visible';
1762
+ this.a.className += ' highslide-active-anchor';
1763
+ }
1764
+ },
1765
+
1766
+
1767
+
1768
+
1769
+ afterExpand : function() {
1770
+ this.isExpanded = true;
1771
+ this.focus();
1772
+
1773
+ if (this.isHtml && this.objectLoadTime == 'after') this.writeExtendedContent();
1774
+ if (this.iframe) {
1775
+ try {
1776
+ var exp = this,
1777
+ doc = this.iframe.contentDocument || this.iframe.contentWindow.document;
1778
+ hs.addEventListener(doc, 'mousedown', function () {
1779
+ if (hs.focusKey != exp.key) exp.focus();
1780
+ });
1781
+ } catch(e) {}
1782
+ if (hs.ie && typeof this.isClosing != 'boolean') // first open
1783
+ this.iframe.style.width = (this.objectWidth - 1) +'px'; // hasLayout
1784
+ }
1785
+ if (hs.upcoming && hs.upcoming == this.a) hs.upcoming = null;
1786
+ this.prepareNextOutline();
1787
+ var p = hs.page, mX = hs.mouse.x + p.scrollLeft, mY = hs.mouse.y + p.scrollTop;
1788
+ this.mouseIsOver = this.x.pos < mX && mX < this.x.pos + this.x.get('wsize')
1789
+ && this.y.pos < mY && mY < this.y.pos + this.y.get('wsize');
1790
+ if (this.overlayBox) this.showOverlays();
1791
+
1792
+ },
1793
+
1794
+
1795
+ prepareNextOutline : function() {
1796
+ var key = this.key;
1797
+ var outlineType = this.outlineType;
1798
+ new hs.Outline(outlineType,
1799
+ function () { try { hs.expanders[key].preloadNext(); } catch (e) {} });
1800
+ },
1801
+
1802
+
1803
+ preloadNext : function() {
1804
+ var next = this.getAdjacentAnchor(1);
1805
+ if (next && next.onclick.toString().match(/hs\.expand/))
1806
+ var img = hs.createElement('img', { src: hs.getSrc(next) });
1807
+ },
1808
+
1809
+
1810
+ getAdjacentAnchor : function(op) {
1811
+ var current = this.getAnchorIndex(), as = hs.anchors.groups[this.slideshowGroup || 'none'];
1812
+ return (as && as[current + op]) || null;
1813
+ },
1814
+
1815
+ getAnchorIndex : function() {
1816
+ var arr = hs.getAnchors().groups[this.slideshowGroup || 'none'];
1817
+ if (arr) for (var i = 0; i < arr.length; i++) {
1818
+ if (arr[i] == this.a) return i;
1819
+ }
1820
+ return null;
1821
+ },
1822
+
1823
+
1824
+ cancelLoading : function() {
1825
+ hs.discardElement (this.wrapper);
1826
+ hs.expanders[this.key] = null;
1827
+ if (this.loading) hs.loading.style.left = '-9999px';
1828
+ },
1829
+
1830
+ writeCredits : function () {
1831
+ this.credits = hs.createElement('a', {
1832
+ href: hs.creditsHref,
1833
+ target: hs.creditsTarget,
1834
+ className: 'highslide-credits',
1835
+ innerHTML: hs.lang.creditsText,
1836
+ title: hs.lang.creditsTitle
1837
+ });
1838
+ this.createOverlay({
1839
+ overlayId: this.credits,
1840
+ position: this.creditsPosition || 'top left'
1841
+ });
1842
+ },
1843
+
1844
+ getInline : function(types, addOverlay) {
1845
+ for (var i = 0; i < types.length; i++) {
1846
+ var type = types[i], s = null;
1847
+ if (!this[type +'Id'] && this.thumbsUserSetId)
1848
+ this[type +'Id'] = type +'-for-'+ this.thumbsUserSetId;
1849
+ if (this[type +'Id']) this[type] = hs.getNode(this[type +'Id']);
1850
+ if (!this[type] && !this[type +'Text'] && this[type +'Eval']) try {
1851
+ s = eval(this[type +'Eval']);
1852
+ } catch (e) {}
1853
+ if (!this[type] && this[type +'Text']) {
1854
+ s = this[type +'Text'];
1855
+ }
1856
+ if (!this[type] && !s) {
1857
+ this[type] = hs.getNode(this.a['_'+ type + 'Id']);
1858
+ if (!this[type]) {
1859
+ var next = this.a.nextSibling;
1860
+ while (next && !hs.isHsAnchor(next)) {
1861
+ if ((new RegExp('highslide-'+ type)).test(next.className || null)) {
1862
+ if (!next.id) this.a['_'+ type + 'Id'] = next.id = 'hsId'+ hs.idCounter++;
1863
+ this[type] = hs.getNode(next.id);
1864
+ break;
1865
+ }
1866
+ next = next.nextSibling;
1867
+ }
1868
+ }
1869
+ }
1870
+
1871
+ if (!this[type] && s) this[type] = hs.createElement('div',
1872
+ { className: 'highslide-'+ type, innerHTML: s } );
1873
+
1874
+ if (addOverlay && this[type]) {
1875
+ var o = { position: (type == 'heading') ? 'above' : 'below' };
1876
+ for (var x in this[type+'Overlay']) o[x] = this[type+'Overlay'][x];
1877
+ o.overlayId = this[type];
1878
+ this.createOverlay(o);
1879
+ }
1880
+ }
1881
+ },
1882
+
1883
+
1884
+ // on end move and resize
1885
+ doShowHide : function(visibility) {
1886
+ if (hs.hideSelects) this.showHideElements('SELECT', visibility);
1887
+ if (hs.hideIframes) this.showHideElements('IFRAME', visibility);
1888
+ if (hs.geckoMac) this.showHideElements('*', visibility);
1889
+ },
1890
+ showHideElements : function (tagName, visibility) {
1891
+ var els = document.getElementsByTagName(tagName);
1892
+ var prop = tagName == '*' ? 'overflow' : 'visibility';
1893
+ for (var i = 0; i < els.length; i++) {
1894
+ if (prop == 'visibility' || (document.defaultView.getComputedStyle(
1895
+ els[i], "").getPropertyValue('overflow') == 'auto'
1896
+ || els[i].getAttribute('hidden-by') != null)) {
1897
+ var hiddenBy = els[i].getAttribute('hidden-by');
1898
+ if (visibility == 'visible' && hiddenBy) {
1899
+ hiddenBy = hiddenBy.replace('['+ this.key +']', '');
1900
+ els[i].setAttribute('hidden-by', hiddenBy);
1901
+ if (!hiddenBy) els[i].style[prop] = els[i].origProp;
1902
+ } else if (visibility == 'hidden') { // hide if behind
1903
+ var elPos = hs.getPosition(els[i]);
1904
+ elPos.w = els[i].offsetWidth;
1905
+ elPos.h = els[i].offsetHeight;
1906
+
1907
+
1908
+ var clearsX = (elPos.x + elPos.w < this.x.get('opos')
1909
+ || elPos.x > this.x.get('opos') + this.x.get('osize'));
1910
+ var clearsY = (elPos.y + elPos.h < this.y.get('opos')
1911
+ || elPos.y > this.y.get('opos') + this.y.get('osize'));
1912
+ var wrapperKey = hs.getWrapperKey(els[i]);
1913
+ if (!clearsX && !clearsY && wrapperKey != this.key) { // element falls behind image
1914
+ if (!hiddenBy) {
1915
+ els[i].setAttribute('hidden-by', '['+ this.key +']');
1916
+ els[i].origProp = els[i].style[prop];
1917
+ els[i].style[prop] = 'hidden';
1918
+
1919
+ } else if (hiddenBy.indexOf('['+ this.key +']') == -1) {
1920
+ els[i].setAttribute('hidden-by', hiddenBy + '['+ this.key +']');
1921
+ }
1922
+ } else if ((hiddenBy == '['+ this.key +']' || hs.focusKey == wrapperKey)
1923
+ && wrapperKey != this.key) { // on move
1924
+ els[i].setAttribute('hidden-by', '');
1925
+ els[i].style[prop] = els[i].origProp || '';
1926
+ } else if (hiddenBy && hiddenBy.indexOf('['+ this.key +']') > -1) {
1927
+ els[i].setAttribute('hidden-by', hiddenBy.replace('['+ this.key +']', ''));
1928
+ }
1929
+
1930
+ }
1931
+ }
1932
+ }
1933
+ },
1934
+
1935
+ focus : function() {
1936
+ this.wrapper.style.zIndex = hs.zIndexCounter += 2;
1937
+ // blur others
1938
+ for (var i = 0; i < hs.expanders.length; i++) {
1939
+ if (hs.expanders[i] && i == hs.focusKey) {
1940
+ var blurExp = hs.expanders[i];
1941
+ blurExp.content.className += ' highslide-'+ blurExp.contentType +'-blur';
1942
+ if (blurExp.isImage) {
1943
+ blurExp.content.style.cursor = hs.ieLt7 ? 'hand' : 'pointer';
1944
+ blurExp.content.title = hs.lang.focusTitle;
1945
+ }
1946
+ }
1947
+ }
1948
+
1949
+ // focus this
1950
+ if (this.outline) this.outline.table.style.zIndex
1951
+ = this.wrapper.style.zIndex - 1;
1952
+ this.content.className = 'highslide-'+ this.contentType;
1953
+ if (this.isImage) {
1954
+ this.content.title = hs.lang.restoreTitle;
1955
+
1956
+ if (hs.restoreCursor) {
1957
+ hs.styleRestoreCursor = window.opera ? 'pointer' : 'url('+ hs.graphicsDir + hs.restoreCursor +'), pointer';
1958
+ if (hs.ieLt7 && hs.uaVersion < 6) hs.styleRestoreCursor = 'hand';
1959
+ this.content.style.cursor = hs.styleRestoreCursor;
1960
+ }
1961
+ }
1962
+ hs.focusKey = this.key;
1963
+ hs.addEventListener(document, window.opera ? 'keypress' : 'keydown', hs.keyHandler);
1964
+ },
1965
+ moveTo: function(x, y) {
1966
+ this.x.setPos(x);
1967
+ this.y.setPos(y);
1968
+ },
1969
+ resize : function (e) {
1970
+ var w, h, r = e.width / e.height;
1971
+ w = Math.max(e.width + e.dX, Math.min(this.minWidth, this.x.full));
1972
+ if (this.isImage && Math.abs(w - this.x.full) < 12) w = this.x.full;
1973
+ h = this.isHtml ? e.height + e.dY : w / r;
1974
+ if (h < Math.min(this.minHeight, this.y.full)) {
1975
+ h = Math.min(this.minHeight, this.y.full);
1976
+ if (this.isImage) w = h * r;
1977
+ }
1978
+ this.resizeTo(w, h);
1979
+ },
1980
+ resizeTo: function(w, h) {
1981
+ this.y.setSize(h);
1982
+ this.x.setSize(w);
1983
+ this.wrapper.style.height = this.y.get('wsize') +'px';
1984
+ },
1985
+
1986
+ close : function() {
1987
+ if (this.isClosing || !this.isExpanded) return;
1988
+ this.isClosing = true;
1989
+
1990
+ hs.removeEventListener(document, window.opera ? 'keypress' : 'keydown', hs.keyHandler);
1991
+
1992
+ try {
1993
+ if (this.isHtml) this.htmlPrepareClose();
1994
+ this.content.style.cursor = 'default';
1995
+ this.changeSize(
1996
+ 0, {
1997
+ wrapper: {
1998
+ width : this.x.t,
1999
+ height : this.y.t,
2000
+ left: this.x.tpos - this.x.cb + this.x.tb,
2001
+ top: this.y.tpos - this.y.cb + this.y.tb
2002
+ },
2003
+ content: {
2004
+ left: 0,
2005
+ top: 0,
2006
+ width: this.x.t,
2007
+ height: this.y.t
2008
+ }
2009
+ }, hs.restoreDuration
2010
+ );
2011
+ } catch (e) { this.afterClose(); }
2012
+ },
2013
+
2014
+ htmlPrepareClose : function() {
2015
+ if (hs.geckoMac) { // bad redraws
2016
+ if (!hs.mask) hs.mask = hs.createElement('div', null,
2017
+ { position: 'absolute' }, hs.container);
2018
+ hs.setStyles(hs.mask, { width: this.x.size +'px', height: this.y.size +'px',
2019
+ left: this.x.pos +'px', top: this.y.pos +'px', display: 'block' });
2020
+ }
2021
+ if (this.objectType == 'swf') try { hs.$(this.body.id).StopPlay(); } catch (e) {}
2022
+
2023
+ if (this.objectLoadTime == 'after' && !this.preserveContent) this.destroyObject();
2024
+ if (this.scrollerDiv && this.scrollerDiv != this.scrollingContent)
2025
+ this.scrollerDiv.style.overflow = 'hidden';
2026
+ },
2027
+
2028
+ destroyObject : function () {
2029
+ if (hs.ie && this.iframe)
2030
+ try { this.iframe.contentWindow.document.body.innerHTML = ''; } catch (e) {}
2031
+ if (this.objectType == 'swf') swfobject.removeSWF(this.body.id);
2032
+ this.body.innerHTML = '';
2033
+ },
2034
+
2035
+ sleep : function() {
2036
+ if (this.outline) this.outline.table.style.display = 'none';
2037
+ this.releaseMask = null;
2038
+ this.wrapper.style.display = 'none';
2039
+ this.isExpanded = false;
2040
+ hs.push(hs.sleeping, this);
2041
+ },
2042
+
2043
+ awake : function() {try {
2044
+
2045
+ hs.expanders[this.key] = this;
2046
+
2047
+ if (!hs.allowMultipleInstances &&hs.focusKey != this.key) {
2048
+ try { hs.expanders[hs.focusKey].close(); } catch (e){}
2049
+ }
2050
+
2051
+ var z = hs.zIndexCounter++, stl = { display: '', zIndex: z };
2052
+ hs.setStyles (this.wrapper, stl);
2053
+ this.isClosing = false;
2054
+
2055
+ var o = this.outline || 0;
2056
+ if (o) {
2057
+ if (!this.outlineWhileAnimating) stl.visibility = 'hidden';
2058
+ hs.setStyles (o.table, stl);
2059
+ }
2060
+
2061
+ this.show();
2062
+ } catch (e) {}
2063
+
2064
+
2065
+ },
2066
+
2067
+ createOverlay : function (o) {
2068
+ var el = o.overlayId;
2069
+ if (typeof el == 'string') el = hs.getNode(el);
2070
+ if (o.html) el = hs.createElement('div', { innerHTML: o.html });
2071
+ if (!el || typeof el == 'string') return;
2072
+ el.style.display = 'block';
2073
+ this.genOverlayBox();
2074
+ var width = o.width && /^[0-9]+(px|%)$/.test(o.width) ? o.width : 'auto';
2075
+ if (/^(left|right)panel$/.test(o.position) && !/^[0-9]+px$/.test(o.width)) width = '200px';
2076
+ var overlay = hs.createElement(
2077
+ 'div', {
2078
+ id: 'hsId'+ hs.idCounter++,
2079
+ hsId: o.hsId
2080
+ }, {
2081
+ position: 'absolute',
2082
+ visibility: 'hidden',
2083
+ width: width,
2084
+ direction: hs.lang.cssDirection || '',
2085
+ opacity: 0
2086
+ },this.overlayBox,
2087
+ true
2088
+ );
2089
+
2090
+ overlay.appendChild(el);
2091
+ hs.extend(overlay, {
2092
+ opacity: 1,
2093
+ offsetX: 0,
2094
+ offsetY: 0,
2095
+ dur: (o.fade === 0 || o.fade === false || (o.fade == 2 && hs.ie)) ? 0 : 250
2096
+ });
2097
+ hs.extend(overlay, o);
2098
+
2099
+
2100
+ if (this.gotOverlays) {
2101
+ this.positionOverlay(overlay);
2102
+ if (!overlay.hideOnMouseOut || this.mouseIsOver)
2103
+ hs.animate(overlay, { opacity: overlay.opacity }, overlay.dur);
2104
+ }
2105
+ hs.push(this.overlays, hs.idCounter - 1);
2106
+ },
2107
+ positionOverlay : function(overlay) {
2108
+ var p = overlay.position || 'middle center',
2109
+ offX = overlay.offsetX,
2110
+ offY = overlay.offsetY;
2111
+ if (overlay.parentNode != this.overlayBox) this.overlayBox.appendChild(overlay);
2112
+ if (/left$/.test(p)) overlay.style.left = offX +'px';
2113
+
2114
+ if (/center$/.test(p)) hs.setStyles (overlay, {
2115
+ left: '50%',
2116
+ marginLeft: (offX - Math.round(overlay.offsetWidth / 2)) +'px'
2117
+ });
2118
+
2119
+ if (/right$/.test(p)) overlay.style.right = - offX +'px';
2120
+
2121
+ if (/^leftpanel$/.test(p)) {
2122
+ hs.setStyles(overlay, {
2123
+ right: '100%',
2124
+ marginRight: this.x.cb +'px',
2125
+ top: - this.y.cb +'px',
2126
+ bottom: - this.y.cb +'px',
2127
+ overflow: 'auto'
2128
+ });
2129
+ this.x.p1 = overlay.offsetWidth;
2130
+
2131
+ } else if (/^rightpanel$/.test(p)) {
2132
+ hs.setStyles(overlay, {
2133
+ left: '100%',
2134
+ marginLeft: this.x.cb +'px',
2135
+ top: - this.y.cb +'px',
2136
+ bottom: - this.y.cb +'px',
2137
+ overflow: 'auto'
2138
+ });
2139
+ this.x.p2 = overlay.offsetWidth;
2140
+ }
2141
+
2142
+ if (/^top/.test(p)) overlay.style.top = offY +'px';
2143
+ if (/^middle/.test(p)) hs.setStyles (overlay, {
2144
+ top: '50%',
2145
+ marginTop: (offY - Math.round(overlay.offsetHeight / 2)) +'px'
2146
+ });
2147
+ if (/^bottom/.test(p)) overlay.style.bottom = - offY +'px';
2148
+ if (/^above$/.test(p)) {
2149
+ hs.setStyles(overlay, {
2150
+ left: (- this.x.p1 - this.x.cb) +'px',
2151
+ right: (- this.x.p2 - this.x.cb) +'px',
2152
+ bottom: '100%',
2153
+ marginBottom: this.y.cb +'px',
2154
+ width: 'auto'
2155
+ });
2156
+ this.y.p1 = overlay.offsetHeight;
2157
+
2158
+ } else if (/^below$/.test(p)) {
2159
+ hs.setStyles(overlay, {
2160
+ position: 'relative',
2161
+ left: (- this.x.p1 - this.x.cb) +'px',
2162
+ right: (- this.x.p2 - this.x.cb) +'px',
2163
+ top: '100%',
2164
+ marginTop: this.y.cb +'px',
2165
+ width: 'auto'
2166
+ });
2167
+ this.y.p2 = overlay.offsetHeight;
2168
+ overlay.style.position = 'absolute';
2169
+ }
2170
+ },
2171
+
2172
+ getOverlays : function() {
2173
+ this.getInline(['heading', 'caption'], true);
2174
+ if (this.heading && this.dragByHeading) this.heading.className += ' highslide-move';
2175
+ if (hs.showCredits) this.writeCredits();
2176
+ for (var i = 0; i < hs.overlays.length; i++) {
2177
+ var o = hs.overlays[i], tId = o.thumbnailId, sg = o.slideshowGroup;
2178
+ if ((!tId && !sg) || (tId && tId == this.thumbsUserSetId)
2179
+ || (sg && sg === this.slideshowGroup)) {
2180
+ if (this.isImage || (this.isHtml && o.useOnHtml))
2181
+ this.createOverlay(o);
2182
+ }
2183
+ }
2184
+ var os = [];
2185
+ for (var i = 0; i < this.overlays.length; i++) {
2186
+ var o = hs.$('hsId'+ this.overlays[i]);
2187
+ if (/panel$/.test(o.position)) this.positionOverlay(o);
2188
+ else hs.push(os, o);
2189
+ }
2190
+ for (var i = 0; i < os.length; i++) this.positionOverlay(os[i]);
2191
+ this.gotOverlays = true;
2192
+ },
2193
+ genOverlayBox : function() {
2194
+ if (!this.overlayBox) this.overlayBox = hs.createElement (
2195
+ 'div', {
2196
+ className: this.wrapperClassName
2197
+ }, {
2198
+ position : 'absolute',
2199
+ width: (this.x.size || (this.useBox ? this.width : null)
2200
+ || this.x.full) +'px',
2201
+ height: (this.y.size || this.y.full) +'px',
2202
+ visibility : 'hidden',
2203
+ overflow : 'hidden',
2204
+ zIndex : hs.ie ? 4 : 'auto'
2205
+ },
2206
+ hs.container,
2207
+ true
2208
+ );
2209
+ },
2210
+ sizeOverlayBox : function(doWrapper, doPanels) {
2211
+ var overlayBox = this.overlayBox,
2212
+ x = this.x,
2213
+ y = this.y;
2214
+ hs.setStyles( overlayBox, {
2215
+ width: x.size +'px',
2216
+ height: y.size +'px'
2217
+ });
2218
+ if (doWrapper || doPanels) {
2219
+ for (var i = 0; i < this.overlays.length; i++) {
2220
+ var o = hs.$('hsId'+ this.overlays[i]);
2221
+ var ie6 = (hs.ieLt7 || document.compatMode == 'BackCompat');
2222
+ if (o && /^(above|below)$/.test(o.position)) {
2223
+ if (ie6) {
2224
+ o.style.width = (overlayBox.offsetWidth + 2 * x.cb
2225
+ + x.p1 + x.p2) +'px';
2226
+ }
2227
+ y[o.position == 'above' ? 'p1' : 'p2'] = o.offsetHeight;
2228
+ }
2229
+ if (o && ie6 && /^(left|right)panel$/.test(o.position)) {
2230
+ o.style.height = (overlayBox.offsetHeight + 2* y.cb) +'px';
2231
+ }
2232
+ }
2233
+ }
2234
+ if (doWrapper) {
2235
+ hs.setStyles(this.content, {
2236
+ top: y.p1 +'px'
2237
+ });
2238
+ hs.setStyles(overlayBox, {
2239
+ top: (y.p1 + y.cb) +'px'
2240
+ });
2241
+ }
2242
+ },
2243
+
2244
+ showOverlays : function() {
2245
+ var b = this.overlayBox;
2246
+ b.className = '';
2247
+ hs.setStyles(b, {
2248
+ top: (this.y.p1 + this.y.cb) +'px',
2249
+ left: (this.x.p1 + this.x.cb) +'px',
2250
+ overflow : 'visible'
2251
+ });
2252
+ if (hs.safari) b.style.visibility = 'visible';
2253
+ this.wrapper.appendChild (b);
2254
+ for (var i = 0; i < this.overlays.length; i++) {
2255
+ var o = hs.$('hsId'+ this.overlays[i]);
2256
+ o.style.zIndex = o.zIndex || 4;
2257
+ if (!o.hideOnMouseOut || this.mouseIsOver) {
2258
+ o.style.visibility = 'visible';
2259
+ hs.setStyles(o, { visibility: 'visible', display: '' });
2260
+ hs.animate(o, { opacity: o.opacity }, o.dur);
2261
+ }
2262
+ }
2263
+ },
2264
+
2265
+ destroyOverlays : function() {
2266
+ if (!this.overlays.length) return;
2267
+ if (this.isHtml && this.preserveContent) {
2268
+ this.overlayBox.style.top = '-9999px';
2269
+ hs.container.appendChild(this.overlayBox);
2270
+ } else
2271
+ hs.discardElement(this.overlayBox);
2272
+ },
2273
+
2274
+
2275
+
2276
+ createFullExpand : function () {
2277
+ this.fullExpandLabel = hs.createElement(
2278
+ 'a', {
2279
+ href: 'javascript:hs.expanders['+ this.key +'].doFullExpand();',
2280
+ title: hs.lang.fullExpandTitle,
2281
+ className: 'highslide-full-expand'
2282
+ }
2283
+ );
2284
+
2285
+ this.createOverlay({
2286
+ overlayId: this.fullExpandLabel,
2287
+ position: hs.fullExpandPosition,
2288
+ hideOnMouseOut: true,
2289
+ opacity: hs.fullExpandOpacity
2290
+ });
2291
+ },
2292
+
2293
+ doFullExpand : function () {
2294
+ try {
2295
+ if (this.fullExpandLabel) hs.discardElement(this.fullExpandLabel);
2296
+
2297
+ this.focus();
2298
+ var xSize = this.x.size,
2299
+ ySize = this.y.size;
2300
+ this.resizeTo(this.x.full, this.y.full);
2301
+
2302
+ var xpos = this.x.pos - (this.x.size - xSize) / 2;
2303
+ if (xpos < hs.marginLeft) xpos = hs.marginLeft;
2304
+
2305
+ var ypos = this.y.pos - (this.y.size - ySize) / 2;
2306
+ if (ypos < hs.marginTop) ypos = hs.marginTop;
2307
+
2308
+ this.moveTo(xpos, ypos);
2309
+ this.doShowHide('hidden');
2310
+
2311
+ } catch (e) {
2312
+ this.error(e);
2313
+ }
2314
+ },
2315
+
2316
+
2317
+ afterClose : function () {
2318
+ this.a.className = this.a.className.replace('highslide-active-anchor', '');
2319
+
2320
+ this.doShowHide('visible');
2321
+
2322
+ if (this.isHtml && this.preserveContent) {
2323
+ this.sleep();
2324
+ } else {
2325
+ if (this.outline && this.outlineWhileAnimating) this.outline.destroy();
2326
+
2327
+ hs.discardElement(this.wrapper);
2328
+ }
2329
+ if (hs.mask) hs.mask.style.display = 'none';
2330
+
2331
+ hs.expanders[this.key] = null;
2332
+ hs.reOrder();
2333
+ }
2334
+
2335
+ };
2336
+
2337
+
2338
+ // hs.Ajax object prototype
2339
+ hs.Ajax = function (a, content, pre) {
2340
+ this.a = a;
2341
+ this.content = content;
2342
+ this.pre = pre;
2343
+ };
2344
+
2345
+ hs.Ajax.prototype = {
2346
+ run : function () {
2347
+ var xhr;
2348
+ if (!this.src) this.src = hs.getSrc(this.a);
2349
+ if (this.src.match('#')) {
2350
+ var arr = this.src.split('#');
2351
+ this.src = arr[0];
2352
+ this.id = arr[1];
2353
+ }
2354
+ if (hs.cachedGets[this.src]) {
2355
+ this.cachedGet = hs.cachedGets[this.src];
2356
+ if (this.id) this.getElementContent();
2357
+ else this.loadHTML();
2358
+ return;
2359
+ }
2360
+ try { xhr = new XMLHttpRequest(); }
2361
+ catch (e) {
2362
+ try { xhr = new ActiveXObject("Msxml2.XMLHTTP"); }
2363
+ catch (e) {
2364
+ try { xhr = new ActiveXObject("Microsoft.XMLHTTP"); }
2365
+ catch (e) { this.onError(); }
2366
+ }
2367
+ }
2368
+ var pThis = this;
2369
+ xhr.onreadystatechange = function() {
2370
+ if(pThis.xhr.readyState == 4) {
2371
+ if (pThis.id) pThis.getElementContent();
2372
+ else pThis.loadHTML();
2373
+ }
2374
+ };
2375
+ var src = this.src;
2376
+ this.xhr = xhr;
2377
+ if (hs.forceAjaxReload)
2378
+ src = src.replace(/$/, (/\?/.test(src) ? '&' : '?') +'dummy='+ (new Date()).getTime());
2379
+ xhr.open('GET', src, true);
2380
+ xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
2381
+ xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
2382
+ xhr.send(null);
2383
+ },
2384
+
2385
+ getElementContent : function() {
2386
+ hs.init();
2387
+ var attribs = window.opera || hs.ie6SSL ? { src: 'about:blank' } : null;
2388
+
2389
+ this.iframe = hs.createElement('iframe', attribs,
2390
+ { position: 'absolute', top: '-9999px' }, hs.container);
2391
+
2392
+ this.loadHTML();
2393
+ },
2394
+
2395
+ loadHTML : function() {
2396
+ var s = this.cachedGet || this.xhr.responseText,
2397
+ regBody;
2398
+ if (this.pre) hs.cachedGets[this.src] = s;
2399
+ if (!hs.ie || hs.uaVersion >= 5.5) {
2400
+ s = s.replace(new RegExp('<link[^>]*>', 'gi'), '')
2401
+ .replace(new RegExp('<script[^>]*>.*?</script>', 'gi'), '');
2402
+ if (this.iframe) {
2403
+ var doc = this.iframe.contentDocument;
2404
+ if (!doc && this.iframe.contentWindow) doc = this.iframe.contentWindow.document;
2405
+ if (!doc) { // Opera
2406
+ var pThis = this;
2407
+ setTimeout(function() { pThis.loadHTML(); }, 25);
2408
+ return;
2409
+ }
2410
+ doc.open();
2411
+ doc.write(s);
2412
+ doc.close();
2413
+ try { s = doc.getElementById(this.id).innerHTML; } catch (e) {
2414
+ try { s = this.iframe.document.getElementById(this.id).innerHTML; } catch (e) {} // opera
2415
+ }
2416
+ hs.discardElement(this.iframe);
2417
+ } else {
2418
+ regBody = /(<body[^>]*>|<\/body>)/ig;
2419
+ if (regBody.test(s)) s = s.split(regBody)[hs.ieLt9 ? 1 : 2];
2420
+
2421
+ }
2422
+ }
2423
+ hs.getElementByClass(this.content, 'DIV', 'highslide-body').innerHTML = s;
2424
+ this.onLoad();
2425
+ for (var x in this) this[x] = null;
2426
+ }
2427
+ };
2428
+ hs.langDefaults = hs.lang;
2429
+ // history
2430
+ var HsExpander = hs.Expander;
2431
+ if (hs.ie && window == window.top) {
2432
+ (function () {
2433
+ try {
2434
+ document.documentElement.doScroll('left');
2435
+ } catch (e) {
2436
+ setTimeout(arguments.callee, 50);
2437
+ return;
2438
+ }
2439
+ hs.ready();
2440
+ })();
2441
+ }
2442
+ hs.addEventListener(document, 'DOMContentLoaded', hs.ready);
2443
+ hs.addEventListener(window, 'load', hs.ready);
2444
+
2445
+ // set handlers
2446
+ hs.addEventListener(document, 'ready', function() {
2447
+ if (hs.expandCursor) {
2448
+ var style = hs.createElement('style', { type: 'text/css' }, null,
2449
+ document.getElementsByTagName('HEAD')[0]),
2450
+ backCompat = document.compatMode == 'BackCompat';
2451
+
2452
+
2453
+ function addRule(sel, dec) {
2454
+ if (hs.ie && (hs.uaVersion < 9 || backCompat)) {
2455
+ var last = document.styleSheets[document.styleSheets.length - 1];
2456
+ if (typeof(last.addRule) == "object") last.addRule(sel, dec);
2457
+ } else {
2458
+ style.appendChild(document.createTextNode(sel + " {" + dec + "}"));
2459
+ }
2460
+ }
2461
+ function fix(prop) {
2462
+ return 'expression( ( ( ignoreMe = document.documentElement.'+ prop +
2463
+ ' ? document.documentElement.'+ prop +' : document.body.'+ prop +' ) ) + \'px\' );';
2464
+ }
2465
+ if (hs.expandCursor) addRule ('.highslide img',
2466
+ 'cursor: url('+ hs.graphicsDir + hs.expandCursor +'), pointer !important;');
2467
+ }
2468
+ });
2469
+ hs.addEventListener(window, 'resize', function() {
2470
+ hs.getPageSize();
2471
+ });
2472
+ hs.addEventListener(document, 'mousemove', function(e) {
2473
+ hs.mouse = { x: e.clientX, y: e.clientY };
2474
+ });
2475
+ hs.addEventListener(document, 'mousedown', hs.mouseClickHandler);
2476
+ hs.addEventListener(document, 'mouseup', hs.mouseClickHandler);
2477
+
2478
+ hs.addEventListener(document, 'ready', hs.getAnchors);
2479
+ hs.addEventListener(window, 'load', hs.preloadImages);
2480
+ hs.addEventListener(window, 'load', hs.preloadAjax);
2481
+ }