diff --git a/php/classes/AmdaStats.php b/php/classes/AmdaStats.php
index 97d5676..adb5e17 100644
--- a/php/classes/AmdaStats.php
+++ b/php/classes/AmdaStats.php
@@ -7,12 +7,13 @@
 class AmdaStats {
 
 	public $statXml;
-	public $tasks = array('mining', 'print', 'plot');
+	public $tasks = array('plot', 'mining', 'print', 'statistics');
 	public $tasksAdd = array('ttoper', 'samp', 'upload', 'create', 'images');
-	public $usersToExclude = array( 'bouchemit', 'impex');
+	public $usersToExclude = array('bouchemit', 'impex');
 	public $success = true;
 	private $user = null;
-
+	private $task = array('request'=>'plot','mining'=>'condition', 'print'=>'download','statistics'=>'statistics');
+	
 	public function __construct($user) {
 		
 		$this->statXml = new DomDocument('1.0','UTF-8');
@@ -113,32 +114,44 @@ class AmdaStats {
 		return $this->statXml->save(StatsXml);
 	}
  
-	public function addTaskWithParams($user, $task, $vars) {
+	public function addTask($user, $task, $vars) {
 	
 // 		if (!$this->user) {
 // 			error_log('User is null', 1, email);
 // 			return;
 // 		}
+		if ($task == 'killplot')
+			return;
+			
+		if ($vars)
+			$realTask = $this->task[$task];
+		else
+			$realTask = $task;
 		
 		if (!in_array($user, $this->usersToExclude)) {
-			$taskElement = $this->statXml->getElementsByTagName("$task")->item(0);
+			$taskElementNode = $this->statXml->getElementsByTagName("$realTask");
+			if ($taskElementNode->length == 0) {
+				$taskElementNode = $this->statXml->createElement("$realTask");        
+				$this->statXml->documentElement->appendChild($taskElementNode);   
+			}
+			$taskElement = $taskElementNode->item(0);
 			if (is_object($taskElement)) {
 				$newTask = $this->statXml->createElement('item');
 				$newTask->setAttribute('date', date('Y-m-d'));
 				$newTask->setAttribute('user', $user);
-            			
+           
 				if ($vars) { 
-						$ID = array();
-
-						foreach ($vars as $var) {
-							if ((substr($var, 0, 7) == 'impex__') || (substr($var, 0, 13) == 'spase___IMPEX')){
-								$ID[] = 'impex';
-							}
-							elseif (substr($var, 0, 4) == 'wsd_') {
-								$ID[] = 'uploadedData';
-							}
-							else 
-								$ID[] = $var;
+					$ID = array();
+
+					foreach ($vars as $var) {
+						if (substr($var, 0, 13) == 'spase___IMPEX') {
+							$ID[] = 'impex';
+						}
+						elseif (substr($var, 0, 4) == 'wsd_') {
+							$ID[] = 'uploadedData';
+						}
+						else 
+							$ID[] = $var;
 					}
 						
 					$ID = array_unique($ID);
@@ -148,34 +161,13 @@ class AmdaStats {
 						$newTask->appendChild($datasetElement);  
 					}         
 				}
-		}
+				
 				$taskElement->appendChild($newTask);
 				$this->statXml->save(StatsXml);  
 			}
 			else 
 				error_log('Check Stats.xml - no task element '.$task, 1, email);
-		}    
-
-	public function addTask($task){
-	
-		if (!$this->user) {
-			error_log('User is null', 1, email);
-			return;
 		}
-		
-		if (!in_array($this->user, $this->usersToExclude)) {
-			$taskElement = $this->statXml->getElementsByTagName("$task")->item(0);
-			if (is_object($taskElement)) {
-				$newTask = $this->statXml->createElement('item');
-				$newTask->setAttribute('date', date('Y-m-d'));
-				$newTask->setAttribute('user', $this->user);
-            
-				$taskElement->appendChild($newTask);
-				$this->statXml->save(StatsXml);  
-			}
-			else 
-				error_log('Check Stats.xml - no task element '.$task, 1, email);
-		}     
 	}
  
 /*
@@ -211,7 +203,6 @@ class AmdaStats {
 */
 	public function getDataStat($index, $start, $stop, $update){
 
-
 		if (!$update && file_exists(DATAPATH.'Statistics/data.json')) {
 			$GENERALarray = json_decode(file_get_contents(DATAPATH.'Statistics/data.json'));
 		}
--
libgit2 0.21.2