diff --git a/app/controllers/admin/tools/wordcloud_controller.rb b/app/controllers/admin/tools/wordcloud_controller.rb index 7a9bde243..30d78a6d3 100644 --- a/app/controllers/admin/tools/wordcloud_controller.rb +++ b/app/controllers/admin/tools/wordcloud_controller.rb @@ -96,7 +96,8 @@ module Admin background_color: params[:background_color].presence || 'white', min_word_length: params[:min_word_length].presence || 2, include_numbers: params[:include_numbers] == '1', - batch_size: params[:batch_size].presence || 500 + batch_size: params[:batch_size].presence || 500, + additional_prompt: params[:additional_prompt].presence || nil } # Process additional stopwords diff --git a/app/views/admin/tools/wordcloud/_form.html.erb b/app/views/admin/tools/wordcloud/_form.html.erb new file mode 100644 index 000000000..ea56f726d --- /dev/null +++ b/app/views/admin/tools/wordcloud/_form.html.erb @@ -0,0 +1,114 @@ +<%= form_tag admin_tools_wordcloud_path, method: :post, multipart: true do %> +
+
+
+
+

<%= t('admin.tools.wordcloud.custom_file_description') %>

+ <%= file_field_tag :domains_file, accept: '.csv', class: 'form-control' %> +
+
+
+
+ +
+
+

+ + <%= t('admin.tools.wordcloud.advanced_options') %> + +

+
+
+
+
+
+
+ <%= label_tag :width, t('admin.tools.wordcloud.width') %> + <%= number_field_tag :width, @config['width'], min: 400, max: 2000, step: 100, class: 'form-control' %> +
+
+
+
+ <%= label_tag :height, t('admin.tools.wordcloud.height') %> + <%= number_field_tag :height, @config['height'], min: 400, max: 2000, step: 100, class: 'form-control' %> +
+
+
+
+ <%= label_tag :max_words, t('admin.tools.wordcloud.max_words') %> + <%= number_field_tag :max_words, @config['max_words'], min: 100, max: 1000, step: 50, class: 'form-control' %> +
+
+
+ +
+
+
+ <%= label_tag :batch_size, t('admin.tools.wordcloud.batch_size') %> + <%= number_field_tag :batch_size, @config['batch_size'], min: 100, max: 1000, step: 50, class: 'form-control' %> + <%= t('admin.tools.wordcloud.batch_size_help') %> +
+
+
+
+ <%= label_tag :background_color, t('admin.tools.wordcloud.background') %> + <%= select_tag :background_color, + options_for_select([ + ['White', 'white'], + ['Black', 'black'], + ['Transparent', 'transparent'], + ['Light Gray', '#f0f0f0'] + ], @config['background_color']), + class: 'form-control' %> +
+
+
+ +
+
+
+ <%= label_tag :min_word_length, t('admin.tools.wordcloud.min_word_length') %> + <%= number_field_tag :min_word_length, @config['min_word_length'], min: 1, max: 5, class: 'form-control' %> +
+
+
+
+
+ +
+
+
+
+ +
+ <%= label_tag :special_terms, t('admin.tools.wordcloud.special_terms') %> + <%= text_field_tag :special_terms, @config['special_terms'].is_a?(Array) ? @config['special_terms'].join(', ') : '', + class: 'form-control', + placeholder: t('admin.tools.wordcloud.special_terms_placeholder') %> + <%= t('admin.tools.wordcloud.special_terms_help') %> +
+ +
+ <%= label_tag :additional_stopwords, t('admin.tools.wordcloud.additional_stopwords') %> + <%= text_area_tag :additional_stopwords, @config['additional_stopwords'].is_a?(Array) ? @config['additional_stopwords'].join(', ') : '', + rows: 3, + placeholder: t('admin.tools.wordcloud.stopwords_placeholder'), + class: 'form-control' %> + <%= t('admin.tools.wordcloud.stopwords_help') %> +
+ +
+ <%= label_tag :additional_prompt, t('admin.tools.wordcloud.additional_prompt') %> + <%= text_area_tag :additional_prompt, @config['additional_prompt'], class: "form-control", rows: 3, + placeholder: t('admin.tools.wordcloud.additional_prompt_placeholder') %> + <%= t('admin.tools.wordcloud.additional_prompt_help') %> +
+
+
+
+ + <%= submit_tag t('admin.tools.generate_wordcloud'), class: 'btn btn-primary btn-lg mt-3' %> +<% end %> \ No newline at end of file diff --git a/app/views/admin/tools/wordcloud/index.html.erb b/app/views/admin/tools/wordcloud/index.html.erb index 37b65db8e..083c1b324 100644 --- a/app/views/admin/tools/wordcloud/index.html.erb +++ b/app/views/admin/tools/wordcloud/index.html.erb @@ -1,7 +1,7 @@ <% content_for :actions do %> <%= link_to t('back'), admin_tools_path, class: 'btn btn-default' %> <% end %> -<%= render "shared/title", name: t('admin.tools.wordcloud_title') %> +<%= render "shared/title", name: t('admin.tools.wordcloud.title') %>