<?php
	$ENTspace = array("&nbsp;", "&nbsp"); // Замена неразрывных пробелов
	
	/* Проверка наличия блокнота */
	$notebook 	= ROOT . '/crmdata/database/notebooks/notebook-' . $LoginCheck . '.xml';

	if (file_exists($notebook)) {

		$dom = new DOMDocument;
		$dom->load($notebook);
		$xpath = new DOMXPath($dom);
		$xmlnotes 	= simplexml_load_file($notebook);
		if( isset( $_POST['search'] ) AND $_POST['query'] != '' ) {
			$query	= mb_strtolower(rawurldecode($_POST['query']), 'UTF-8');
			$notes	= $xpath->query('/notes/note[contains(translate(., "ABCDEFGHJIKLMNOPQRSTUVWXYZАБВГДЕЁЖЗИКЛМНОПРСТУФХЦЧШЩЭЮЯ", "abcdefghjiklmnopqrstuvwxyzабвгдеёжзиклмнопрстуфхцчшщэюя"),"'.$query.'")]');
			$countNotes = count($xmlnotes->xpath('/notes/note[contains(translate(., "ABCDEFGHJIKLMNOPQRSTUVWXYZАБВГДЕЁЖЗИКЛМНОПРСТУФХЦЧШЩЭЮЯ", "abcdefghjiklmnopqrstuvwxyzабвгдеёжзиклмнопрстуфхцчшщэюя"),"'.$query.'")]'));
		} else {
			$notes = $xpath->query('/notes/note');
			$countNotes	= count($xmlnotes->xpath('/notes/note'));
		}

		/* Добавление заметки */
		if( isset( $_POST['NoteAdd'] ) ) {
			$formNoteId 		= newID('notes','notes','note');
		
			$formNoteName 		= $_POST["inputName"];
			$formNoteDescr 		= html_entity_decode($_POST["inputComment"]);
			$formNoteDate 		= date("Y-m-d");

			$dom = new DOMDocument; 
			$dom->load($notebook);
			$xpath = new DOMXPath($dom);
			
			$notes=$xpath->query('/notes')->item(0);
			$note = $dom->createElement('note');
			$attribute1 = $dom->createAttribute("id");
			$attribute1->value = $formNoteId;
			$note->appendChild($attribute1);
			$note->appendChild($dom->createElement('notename', $formNoteName));
			$note->appendChild($dom->createElement('notedescr', str_replace($ENTspace, "&amp;#160;", $formNoteDescr)));
			$note->appendChild($dom->createElement('notedate', $formNoteDate));
			$notes->appendChild($note);
			$dom->save($notebook);
			
			// Добавление лога
			new_log("Добавление заметки");
			
			$notices[] = 'Заметка успешно добавлена';
		}
		
		/* Редактирование заметки */
		if( isset( $_POST['NoteEdit'] ) ) {
			$oldNoteId 			= $_POST["inputId"];
			
			$newNoteId 			= $_POST["inputId"];
			$newNoteName 		= $_POST["inputName"];
			$newNoteDescr 		= html_entity_decode( $_POST["inputComment"], ENT_QUOTES, 'utf-8' );
			$newNoteDate 		= date("Y-m-d");

			$parent = new DomDocument;
			$parent_node = $parent->createElement('note');
			$attribute1 = $parent->createAttribute("id");
			$attribute1->value = $newNoteId;
			$parent_node->appendChild($attribute1);
			$parent_node->appendChild($parent->createElement('notename', $newNoteName));
			$parent_node->appendChild($parent->createElement('notedescr', str_replace($ENTspace, "&amp;#160;", $newNoteDescr)));
			$parent_node->appendChild($parent->createElement('notedate', $newNoteDate));
			$parent->appendChild($parent_node);
			$dom = new DomDocument;
			$dom->load($notebook);
			$xpath = new DOMXpath($dom);
			$nodelist = $xpath->query('/notes/note[@id="'.$oldNoteId.'"]');
			$oldnode = $nodelist->item(0);
			$newnode = $dom->importNode($parent->documentElement, true);
			$oldnode->parentNode->replaceChild($newnode, $oldnode);
			$dom->save($notebook);
			
			// Добавление лога
			new_log("Редактирование заметки");
			
			$notices[] = 'Заметка успешно сохранена';
		}
		
		/* Редактирование заметки */
		if( isset( $_POST['SaveDescription'] ) ) {
			$dom = new DomDocument;
			$dom->load($notebook);
			$xpath = new DOMXpath($dom);
			$nodelist = $xpath->query('/notes/note[@id="'.$_GET["view"].'"]');
			$note_descr = $xpath->query('/notes/note[@id="'.$_GET["view"].'"]')->item(0)->getElementsByTagName("notedescr")->item(0)->nodeValue=$_POST["inputComment"];
			$dom->save($notebook);
			
			// Добавление лога
			new_log("Редактирование заметки");
			
			$notices[] = 'Описание успешно сохранено';
		}
		
		/* Удаление заметки */
		if( isset( $_POST['noteDelete'] ) ) {
			$dom = new DOMDocument; 
			$dom->load($notebook);
			$xpath = new DOMXPath($dom); 
			
			$id = $_POST["noteDelId"];

			$notes = $xpath->query('/notes/note[@id="'.$id.'"]');
			$el = $notes->item(0);
			$el->parentNode->removeChild($el);
			$dom->save($notebook); 
		
			// Удаление Загрузок
			$dir 	= 	ROOT . 'crmdata/upload/' . $aliases_arr[1] . '_'.$id;
			if (is_dir($dir)) {
				$files = glob($dir."/*");
				foreach ($files as $file) {      
					if (file_exists($file)) {
						unlink($file);
					}   
				}
				rmdir($dir);
			}
						
			// Добавление лога
			new_log("Удаление заметки");
			
			header('Location: /'.$folder);
			
			$notices[] = 'Заметка успешно удалена';
		}
	
	} else {
		if ($LoginCheck != '') {	
			$dom = new domDocument('1.0', 'utf-8');
			$root = $dom->createElement('notes');
			$dom->appendChild($root);
			$dom->save($notebook);
		}
		$notices[] = 'Личный блокнот создан';
	}
?>