Commit 14dc8c33d9e99ad472ece84bcb25fa9ba7745140

Authored by Prince Mbekwa
1 parent fdfa82fa

I have added the instant view functionality

plugins/instaView/instaView.php 0 → 100755
  1 +<?php
  2 +/*
  3 + * $Id: $
  4 + *
  5 + * The contents of this file are subject to the KnowledgeTree
  6 + * Commercial Editions On-Premise License ("License");
  7 + * You may not use this file except in compliance with the License.
  8 + * You may obtain a copy of the License at
  9 + * http://www.knowledgetree.com/about/legal/
  10 + * The terms of this license may change from time to time and the latest
  11 + * license will be published from time to time at the above Internet address.
  12 + *
  13 + * This edition of the KnowledgeTree software
  14 + * is NOT licensed to you under Open Source terms.
  15 + * You may not redistribute this source code.
  16 + * For more information please see the License above.
  17 + *
  18 + * (c) 2008 KnowledgeTree Inc.
  19 + * Portions copyright The Jam Warehouse Software (Pty) Ltd;
  20 + * All Rights Reserved.
  21 + *
  22 + */
  23 +
  24 +require_once(KT_DIR . '/search2/documentProcessor/documentProcessor.inc.php');
  25 +
  26 +/**
  27 + * Generates the flash viewer for inline document viewing
  28 + * Depends on the thumbnail generation plugin and the pdf converter plugin
  29 + */
  30 +class instaView extends BaseProcessor
  31 +{
  32 + public $order = 4;
  33 + protected $namespace = 'instaview.generator.processor';
  34 +
  35 + /**
  36 + * Constructor
  37 + *
  38 + * @return instaView
  39 + */
  40 + public function instaView()
  41 + {
  42 + }
  43 +
  44 + /**
  45 + * Calls the function to generate the flash preview
  46 + *
  47 + * @return boolean
  48 + */
  49 + public function processDocument()
  50 + {
  51 + // do swf conversion
  52 + $res = $this->generateFlash();
  53 + return $res;
  54 + }
  55 +
  56 + /**
  57 + * The supported mime types for the converter.
  58 + *
  59 + * @return array
  60 + */
  61 + public function getSupportedMimeTypes()
  62 + {
  63 +// $aAcceptedMimeTypes = array('doc', 'ods', 'odt', 'ott', 'txt', 'rtf', 'sxw', 'stw',
  64 +// // 'html', 'htm',
  65 +// 'xml' , 'pdb', 'psw', 'ods', 'ots', 'sxc',
  66 +// 'stc', 'dif', 'dbf', 'xls', 'xlt', 'slk', 'csv', 'pxl',
  67 +// 'odp', 'otp', 'sxi', 'sti', 'ppt', 'pot', 'sxd', 'odg',
  68 +// 'otg', 'std', 'asc');
  69 +
  70 + // taken from the original list of accepted types in the pdf generator action
  71 + $mime_types = array();
  72 + $mime_types[] = 'text/plain';
  73 + $mime_types[] = 'text/html';
  74 + $mime_types[] = 'text/csv';
  75 + $mime_types[] = 'text/rtf';
  76 +
  77 + // Office OLE2 - 2003, XP, etc
  78 + $mime_types[] = 'application/msword';
  79 + $mime_types[] = 'application/vnd.ms-powerpoint';
  80 + $mime_types[] = 'application/vnd.ms-excel';
  81 +
  82 + // Star Office
  83 + $mime_types[] = 'application/vnd.sun.xml.writer';
  84 + $mime_types[] = 'application/vnd.sun.xml.writer.template';
  85 + $mime_types[] = 'application/vnd.sun.xml.calc';
  86 + $mime_types[] = 'application/vnd.sun.xml.calc.template';
  87 + $mime_types[] = 'application/vnd.sun.xml.draw';
  88 + $mime_types[] = 'application/vnd.sun.xml.draw.template';
  89 + $mime_types[] = 'application/vnd.sun.xml.impress';
  90 + $mime_types[] = 'application/vnd.sun.xml.impress.template';
  91 +
  92 + // Open Office
  93 + $mime_types[] = 'application/vnd.oasis.opendocument.text';
  94 + $mime_types[] = 'application/vnd.oasis.opendocument.text-template';
  95 + $mime_types[] = 'application/vnd.oasis.opendocument.graphics';
  96 + $mime_types[] = 'application/vnd.oasis.opendocument.graphics-template';
  97 + $mime_types[] = 'application/vnd.oasis.opendocument.presentation';
  98 + $mime_types[] = 'application/vnd.oasis.opendocument.presentation-template';
  99 + $mime_types[] = 'application/vnd.oasis.opendocument.spreadsheet';
  100 + $mime_types[] = 'application/vnd.oasis.opendocument.spreadsheet-template';
  101 +
  102 + /* OO3
  103 + // Office 2007
  104 + $mime_types[] = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document';
  105 + $mime_types[] = 'application/vnd.openxmlformats-officedocument.wordprocessingml.template';
  106 + $mime_types[] = 'application/vnd.openxmlformats-officedocument.presentationml.template';
  107 + $mime_types[] = 'application/vnd.openxmlformats-officedocument.presentationml.slideshow';
  108 + $mime_types[] = 'application/vnd.openxmlformats-officedocument.presentationml.presentation';
  109 + $mime_types[] = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';
  110 + $mime_types[] = 'application/vnd.openxmlformats-officedocument.spreadsheetml.template';
  111 + */
  112 +
  113 + return $mime_types;
  114 + }
  115 +
  116 + /**
  117 + * Merges the flash template with the pdf of the document
  118 + *
  119 + * @return boolean
  120 + */
  121 + private function generateFlash()
  122 + {
  123 + /*
  124 + The template can be stored in a resources folder under the plugin and merged in with the pdf below.
  125 + */
  126 + global $default;
  127 +
  128 + $pdfDir = $default->pdfDirectory;
  129 + $pdfFile = $pdfDir .'/'. $this->document->iId.'.pdf';
  130 + $swfFile = $pdfDir .'/'. $this->document->iId.'.swf';
  131 +
  132 + // if a previous version of the swf file exists - delete it
  133 + if(file_exists($swfFile)){
  134 + @unlink($swfFile);
  135 + }
  136 + //check if the pdf exists
  137 + if(!file_exists($pdfFile)){
  138 + global $default;
  139 + $default->log->debug('InstaView Plugin: PDF file does not exist, cannot generate the flash view');
  140 + return false;
  141 + }
  142 +
  143 + // do merge
  144 + $output = shell_exec("pdf2swf $pdfFile -o $swfFile");
  145 + return true;
  146 + }
  147 +}
  148 +?>
0 149 \ No newline at end of file
... ...
plugins/instaView/instaViewLinkAction.php 0 → 100755
  1 +<?php
  2 +/*
  3 + * $Id$
  4 + *
  5 + * KnowledgeTree Community Edition
  6 + * Document Management Made Simple
  7 + * Copyright (C) 2008, 2009 KnowledgeTree Inc.
  8 + * Portions copyright The Jam Warehouse Software (Pty) Limited
  9 + *
  10 + * This program is free software; you can redistribute it and/or modify it under
  11 + * the terms of the GNU General Public License version 3 as published by the
  12 + * Free Software Foundation.
  13 + *
  14 + * This program is distributed in the hope that it will be useful, but WITHOUT
  15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  16 + * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
  17 + * details.
  18 + *
  19 + * You should have received a copy of the GNU General Public License
  20 + * along with this program. If not, see <http://www.gnu.org/licenses/>.
  21 + *
  22 + * You can contact KnowledgeTree Inc., PO Box 7775 #87847, San Francisco,
  23 + * California 94120-7775, or email info@knowledgetree.com.
  24 + *
  25 + * The interactive user interfaces in modified source and object code versions
  26 + * of this program must display Appropriate Legal Notices, as required under
  27 + * Section 5 of the GNU General Public License version 3.
  28 + *
  29 + * In accordance with Section 7(b) of the GNU General Public License version 3,
  30 + * these Appropriate Legal Notices must retain the display of the "Powered by
  31 + * KnowledgeTree" logo and retain the original copyright notice. If the display of the
  32 + * logo is not reasonably feasible for technical reasons, the Appropriate Legal Notices
  33 + * must display the words "Powered by KnowledgeTree" and retain the original
  34 + * copyright notice.
  35 + * Contributor( s): ______________________________________
  36 + *
  37 + */
  38 +
  39 +require_once(KT_LIB_DIR . '/actions/documentaction.inc.php');
  40 +require_once(KT_LIB_DIR . '/permissions/permission.inc.php');
  41 +require_once(KT_LIB_DIR . '/permissions/permissionutil.inc.php');
  42 +require_once(KT_LIB_DIR . '/browse/browseutil.inc.php');
  43 +require_once(KT_LIB_DIR . "/actions/documentviewlet.inc.php");
  44 +require_once(KT_LIB_DIR . '/plugins/plugin.inc.php');
  45 +require_once(KT_LIB_DIR . '/plugins/pluginregistry.inc.php');
  46 +
  47 +require_once(KT_LIB_DIR . '/roles/Role.inc');
  48 +
  49 +class instaViewLinkAction extends KTDocumentAction {
  50 + var $sName = 'instaview.processor.link';
  51 + var $_sShowPermission = "ktcore.permissions.read";
  52 + var $sDisplayName = "Instant View";
  53 + var $pluginDir;
  54 +
  55 + function getDisplayName() {
  56 + //get document object
  57 + $oDocument = $this->oDocument;
  58 +
  59 + // get document id
  60 + if(!isset($oDocument)){
  61 + return 'Instant View';
  62 + }
  63 + $iFId = $oDocument->getID();
  64 +
  65 + // return link...
  66 + return "InstaView ".$this->getImageLink($iFId, 'document');
  67 + }
  68 +
  69 + function do_main() {
  70 + //get document object
  71 + $oDocument = $this->oDocument;
  72 + global $default;
  73 + // get document id
  74 + $iDId = $oDocument->getID();
  75 + $oUser = User::get($_SESSION['userID']);
  76 + if(Pear::isError($oUser)){
  77 + die("Invalid user");
  78 + }
  79 + $dir = KTPlugin::_fixFilename(__FILE__);
  80 + $this->pluginDir = dirname($dir) . '/';
  81 +
  82 + //check permissions on the document
  83 + if(KTPermissionUtil::userHasPermissionOnItem($oUser,'ktcore.permissions.read',$oDocument) == true){
  84 + // NOTE this is to turn the config setting for the PDF directory into a proper URL and not a path
  85 + $pdfDir = str_replace($default->varDirectory, 'var/', $default->pdfDirectory);
  86 + $swfFile = $pdfDir .'/'. $iDId.'.swf';
  87 + return instaViewlet::display_viewlet($swfFile,$this->pluginDir);
  88 + }else{
  89 + die("You don't have permission to view this document.");
  90 + }
  91 +
  92 + }
  93 + // get instaView link for a document
  94 + function getViewLink($iItemId, $sItemType){
  95 + $item = strToLower($sItemType);
  96 + if($item == 'folder'){
  97 + $sItemParameter = '?folderId';
  98 + }else if($item == 'document'){
  99 + $sItemParameter = '?instaview.processor.link&fDocumentId';
  100 + }
  101 +
  102 + // built server path
  103 + global $default;
  104 + $sHostPath = "http" . ($default->sslEnabled ? "s" : "") . "://" . $_SERVER['HTTP_HOST'];
  105 +
  106 + // build link
  107 + $sLink = $sHostPath.KTBrowseUtil::buildBaseUrl('action.php?kt_path_info').$sItemParameter.'='.$iItemId;
  108 +
  109 + return $sLink;
  110 + }
  111 +
  112 + // get rss icon link
  113 + function getImageLink($iItemId, $sItemType){
  114 + return "<a href='".$this->getViewLink($iItemId, $sItemType)."' target='_blank'>".$this->getIcon()."</a>";
  115 + }
  116 + // get icon for instaView
  117 + function getIcon(){
  118 + // built server path
  119 + global $default;
  120 + $sHostPath = "http" . ($default->sslEnabled ? "s" : "") . "://".$_SERVER['HTTP_HOST']."/".$GLOBALS['KTRootUrl']."/";
  121 +
  122 + // create image
  123 + $icon = "<img src='".$sHostPath."resources/graphics/edit-find.png' alt='InstaView' border=0/>";
  124 +
  125 + return $icon;
  126 + }
  127 +}
  128 +
  129 +/**
  130 + * Main display class for instantView
  131 + *
  132 + */
  133 +class instaViewlet extends KTDocumentViewlet {
  134 + var $sName = 'instaView.viewlets';
  135 +
  136 + function display_viewlet($flashdocument,$plugin) {
  137 + global $main;
  138 +
  139 + $main->requireJSResource($plugin."/resources/swfobject.js");
  140 + $oKTTemplating =& KTTemplating::getSingleton();
  141 + $oTemplate =& $oKTTemplating->loadTemplate('instaview_viewlet');
  142 + if (is_null($oTemplate)) return '';
  143 +
  144 + $aTemplatesetData =array('document' =>$flashdocument,
  145 + 'mainobject' => $plugin."/resources/zviewer.swf",
  146 + 'defaultobject' => $plugin."/resources/expressinstall.swf");
  147 + $output = $oTemplate->render($aTemplatesetData);
  148 + return $output;
  149 + }
  150 +}
  151 +?>
... ...
plugins/instaView/instaViewPlugin.php 0 → 100755
  1 +<?php
  2 +/**
  3 + * $Id: $
  4 + *
  5 + * The contents of this file are subject to the KnowledgeTree
  6 + * Commercial Editions On-Premise License ("License");
  7 + * You may not use this file except in compliance with the License.
  8 + * You may obtain a copy of the License at
  9 + * http://www.knowledgetree.com/about/legal/
  10 + * The terms of this license may change from time to time and the latest
  11 + * license will be published from time to time at the above Internet address.
  12 + *
  13 + * This edition of the KnowledgeTree software
  14 + * is NOT licensed to you under Open Source terms.
  15 + * You may not redistribute this source code.
  16 + * For more information please see the License above.
  17 + *
  18 + * (c) 2008 KnowledgeTree Inc.
  19 + * Portions copyright The Jam Warehouse Software (Pty) Ltd;
  20 + * All Rights Reserved.
  21 + *
  22 + */
  23 +
  24 +require_once(KT_LIB_DIR . '/plugins/plugin.inc.php');
  25 +require_once(KT_LIB_DIR . '/plugins/pluginregistry.inc.php');
  26 +
  27 +$dir = dirname(__FILE__) . DIRECTORY_SEPARATOR . '..';
  28 +$dir = realpath($dir).DIRECTORY_SEPARATOR;
  29 +require_once($dir . 'wintools/baobabkeyutil.inc.php');
  30 +
  31 +class instaViewPlugin extends KTPlugin {
  32 + var $sNamespace = 'instaview.processor.plugin';
  33 + var $iVersion = 0;
  34 + var $autoRegister = true;
  35 +
  36 + function instaViewPlugin($sFilename = null) {
  37 + $res = parent::KTPlugin($sFilename);
  38 + $this->sFriendlyName = _kt('InstaView Document Viewer');
  39 + return $res;
  40 + }
  41 +
  42 + function setup() {
  43 + $plugin_dir = dirname(__FILE__) . DIRECTORY_SEPARATOR;
  44 + $dir = $plugin_dir . 'instaView.php';
  45 + $this->registerProcessor('InstaView', 'instaview.generator.processor', $dir);
  46 + $this->registerAction('documentaction', 'instaViewLinkAction', 'instaview.processor.link', 'instaViewLinkAction.php');
  47 + require_once(KT_LIB_DIR . '/templating/templating.inc.php');
  48 + $oTemplating =& KTTemplating::getSingleton();
  49 + $oTemplating->addLocation('InstaView', $plugin_dir.'templates', 'instaview.processor.plugin');
  50 + }
  51 +
  52 + function run_setup() {
  53 + // Check that the license is valid
  54 + if (BaobabKeyUtil::getLicenseCount() < MIN_LICENSES) {
  55 + return false;
  56 + }
  57 + return true;
  58 + }
  59 +}
  60 +
  61 +$oPluginRegistry =& KTPluginRegistry::getSingleton();
  62 +$oPluginRegistry->registerPlugin('instaViewPlugin', 'instaview.processor.plugin', __FILE__);
  63 +?>
0 64 \ No newline at end of file
... ...
plugins/instaView/resources/expressinstall.swf 0 → 100755
No preview for this file type
plugins/instaView/resources/swfobject.js 0 → 100755
  1 +/* SWFObject v2.0 <http://code.google.com/p/swfobject/>
  2 + Copyright (c) 2007 Geoff Stearns, Michael Williams, and Bobby van der Sluis
  3 + This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
  4 +*/
  5 +var swfobject=function(){var Z="undefined",P="object",B="Shockwave Flash",h="ShockwaveFlash.ShockwaveFlash",W="application/x-shockwave-flash",K="SWFObjectExprInst",G=window,g=document,N=navigator,f=[],H=[],Q=null,L=null,T=null,S=false,C=false;var a=function(){var l=typeof g.getElementById!=Z&&typeof g.getElementsByTagName!=Z&&typeof g.createElement!=Z&&typeof g.appendChild!=Z&&typeof g.replaceChild!=Z&&typeof g.removeChild!=Z&&typeof g.cloneNode!=Z,t=[0,0,0],n=null;if(typeof N.plugins!=Z&&typeof N.plugins[B]==P){n=N.plugins[B].description;if(n){n=n.replace(/^.*\s+(\S+\s+\S+$)/,"$1");t[0]=parseInt(n.replace(/^(.*)\..*$/,"$1"),10);t[1]=parseInt(n.replace(/^.*\.(.*)\s.*$/,"$1"),10);t[2]=/r/.test(n)?parseInt(n.replace(/^.*r(.*)$/,"$1"),10):0}}else{if(typeof G.ActiveXObject!=Z){var o=null,s=false;try{o=new ActiveXObject(h+".7")}catch(k){try{o=new ActiveXObject(h+".6");t=[6,0,21];o.AllowScriptAccess="always"}catch(k){if(t[0]==6){s=true}}if(!s){try{o=new ActiveXObject(h)}catch(k){}}}if(!s&&o){try{n=o.GetVariable("$version");if(n){n=n.split(" ")[1].split(",");t=[parseInt(n[0],10),parseInt(n[1],10),parseInt(n[2],10)]}}catch(k){}}}}var v=N.userAgent.toLowerCase(),j=N.platform.toLowerCase(),r=/webkit/.test(v)?parseFloat(v.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,i=false,q=j?/win/.test(j):/win/.test(v),m=j?/mac/.test(j):/mac/.test(v);/*@cc_on i=true;@if(@_win32)q=true;@elif(@_mac)m=true;@end@*/return{w3cdom:l,pv:t,webkit:r,ie:i,win:q,mac:m}}();var e=function(){if(!a.w3cdom){return }J(I);if(a.ie&&a.win){try{g.write("<script id=__ie_ondomload defer=true src=//:><\/script>");var i=c("__ie_ondomload");if(i){i.onreadystatechange=function(){if(this.readyState=="complete"){this.parentNode.removeChild(this);V()}}}}catch(j){}}if(a.webkit&&typeof g.readyState!=Z){Q=setInterval(function(){if(/loaded|complete/.test(g.readyState)){V()}},10)}if(typeof g.addEventListener!=Z){g.addEventListener("DOMContentLoaded",V,null)}M(V)}();function V(){if(S){return }if(a.ie&&a.win){var m=Y("span");try{var l=g.getElementsByTagName("body")[0].appendChild(m);l.parentNode.removeChild(l)}catch(n){return }}S=true;if(Q){clearInterval(Q);Q=null}var j=f.length;for(var k=0;k<j;k++){f[k]()}}function J(i){if(S){i()}else{f[f.length]=i}}function M(j){if(typeof G.addEventListener!=Z){G.addEventListener("load",j,false)}else{if(typeof g.addEventListener!=Z){g.addEventListener("load",j,false)}else{if(typeof G.attachEvent!=Z){G.attachEvent("onload",j)}else{if(typeof G.onload=="function"){var i=G.onload;G.onload=function(){i();j()}}else{G.onload=j}}}}}function I(){var l=H.length;for(var j=0;j<l;j++){var m=H[j].id;if(a.pv[0]>0){var k=c(m);if(k){H[j].width=k.getAttribute("width")?k.getAttribute("width"):"0";H[j].height=k.getAttribute("height")?k.getAttribute("height"):"0";if(O(H[j].swfVersion)){if(a.webkit&&a.webkit<312){U(k)}X(m,true)}else{if(H[j].expressInstall&&!C&&O("6.0.65")&&(a.win||a.mac)){D(H[j])}else{d(k)}}}}else{X(m,true)}}}function U(m){var k=m.getElementsByTagName(P)[0];if(k){var p=Y("embed"),r=k.attributes;if(r){var o=r.length;for(var n=0;n<o;n++){if(r[n].nodeName.toLowerCase()=="data"){p.setAttribute("src",r[n].nodeValue)}else{p.setAttribute(r[n].nodeName,r[n].nodeValue)}}}var q=k.childNodes;if(q){var s=q.length;for(var l=0;l<s;l++){if(q[l].nodeType==1&&q[l].nodeName.toLowerCase()=="param"){p.setAttribute(q[l].getAttribute("name"),q[l].getAttribute("value"))}}}m.parentNode.replaceChild(p,m)}}function F(i){if(a.ie&&a.win&&O("8.0.0")){G.attachEvent("onunload",function(){var k=c(i);if(k){for(var j in k){if(typeof k[j]=="function"){k[j]=function(){}}}k.parentNode.removeChild(k)}})}}function D(j){C=true;var o=c(j.id);if(o){if(j.altContentId){var l=c(j.altContentId);if(l){L=l;T=j.altContentId}}else{L=b(o)}if(!(/%$/.test(j.width))&&parseInt(j.width,10)<310){j.width="310"}if(!(/%$/.test(j.height))&&parseInt(j.height,10)<137){j.height="137"}g.title=g.title.slice(0,47)+" - Flash Player Installation";var n=a.ie&&a.win?"ActiveX":"PlugIn",k=g.title,m="MMredirectURL="+G.location+"&MMplayerType="+n+"&MMdoctitle="+k,p=j.id;if(a.ie&&a.win&&o.readyState!=4){var i=Y("div");p+="SWFObjectNew";i.setAttribute("id",p);o.parentNode.insertBefore(i,o);o.style.display="none";G.attachEvent("onload",function(){o.parentNode.removeChild(o)})}R({data:j.expressInstall,id:K,width:j.width,height:j.height},{flashvars:m},p)}}function d(j){if(a.ie&&a.win&&j.readyState!=4){var i=Y("div");j.parentNode.insertBefore(i,j);i.parentNode.replaceChild(b(j),i);j.style.display="none";G.attachEvent("onload",function(){j.parentNode.removeChild(j)})}else{j.parentNode.replaceChild(b(j),j)}}function b(n){var m=Y("div");if(a.win&&a.ie){m.innerHTML=n.innerHTML}else{var k=n.getElementsByTagName(P)[0];if(k){var o=k.childNodes;if(o){var j=o.length;for(var l=0;l<j;l++){if(!(o[l].nodeType==1&&o[l].nodeName.toLowerCase()=="param")&&!(o[l].nodeType==8)){m.appendChild(o[l].cloneNode(true))}}}}}return m}function R(AE,AC,q){var p,t=c(q);if(typeof AE.id==Z){AE.id=q}if(a.ie&&a.win){var AD="";for(var z in AE){if(AE[z]!=Object.prototype[z]){if(z=="data"){AC.movie=AE[z]}else{if(z.toLowerCase()=="styleclass"){AD+=' class="'+AE[z]+'"'}else{if(z!="classid"){AD+=" "+z+'="'+AE[z]+'"'}}}}}var AB="";for(var y in AC){if(AC[y]!=Object.prototype[y]){AB+='<param name="'+y+'" value="'+AC[y]+'" />'}}t.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+AD+">"+AB+"</object>";F(AE.id);p=c(AE.id)}else{if(a.webkit&&a.webkit<312){var AA=Y("embed");AA.setAttribute("type",W);for(var x in AE){if(AE[x]!=Object.prototype[x]){if(x=="data"){AA.setAttribute("src",AE[x])}else{if(x.toLowerCase()=="styleclass"){AA.setAttribute("class",AE[x])}else{if(x!="classid"){AA.setAttribute(x,AE[x])}}}}}for(var w in AC){if(AC[w]!=Object.prototype[w]){if(w!="movie"){AA.setAttribute(w,AC[w])}}}t.parentNode.replaceChild(AA,t);p=AA}else{var s=Y(P);s.setAttribute("type",W);for(var v in AE){if(AE[v]!=Object.prototype[v]){if(v.toLowerCase()=="styleclass"){s.setAttribute("class",AE[v])}else{if(v!="classid"){s.setAttribute(v,AE[v])}}}}for(var u in AC){if(AC[u]!=Object.prototype[u]&&u!="movie"){E(s,u,AC[u])}}t.parentNode.replaceChild(s,t);p=s}}return p}function E(k,i,j){var l=Y("param");l.setAttribute("name",i);l.setAttribute("value",j);k.appendChild(l)}function c(i){return g.getElementById(i)}function Y(i){return g.createElement(i)}function O(k){var j=a.pv,i=k.split(".");i[0]=parseInt(i[0],10);i[1]=parseInt(i[1],10);i[2]=parseInt(i[2],10);return(j[0]>i[0]||(j[0]==i[0]&&j[1]>i[1])||(j[0]==i[0]&&j[1]==i[1]&&j[2]>=i[2]))?true:false}function A(m,j){if(a.ie&&a.mac){return }var l=g.getElementsByTagName("head")[0],k=Y("style");k.setAttribute("type","text/css");k.setAttribute("media","screen");if(!(a.ie&&a.win)&&typeof g.createTextNode!=Z){k.appendChild(g.createTextNode(m+" {"+j+"}"))}l.appendChild(k);if(a.ie&&a.win&&typeof g.styleSheets!=Z&&g.styleSheets.length>0){var i=g.styleSheets[g.styleSheets.length-1];if(typeof i.addRule==P){i.addRule(m,j)}}}function X(k,i){var j=i?"visible":"hidden";if(S){c(k).style.visibility=j}else{A("#"+k,"visibility:"+j)}}return{registerObject:function(l,i,k){if(!a.w3cdom||!l||!i){return }var j={};j.id=l;j.swfVersion=i;j.expressInstall=k?k:false;H[H.length]=j;X(l,false)},getObjectById:function(l){var i=null;if(a.w3cdom&&S){var j=c(l);if(j){var k=j.getElementsByTagName(P)[0];if(!k||(k&&typeof j.SetVariable!=Z)){i=j}else{if(typeof k.SetVariable!=Z){i=k}}}}return i},embedSWF:function(n,u,r,t,j,m,k,p,s){if(!a.w3cdom||!n||!u||!r||!t||!j){return }r+="";t+="";if(O(j)){X(u,false);var q=(typeof s==P)?s:{};q.data=n;q.width=r;q.height=t;var o=(typeof p==P)?p:{};if(typeof k==P){for(var l in k){if(k[l]!=Object.prototype[l]){if(typeof o.flashvars!=Z){o.flashvars+="&"+l+"="+k[l]}else{o.flashvars=l+"="+k[l]}}}}J(function(){R(q,o,u);if(q.id==u){X(u,true)}})}else{if(m&&!C&&O("6.0.65")&&(a.win||a.mac)){X(u,false);J(function(){var i={};i.id=i.altContentId=u;i.width=r;i.height=t;i.expressInstall=m;D(i)})}}},getFlashPlayerVersion:function(){return{major:a.pv[0],minor:a.pv[1],release:a.pv[2]}},hasFlashPlayerVersion:O,createSWF:function(k,j,i){if(a.w3cdom&&S){return R(k,j,i)}else{return undefined}},createCSS:function(j,i){if(a.w3cdom){A(j,i)}},addDomLoadEvent:J,addLoadEvent:M,getQueryParamValue:function(m){var l=g.location.search||g.location.hash;if(m==null){return l}if(l){var k=l.substring(1).split("&");for(var j=0;j<k.length;j++){if(k[j].substring(0,k[j].indexOf("="))==m){return k[j].substring((k[j].indexOf("=")+1))}}}return""},expressInstallCallback:function(){if(C&&L){var i=c(K);if(i){i.parentNode.replaceChild(L,i);if(T){X(T,true);if(a.ie&&a.win){L.style.display="block"}}L=null;T=null;C=false}}}}}();
0 6 \ No newline at end of file
... ...
plugins/instaView/resources/zviewer.swf 0 → 100755
No preview for this file type
plugins/instaView/templates/instaview_viewlet.smarty 0 → 100755
  1 +{if $document != ''}
  2 +{literal}
  3 +<div align="center">
  4 +<script type="text/javascript">
  5 + var flashvars = {
  6 + doc_url: {/literal}'{$document}'{literal}
  7 + };
  8 + var params = {
  9 + menu: "false",
  10 + bgcolor: '#efefef',
  11 + allowFullScreen: 'true'
  12 + };
  13 + var attributes = {
  14 + id: 'website'
  15 + };
  16 + swfobject.embedSWF({/literal}'{$mainobject}'{literal},
  17 + 'website', '100%', '800', '9.0.45',
  18 + {/literal}'{$defaultobject}'{literal},
  19 + flashvars,
  20 + params,
  21 + attributes
  22 + );
  23 +</script>
  24 + <div id="website">
  25 + <p align="center" class="style1">In order to view this page you need Flash Player 9+ support!</p>
  26 + <p align="center">
  27 + <a href="http://www.adobe.com/go/getflashplayer">
  28 + <img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /> </a> </p>
  29 + </div>
  30 + </div>
  31 + {/literal}
  32 +{/if}
0 33 \ No newline at end of file
... ...
resources/graphics/edit-find.png 0 → 100644

617 Bytes