preferences.html 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. {% extends "oscar/base.html" %}
  2. {% block title %}{{ _('preferences') }} - {% endblock %}
  3. {% block content %}
  4. <div>
  5. <h1>{{ _('Preferences') }}</h1>
  6. <form method="post" action="{{ url_for('preferences') }}" id="search_form">
  7. <!-- Nav tabs -->
  8. <ul class="nav nav-tabs hide_if_nojs" role="tablist" style="margin-bottom:20px;">
  9. <li class="active"><a href="#tab_general" role="tab" data-toggle="tab">{{ _('General') }}</a></li>
  10. <li><a href="#tab_template" role="tab" data-toggle="tab">{{ _('Template features') }}</a></li>
  11. <li><a href="#tab_engine" role="tab" data-toggle="tab">{{ _('Engines') }}</a></li>
  12. </ul>
  13. <!-- Tab panes -->
  14. <noscript>
  15. <h3>{{ _('General') }}</h3>
  16. </noscript>
  17. <div class="tab-content">
  18. <div class="tab-pane active" id="tab_general">
  19. <fieldset>
  20. <div class="container-fluid">
  21. <div class="row form-group">
  22. <label class="col-sm-3 col-md-2">{{ _('Default categories') }}</label>
  23. <div class="col-sm-11 col-md-10">
  24. {% include 'oscar/categories.html' %}
  25. </div>
  26. </div>
  27. <div class="row form-group">
  28. <label class="col-sm-3 col-md-2">{{ _('Search language') }}</label>
  29. <div class="col-sm-4 col-md-4">
  30. <select class="form-control" name='language'>
  31. <option value="all" {% if current_language == 'all' %}selected="selected"{% endif %}>{{ _('Automatic') }}</option>
  32. {% for lang_id,lang_name,country_name in language_codes %}
  33. <option value="{{ lang_id }}" {% if lang_id == current_language %}selected="selected"{% endif %}>{{ lang_name }} ({{ country_name }}) - {{ lang_id }}</option>
  34. {% endfor %}
  35. </select>
  36. </div>
  37. <span class="col-sm-5 col-md-6 help-block">{{ _('What language do you prefer for search?') }}</span>
  38. </div>
  39. <div class="row form-group">
  40. <label class="col-sm-3 col-md-2">{{ _('Interface language') }}</label>
  41. <div class="col-sm-4 col-md-4">
  42. <select class="form-control" name='locale'>
  43. {% for locale_id,locale_name in locales.items() %}
  44. <option value="{{ locale_id }}" {% if locale_id == current_locale %}selected="selected"{% endif %}>{{ locale_name }}</option>
  45. {% endfor %}
  46. </select>
  47. </div>
  48. <span class="col-sm-5 col-md-6 help-block">{{ _('Change the language of the layout') }}</span>
  49. </div>
  50. <div class="row form-group">
  51. <label class="col-sm-3 col-md-2">{{ _('Autocomplete') }}</label>
  52. <div class="col-sm-4 col-md-4">
  53. <select class="form-control" name="autocomplete">
  54. <option value=""> - </option>
  55. {% for backend in autocomplete_backends %}
  56. <option value="{{ backend }}" {% if backend == autocomplete %}selected="selected"{% endif %}>{{ backend }}</option>
  57. {% endfor %}
  58. </select>
  59. </div>
  60. <span class="col-sm-5 col-md-6 help-block">{{ _('Find stuff as you type') }}</span>
  61. </div>
  62. <div class="row form-group">
  63. <label class="col-sm-3 col-md-2">{{ _('Image proxy') }}</label>
  64. <div class="col-sm-4 col-md-4">
  65. <select class="form-control" name='image_proxy'>
  66. <option value="1" {% if image_proxy %}selected="selected"{% endif %}>{{ _('Enabled') }}</option>
  67. <option value="" {% if not image_proxy %}selected="selected"{% endif %}>{{ _('Disabled')}}</option>
  68. </select>
  69. </div>
  70. <span class="col-sm-5 col-md-6 help-block">{{ _('Proxying image results through searx') }}</span>
  71. </div>
  72. <div class="row form-group">
  73. <label class="col-sm-3 col-md-2">{{ _('Method') }}</label>
  74. <div class="col-sm-4 col-md-4">
  75. <select class="form-control" name='method'>
  76. <option value="POST" {% if method == 'POST' %}selected="selected"{% endif %}>POST</option>
  77. <option value="GET" {% if method == 'GET' %}selected="selected"{% endif %}>GET</option>
  78. </select>
  79. </div>
  80. <span class="col-sm-5 col-md-6 help-block">{{ _('Change how forms are submited, <a href="http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods" rel="external">learn more about request methods</a>') }}</span>
  81. </div>
  82. <div class="row form-group">
  83. <label class="col-sm-3 col-md-2">{{ _('Themes') }}</label>
  84. <div class="col-sm-4 col-md-4">
  85. <select class="form-control" name="theme">
  86. {% for name in themes %}
  87. <option value="{{ name }}" {% if name == theme %}selected="selected"{% endif %}>{{ name }}</option>
  88. {% endfor %}
  89. </select>
  90. </div>
  91. <span class="col-sm-5 col-md-6 help-block">{{ _('Change searx layout') }}</span>
  92. </div>
  93. </div>
  94. </fieldset>
  95. </div>
  96. <div class="tab-pane active_if_nojs" id="tab_template">
  97. <noscript>
  98. <h3>{{ _('Template features') }}</h3>
  99. </noscript>
  100. <fieldset>
  101. <div class="container-fluid">
  102. <div class="row form-group">
  103. <label class="col-sm-3 col-md-2">{{ _('bootstrap theme') }}</label>
  104. <div class="col-sm-4 col-md-4">
  105. <select class="form-control" name='bootstrap_theme'>
  106. {% for b_theme in bootstrap_themes %}
  107. <option value="{{ b_theme }}" {% if bootstrap_theme == b_theme %}selected="selected"{% endif %}>{{ b_theme }}</option>
  108. {% endfor %}
  109. </select>
  110. </div>
  111. <span class="col-sm-5 col-md-6 help-block">{{ _('Change style of this layout') }}</span>
  112. </div>
  113. </div>
  114. </fieldset>
  115. </div>
  116. <div class="tab-pane active_if_nojs" id="tab_engine">
  117. <!-- Nav tabs -->
  118. <ul class="nav nav-tabs hide_if_nojs" role="tablist" style="margin-bottom:20px;">
  119. {% for (categ,search_engines) in categs %}
  120. <li{% if loop.first %} class="active"{% endif %}><a href="#tab_engine_{{ categ|replace(' ', '_') }}" role="tab" data-toggle="tab">{{ _(categ) }}</a></li>
  121. {% endfor %}
  122. </ul>
  123. <noscript>
  124. <h3>{{ _('Engines') }}</h3>
  125. </noscript>
  126. <!-- Tab panes -->
  127. <div class="tab-content">
  128. {% for (categ,search_engines) in categs %}
  129. <noscript><label>{{ _(categ) }}</label>
  130. </noscript>
  131. <div class="tab-pane{% if loop.first %} active{% endif %} active_if_nojs" id="tab_engine_{{ categ|replace(' ', '_') }}">
  132. <div class="container-fluid">
  133. <fieldset>
  134. {% for search_engine in search_engines %}
  135. {% if not search_engine.private %}
  136. <div class="row">
  137. <div class="col-xs-6 col-sm-4 col-md-4">{{ search_engine.name }} ({{ shortcuts[search_engine.name] }})</div>
  138. <div class="col-xs-6 col-sm-4 col-md-4">
  139. <div class="checkbox">
  140. <input class="hidden" type="checkbox" id="engine_{{ categ|replace(' ', '_') }}_{{ search_engine.name|replace(' ', '_') }}" name="engine_{{ search_engine.name }}"{% if search_engine.name in blocked_engines %} checked="checked"{% endif %} />
  141. <label class="btn btn-success label_hide_if_checked" for="engine_{{ categ|replace(' ', '_') }}_{{ search_engine.name|replace(' ', '_') }}">{{ _('Block') }}</label>
  142. <label class="btn btn-danger label_hide_if_not_checked" for="engine_{{ categ|replace(' ', '_') }}_{{ search_engine.name|replace(' ', '_') }}">{{ _('Allow') }}</label>
  143. </div>
  144. </div>
  145. </div>
  146. {% endif %}
  147. {% endfor %}
  148. </fieldset>
  149. </div>
  150. </div>
  151. {% endfor %}
  152. </div>
  153. </div>
  154. </div>
  155. <p class="text-muted" style="margin:20px 0;">{{ _('These settings are stored in your cookies, this allows us not to store this data about you.') }}
  156. <br />
  157. {{ _("These cookies serve your sole convenience, we don't use these cookies to track you.") }}
  158. </p>
  159. <input type="submit" class="btn btn-primary" value="{{ _('save') }}" />
  160. <a href="{{ url_for('index') }}"><div class="btn btn-default">{{ _('back') }}</div></a>
  161. </form>
  162. </div>
  163. {% endblock %}