12
12
require_once (DOKU_PLUGIN .'syntax.php ' );
13
13
14
14
class syntax_plugin_fields extends DokuWiki_Syntax_Plugin {
15
+ /**
16
+ * Constructor. Loads helper plugin.
17
+ */
18
+ public function __construct () {
19
+ $ this ->helper = $ this ->loadHelper ('fields ' );
20
+ }
15
21
16
22
/**
17
23
* What kind of syntax are we?
@@ -64,7 +70,7 @@ public function render($format, Doku_Renderer $renderer, $data) {
64
70
$ renderer ->doc .= $ renderer ->fields [$ field_name ];
65
71
return true ;
66
72
} elseif ($ format == 'odt ' ) {
67
- $ renderer ->doc .= $ this ->_fieldsODTInsertUserField ($ renderer , $ field_name );
73
+ $ renderer ->doc .= $ this ->helper -> ODTDisplayUserField ($ renderer , $ field_name );
68
74
return true ;
69
75
}
70
76
} else {
@@ -76,8 +82,8 @@ public function render($format, Doku_Renderer $renderer, $data) {
76
82
$ renderer ->fields [$ field_name ] = htmlentities ($ field_value );
77
83
return true ;
78
84
} elseif ($ format == 'odt ' ) {
79
- $ this ->_fieldsODTAddUserField ($ renderer , $ field_name ,
80
- $ renderer ->_xmlEntities ($ field_value ));
85
+ $ this ->helper -> ODTSetUserField ($ renderer , $ field_name ,
86
+ $ renderer ->_xmlEntities ($ field_value ));
81
87
return true ;
82
88
}
83
89
}
@@ -88,28 +94,6 @@ function _fieldsODTFilterUserFieldName($name) {
88
94
// keep only allowed chars in the name
89
95
return preg_replace ('/[^a-zA-Z0-9_.]/ ' , '' , $ name );
90
96
}
91
-
92
- function _fieldsODTAddUserField (&$ renderer , $ name , $ value ) {
93
- if (!method_exists ($ renderer , 'addUserField ' )) {
94
- $ name = $ this ->_fieldsODTFilterUserFieldName ($ name );
95
- $ renderer ->fields [$ name ] = $ value ;
96
- } else {
97
- $ renderer ->addUserField ($ name , $ value );
98
- }
99
- }
100
-
101
- function _fieldsODTInsertUserField (&$ renderer , $ name ) {
102
- if (!method_exists ($ renderer , 'insertUserField ' )) {
103
- $ name = $ this ->_fieldsODTFilterUserFieldName ($ name );
104
- if (array_key_exists ($ name , $ renderer ->fields )) {
105
- return '<text:user-field-get text:name=" ' .$ name .'"> ' .$ renderer ->fields [$ name ].'</text:user-field-get> ' ;
106
- }
107
- } else {
108
- $ renderer ->insertUserField ($ name );
109
- }
110
- return '' ;
111
- }
112
-
113
97
}
114
98
115
99
//Setup VIM: ex: et ts=4 fileencoding=utf-8 :
0 commit comments