Assistência ao utilizador para autores de conteúdo |
---|
Criar um controlo de elemento editável
O controlo de elemento editável é utilizado para tornar os elementos de itens de conteúdo e áreas do sítio editáveis quando apresentados utilizando a portlet de visualizador de conteúdo da Web quando a página se encontra no modo de edição.
Sobre esta tarefa
O formato de um controlo de elemento editável:
[EditableElement type=" " context=" " name=" " key=" " format=" " mode=" " callback=" " stateChangeCallback=" " refreshValueOnEdit=" " class=" " htmlencode=" " placeholder=" "] [/EditableElement]
Para criar um controlo de elemento editável:
Procedimento
Como proceder a seguir
Parâmetros de controlos | Detalhes |
---|---|
name=" " | Tem de especificar o nome do item a ser referenciado se context="selected". Se especificar name="./itemName", o caminho real não é processado até que o item seja apresentado. Este método demora ligeiramente mais tempo a processar do que especificar o caminho para o item. |
format=" " | Se especificar format="div",
a região editável é apresentada num controlo div. Se não for especificado qualquer formato, é
utilizado um controlo div por predefinição. Se especificar format="span", a região editável é apresentada num controlo span. |
mode=" " | Este parâmetro determina o modo de edição incluído.
Se não for especificado um modo, é utilizada a predefinição especificada na propriedade inplaceEdit.defaultModeForText ou inplaceEdit.defaultModeForRichText do serviço WCM WCMConfigService. Nota: O editor de
rich text predefinido é sempre utilizado com os modos 'inplace' ou 'embed'. Quando é
utilizado o modo 'dialog', o editor de rich text seleccionado nas definições da portlet
de autoria ou no modelo de conteúdo dos itens de conteúdo é utilizado.
|
callback=" " | Este parâmetro é utilizado para referenciar uma promessa i$. A promessa é processada se a edição incluída estiver concluída e é rejeitada se a edição incluída tiver sido cancelada. Consulte o Javadoc para obter mais informações sobre as promessas i$. Por exemplo:
|
![]() |
Este parâmetro é utilizado para referenciar chamadas de retorno de alteração de estado de JavaScript para todas as alterações de estado. Consulte o Javadoc para obter mais informações. Por exemplo, para especificar stateChangeCallback="myStateChangeCallback", poderá criar a seguinte função de chamada de retorno de alteração de estado. /** * element: id of the current editing element region * state : the new state * additionalData: some additional data like tag type, element name, messages */ function myStateChangeCallback(element, state, additionalData) State Constants: // loading value StateChangeEvent.STATE_LOADING = 0; // editing StateChangeEvent.STATE_EDITING = 1; // saving StateChangeEvent.STATE_SAVING = 2; // saved StateChangeEvent.STATE_SAVED = 3; // cancelled StateChangeEvent.STATE_CANCELLED = 4; // error StateChangeEvent.STATE_ERROR = 5; A função de JavaScript registada é executada sempre que o estado é alterado. Nota: O estado de carregamento é executado apenas na primeira vez em que um utilizador edita o elemento.
|
![]() |
Esta definição força o valor da etiqueta a ser actualizado quando o elemento é editado por um utilizador. Esta definição está activada por predefinição. Se pretender desactivar esta função, especifique a definição como false. Restrição:
|
class=" " | Este parâmetro é utilizado para especificar uma classe CSS para o
controlo div ou span especificado através da utilização do parâmetro de formato. Nota: A
classe personalizada que especificar aqui tem de incluir estilos com os nomes "saving",
"editing" e "error." Estes nomes são necessários para a apresentação do campo editável em
modo de edição, ao guardar, e para a apresentação de mensagens de erro.
A classe CSS predefinida utilizada para campos editáveis incluídos é wcm-default-inplace-editable. Esta classe pode ser substituída adicionando a seguinte definição no serviço WCM WCMConfigService utilizando a WebSphere Integrated Solutions Console: inplaceEdit.defaultClasses=class1 class2 São adicionadas todas as classes requeridas a esta definição, separadas por espaços. Baseie as classes personalizadas na folha de estilos predefinida, localizada em AppServer_root\installedApps\nodename\wcm.ear\wcm-inplaceEdit.war\css\default-style.css. Nota: Quaisquer classes especificadas no controlo EditableElement ou EditableProperty tem
precedência em relação a este valor.
Se também necessitar de utilizar a classe CSS predefinida, adicione a mesma à lista de classes. Por exemplo: inplaceEdit.defaultClasses=wcm-default-inplace-editable class1 class2 |
htmlencode=" " | Se htmlencode="true",
s caracteres HTML reservados em elementos
que apresentam texto são convertidos em entidades de caracteres. Por exemplo,
'<' é convertido em
'<'. Este método é útil se pretender
impedir que os utilizadores adicionem código malicioso ou que alterem a concepção do
respectivo texto utilizando HTML. Se não for especificado, a predefinição especificada pela propriedade cmpnt.htmlEncodeDefault no serviço WCM WCMConfigService para apresentação de texto é utilizada. A predefinição especificada pela propriedade cmpnt.htmlEncodeUrls no serviço WCM WCMConfigService é utilizada para apresentação de URLs. Por predefinição, estas propriedades estão definidas como true. |
placeholder=" " | O texto aqui introduzido é apresentado quando não existe qualquer
valor inicial para o corpo do campo de elementos editáveis. Por exemplo: placeholder="Enter title" Também pode ser utilizado em conjunto com um fornecedor de texto para apresentar texto traduzido. Por exemplo: placeholder="[Plugin:TextProvider provider="com.mycompany.mybundle" key="enter_title"]" Estes valores especiais são utilizados para apresentar texto de
origens existentes:
|
O texto adicional, HTML ou controlos têm de ser adicionados entre os controlos [EditableElement] e [/EditableElement]. O texto e os controlos adicionados aqui correspondem ao conteúdo apresentado na página. Quando a página está no modo de edição, esta região é editável. Quando adicionado pela primeira vez à concepção, um controlo de elemento correspondente é adicionado por predefinição.
[EditableElement type="content" context="current" key="body"] [Element type="content" context="current" key="body"] [/EditableElement]
A adição de
pre="true" ao controlo de elemento editável
força o elemento editável a manter a formatação de linha introduzida pelo utilizador a
reter. Por exemplo, se um utilizador introduzir quebras de linha, estas são mantidas
quando o campo é guardado. Esta função é apenas aplicável a elementos de texto e short text.
Este parâmetro também deve ser adicionado ao controlo de elemento, para que as quebras de
linha também sejam apresentadas.
[EditableElement type="content" context="current" key="body" pre="true"] [Element type="content" context="current" key="body" pre="true"] [/EditableElement]