Записать на сервер свежие версии выделений/цитат. Все переданные в запросе цитаты (идентифицируются по ID) будут замещены на сервере новой версией. Если цитаты с таким ID не было, она создаётся. Перед вызовом, во избежание коллизий, следует запросить блокировку w_set_epub_bookmark_lock.

ID функции

w_replace_my_epub_notes

Кто может вызывать

Авторизованный пользователь.
Авторизованное приложение.

Принимаемые параметры

art* – ID книги, к которой относятся цитаты;
my_notes* – массив выделений/цитат, которые следует перезаписать. По структуре соответствует возвращаемому списку my_notes из метода r_my_epub_notes;
lock_id* – ID блокировки, полученный в w_set_epub_bookmark_lockВремя блокировки – 20 минут.

Возвращаемые значения

Отсутствуют.

Возможные ошибки

error_code

error_message

Описание

101062

Invalid art ID.

Книга с таким ID книги не найдена.

101019

Invalid lock ID.

Невалидный ID блокировки (или устарел). Следует запросить новую блокировку параллельно получив с сервера свежие закладки, объединить их с локальными (кто-то их уже мог изменить на сервере).

101144

Позиция xpath некорректна.

Позиция, описанная в xpath_start и/или xpath_end (или же offset_start и offset_end) некорректна: находится за пределами книги, xpath_end раньше xpath_start, соответствующие узлы не существуют и т. п.

101166Invalid XML text.В selection_text или в note встретился невалидный фрагмент XML (битый либо не соответствует подмножеству разрешенных тегов).
101167more than one group=0 quotes.Позиция в тексте (параметр group ID=0, см. r_my_epub_notes) может быть только одна.

Пример запроса на сервер

{
 "app": "1",
 "time": "2014-11-07T16:21:02+03:00",
 "sha": "b79d8e9993d20da6abe78838d3c7fbf640a4c52956569bef3c685d3453316b5c",
 "sid": "78838d3c7fbf640a4c52956569bef3c685",
 "requests": [
         {
               "func": "w_replace_my_epub_notes",
               "id": "w_replace_my_epub_notes",
               "param": {
 	             "art": "459822",
 	             "my_notes": [
  	             	{
		        		"id": "65830123-26b8-4b07-8098-c18229e5026e",
        				"group": "0",
        				"last_update": "2014-11-07T16:21:02+03:00",
        				"part": "content2",
        				"xpath_start": "DIV[1]/P[28]/text()[1]",
        				"offset_start": "0"
      				},
      				{
        				"id": "65830123-26b8-4b07-8098-c18229e5026f",
        				"group": "1",
        				"last_update": "2014-11-07T16:21:15+03:00",
        				"part": "content2",
        				"xpath_start": "DIV[1]/P[44]/text()[1]",
        				"offset_start": "7",
        				"xpath_end": "DIV[1]/P[44]/text()[1]",
        				"offset_end": "362",
        				"title": "Вот моё выделение",
        				"note": "<p>обожал ее раньше, когда она притворялась сплошным галдящим базаром – ему казалось, что на этом базаре он сможет купить себе любое будущее. Он приезжал тогда в Москву из своей Лобни электричкой – в университет, в клубы, на концерты – и каждый раз воображал себе себя москвичом. Надо было только доучиться, найти работу в центре и снять с друзьями квартиру.</p>"
      				}
                 ]
               }
         }
 ]
}

Пример ответа сервера

{
"success": true,
  "time": "2014-11-07T16:21:02+03:00",
  "w_replace_my_epub_notes": {
  	   "success": true
 }
}