Wednesday, May 6, 2009

Sharepoint | Buy Time Developing Themes

O Sharepoint e os seus "gadgets" como o "versioning" e o "deployment" pode trazer alguns benefícios, mas também levanta alguns problemas.

Senão vejamos:
- Cada vez que se altera a css de um tema, é necessário fazer o deployment
- Poderá ser necessário reaplicar o tema manualmente para que os ficheiros sejam actualizados

Isto cria imensas dores de cabeça a quem está a desenvolver.

Para isso há actualmente algumas sugestões:

a) utilizar o SharePoint Designer (para utilizações teste/erro)

Com esta ferramente, é possível abrir o site, p.ex. http://localhost, e na pasta "_themes" procurar o ficheiro (não o theme.css, mas o outro, themexxx.css) com os estilos, e editá-lo, vendo imediatamente os efeitos no browser, e no final, guardar o css para junto da solução no visual studio


b) colocar no theme.css apenas uma linha de código que importa um css externo.
desta forma, alterando o css externo, as alterações são instantâneas, mas com a desvantagem de que o ficheiro externo não fica incluído na package (ou talvez sim :p)

@import "/_layouts/1033/styles/YOURCUSTOMFOLDERHERE/theme.css";

mais info: heather solomon's blog on css importing


c) linha de comandos do sharepoint team services administration para reaplicar o tema

criando um batchfile que automaticamente desactive e active o tema, garante que a versão nova do tema ficará visível (e sem ter que fazer este moroso processo manualmente!)

há que saber onde ele anda --> stsadm.exe
(c:\programfiles\commomfiles\microsoftshared\webextentions\12\bin)

1) instalar a wsp do Gary Lapointe
disponível aqui
stsadm -o addsolution -filename Lapointe.SharePoint.STSADM.Commands.wsp
stsadm -o deploysolution -name Lapointe.SharePoint.STSADM.Commands.wsp -immediate -allowgacdeployment
stsadm -o execadmsvcjobs

2) batchfile theme out + theme in
stsadm -o gl-applytheme -url "http://intranet" -theme none -recurse
stsadm -o gl-applytheme -url "http://intranet" -theme [MYTHEME] -recurse

Gary Lapointe's blog on stsadm

No comments:

Post a Comment