Commit 7c861d610928df43244e205a129ecbaed8df723b

Authored by David Silva
1 parent eeb785d2

Creates block's plugin structure

Signed-off-by: David Carlos <ddavidcarlos1392@gmail.com>
Signed-off-by: Dylan Guedes <djmgguedes@gmail.com>
plugins/profile_fields_block/lib/profile_fields_block.rb 0 → 100644
... ... @@ -0,0 +1,53 @@
  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 0 → 100644
... ... @@ -0,0 +1,24 @@
  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 0 → 100644
... ... @@ -0,0 +1,270 @@
  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 */
... ...
plugins/profile_fields_block/views/blocks/profile_fields.html.erb 0 → 100644
... ... @@ -0,0 +1,6 @@
  1 +<div class = "profile_description_block">
  2 +<%= block.title %>
  3 +</div>
  4 +<div class = "block-footer-content">
  5 +<h1> <%= description %> <h1>
  6 +</div>
... ...