otree 6.0.3__tar.gz → 6.0.5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (261) hide show
  1. {otree-6.0.3/otree.egg-info → otree-6.0.5}/PKG-INFO +1 -1
  2. {otree-6.0.3 → otree-6.0.5}/otree/__init__.py +1 -1
  3. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/css/theme2.css +5 -2
  4. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/Page.html +6 -1
  5. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/SessionData.html +2 -2
  6. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/includes/debug_info.html +6 -0
  7. {otree-6.0.3 → otree-6.0.5}/otree/views/export.py +12 -0
  8. {otree-6.0.3 → otree-6.0.5}/otree/views/rest.py +5 -0
  9. {otree-6.0.3 → otree-6.0.5/otree.egg-info}/PKG-INFO +1 -1
  10. {otree-6.0.3 → otree-6.0.5}/LICENSE +0 -0
  11. {otree-6.0.3 → otree-6.0.5}/MANIFEST.in +0 -0
  12. {otree-6.0.3 → otree-6.0.5}/README.rst +0 -0
  13. {otree-6.0.3 → otree-6.0.5}/otree/api.py +0 -0
  14. {otree-6.0.3 → otree-6.0.5}/otree/api.pyi +0 -0
  15. {otree-6.0.3 → otree-6.0.5}/otree/asgi.py +0 -0
  16. {otree-6.0.3 → otree-6.0.5}/otree/assets/__init__.py +0 -0
  17. {otree-6.0.3 → otree-6.0.5}/otree/assets/__pycache__/__init__.cpython-310.pyc +0 -0
  18. {otree-6.0.3 → otree-6.0.5}/otree/assets/__pycache__/__init__.cpython-311.pyc +0 -0
  19. {otree-6.0.3 → otree-6.0.5}/otree/assets/app_template/MyPage.html +0 -0
  20. {otree-6.0.3 → otree-6.0.5}/otree/assets/app_template/Results.html +0 -0
  21. {otree-6.0.3 → otree-6.0.5}/otree/assets/app_template/__init__.py +0 -0
  22. {otree-6.0.3 → otree-6.0.5}/otree/assets/app_template/__pycache__/__init__.cpython-310.pyc +0 -0
  23. {otree-6.0.3 → otree-6.0.5}/otree/assets/app_template/__pycache__/__init__.cpython-311.pyc +0 -0
  24. {otree-6.0.3 → otree-6.0.5}/otree/assets/app_template_trials/Results.html +0 -0
  25. {otree-6.0.3 → otree-6.0.5}/otree/assets/app_template_trials/Task.html +0 -0
  26. {otree-6.0.3 → otree-6.0.5}/otree/assets/app_template_trials/__init__.py +0 -0
  27. {otree-6.0.3 → otree-6.0.5}/otree/assets/app_template_trials/__pycache__/__init__.cpython-310.pyc +0 -0
  28. {otree-6.0.3 → otree-6.0.5}/otree/assets/app_template_trials/__pycache__/__init__.cpython-311.pyc +0 -0
  29. {otree-6.0.3 → otree-6.0.5}/otree/assets/app_template_trials/trials.csv +0 -0
  30. {otree-6.0.3 → otree-6.0.5}/otree/assets/app_template_trials/trials.js +0 -0
  31. {otree-6.0.3 → otree-6.0.5}/otree/assets/project_template/.gitignore +0 -0
  32. {otree-6.0.3 → otree-6.0.5}/otree/assets/project_template/Procfile +0 -0
  33. {otree-6.0.3 → otree-6.0.5}/otree/assets/project_template/__init__.py +0 -0
  34. {otree-6.0.3 → otree-6.0.5}/otree/assets/project_template/__pycache__/__init__.cpython-310.pyc +0 -0
  35. {otree-6.0.3 → otree-6.0.5}/otree/assets/project_template/__pycache__/__init__.cpython-311.pyc +0 -0
  36. {otree-6.0.3 → otree-6.0.5}/otree/assets/project_template/__pycache__/settings.cpython-310.pyc +0 -0
  37. {otree-6.0.3 → otree-6.0.5}/otree/assets/project_template/__pycache__/settings.cpython-311.pyc +0 -0
  38. {otree-6.0.3 → otree-6.0.5}/otree/assets/project_template/_static/global/empty.css +0 -0
  39. {otree-6.0.3 → otree-6.0.5}/otree/assets/project_template/requirements.txt +0 -0
  40. {otree-6.0.3 → otree-6.0.5}/otree/assets/project_template/settings.py +0 -0
  41. {otree-6.0.3 → otree-6.0.5}/otree/auth.py +0 -0
  42. {otree-6.0.3 → otree-6.0.5}/otree/bots/__init__.py +0 -0
  43. {otree-6.0.3 → otree-6.0.5}/otree/bots/bot.py +0 -0
  44. {otree-6.0.3 → otree-6.0.5}/otree/bots/browser.py +0 -0
  45. {otree-6.0.3 → otree-6.0.5}/otree/bots/browser_launcher.py +0 -0
  46. {otree-6.0.3 → otree-6.0.5}/otree/bots/runner.py +0 -0
  47. {otree-6.0.3 → otree-6.0.5}/otree/channels/__init__.py +0 -0
  48. {otree-6.0.3 → otree-6.0.5}/otree/channels/consumers.py +0 -0
  49. {otree-6.0.3 → otree-6.0.5}/otree/channels/routing.py +0 -0
  50. {otree-6.0.3 → otree-6.0.5}/otree/channels/utils.py +0 -0
  51. {otree-6.0.3 → otree-6.0.5}/otree/chat.py +0 -0
  52. {otree-6.0.3 → otree-6.0.5}/otree/checks.py +0 -0
  53. {otree-6.0.3 → otree-6.0.5}/otree/cli/__init__.py +0 -0
  54. {otree-6.0.3 → otree-6.0.5}/otree/cli/base.py +0 -0
  55. {otree-6.0.3 → otree-6.0.5}/otree/cli/bots.py +0 -0
  56. {otree-6.0.3 → otree-6.0.5}/otree/cli/browser_bots.py +0 -0
  57. {otree-6.0.3 → otree-6.0.5}/otree/cli/create_session.py +0 -0
  58. {otree-6.0.3 → otree-6.0.5}/otree/cli/devserver.py +0 -0
  59. {otree-6.0.3 → otree-6.0.5}/otree/cli/devserver_inner.py +0 -0
  60. {otree-6.0.3 → otree-6.0.5}/otree/cli/prodserver.py +0 -0
  61. {otree-6.0.3 → otree-6.0.5}/otree/cli/prodserver1of2.py +0 -0
  62. {otree-6.0.3 → otree-6.0.5}/otree/cli/prodserver2of2.py +0 -0
  63. {otree-6.0.3 → otree-6.0.5}/otree/cli/resetdb.py +0 -0
  64. {otree-6.0.3 → otree-6.0.5}/otree/cli/startapp.py +0 -0
  65. {otree-6.0.3 → otree-6.0.5}/otree/cli/startapp_trials.py +0 -0
  66. {otree-6.0.3 → otree-6.0.5}/otree/cli/startproject.py +0 -0
  67. {otree-6.0.3 → otree-6.0.5}/otree/cli/timeoutsubprocess.py +0 -0
  68. {otree-6.0.3 → otree-6.0.5}/otree/cli/unzip.py +0 -0
  69. {otree-6.0.3 → otree-6.0.5}/otree/cli/zip.py +0 -0
  70. {otree-6.0.3 → otree-6.0.5}/otree/cli/zipserver.py +0 -0
  71. {otree-6.0.3 → otree-6.0.5}/otree/common.py +0 -0
  72. {otree-6.0.3 → otree-6.0.5}/otree/common2.py +0 -0
  73. {otree-6.0.3 → otree-6.0.5}/otree/constants.py +0 -0
  74. {otree-6.0.3 → otree-6.0.5}/otree/currency.py +0 -0
  75. {otree-6.0.3 → otree-6.0.5}/otree/database.py +0 -0
  76. {otree-6.0.3 → otree-6.0.5}/otree/decimal.py +0 -0
  77. {otree-6.0.3 → otree-6.0.5}/otree/errorpage.py +0 -0
  78. {otree-6.0.3 → otree-6.0.5}/otree/export.py +0 -0
  79. {otree-6.0.3 → otree-6.0.5}/otree/forms/__init__.py +0 -0
  80. {otree-6.0.3 → otree-6.0.5}/otree/forms/fields.py +0 -0
  81. {otree-6.0.3 → otree-6.0.5}/otree/forms/forms.py +0 -0
  82. {otree-6.0.3 → otree-6.0.5}/otree/forms/multistring.py +0 -0
  83. {otree-6.0.3 → otree-6.0.5}/otree/forms/widgets.py +0 -0
  84. {otree-6.0.3 → otree-6.0.5}/otree/i18n.py +0 -0
  85. {otree-6.0.3 → otree-6.0.5}/otree/live.py +0 -0
  86. {otree-6.0.3 → otree-6.0.5}/otree/locale/ar/LC_MESSAGES/django.mo +0 -0
  87. {otree-6.0.3 → otree-6.0.5}/otree/locale/ar/LC_MESSAGES/django.po +0 -0
  88. {otree-6.0.3 → otree-6.0.5}/otree/locale/babel.ini +0 -0
  89. {otree-6.0.3 → otree-6.0.5}/otree/locale/cs/LC_MESSAGES/django.mo +0 -0
  90. {otree-6.0.3 → otree-6.0.5}/otree/locale/cs/LC_MESSAGES/django.po +0 -0
  91. {otree-6.0.3 → otree-6.0.5}/otree/locale/de/LC_MESSAGES/django.mo +0 -0
  92. {otree-6.0.3 → otree-6.0.5}/otree/locale/de/LC_MESSAGES/django.po +0 -0
  93. {otree-6.0.3 → otree-6.0.5}/otree/locale/django.pot +0 -0
  94. {otree-6.0.3 → otree-6.0.5}/otree/locale/es/LC_MESSAGES/django.mo +0 -0
  95. {otree-6.0.3 → otree-6.0.5}/otree/locale/es/LC_MESSAGES/django.po +0 -0
  96. {otree-6.0.3 → otree-6.0.5}/otree/locale/fi/LC_MESSAGES/django.mo +0 -0
  97. {otree-6.0.3 → otree-6.0.5}/otree/locale/fi/LC_MESSAGES/django.po +0 -0
  98. {otree-6.0.3 → otree-6.0.5}/otree/locale/fr/LC_MESSAGES/django.mo +0 -0
  99. {otree-6.0.3 → otree-6.0.5}/otree/locale/fr/LC_MESSAGES/django.po +0 -0
  100. {otree-6.0.3 → otree-6.0.5}/otree/locale/he/LC_MESSAGES/django.mo +0 -0
  101. {otree-6.0.3 → otree-6.0.5}/otree/locale/he/LC_MESSAGES/django.po +0 -0
  102. {otree-6.0.3 → otree-6.0.5}/otree/locale/hi/LC_MESSAGES/django.mo +0 -0
  103. {otree-6.0.3 → otree-6.0.5}/otree/locale/hi/LC_MESSAGES/django.po +0 -0
  104. {otree-6.0.3 → otree-6.0.5}/otree/locale/hu/LC_MESSAGES/django.mo +0 -0
  105. {otree-6.0.3 → otree-6.0.5}/otree/locale/hu/LC_MESSAGES/django.po +0 -0
  106. {otree-6.0.3 → otree-6.0.5}/otree/locale/id/LC_MESSAGES/django.mo +0 -0
  107. {otree-6.0.3 → otree-6.0.5}/otree/locale/id/LC_MESSAGES/django.po +0 -0
  108. {otree-6.0.3 → otree-6.0.5}/otree/locale/it/LC_MESSAGES/django.mo +0 -0
  109. {otree-6.0.3 → otree-6.0.5}/otree/locale/it/LC_MESSAGES/django.po +0 -0
  110. {otree-6.0.3 → otree-6.0.5}/otree/locale/ja/LC_MESSAGES/django.mo +0 -0
  111. {otree-6.0.3 → otree-6.0.5}/otree/locale/ja/LC_MESSAGES/django.po +0 -0
  112. {otree-6.0.3 → otree-6.0.5}/otree/locale/ko/LC_MESSAGES/django.mo +0 -0
  113. {otree-6.0.3 → otree-6.0.5}/otree/locale/ko/LC_MESSAGES/django.po +0 -0
  114. {otree-6.0.3 → otree-6.0.5}/otree/locale/nb/LC_MESSAGES/django.mo +0 -0
  115. {otree-6.0.3 → otree-6.0.5}/otree/locale/nb/LC_MESSAGES/django.po +0 -0
  116. {otree-6.0.3 → otree-6.0.5}/otree/locale/nl/LC_MESSAGES/django.mo +0 -0
  117. {otree-6.0.3 → otree-6.0.5}/otree/locale/nl/LC_MESSAGES/django.po +0 -0
  118. {otree-6.0.3 → otree-6.0.5}/otree/locale/pl/LC_MESSAGES/django.mo +0 -0
  119. {otree-6.0.3 → otree-6.0.5}/otree/locale/pl/LC_MESSAGES/django.po +0 -0
  120. {otree-6.0.3 → otree-6.0.5}/otree/locale/pt/LC_MESSAGES/django.mo +0 -0
  121. {otree-6.0.3 → otree-6.0.5}/otree/locale/pt/LC_MESSAGES/django.po +0 -0
  122. {otree-6.0.3 → otree-6.0.5}/otree/locale/ru/LC_MESSAGES/django.mo +0 -0
  123. {otree-6.0.3 → otree-6.0.5}/otree/locale/ru/LC_MESSAGES/django.po +0 -0
  124. {otree-6.0.3 → otree-6.0.5}/otree/locale/tr/LC_MESSAGES/django.mo +0 -0
  125. {otree-6.0.3 → otree-6.0.5}/otree/locale/tr/LC_MESSAGES/django.po +0 -0
  126. {otree-6.0.3 → otree-6.0.5}/otree/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
  127. {otree-6.0.3 → otree-6.0.5}/otree/locale/zh_Hans/LC_MESSAGES/django.po +0 -0
  128. {otree-6.0.3 → otree-6.0.5}/otree/lookup.py +0 -0
  129. {otree-6.0.3 → otree-6.0.5}/otree/main.py +0 -0
  130. {otree-6.0.3 → otree-6.0.5}/otree/middleware.py +0 -0
  131. {otree-6.0.3 → otree-6.0.5}/otree/models/__init__.py +0 -0
  132. {otree-6.0.3 → otree-6.0.5}/otree/models/group.py +0 -0
  133. {otree-6.0.3 → otree-6.0.5}/otree/models/participant.py +0 -0
  134. {otree-6.0.3 → otree-6.0.5}/otree/models/player.py +0 -0
  135. {otree-6.0.3 → otree-6.0.5}/otree/models/session.py +0 -0
  136. {otree-6.0.3 → otree-6.0.5}/otree/models/subsession.py +0 -0
  137. {otree-6.0.3 → otree-6.0.5}/otree/models_concrete.py +0 -0
  138. {otree-6.0.3 → otree-6.0.5}/otree/mturk_client.py +0 -0
  139. {otree-6.0.3 → otree-6.0.5}/otree/patch.py +0 -0
  140. {otree-6.0.3 → otree-6.0.5}/otree/read_csv.py +0 -0
  141. {otree-6.0.3 → otree-6.0.5}/otree/room.py +0 -0
  142. {otree-6.0.3 → otree-6.0.5}/otree/session.py +0 -0
  143. {otree-6.0.3 → otree-6.0.5}/otree/settings.py +0 -0
  144. {otree-6.0.3 → otree-6.0.5}/otree/static/bootstrap5/css/bootstrap.min.css +0 -0
  145. {otree-6.0.3 → otree-6.0.5}/otree/static/bootstrap5/css/bootstrap.min.css.map +0 -0
  146. {otree-6.0.3 → otree-6.0.5}/otree/static/bootstrap5/js/bootstrap.bundle.min.js +0 -0
  147. {otree-6.0.3 → otree-6.0.5}/otree/static/bootstrap5/js/bootstrap.bundle.min.js.map +0 -0
  148. {otree-6.0.3 → otree-6.0.5}/otree/static/favicon.ico +0 -0
  149. {otree-6.0.3 → otree-6.0.5}/otree/static/glyphicons/clock.png +0 -0
  150. {otree-6.0.3 → otree-6.0.5}/otree/static/glyphicons/cloud.png +0 -0
  151. {otree-6.0.3 → otree-6.0.5}/otree/static/glyphicons/cogwheel.png +0 -0
  152. {otree-6.0.3 → otree-6.0.5}/otree/static/glyphicons/delete.png +0 -0
  153. {otree-6.0.3 → otree-6.0.5}/otree/static/glyphicons/download-alt.png +0 -0
  154. {otree-6.0.3 → otree-6.0.5}/otree/static/glyphicons/eye-open.png +0 -0
  155. {otree-6.0.3 → otree-6.0.5}/otree/static/glyphicons/folder-closed.png +0 -0
  156. {otree-6.0.3 → otree-6.0.5}/otree/static/glyphicons/link.png +0 -0
  157. {otree-6.0.3 → otree-6.0.5}/otree/static/glyphicons/list-alt.png +0 -0
  158. {otree-6.0.3 → otree-6.0.5}/otree/static/glyphicons/pencil.png +0 -0
  159. {otree-6.0.3 → otree-6.0.5}/otree/static/glyphicons/plus.png +0 -0
  160. {otree-6.0.3 → otree-6.0.5}/otree/static/glyphicons/pushpin.png +0 -0
  161. {otree-6.0.3 → otree-6.0.5}/otree/static/glyphicons/refresh.png +0 -0
  162. {otree-6.0.3 → otree-6.0.5}/otree/static/glyphicons/stats.png +0 -0
  163. {otree-6.0.3 → otree-6.0.5}/otree/static/glyphicons/usd.png +0 -0
  164. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/css/table.css +0 -0
  165. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/back_button.js +0 -0
  166. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/common_admin.js +0 -0
  167. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/common_user_facing.js +0 -0
  168. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/formInputs.js +0 -0
  169. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/internet-explorer.js +0 -0
  170. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/jquery-3.2.1.min.js +0 -0
  171. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/jquery.color-2.1.2.min.js +0 -0
  172. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/jquery.countdown.min.js +0 -0
  173. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/jquery.timeago.en-short.js +0 -0
  174. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/jquery.timeago.js +0 -0
  175. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/live.js +0 -0
  176. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/page-websocket-redirect.js +0 -0
  177. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/preserve_unsubmitted_inputs.js +0 -0
  178. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/reconnecting-websocket-iife.min.js +0 -0
  179. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/session_data.js +0 -0
  180. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/session_monitor.js +0 -0
  181. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/trials-core.js +0 -0
  182. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/trials-core.js.backup +0 -0
  183. {otree-6.0.3 → otree-6.0.5}/otree/static/otree/js/trials-pre.js +0 -0
  184. {otree-6.0.3 → otree-6.0.5}/otree/static/robots.txt +0 -0
  185. {otree-6.0.3 → otree-6.0.5}/otree/tasks.py +0 -0
  186. {otree-6.0.3 → otree-6.0.5}/otree/templates/global/Base.html +0 -0
  187. {otree-6.0.3 → otree-6.0.5}/otree/templates/global/Page.html +0 -0
  188. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/AdminReport.html +0 -0
  189. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/BaseAdminAll.html +0 -0
  190. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/BaseAdminRegular.html +0 -0
  191. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/Base_UserFacing.html +0 -0
  192. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/CreateDemoSession.html +0 -0
  193. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/CreateSession.html +0 -0
  194. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/DemoIndex.html +0 -0
  195. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/ExportIndex.html +0 -0
  196. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/FormPage.html +0 -0
  197. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/GBATInactive.html +0 -0
  198. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/Login.html +0 -0
  199. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/MTurkCreateHIT.html +0 -0
  200. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/MTurkHTMLQuestion.html +0 -0
  201. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/MTurkSessionPayments.html +0 -0
  202. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/OutOfRangeNotification.html +0 -0
  203. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/RoomWelcomePage.html +0 -0
  204. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/RoomWithSession.html +0 -0
  205. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/RoomWithoutSession.html +0 -0
  206. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/Rooms.html +0 -0
  207. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/ServerCheck.html +0 -0
  208. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/Session.html +0 -0
  209. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/SessionDemoGridView.html +0 -0
  210. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/SessionDescription.html +0 -0
  211. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/SessionEditProperties.html +0 -0
  212. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/SessionMonitor.html +0 -0
  213. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/SessionPayments.html +0 -0
  214. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/SessionSplitScreen.html +0 -0
  215. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/SessionStartLinks.html +0 -0
  216. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/Sessions.html +0 -0
  217. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/WaitPage.html +0 -0
  218. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/WaitPageGeneric.html +0 -0
  219. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/includes/CreateSessionForm.html +0 -0
  220. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/includes/RoomParticipantLinks.html +0 -0
  221. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/includes/SessionInfo.html +0 -0
  222. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/includes/TimeLimit.html +0 -0
  223. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/includes/TimeLimit.js.html +0 -0
  224. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/includes/hidden_form_errors.html +0 -0
  225. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/includes/messages.html +0 -0
  226. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/includes/mturk_payment_table.html +0 -0
  227. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/includes/navbar.html +0 -0
  228. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/includes/participant_code_links_table.html +0 -0
  229. {otree-6.0.3 → otree-6.0.5}/otree/templates/otree/tags/chat.html +0 -0
  230. {otree-6.0.3 → otree-6.0.5}/otree/templating/__init__.py +0 -0
  231. {otree-6.0.3 → otree-6.0.5}/otree/templating/compiler.py +0 -0
  232. {otree-6.0.3 → otree-6.0.5}/otree/templating/context.py +0 -0
  233. {otree-6.0.3 → otree-6.0.5}/otree/templating/errors.py +0 -0
  234. {otree-6.0.3 → otree-6.0.5}/otree/templating/filters.py +0 -0
  235. {otree-6.0.3 → otree-6.0.5}/otree/templating/loader.py +0 -0
  236. {otree-6.0.3 → otree-6.0.5}/otree/templating/nodes.py +0 -0
  237. {otree-6.0.3 → otree-6.0.5}/otree/templating/template.py +0 -0
  238. {otree-6.0.3 → otree-6.0.5}/otree/templating/utils.py +0 -0
  239. {otree-6.0.3 → otree-6.0.5}/otree/test.py +0 -0
  240. {otree-6.0.3 → otree-6.0.5}/otree/trials.py +0 -0
  241. {otree-6.0.3 → otree-6.0.5}/otree/update.py +0 -0
  242. {otree-6.0.3 → otree-6.0.5}/otree/urls.py +0 -0
  243. {otree-6.0.3 → otree-6.0.5}/otree/views/__init__.py +0 -0
  244. {otree-6.0.3 → otree-6.0.5}/otree/views/abstract.py +0 -0
  245. {otree-6.0.3 → otree-6.0.5}/otree/views/admin.py +0 -0
  246. {otree-6.0.3 → otree-6.0.5}/otree/views/cbv.py +0 -0
  247. {otree-6.0.3 → otree-6.0.5}/otree/views/demo.py +0 -0
  248. {otree-6.0.3 → otree-6.0.5}/otree/views/mturk.py +0 -0
  249. {otree-6.0.3 → otree-6.0.5}/otree/views/participant.py +0 -0
  250. {otree-6.0.3 → otree-6.0.5}/otree/views/querystring.py +0 -0
  251. {otree-6.0.3 → otree-6.0.5}/otree/views/room.py +0 -0
  252. {otree-6.0.3 → otree-6.0.5}/otree.egg-info/SOURCES.txt +0 -0
  253. {otree-6.0.3 → otree-6.0.5}/otree.egg-info/dependency_links.txt +0 -0
  254. {otree-6.0.3 → otree-6.0.5}/otree.egg-info/entry_points.txt +0 -0
  255. {otree-6.0.3 → otree-6.0.5}/otree.egg-info/not-zip-safe +0 -0
  256. {otree-6.0.3 → otree-6.0.5}/otree.egg-info/requires.txt +0 -0
  257. {otree-6.0.3 → otree-6.0.5}/otree.egg-info/top_level.txt +0 -0
  258. {otree-6.0.3 → otree-6.0.5}/pyproject.toml +0 -0
  259. {otree-6.0.3 → otree-6.0.5}/requirements.txt +0 -0
  260. {otree-6.0.3 → otree-6.0.5}/setup.cfg +0 -0
  261. {otree-6.0.3 → otree-6.0.5}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: otree
3
- Version: 6.0.3
3
+ Version: 6.0.5
4
4
  Summary: Framework for multiplayer strategy games and complex surveys.
5
5
  Home-page: http://otree.org/
6
6
  Author: chris@otree.org
@@ -1,2 +1,2 @@
1
- __version__ = '6.0.3'
1
+ __version__ = '6.0.5'
2
2
  # don't import anything else here because setup.py imports this.
@@ -12,11 +12,14 @@
12
12
  /* Input fields should only take up to 400px width and not stretch over the
13
13
  whole screen */
14
14
  .input-group,
15
- input.form-control,
16
- select.form-control {
15
+ input.form-control {
17
16
  max-width: 400px;
18
17
  }
19
18
 
19
+ input[type="number"] {
20
+ max-width: 150px;
21
+ }
22
+
20
23
  .input-group-narrow {
21
24
  /* Choosing a very small value that will always be filled with the input
22
25
  * type and input-group-addon. That way we don't allow a gap between the
@@ -8,7 +8,12 @@ we should keep this page as simple as possible so that 'view source' is friendly
8
8
  i removed many linebreaks to make output HTML cleaner
9
9
  {% endcomment %}
10
10
  {% block body_main %}
11
-
11
+ {% if is_defined('view.is_debug') and view.is_debug %}
12
+ <script>
13
+ window.addEventListener('error', function() { window._hasJsErrors = true; });
14
+ window.addEventListener('unhandledrejection', function() { window._hasJsErrors = true; });
15
+ </script>
16
+ {% endif %}
12
17
  {% if is_defined('js_vars') and js_vars %}<script>var js_vars = {{ js_vars }};</script>{% endif %}
13
18
  {% if use_standard_layout %}
14
19
  <div class="otree-body container">
@@ -143,8 +143,8 @@
143
143
  <div class="toolbar-group">
144
144
  <small><div>Download:</div></small>
145
145
  <small><div>
146
- <a href="{% url 'ExportWide' session.code %}?token={{ DATA_EXPORT_HASH }}">Regular CSV</a><br>
147
- <a href="{% url 'ExportWide' session.code %}?token={{ DATA_EXPORT_HASH }}&excel=1">Excel CSV</a>
146
+ <a href="{% url 'ExportWideLogin' session.code %}">Regular CSV</a><br>
147
+ <a href="{% url 'ExportWideLogin' session.code %}?format=csv_bom">Excel CSV</a>
148
148
  </div></small>
149
149
  </div>
150
150
  </div>
@@ -7,6 +7,12 @@
7
7
  <div class="container">
8
8
  <div class="card debug-info"> {# .debug-info so it's visible in inspector #}
9
9
  <h5 class="card-header">Debug info</h5>
10
+ <p id="_js-errors-alert" class="text-danger m-3" style="display:none;">
11
+ JavaScript errors occurred. Check your browser console.
12
+ </p>
13
+ <script>
14
+ if (window._hasJsErrors) document.getElementById('_js-errors-alert').style.display = 'block';
15
+ </script>
10
16
 
11
17
  {% include 'otree/includes/hidden_form_errors.html' %}
12
18
 
@@ -156,6 +156,18 @@ class ExportChatLogin(LoginProtectedExport):
156
156
  export.export_chat(buf, session_code=session_code)
157
157
 
158
158
 
159
+ class ExportWideLogin(LoginProtectedExport):
160
+ '''used by 'SessionData' page'''
161
+
162
+ url_pattern = '/ExportWide'
163
+
164
+ def file_name_stem(self):
165
+ return 'all_apps_wide'
166
+
167
+ def write_to_buf(self, buf, session_code, query_params):
168
+ export.export_wide(buf, session_code=session_code)
169
+
170
+
159
171
  class ExportIndex(cbv.AdminView):
160
172
  url_pattern = '/ExportIndex'
161
173
 
@@ -188,6 +188,11 @@ class RESTGetSessionInfo(BaseRESTView):
188
188
  payoff_in_real_world_currency=pp.payoff.to_real_world_currency(session),
189
189
  status=pp.status,
190
190
  )
191
+
192
+ # for otree HR
193
+ if 'finished' in settings.PARTICIPANT_FIELDS:
194
+ pdata['finished'] = pp.vars.get('finished', False)
195
+
191
196
  # shouldn't raise an error if the field is not found,
192
197
  # e.g. because oTree Hub may check if some things are defined to provide
193
198
  # extra functionality.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: otree
3
- Version: 6.0.3
3
+ Version: 6.0.5
4
4
  Summary: Framework for multiplayer strategy games and complex surveys.
5
5
  Home-page: http://otree.org/
6
6
  Author: chris@otree.org
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes