Commit e102c1242bb74c3b92b717b302e600fd70aaa0ef

Authored by Fabio Teixeira
1 parent b0727510
Exists in master and in 79 other branches add_sisp_to_chef, add_super_archives_plugin, api_for_colab, automates_core_packing, backup_not_prod, changes_in_buttons_on_content_panel, colab_automated_login, colab_spb_plugin_recipe, colab_widgets_settings, design_validation, dev_env_minimal, disable_email_dev, fix_breadcrumbs_position, fix_categories_software_link, fix_edit_institution, fix_edit_software_with_another_license, fix_get_license_info, fix_gitlab_assets_permission, fix_list_style_inside_article, fix_list_style_on_folder_elements, fix_members_pagination, fix_merge_request_url, fix_models_translations, fix_no_license, fix_software_api, fix_software_block_migration, fix_software_communities_translations, fix_software_communities_unit_test, fix_style_create_institution_admin_panel, fix_superarchives_imports, fix_sym_links_noosfero, focus_search_field_theme, gov-user-refactoring, gov-user-refactoring-rails4, header_fix, institution_modal_on_rating, kalibro-conf-refactoring, kalibro-processor-package, lxc_settings, margin_fix, mezuro_cookbook, prezento, refactor_download_block, refactor_software_communities, refactor_software_for_sisp, register_page, release-process, release-process-v2, remove-unused-images, remove_broken_theme, remove_secondary_email_from_user, remove_sisp_buttons, removing_super_archives_email, review_message, scope2method, signals_user_noosfero, sisp_catalog_header, sisp_colab_config, sisp_dev, sisp_dev_master, sisp_simple_version, software_as_organization, software_catalog_style_fix, software_communities_html_refactor, software_infos_api, spb_minimal_env, spb_to_rails4, spec_refactor, stable-4.1, stable-4.2, stable-4.x, temp_soft_comm_refactoring, theme_header, theme_javascript_refactory, thread_dropdown, thread_page, update_search_by_categories, update_software_api, update_softwares_boxes

incomplete_registration: New visualization to percentage of profile complete regeistration.

Signed-off-by: Fabio Teixeira  <fabio1079@gmail.com>
Signed-off-by: Parley Martins <parley@outlook.com>
lib/mpog_software_plugin.rb
... ... @@ -150,17 +150,14 @@ class MpogSoftwarePlugin &lt; Noosfero::Plugin
150 150 person.has_permission_without_plugins?(permission, target)
151 151 end
152 152  
153   -
154   - def body_middle
  153 + def incomplete_registration
155 154 return if context.session[:user].nil? or context.session[:hide_incomplete_percentage] == true
156 155  
157 156 person = Person.where(:user_id=>context.session[:user]).first
158 157  
159 158 unless person.nil?
160   - @profile_edit_link = link_to _("Complete your registration"), "/myprofile/#{person.identifier}/profile_editor/edit"
161   - @profile_empty_fields = profile_required_empty_list person
  159 + @profile_edit_link = link_to _("Complete your profile"), "/myprofile/#{person.identifier}/profile_editor/edit"
162 160 @percentege = calc_percentage_registration(person)
163   -
164 161 if @percentege >= 0 and @percentege <= 100
165 162 expanded_template('incomplete_registration.html.erb')
166 163 end
... ... @@ -178,7 +175,7 @@ class MpogSoftwarePlugin &lt; Noosfero::Plugin
178 175 required_list = profile_required_list
179 176 empty_fields = profile_required_empty_list person
180 177  
181   - percentege = (empty_fields.count*100)/required_list.count
  178 + percentege = 100 - ((empty_fields.count*100)/required_list.count)
182 179 person.percentage_incomplete = percentege
183 180 person.save(validate: false)
184 181 percentege
... ...
public/mpog-incomplete-registration.js
... ... @@ -3,11 +3,25 @@ function hide_incomplete_percentage(evt) {
3 3  
4 4 jQuery.get("/plugin/mpog_software/hide_registration_incomplete_percentage", {hide:true}, function(response){
5 5 if( response == true )
6   - jQuery("#incomplete_registration").fadeOut();
  6 + jQuery("#complete_registration").fadeOut();
7 7 });
8 8 }
9 9  
  10 +function show_complete_progressbar() {
  11 + var percentage = jQuery("#complete_registration_message span").html();
  12 + var canvas_tag = document.getElementById("complete_registration_percentage");
  13 + var context = canvas_tag.getContext("2d");
  14 +
  15 + percentage = canvas_tag.width*(percentage/100.0);
  16 +
  17 + context.beginPath();
  18 + context.rect(0, 0, percentage, canvas_tag.height);
  19 + context.fillStyle = '#00FF00';
  20 + context.fill();
  21 +}
10 22  
11 23 jQuery(document).ready(function(){
12 24 jQuery(".hide-incomplete-percentage").click(hide_incomplete_percentage);
  25 +
  26 + show_complete_progressbar();
13 27 });
... ...
public/style.css
... ... @@ -114,22 +114,23 @@
114 114 width: 180px;
115 115 }
116 116  
117   -#incomplete_registration {
118   - position: relative;
119   - border: solid 2px #000;
  117 +#complete_registration {
120 118 padding: 5px;
  119 + width: 100%;
  120 + background-color: #fff;
121 121 }
122 122  
123   -#incomplete_percentage {
124   - text-align: center;
125   - margin-bottom: 15px;
126   - font-size: 18px;
  123 +#complete_registration a {
  124 + text-decoration: none;
127 125 }
128 126  
129   -#profile_empty_fields span {
130   - margin-left: 15px;
  127 +#complete_registration a:hover {
  128 + font-weight: bold;
131 129 }
132 130  
133   -#profile_links table tr td {
134   - text-align: center;
135   -}
  131 +#complete_registration_percentage {
  132 + width: 100%;
  133 + height: 20px;
  134 + background: #fff;
  135 + border: solid 1px #000;
  136 +}
136 137 \ No newline at end of file
... ...
views/incomplete_registration.html.erb
1   -<div id='incomplete_registration'>
2   - <div id="incomplete_percentage">
3   - <%= _("Incomplete registration percentage")+":#{@percentege}%" %>
  1 +<div id='complete_registration'>
  2 + <div id="complete_registration_message">
  3 + <div><%= _("Complete Profile")+": <span>#{@percentege}</span>%" %></div>
  4 + <canvas id="complete_registration_percentage" width="100%" height="20"></canvas>
  5 + <div>
  6 + <%= @profile_edit_link %> |
  7 + <%= link_to _("Hide"), "#", :class=>"hide-incomplete-percentage" %>
  8 + </div>
4 9 </div>
5   -
6   - <div id="profile_empty_fields">
7   - <span><%= _("List with fields to be filled")+":" %></span>
8   - <ul>
9   - <% @profile_empty_fields.each do |field|%>
10   - <li>
11   - <%= field %>
12   - </li>
13   - <% end %>
14   - </ul>
15   - </div>
16   -
17   - <div id="profile_links">
18   - <table>
19   - <tr>
20   - <td>
21   - <%= @profile_edit_link %>
22   - </td>
23   - <td>
24   - <%= link_to _("Hide this message"), "#", :class=>"hide-incomplete-percentage" %></a>
25   - </td>
26   - </tr>
27   - </table>
28   - </div>
29   -</div>
  10 +</div>
30 11 \ No newline at end of file
... ...