root / branches / 2.1.x / actions / SaveBookmark.php @ 1111
View | Annotate | Download (2.3 KB)
| 1 | <?php
|
|---|---|
| 2 | |
| 3 | /*
|
| 4 | * @copyright Copyright (C) 2005-2010 Keyboard Monkeys Ltd. http://www.kb-m.com |
| 5 | * @license http://creativecommons.org/licenses/BSD/ BSD License |
| 6 | * @author Keyboard Monkeys Ltd. |
| 7 | * @since Sciret 1.2 |
| 8 | * @package Sciret |
| 9 | * @packager Keyboard Monkeys |
| 10 | */ |
| 11 | |
| 12 | require 'actions/Action.php'; |
| 13 | |
| 14 | class SaveBookmark extends Action { |
| 15 | |
| 16 | function dispatch() {
|
| 17 | $bookmarkId = isset($_POST['bookmarkId'])? (int)$_POST['bookmarkId'] : 0; |
| 18 | |
| 19 | $art = new Kb_Model_Article($bookmarkId);
|
| 20 | $art->setIsBookmark(true);
|
| 21 | $art->setCategoryId($_POST['cat_id']);
|
| 22 | $art->setTitle($_POST['name']);
|
| 23 | $art->setURL($_POST['url']);
|
| 24 | $art->setContent($_POST['description']);
|
| 25 | |
| 26 | if ($_POST['expDate'] == '') { |
| 27 | $art->setExpDate('0000-00-00');
|
| 28 | } else {
|
| 29 | $art->setExpDate($_POST['expDate']);
|
| 30 | } |
| 31 | |
| 32 | if ($bookmarkId > 0) { |
| 33 | $art->setModificationDate(date('Y-m-d H:i:s'));
|
| 34 | $art->setModifiedByUserId($this->user->id);
|
| 35 | $historyMessage = 'Bookmark modified';
|
| 36 | translate('Bookmark modified');
|
| 37 | } else {
|
| 38 | $art->setPublished($this->configuration->getConfigValue('publishBookmarksAuto') == '1'? true : false); |
| 39 | $art->setDraft($_POST['draft']);
|
| 40 | $art->setUserId($this->user->id);
|
| 41 | $historyMessage = 'Bookmark created';
|
| 42 | translate('Bookmark created');
|
| 43 | } |
| 44 | $art->setTags(trim($_POST['tags']) == '' ? array() : explode(' ', $_POST['tags'])); |
| 45 | $art->save(); |
| 46 | $this->addHistoryEntry($art->getId(), $historyMessage);
|
| 47 | |
| 48 | // create TODO for drafts
|
| 49 | if ($_POST['draft'] == 1) { |
| 50 | require_once 'models/Todo.php'; |
| 51 | |
| 52 | $todo = new Kb_Model_Todo();
|
| 53 | $todo->setUserId($this->user->id);
|
| 54 | $todo->setTitle($_POST['name']);
|
| 55 | $todo->setStatus(TODO_STATUS_PENDING); |
| 56 | $todo->setPrivate(true);
|
| 57 | $todo->setCreationDate(date('Y-m-d'));
|
| 58 | $todo->setDueDate('0000-00-00');
|
| 59 | $todo->save(); |
| 60 | |
| 61 | $todo->addRelatedArticles(array($art->getId()));
|
| 62 | } |
| 63 | |
| 64 | $_SESSION['message'] = $this->translate('Bookmark saved successfully.'); |
| 65 | Library::redirect(Library::getLink(array('view' => 'ViewBookmark', 'id' => $art->getId()))); |
| 66 | } |
| 67 | } |
| 68 | |
| 69 | ?> |
| 70 |