resplin

Elite Collaborator
Options
- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
06-05-2015
07:40 PM
The official documentation is at: http://docs.alfresco.com Note: This sample contribution requires review and testing ...
<?php require_once "Alfresco/Service/Repository.php";require_once "Alfresco/Service/Session.php";require_once "Alfresco/Service/SpacesStore.php";require_once "Alfresco/Service/Node.php";require_once "Alfresco/config.php";require_once('include/database/PearDatabase.php'); //db connectionfunction UpdateDMSContent(){ global $repositoryUrl; global $userName; global $password; global $adb; $repository = new Repository($repositoryUrl); $repository = new Repository($repositoryUrl); $ticket = null; if (isset($_SESSION["ticket"]) == false) { $ticket = $repository->authenticate($userName, $password); $_SESSION["ticket"] = $ticket; } else { $ticket = $_SESSION["ticket"]; } try{ $session = $repository->createSession($ticket); $store = new SpacesStore($session); $currentNode = $store->companyHome; $path = 'Company Home'; $listOfContents = array(); $listOfContentIds = ''; foreach ($currentNode->Children as $child){ if($child->child->type == '{http://www.alfresco.org/model/content/1.0}content'){ $listOfContents[] = array('Content Name' => $child->child->cm_name, 'Content ID' => $child->child->id, 'Content Path' => getURL($child->child) ); $listOfContentIds .= "'{$child->child->id}', "; $sql = "select count(*) from vtiger_icswidgets where sourceid = '{$child->child->id}'"; if($row = $adb->fetch_array($adb->query($sql))){ if($row[0] == 0){ $sql = "insert into vtiger_icswidgets(id, widgetname, source, sourceid, visibletoagent, deleted) values (null, '{$child->child->cm_name}', 'DMS', '{$child->child->id}', 1, 1)"; $adb->query($sql); } } } } }catch (Exception $e) { var_dump($e); echo '<div align="center"><font color="red">Alfresco DMS faced an error in synchronizing the contents. Please logout and relogin to avoid this problem</font></div>.'; echo '<div align="center">Exception: '.$e->getMessage().'</div>'; } $listOfContentIds = substr($listOfContentIds, 0, -2); $adb->query("delete from vtiger_icswidgets where sourceid not in ($listOfContentIds)"); unset($_SESSION["ticket"]); return $listOfContents;}function getURL($node){ global $path; $result = null; if ($node->type == "{http://www.alfresco.org/model/content/1.0}content") { $contentData = $node->cm_content; if ($contentData != null) { $result = $contentData->getUrl(); } } else { $result = "index.php?". "&uuid=".$node->id. "&name=".$node->cm_name. "&path=".$path; } return $result;}function pullDMSContent($uuid, $contentName, $cleanHTML = 'No'){ global $repositoryUrl; global $userName; global $password; $file = ''; global $adb; $cool = $cleanHTML; //if($row = $adb->fetch_array($adb->query("select * from vtiger_icsadminpreferences"))) $cool = $row['cleanhtml']; if (isset($_SESSION) == false) session_start(); $repository = new Repository($repositoryUrl); $ticket = null; if (isset($_SESSION["ticket"]) == false){ $ticket = $repository->authenticate($userName, $password); $_SESSION["ticket"] = $ticket; }else{ $ticket = $_SESSION["ticket"]; } $session = $repository->createSession($ticket); $store = new SpacesStore($session); $currentNode = null; try { $currentNode = $session->getNode($store, $uuid); $contentData = $currentNode->cm_content; $file = $contentData->getUrl(); } catch (Exception $e) { sendAlert(4, "Content with name - $contentName is missing in the DMS"); return ''; } $fp = fopen($file, 'r'); $DMSContent = stream_get_contents($fp); fclose($fp); if($cool == 'Yes') $DMSContent = strip_tags($DMSContent,'<p><b><i><u><strong><br><span><center><h1><h2><h3><h4><h5><h6>'); return $DMSContent;}
Labels:
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.