diff --git a/htdocs/core/modules/project/pdf/doc_generic_project_odt.modules.php b/htdocs/core/modules/project/pdf/doc_generic_project_odt.modules.php
index 218ae0620dde5020d8659d4052893c1369012ec5..4a230e8ca756f9ff057055ce9f2defe111cf3f30 100644
--- a/htdocs/core/modules/project/pdf/doc_generic_project_odt.modules.php
+++ b/htdocs/core/modules/project/pdf/doc_generic_project_odt.modules.php
@@ -511,6 +511,7 @@ class doc_generic_project_odt extends ModelePDFProjects
 						else	// Text
 						{
 							$odfHandler->setVars($key, $value, true, 'UTF-8');
+							$odfHandler->setVarsHeadFooter($key, $value, true, 'UTF-8');
 						}
 					}
 					catch(OdfException $e)
diff --git a/htdocs/includes/odtphp/odf.php b/htdocs/includes/odtphp/odf.php
index 4f737d15b71cb812e87aac1d1e51e9c622304722..7e72eb6f7e24e6107a0ef285e874f38bcb58b7b7 100644
--- a/htdocs/includes/odtphp/odf.php
+++ b/htdocs/includes/odtphp/odf.php
@@ -127,6 +127,33 @@ class Odf
 			$this->vars[$tag] = str_replace("\n", "<text:line-break/>", $value);
 			return $this;
 		}
+		
+		/**
+		 * Assing a template variable
+		 *
+		 * @param string $key name of the variable within the template
+		 * @param string $value replacement value
+		 * @param bool $encode if true, special XML characters are encoded
+		 * @throws OdfException
+		 * @return odf
+		 */
+		public function setVarsHeadFooter($key, $value, $encode = true, $charset = 'ISO-8859')
+		{
+			$tag = $this->config['DELIMITER_LEFT'] . $key . $this->config['DELIMITER_RIGHT'];
+			// TODO Warning string may be:
+			// <text:span text:style-name="T13">{</text:span><text:span text:style-name="T12">aaa</text:span><text:span text:style-name="T13">}</text:span>
+			// instead of {aaa} so we should enhance this function.
+			//print $key.'-'.$value.'-'.strpos($this->contentXml, $this->config['DELIMITER_LEFT'] . $key . $this->config['DELIMITER_RIGHT']).'<br>';
+			if (strpos($this->stylesXml, $tag) === false && strpos($this->stylesXml , $tag) === false) {
+			//if (strpos($this->contentXml, '">'. $key . '</text;span>') === false) {
+				throw new OdfException("var $key not found in the document");
+				//}
+			}
+			$value = $encode ? htmlspecialchars($value) : $value;
+				$value = ($charset == 'ISO-8859') ? utf8_encode($value) : $value;
+				$this->vars[$tag] = str_replace("\n", "<text:line-break/>", $value);
+				return $this;
+		}
 
 		/**
 		 * Evaluating php codes inside the ODT and output the buffer (print, echo) inplace of the code