13.6.3.39 Doc::viewattr()
Cette méthode permet d'ajouter les clefs correspondantes aux attributs du document pour la composition d'une vue de consultation spécifique.
13.6.3.39.1 Description
void viewattr ( string $target = "_self", bool $ulink = true, bool $abstract = false, bool $viewhidden = false)
Cette méthode ajoute pour chaque attribut pouvant contenir une valeur :
- une clef contenant la valeur affichable de l'attribut,
- une clef pour le libellé de l'attribut.
- une clef pour indiquer si la valeur de l'attribut est vide ou non.
La clef de valeur est composée du préfixe V_
suivi de l'identifiant de
l'attribut en majuscule. La valeur affichable est fournie par la méthode
DocHtmlFormat::getHtmlValue()
. Les attributs de type array
ont aussi leur
clef générée.
La clef de libellé est composée du préfixe L_
suivi de l'identifiant de
l'attribut en majuscule. Le libellé est dépendant de la locale de
l'utilisateur. La valeur du libellé est fournie par la méthode
Doc::getLabel()
.
La clef de nullité de la valeur est composée du préfixe S_
suivi du nom de
l'identifiant de l'attribut en majuscule. Cette clef vaut false
si la
valeur brute de l'attribut est vide (chaine ""
). Elle vaut true
dans le cas
contraire.
13.6.3.39.1.1 Avertissements
Les attributs de type tab
, frame
et menu
n'ont pas de clef générée.
13.6.3.39.2 Liste des paramètres
- (string)
target
- Indique la cible des hyperliens pour les
attributs qui en disposent.
Valeur spéciale :
-
ooo
: Si on utilise les clefs pour une composition de template ODT. Dans ce cas, les valeurs en XML sont retournées.
- (bool)
ulink
- Indique si les hyperliens doivent être générés. Si
target
égal àooo
, aucun lien n'est généré quelque soit la valeur deulink
.
Sitrue
, alors les hyperliens sont générés
Sifalse
, alors les hyperliens ne sont pas générés - (bool)
abstract
- Si
true
, alors seuls les attributs "résumé" sont affichés
Sifalse
, alors la caractéristique "résumé" n'est pas prise en compte. - (bool)
viewhidden
- Si
true
, les attributs en visibilitéH
sont affichés. - Si
false
, les attributs en visibilitéH
ne sont pas affichés.
Les attributs en visibilitéI
etO
ne sont pas affichés. Leur clefs sont générés vides.
13.6.3.39.3 Valeur de retour
void.
13.6.3.39.4 Erreurs / Exceptions
Aucune.
13.6.3.39.5 Historique
Aucun.
13.6.3.39.6 Exemples
Soit la famille MY_ANIMAL
qui possède les attributs suivants :
nom | type |
---|---|
AN_NOM | text |
AN_PHOTO | image |
AN_NAISSANCE | date |
Fichier de la classe associées à la famille :
namespace MyTest; class My_animal extends \Dcp\Family\Document { /** * @templateController view original photo */ public function viewPhoto($target="_self", $ulink=true, $abstract=false) { $this->viewAttr($target, $ulink, $abstract); } }
Template viewPhoto.html
:
<h1>[TEXT:My name is] : [V_AN_NOM]</h1> <p>[TEXT:My birthday date is] : <strong>[V_AN_NAISSANCE]</strong></p> [IF S_AN_PHOTO]<img class="photo" src="[V_AN_PHOTO]"/>[ENDIF S_AN_PHOTO] [IFNOT S_AN_PHOTO]<p>[TEXT:No photo]</p>[ENDIF S_AN_PHOTO]
Résultat :
<h1>My name is : Rotor</h1> <p>My birthday date is : <strong>03/08/2012</strong></p> <img class="photo" src="file/1419/41/an_photo/-1/1387_IMG_1684AFC2.jpg?cache=no&inline=no"/>
Rendu HTML :
13.6.3.39.7 Notes
Exemple de retour pour les valeurs formatées en fonction du type de l'attribut.
Type | Format | Multiple | Valeur brute | Valeur HTML |
---|---|---|---|---|
text | Un | Un | ||
text | Éléonore | Éléonore | ||
longtext | Et\nLa suite en été... | Et<br /> La suite en été<b>... |
||
money | 2.54 | 2,54 | ||
double | 3.1415926 | 3.1415926 | ||
int | 1 | 1 | ||
date | 2013-04-20 | 20/04/2013 | ||
time | 01:00:00 | 01:00 | ||
timestamp | 2013-09-30 10:00:00 | 30/09/2013 10:00 | ||
image | image/jpeg; charset=binary | 42| 1387_IMG_1684AFC2.jpg | file/1419/41/an_photo/-1/1387_IMG_1684AFC2.jpg?cache=no&inline=no | ||
file | application/vnd.oasis.opendocument.spreadsheet| 1330| fdl.ods | <a onmousedown="document.noselect=true;" title="34Ko" target="_blank" type="application/vnd.oasis.opendocument.spreadsheet" href="file/5388/1330/fi_file/-1/fdl.ods?cache=no&inline=no"><img class="mime" needresize=1 src="Images/mime-spreadsheet.png"> fdl.ods</a> | ||
docid | TST_MY_FAMILY | 5384 | <a oncontextmenu="popdoc(event,'?&app=FDL&action=OPENDOC&mode=view&id=5384&latest=Y');return false;" documentId="5384" class="relation" style="background-image:url(resizeimg.php?img=Images%2Fdoc.png&size=14)" target="_self" href="?&app=FDL&action=OPENDOC&mode=view&id=5384&latest=Y">Zéro</a> | |
account | 6394 | <a oncontextmenu="popdoc(event,'?&app=FDL&action=OPENDOC&mode=view&id=6394&latest=Y');return false;" documentId="6394" class="relation" style="background-image:url(resizeimg.php?img=Images%2iuser.png&size=14)" target="_self" href="?&app=FDL&action=OPENDOC&mode=view&id=6394&latest=Y">John Doe</a> | ||
enum | a|One,b|Two,c|Three | a | One | |
color | #f3f | <span style="background-color:#f3f">#f3f</span> | ||
enum | a|A,b|B,c|C | X | a\nb\nc | A<BR>B<BR>C |
text | X | Un\nDeux | Un<BR>Deux | |
money | X | 3 | 3,00 | |
double | X | -54 | -54 | |
date | X | 2013-04-20 | 20/04/2013 | |
time | X | 10:00 | 10:00 | |
timestamp | X | 2013-09-30 10:00 | 30/09/2013 10:00 | |
enum | a|A,b|B,c|C | X | a | A |
color | X | #ff33ff\n#45e098 | <span style="background-color:#ff33ff">#ff33ff</span><BR><span style="background-color:#45e098">#45e098</span> | |
longtext | X | Un Deux\nTrois Quatre |
Un<br /> Deux<BR>Trois<br /> Quatre |
|
int | X | 1\n2\n3 | 1<BR>2<BR>3 | |
double | X | \n\n | <BR><BR> | |
text | [%s] | Document Un | [Document Un] | |
longtext | Et\nLa suite... | Et<br /> La suite... |
||
money | %s € | 2.54 | 2,54 € | |
double | %.03f | 3.1415926 | 3.142 | |
int | %03d | 1 | 001 | |
date | %A %e %B %Y | 2013-04-20 | samedi 20 avril 2013 | |
time | %kh %Mmin %Ss | 01:00:00 | 1h 00min 00s | |
timestamp | %A %e %B %Y %Hh %Mmin %Ss | 2013-09-30 10:00:00 | lundi 30 septembre 2013 10h 00min 00s | |
text | [%s] | X | Un\nDeux | [Un]<BR>[Deux] |
money | %s $ | 3 | 3,00 $ | |
double | %.03f | -54 | -54.000 | |
date | %A %e %B %Y | 2013-04-20 | samedi 20 avril 2013 |