Commit cdad6671005cfbd3d87af0bcd5f78c7aa0cf46bd
1 parent
7c861d61
Exists in
master
and in
27 other branches
Inprove block code.
- change lambda to proc in block's content method. - remove unnecessary code. - add block's css Signed-off-by: David Carlos <ddavidcarlos1392@gmail.com> Signed-off-by: Dylan Guedes <djmgguedes@gmail.com>
Showing
9 changed files
with
84 additions
and
353 deletions
Show diff stats
app/controllers/my_profile/profile_editor_controller.rb
... | ... | @@ -18,6 +18,7 @@ class ProfileEditorController < MyProfileController |
18 | 18 | @profile_data = profile |
19 | 19 | @possible_domains = profile.possible_domains |
20 | 20 | if request.post? |
21 | + puts "$"*80, params[:profile_data] | |
21 | 22 | params[:profile_data][:fields_privacy] ||= {} if profile.person? && params[:profile_data].is_a?(Hash) |
22 | 23 | Profile.transaction do |
23 | 24 | Image.transaction do | ... | ... |
plugins/profile_description_block/lib/profile_description_block.rb
0 → 100644
... | ... | @@ -0,0 +1,41 @@ |
1 | +class ProfileDescriptionBlock < Block | |
2 | + settings_items :show_name, :type => :boolean, | |
3 | + :default => false | |
4 | + | |
5 | + attr_accessor :show_name | |
6 | + | |
7 | + def self.description | |
8 | + _('Profile Description') | |
9 | + end | |
10 | + | |
11 | + def help | |
12 | + _('this block displays the description field of the profile') | |
13 | + end | |
14 | + | |
15 | + def default_title | |
16 | + _('PROFILE DESCRIPTION') | |
17 | + end | |
18 | + | |
19 | + def content(args={}) | |
20 | + description = if self.owner.description.blank? | |
21 | + "Description field is empty or | |
22 | + not enabled on enviroment" | |
23 | + else | |
24 | + self.owner.description | |
25 | + end | |
26 | + block = self | |
27 | + s = show_name | |
28 | + proc do | |
29 | + render( | |
30 | + :file => 'blocks/profile_description', | |
31 | + :locals => { :block => block, :show_name => s , | |
32 | + :description => description} | |
33 | + ) | |
34 | + end | |
35 | + end | |
36 | + | |
37 | + def cacheable? | |
38 | + false | |
39 | + end | |
40 | + | |
41 | +end | ... | ... |
plugins/profile_description_block/lib/profile_description_block_plugin.rb
0 → 100644
... | ... | @@ -0,0 +1,24 @@ |
1 | +class ProfileDescriptionBlockPlugin < Noosfero::Plugin | |
2 | + | |
3 | + def self.plugin_name | |
4 | + # FIXME | |
5 | + "Profile Description Block" | |
6 | + end | |
7 | + | |
8 | + def self.extra_blocks | |
9 | + { | |
10 | + ProfileDescriptionBlock => { :type => [Community, Person] } | |
11 | + } | |
12 | + end | |
13 | + | |
14 | + | |
15 | + def self.plugin_description | |
16 | + # FIXME | |
17 | + _("A plugin that adds a block that show the profile description") | |
18 | + end | |
19 | + | |
20 | + def stylesheet? | |
21 | + true | |
22 | + end | |
23 | + | |
24 | +end | ... | ... |
plugins/profile_description_block/views/blocks/profile_description.html.erb
0 → 100644
plugins/profile_fields_block/lib/profile_fields_block.rb
... | ... | @@ -1,53 +0,0 @@ |
1 | -class ProfileFieldsBlock < Block | |
2 | - | |
3 | - settings_items :profile_description, :type => :string, :default => "" | |
4 | - settings_items :show_name, :type => :boolean, :default => false | |
5 | - attr_accessor :show_name | |
6 | - | |
7 | - | |
8 | - def self.description | |
9 | - _('Profile Fields ') | |
10 | - end | |
11 | - | |
12 | - def profile_description | |
13 | - self.settings[:profile_description] | |
14 | - end | |
15 | - | |
16 | - def help | |
17 | - _('This block display the description of the community') | |
18 | - end | |
19 | - | |
20 | - def content(args={}) | |
21 | - self.profile_description = retrive_description_profile_field | |
22 | - block_content = self.profile_description | |
23 | - block = self | |
24 | - s = show_name | |
25 | - lambda do |object| | |
26 | - render( | |
27 | - :file => 'blocks/profile_fields', | |
28 | - :locals => { :block => block, :show_name => s , | |
29 | - :description => block_content} | |
30 | - ) | |
31 | - end | |
32 | - end | |
33 | - | |
34 | - def cacheable? | |
35 | - false | |
36 | - end | |
37 | - | |
38 | - | |
39 | - private | |
40 | - | |
41 | - def retrive_description_profile_field | |
42 | - box_id = self.box_id | |
43 | - owner_id = Box.find(box_id).owner_id | |
44 | - description = Profile.find(owner_id).description | |
45 | - if description.blank? | |
46 | - "Description field are empty or | |
47 | - not enabled in enviroment" | |
48 | - else | |
49 | - description | |
50 | - end | |
51 | - end | |
52 | - | |
53 | -end |
plugins/profile_fields_block/lib/profile_fields_block_plugin.rb
... | ... | @@ -1,24 +0,0 @@ |
1 | -class ProfileFieldsBlockPlugin < Noosfero::Plugin | |
2 | - | |
3 | - def self.plugin_name | |
4 | - # FIXME | |
5 | - "ProfileFieldsBlockPlugin" | |
6 | - end | |
7 | - | |
8 | - def self.extra_blocks | |
9 | - { | |
10 | - ProfileFieldsBlock => { :type => [Community] } | |
11 | - } | |
12 | - end | |
13 | - | |
14 | - | |
15 | - def self.plugin_description | |
16 | - # FIXME | |
17 | - _("A plugin that include a generic block") | |
18 | - end | |
19 | - | |
20 | - def stylesheet? | |
21 | - true | |
22 | - end | |
23 | - | |
24 | -end |
plugins/profile_fields_block/public/style.css
... | ... | @@ -1,270 +0,0 @@ |
1 | -.mpog_hidden_field { | |
2 | - display: none; | |
3 | -} | |
4 | - | |
5 | -#signup-form small#secondary-email-balloon , | |
6 | -#signup-form small#area-interest-balloon { | |
7 | - display: none; | |
8 | - width: 142px; | |
9 | - height: 69px; | |
10 | - color: #FFFFFF; | |
11 | - font-weight: bold; | |
12 | - font-size: 11px; | |
13 | - padding: 5px 10px 45px 10px; | |
14 | - margin: 0; | |
15 | - line-height: 1.5em; | |
16 | - background: transparent url(/images/gray-balloon.png) bottom center no-repeat; | |
17 | - position: absolute; | |
18 | - z-index: 2; | |
19 | - right: -150px; | |
20 | -} | |
21 | - | |
22 | -#signup-form #signup-secondary-email, | |
23 | -#signup-form #signup-area-interest { | |
24 | - position: relative; | |
25 | -} | |
26 | - | |
27 | -#signup-form small#secondary-email-balloon, | |
28 | -#signup-form small#area-interest-balloon { | |
29 | - top: -80px; | |
30 | -} | |
31 | - | |
32 | -.dynamic-table { | |
33 | - border: solid 1px #000; | |
34 | - margin-top: 5px; | |
35 | - margin-bottom: 15px; | |
36 | -} | |
37 | -.dynamic-table td, .dynamic-table tr { | |
38 | - border: none; | |
39 | -} | |
40 | -.dynamic-table input { | |
41 | - width: 220px; | |
42 | -} | |
43 | - | |
44 | -.mpog-incomplete-percentage img { | |
45 | - margin-left: 5px; | |
46 | -} | |
47 | - | |
48 | -.mpog-incomplete-percentage img:hover { | |
49 | - cursor: pointer; | |
50 | -} | |
51 | - | |
52 | -#institution_dialog { | |
53 | - display: none; | |
54 | -} | |
55 | - | |
56 | -.errorExplanation { | |
57 | - color: red; | |
58 | - margin-left: 10px; | |
59 | -} | |
60 | - | |
61 | -.hide-field { | |
62 | - display: none !important; | |
63 | -} | |
64 | - | |
65 | -.show-field { | |
66 | - display: block !important; | |
67 | -} | |
68 | - | |
69 | -#user_filter_content { | |
70 | - display: block; | |
71 | - width: 100%; | |
72 | - height: auto; | |
73 | -} | |
74 | - | |
75 | -.mpog_search_form_fields { | |
76 | - margin-top: 10px; | |
77 | - width: 80%; | |
78 | - height: auto; | |
79 | - position: relative; | |
80 | - float: left; | |
81 | -} | |
82 | - | |
83 | -.mpog_search_form_button { | |
84 | - margin-top: 10px; | |
85 | -} | |
86 | - | |
87 | -.mpog_search_form_fields input[type='text'] { | |
88 | - width: 90%; | |
89 | - | |
90 | -} | |
91 | - | |
92 | -.mpog_search_form_table tr td:first-child { | |
93 | - width: 22%; | |
94 | -} | |
95 | - | |
96 | -.formfieldline { | |
97 | - margin-top: 10px; | |
98 | -} | |
99 | -.formfieldline input[type="text"] { | |
100 | - width: 180px; | |
101 | -} | |
102 | - | |
103 | -#complete_registration { | |
104 | - padding: 5px; | |
105 | - width: 100%; | |
106 | - background-color: #fff; | |
107 | -} | |
108 | - | |
109 | -#complete_registration a { | |
110 | - text-decoration: none; | |
111 | -} | |
112 | - | |
113 | -#complete_registration a:hover { | |
114 | - font-weight: bold; | |
115 | -} | |
116 | - | |
117 | -#complete_registration_percentage { | |
118 | - width: 100%; | |
119 | - height: 20px; | |
120 | - background: #fff; | |
121 | - border: solid 1px #000; | |
122 | -} | |
123 | - | |
124 | -#profile-data .invalid { | |
125 | - border-color: rgb(127, 0, 0); | |
126 | - box-shadow: 0px 0px 7px red; | |
127 | -} | |
128 | - | |
129 | -#profile-data .validated { | |
130 | - box-shadow: 0px 0px 7px green; | |
131 | - border-color: rgb(0, 80, 0) | |
132 | -} | |
133 | - | |
134 | -#software-name-field | |
135 | -{ | |
136 | - padding-bottom: 10px; | |
137 | -} | |
138 | - | |
139 | -#software-hostname | |
140 | -{ | |
141 | - float: left; | |
142 | - display: inline-block; | |
143 | - vertical-align: middle; | |
144 | - | |
145 | - background: #EEE; | |
146 | - border: 1px solid #CFCFCF; | |
147 | - | |
148 | - line-height: 22px; | |
149 | - padding: 0px 7px; | |
150 | - color: #4A4A4A; | |
151 | - font-size: 20px; | |
152 | - text-transform: lowercase; | |
153 | - min-width: 190px; | |
154 | - border-spacing: 20px; | |
155 | -} | |
156 | - | |
157 | -.mandatory::after | |
158 | -{ | |
159 | - color: red; | |
160 | - content: ' (*)' | |
161 | -} | |
162 | - | |
163 | -.autocomplete_validation_message { | |
164 | - color: red; | |
165 | -} | |
166 | - | |
167 | - | |
168 | -#content .institutions-block ul, | |
169 | -#content .softwares-block ul { | |
170 | - min-width: 196px; | |
171 | - width: 192px; | |
172 | - margin: 0px 0px 0px -3px; | |
173 | - padding: 0px; | |
174 | -} | |
175 | - | |
176 | -#content .box-1 .institutions-block ul, | |
177 | -#content .box-1 .softwares-block ul { | |
178 | - width: auto; | |
179 | - display: block; | |
180 | -} | |
181 | - | |
182 | -#content .institutions-block .block-footer-content a, | |
183 | -#content .softwares-block .block-footer-content a { | |
184 | - position: absolute; | |
185 | - top: 2px; | |
186 | - right: 0px; | |
187 | - font-size: 11px; | |
188 | - color: #000; | |
189 | - text-decoration: none; | |
190 | - padding-right: 15px; | |
191 | -} | |
192 | - | |
193 | -#content .institutions-block .block-footer-content a, | |
194 | -#content .lock-footer-content a { | |
195 | - background: url(../../../designs/themes/base/imgs/arrow-right-p.png) 100% 50% no-repeat; | |
196 | -} | |
197 | - | |
198 | -.improve_input_size { | |
199 | - width: 315px !important; | |
200 | -} | |
201 | - | |
202 | -.search-community-content-block span { | |
203 | - width: auto; | |
204 | -} | |
205 | - | |
206 | -#catalog-list ul li { | |
207 | - display: inline; | |
208 | - margin-right: 5px; | |
209 | - font-size: 14px; | |
210 | - padding: 5px; | |
211 | - } | |
212 | - | |
213 | -#catalog-list ul li span { | |
214 | - cursor: pointer; | |
215 | - margin-left: 5px; | |
216 | -} | |
217 | - | |
218 | -.catalog-remove-item { | |
219 | - padding: 3px; | |
220 | - border: solid 1px #999; | |
221 | - border-radius: 3px; | |
222 | -} | |
223 | - | |
224 | -.category_box { | |
225 | - font-size: 11px; | |
226 | - border:1px solid #e9e8ed; | |
227 | - border-radius:8px; | |
228 | - background-color:#e9e8ed; | |
229 | - padding:3px 6px; | |
230 | - margin: 10px 3px; | |
231 | - color: blue; | |
232 | -} | |
233 | - | |
234 | -.search-results-type-software_info li { | |
235 | - width: 100% !important; | |
236 | - display: block !important; | |
237 | -} | |
238 | - | |
239 | -/* Start software block main area definitions */ | |
240 | -.software-block { | |
241 | - position: relative; | |
242 | - float: left; | |
243 | - margin: 0px 10px 10px 0px; | |
244 | - width: 30%; | |
245 | - height: 200px; | |
246 | - word-wrap: break-word; | |
247 | - overflow: hidden; | |
248 | -} | |
249 | - | |
250 | -.software-block-logo { | |
251 | - width: 150px; | |
252 | - height: 150px; | |
253 | - margin: 0px auto; | |
254 | -} | |
255 | - | |
256 | -.software-block-content, .software-block-finality { | |
257 | - width: 100%; | |
258 | - height: 100%; | |
259 | - position: absolute; | |
260 | - top: 0px; | |
261 | - left: 0px; | |
262 | -} | |
263 | - | |
264 | -.software-block-finality { | |
265 | - background-color: #fff; | |
266 | - top: 100%; | |
267 | - display: block; | |
268 | - background-color:rgba(255, 255, 255, 0.9); | |
269 | -} | |
270 | -/* End software block main area definitions */ |