function saveDocument($uid) { DOCMAN_token::check() or die('Invalid Token'); global $database, $_DMUSER; //fetch params $params = mosGetParam($_REQUEST, 'params', ''); if (is_array($params)) { $txt = array(); foreach ($params as $k => $v) { $txt[] = "{$k}={$v}"; } $_POST['attribs'] = implode("\n", $txt); } $doc = new mosDMDocument($database); $doc->load($uid); // Load from id $doc->bind($_POST); /* ------------------------------ * * MAMBOT - Setup All Mambots * * ------------------------------ */ $logbot = new DOCMAN_mambot('onLog'); $postbot = new DOCMAN_mambot('onAfterEditDocument'); $logbot->setParm('document', $doc); $logbot->setParm('file', $_POST['dmfilename']); $logbot->setParm('user', $_DMUSER); if (!$uid) { $logbot->copyParm('process', 'new document'); } else { $logbot->copyParm('process', 'edit document'); } $logbot->copyParm('new', !$uid); $postbot->setParmArray($logbot->getParm()); $postbot->trigger(); if ($postbot->getError()) { $logbot->copyParm('msg', $postbot->getErrorMsg()); $logbot->copyParm('status', 'LOG_ERROR'); $logbot->trigger(); _returnTo('cat_view', $postbot->getErrorMsg()); } // let's indicate last update information to store if ($doc->save()) { $logbot->copyParm('msg', 'Document saved'); $logbot->copyParm('status', 'LOG_OK'); $logbot->trigger(); // if submited for the first time lets do auto-approve/publish operations if (!$uid) { autoApprove($doc); autoPublish($doc); } /* removed $message: undefined * original code: * _returnTo('cat_view', _DML_THANKSDOCMAN . $message ? "<br />" . $message : '', $doc->catid); */ _returnTo('cat_view', _DML_THANKSDOCMAN, $doc->catid); } // doc->save failed. Log error $logbot->copyParm('msg', $doc->getError()); $logbot->copyParm('status', 'LOG_ERROR'); $logbot->trigger(); _returnTo('cat_view', _DML_PROBLEM_SAVING_DOCUMENT); }
function saveDocument() { DOCMAN_token::check() or die('Invalid Token'); global $task, $_DMUSER; $database = JFactory::getDBO(); $mainframe = JFactory::getApplication(); //fetch current id $cid = JRequest::getInt('cid', 0, 'post'); //fetch params $params = JRequest::getVar('params', array(), 'post', 'array'); if (is_array($params)) { $txt = array(); foreach ($params as $k => $v) { $txt[] = "{$k}={$v}"; } $_POST['attribs'] = implode("\n", $txt); } $doc = new mosDMDocument($database); // Create record $doc->load($cid); // Load from id $doc->bind(DOCMAN_Utils::stripslashes($_POST)); /* ------------------------------ * * MAMBOT - Setup All Mambots * * ------------------------------ */ $logbot = new DOCMAN_mambot('onLog'); $postbot = new DOCMAN_mambot('onAfterEditDocument'); $logbot->setParm('document', $doc); $logbot->setParm('file', DOCMAN_Utils::stripslashes($_POST['dmfilename'])); $logbot->setParm('user', $_DMUSER); if (!$cid) { $logbot->copyParm('process', 'new document'); } else { $logbot->copyParm('process', 'edit document'); } $logbot->copyParm('new', !$cid); $postbot->setParmArray($logbot->getParm()); $postbot->trigger(); if ($postbot->getError()) { $logbot->copyParm('msg', $postbot->getErrorMsg()); $logbot->copyParm('status', 'LOG_ERROR'); $logbot->trigger(); $mainframe->redirect("index.php?option=com_docman§ion=documents", $postbot->getErrorMsg()); } if ($doc->save()) { // Update from browser $logbot->copyParm('msg', 'Document saved'); $logbot->copyParm('status', 'LOG_OK'); $logbot->trigger(); if ($task == 'save') { $url = 'index.php?option=com_docman§ion=documents'; } else { // $task = 'apply' $url = 'index.php?option=com_docman§ion=documents&task=edit&cid[0]=' . $doc->id; } $mainframe->redirect($url, _DML_SAVED_CHANGES); } $logbot->copyParm('msg', $doc->getError()); $logbot->copyParm('status', 'LOG_ERROR'); $logbot->trigger(); $mainframe->redirect('index.php?option=com_docman§ion=documents', $doc->getError()); }
function saveDocument($uid) { DOCMAN_token::check() or die('Invalid Token'); global $_DOCMAN, $_DMUSER; jimport('joomla.filesystem.file'); $database = JFactory::getDBO(); //fetch params $params = JRequest::getVar('params', array(), 'request', 'array'); if (is_array($params)) { $txt = array(); foreach ($params as $k => $v) { $txt[] = "{$k}={$v}"; } $_POST['attribs'] = implode("\n", $txt); } $doc = new mosDMDocument($database); $doc->load(JRequest::getInt('id')); // get the uploaded filename from the session $session = JFactory::getSession(); if ($session->get('docman.dmfilename')) { $_POST['dmfilename'] = $session->get('docman.dmfilename'); $_POST['document_url'] = $session->get('docman.document_url'); } else { $_POST['dmfilename'] = $doc->dmfilename; unset($_POST['document_url']); } $doc->bind(DOCMAN_Utils::stripslashes($_POST)); // plugins $logbot = new DOCMAN_mambot('onLog'); $postbot = new DOCMAN_mambot('onAfterEditDocument'); $logbot->setParm('document', $doc); $logbot->setParm('file', $_POST['dmfilename']); $logbot->setParm('user', $_DMUSER); if (!$uid) { $logbot->copyParm('process', 'new document'); } else { $logbot->copyParm('process', 'edit document'); } $logbot->copyParm('new', !$uid); $postbot->setParmArray($logbot->getParm()); // let's indicate last update information to store if ($doc->save()) { $session->set('docman.dmfilename', null); $session->set('docman.document_url', null); $logbot->copyParm('msg', 'Document saved'); $logbot->copyParm('status', 'LOG_OK'); $logbot->trigger(); // if submited for the first time lets do auto-approve/publish operations if (!$uid) { autoApprove($doc); autoPublish($doc); } // If document is saved, trigger the postbot. $postbot->trigger(); if ($postbot->getError()) { $logbot->copyParm('msg', $postbot->getErrorMsg()); $logbot->copyParm('status', 'LOG_ERROR'); $logbot->trigger(); _returnTo('cat_view', $postbot->getErrorMsg()); } _returnTo('cat_view', _DML_THANKSDOCMAN, $doc->catid); } // doc->save failed. Log error $logbot->copyParm('msg', $doc->getError()); $logbot->copyParm('status', 'LOG_ERROR'); $logbot->trigger(); _returnTo('cat_view', _DML_PROBLEM_SAVING_DOCUMENT); }
function copy($cid, $catid) { global $database, $my; if (!is_array($cid) || count($cid) < 1) { echo "<script> alert('" . _DML_SELECT_ITEM_COPY . " ); window.history.go(-1);</script>\n"; return false; } foreach ($cid as $id) { $docold = new mosDMDocument($database); $docnew = new mosDMDocument($database); $docold->load($id); $docnew->bind((array) $docold); $docnew->id = 0; $docnew->catid = $catid; if ($docold->catid == $docnew->catid) { $docnew->dmname = _DML_COPY_OF . ' ' . $docnew->dmname; } $docnew->store(); } return true; }