noosfero
TRANSCRIPT
-
8/17/2019 Noosfero
1/15
NoosferoNoosfero é uma plataforma web voltado para a criação de redes sociais . Pode serutilizado na criação de blogs, áreas de discussão, portfólios online, agendas de eventos,etc 1 . O oosfero foi usado inicialmente pelo !irandas.net, em "#1" foi adotado
oficialmente pela $%P"
e posteriormente pelo %&'P'O(
. ) plataforma integra ferramentascomo perfil de pessoas, comunidades e empreendimentos, blogs, portfólios online, !*%para sites, '%%, fóruns, c+ats, eventos e compartil+amento de ideias em um mesmosistema, além de funcionalidades providas por plugins.
ançado em "##-, o Noosfero é também um pro eto de software livre , desenvolvidopela !olivre unto com a contribuição de uma comunidade de desenvolvedores/asespal+ados/as pelo mundo, 0ue garante o lançamento de novas vers es fre0uentemente.
O Noosfero é a plataforma 0ue dá vida 2 rede %oftware ivre.org , a plataforma da&conomia %olidária !irandas.net , a 'ede Olá , além de pro etos em pa3sescomo )leman+a , %u3ça e 4apão .
Menu• MVC
• Como criar um Article?
• Como criar um Block?
• Como criar uma Task?
• Visão Geral do Banco de Dados
MVCA sigla MVC vem de Modelo, Visão e Controle. Esta arquitetura sugere umase ara!ão do c"digo em tr#s camadas distintas, com a $is %em de&inidos.
A Visão $ a camada que interage diretamente com o usu'rio, rece%endo edis oni%ili(ando os dados da a lica!ão. A camada de Visão tem o o%)etivode a resentar o resultado do rocessamento da camada de Controle,&ormatada ara ser us'vel elo usu'rio, consituindo a arte vis*vel dosistema.
A camada de Controle $ a res ons'vel or rocessar todas as requisi!+es&eitas elo usu'rio atrav$s da inter&ace Visão-. Esta camada inter reta asa!+es do usu'rio e gerencia a e ecu!ão das regras de neg"cios elo Modelo.
/ modelo re&ere0se ao gerenciamento da in&orma!ão e ao com ortamentoda a lica!ão. Em uma visão sim li&icada, a camada de modelo &unciona
https://pt.wikipedia.org/wiki/Aplica%C3%A7%C3%A3o_webhttps://pt.wikipedia.org/wiki/Redes_sociaishttps://pt.wikipedia.org/wiki/Noosfero#cite_note-1https://pt.wikipedia.org/wiki/Noosfero#cite_note-1https://pt.wikipedia.org/wiki/USPhttps://pt.wikipedia.org/wiki/Noosfero#cite_note-2https://pt.wikipedia.org/wiki/SERPROhttps://pt.wikipedia.org/wiki/Noosfero#cite_note-3https://pt.wikipedia.org/wiki/Software_livrehttps://pt.wikipedia.org/wiki/Software_livrehttps://pt.wikipedia.org/wiki/Software_livrehttps://pt.wikipedia.org/wiki/Colivrehttp://softwarelivre.org/http://softwarelivre.org/http://cirandas.net/http://cirandas.net/http://ola.coop.br/https://pt.wikipedia.org/wiki/Alemanhahttps://pt.wikipedia.org/wiki/Su%C3%AD%C3%A7ahttps://pt.wikipedia.org/wiki/Jap%C3%A3ohttp://rdoc.noosfero.org/app/classes/Article.htmlhttp://rdoc.noosfero.org/app/classes/Block.htmlhttp://rdoc.noosfero.org/app/classes/Task.htmlhttps://pt.wikipedia.org/wiki/Redes_sociaishttps://pt.wikipedia.org/wiki/Noosfero#cite_note-1https://pt.wikipedia.org/wiki/USPhttps://pt.wikipedia.org/wiki/Noosfero#cite_note-2https://pt.wikipedia.org/wiki/SERPROhttps://pt.wikipedia.org/wiki/Noosfero#cite_note-3https://pt.wikipedia.org/wiki/Software_livrehttps://pt.wikipedia.org/wiki/Colivrehttp://softwarelivre.org/http://cirandas.net/http://ola.coop.br/https://pt.wikipedia.org/wiki/Alemanhahttps://pt.wikipedia.org/wiki/Su%C3%AD%C3%A7ahttps://pt.wikipedia.org/wiki/Jap%C3%A3ohttp://rdoc.noosfero.org/app/classes/Article.htmlhttp://rdoc.noosfero.org/app/classes/Block.htmlhttp://rdoc.noosfero.org/app/classes/Task.htmlhttps://pt.wikipedia.org/wiki/Aplica%C3%A7%C3%A3o_web
-
8/17/2019 Noosfero
2/15
como uma re resenta!ão das entidades de dom*nio e suas regras deneg"cio. 1ossui a &un!ão de validar os dados vindos da inter&ace do usu'riocom os dados da a lica!ão.
Como criar um Article?2m artigo $ um ti o de conte3do que um usu'rio ode criar e gerenciaratrav$s do %otão 4gerenciar conte3do4 no seu ainel de controle. Eletam%$m $ listado no %loco 4conte3do recente4 e em alguns outros lugarescomo no resultado das %uscas or e em lo. /s artigos odem ser de v'riosti os, artigos que usam marca!ão de te to te tile $ um ti o de artigo,artigos com edi!ão visual 567856G $ um outro ti o, artigos tam%$m
odem ser arquivos enviados elo usu'rio ou um sim lesmente um &eed977.
Cada um desses ti os de artigo são su%classes de Article que im lementamm$todos ara edit'0lo e e i%i0lo. /s m$todos que tem que ser so%rescritossão: to;
-
8/17/2019 Noosfero
3/15
Caso se)a necess'rio arma(enar alguma in&orma!ão al$m destas ode0seadicionar cam os ersonali(ados com o m$todo setting;items.
1ara criar or e em lo um artigo que mostre um te to com uma lista dere&er#cias em se arado ode0se adicionar um cam o de te to usandosettings;items ara arma(enar as re&er#ncias.
a >model>te to;com;re&erencia.r%
class Te toCom9e&erencia Article
def description _('Este é uma artigo com refer!ncias em separado"') end def short_description _('Artigo com refer!cias')
end settings_items referencias$ t%pe & 'te t' def to_html od% * +,div #-referencias.,/div + endend
Então o vie=s>cms>;te to;com;re&erencia.rem reendimento.E istem %locks ara v'rias &uncionalidades distintas como listar links&avoritos, listar amigos, mostrar in&orma!+es do usu'rio entre outros.
2m novo %lock $ um model que
-
8/17/2019 Noosfero
4/15
• s
-
8/17/2019 Noosfero
5/15
2ma Task $ um elemento do @oos&ero utili(ado ara gerenciar tare&asendentes. Essas tare&as são mostradas no ainel de controle do
usu'rio>comunidade>em reendimento que deve resolv#0la. Cada tare&aode estar em H estados di&erentes: endente, resolvida ou cancelada.
A classe Task rov# a in&ra0estrutura %'sica ara todas as tasks do sistema,o @oos&ero
-
8/17/2019 Noosfero
6/15
• AddIriend.create : erson F )oao, :&riend F )ose-
os$ rece%er' uma requisi!ão ara ser amigo de )oão, se ele aceitar arequisi!ão o m$todo er&orm ser' e ecutado e o relacionamento de ami(adeentre eles ser' criado.
Vamos e em li&icar como criar uma nova Task que sim lesmente envia umarequisi!ão ara algu$m e ao ser &inali(ada cria um artigo ara quem aceitoua requisi!ão.
Vamos cmodels>send;article.r% com o seguinte conteudo:
class 7endArticle Task
validates_presence_of re1uestor_id$ target_id acts_as_having_settings name$ od%$ field & data def perform target"articles ,, :e tileArticle"ne4( name & name$ od% &
od%) end def description _('
-
8/17/2019 Noosfero
7/15
end
Cria uma vie= com o &orm ara que o usuario ossa reencvie=s>send;article.r
-
8/17/2019 Noosfero
8/15
5 images 5 5 product_categori ations 5 5 products 5 5 profiles 5 5 region_validators 5 5 role_assignments 5
5 roles 5 5 schema_info 5 5 taggings 5 5 tags 5 5 tas;s 5 5 thum nails 5 5 users 5 5 validation_infos 5 *88888888888888888888888888888888* GH ro4s in set (I"II sec)A seguir, &aremos um relato so%re o a el de cada ta%ela no &uncionamentodo sistema:
article_versions/s artigos osssuem controle de versão e cada versão $ guardada nessata%ela.
articlesArtigos são todo ti o de conte3do que ode ser criado elo usu'rio. Comote tos, imagens e at$ mesmo astas.
articles_categories/s artigos são classi&icados or categorias. Esta ta%ela guarda asassocia!+es entre artigos e categorias.
blocksGuarda as in&orma!+es relativas aos %locos, que são a resentados em%o es na 'gina do usu'rio.
boxes9e resenta as 'reas onde os usu'rios odem ane ar seus %locos.
categories7ão categorias do sistema, que incluem categorias de roduto e regi+es.
categories_profilesEsta ta%ela guarda a associa!ão entre categories e ro&iles.
commentsEsta ta%ela guarda os coment'rios &eitos nos artigos.
consumptions9e resenta os ti os de rodutos que o usu'rio consome.
-
8/17/2019 Noosfero
9/15
domainsCada am%iente ode ter um ou mais dom*nios, nesta ta%ela est'arma(enado o dom*nio do am%iente.
environments9e resenta cada uma das redes sociais ou am%iente- geridaselo @oos&ero.
favorite_enteprises_people9e resenta os em reendimentos &avoritos de um usu'rio.
friendshipsEsta ta%ela a resenta todos as rela!+es de ami(ade.
imagesGuarda as in&orma!+es so%re todas as imagens arma(endas no sistema.
product_categorizations9e resenta a associa!ão entre rodutos e categorias.
productsEsta ta%ela guarda todos os rodutos dos em reendimentos do sistema.
profilesU a entidade mais im ortante do sistema. 9e resenta tanto essoas, quantocomunidades, em reeendimentos e organi(a!+es.
region_validators9elaciona as organi(a!+es validadoras com a região em que ela o era.
role_assignmentsAssocia um a el a um usu'rio, dando a ele ermiss+es so%re umdeterminado recurso do sistema.
rolesA resenta todos os a $is que odem ser atri%u*das aos usu'rios e agregaquais ermiss+es um usu'rio com esse a el ter'.
schema_infoGuarda o n3mero da migration no 9ails.
taggings
Associa uma tag a um artigo.
http://rdoc.noosfero.org/app/classes/Noosfero.htmlhttp://rdoc.noosfero.org/app/classes/Noosfero.html
-
8/17/2019 Noosfero
10/15
tagsEsta ta%ela arma(ena uma tag que ode ser associada a artigos.
tasks
9e resenta uma tare&a que ode ser atri%u*da a um usu'rio, comunidade ouem reendimento.
thumbnailsGuarda in&orma!+es so%re miniaturas de imagens.
usersEsta ta%ela guarda in&orma!+es de login de todos os usu'rios do sistema.
validation_infosGuarda a metodologia de valida!ão de uma entidade validadora.
-
8/17/2019 Noosfero
11/15
Abaixo segue modelagem do Noosfero
http://rdoc.noosfero.org/app/classes/Noosfero.htmlhttp://rdoc.noosfero.org/app/classes/Noosfero.html
-
8/17/2019 Noosfero
12/15
-
8/17/2019 Noosfero
13/15
-
8/17/2019 Noosfero
14/15
-
8/17/2019 Noosfero
15/15
KValidateL
http://validator.w3.org/check/refererhttp://validator.w3.org/check/referer