- Um grupo que pode editar a estrutura da lista de documentos, adicionar/remover colunas etc, mas não pode ver os conteúdos (documentos e dados do SPListItem)
- Um grupo de utilizadores contribuintes que não podem modificar a estrutura das listas mas podem ver, listar, apagar, modificar.
Acções do Site > Pessoas e Grupos > Permissões do Site > Niveis de Permissão > Adicionar um nível de Permissão
O problema é que ao escolher a opção "Gerir Listas - ..." automaticamente é escolhida a opção "Ver Itens - ...", o que faz sentido porque, se é possível eliminar colunas que já contém informação, pelo menos deveria ser possível ver o que se está a apagar. Mas foi expressamente pedido para fazer dessa forma, sendo assim comecei a pensar em fazer uma aplicação que programaticamente me criasse o nível pretendido. Antes de começar a programar, reparei que o Sharepoint não estava a fazer nenhum postback quando seleccionava a checkbox "Gerir Listas". Inspeccionando com o Firebug vi que a validação das dependências era feita em Javascript. Assim sendo experimentei o seguinte:
- Removi os vistos em todas as checkbox e marquei apenas a opção "Estruturar listas..." para seleccionar as dependências usuais inerentes a esta permissão
- Usando o firebug, editei o html da checkbox com a opção "Ver Itens - ..." e removi o visto retirando o html: checked=""
- Guardei as alterações...
Para minha surpresa não existe nenhuma validação do lado do servidor do Sharepoint e realmente as alterações foram salvas, assim conseguir criar um Nível de Permissão que normalmente não conseguiria fazer OOTB (out-of-the-box).
Penso que programaticamente deveria ser possível fazer exactamente o mesmo que fiz manipulando o HTML das páginas de administração do sharepoint, realmente não faz muito sentido gerir listas sem pode ver os itens, mas como me aconteceu, o cliente pode pedir isso.


Sem comentários:
Enviar um comentário