public function execute() { global $wgRequest, $wgOut, $wgScriptPath, $wgUser; //$skin = $wgUser->getSkin(); $wgOut->setPageTitle(wfMsg('ontologybrowser')); /*STARTLOG*/ if ($wgRequest->getVal('src') == 'toolbar') { smwLog("", "OB", "opened_from_menu"); } else { if ($wgRequest->getVal('entitytitle') != '') { $ns = $wgRequest->getVal('ns') == '' ? '' : $wgRequest->getVal('ns') . ":"; smwLog($ns . $wgRequest->getVal('entitytitle'), "Factbox", "open_in_OB"); } else { smwLog("", "OB", "opened"); } } /*ENDLOG*/ $showMenuBar = $wgUser->isAllowed("ontologyediting"); // display query browser //$spectitle = Title::makeTitle( NS_SPECIAL, wfMsg('ontologybrowser') ); $refactorstatstitle = Title::makeTitle(NS_SPECIAL, "RefactorStatistics"); // add another container $treeContainer = ""; $menu = ""; $switch = ""; wfRunHooks('smw_ob_add', array(&$treeContainer, &$boxContainer, &$menu, &$switch)); $html = "<span id=\"OBHelp\">" . wfMsg('smw_ob_help') . "</span><br>"; $html .= "<span id=\"OBHint\">" . wfMsg('smw_ac_hint') . "</span>\n"; $html .= "<br><input type=\"text\" size=\"32\" id=\"FilterBrowserInput\" name=\"prefix\" class=\"wickEnabled\" constraints=\"all\"/>"; $html .= "<button type=\"button\" id=\"filterBrowseButton\" name=\"filterBrowsing\" onclick=\"globalActionListener.filterBrowsing(event, true)\">" . wfMsg('smw_ob_filterbrowsing') . "</button>"; $html .= "<button type=\"button\" name=\"refresh\" onclick=\"globalActionListener.reset(event)\">" . wfMsg('smw_ob_reset') . "</button>"; $html .= "<button type=\"button\" id=\"hideInstancesButton\" name=\"hideInstances\" onclick=\"instanceActionListener.toggleInstanceBox(event)\">" . wfMsg('smw_ob_hideinstances') . "</button>"; // <a href=\"".$refactorstatstitle->getFullURL()."\">".wfMsg('smw_ob_link_stats')."</a>"; $html .= "<span id=\"propertyRangeSpan\"><input type=\"checkbox\" id=\"directPropertySwitch\"/>" . wfMsg('smw_ob_onlyDirect') . "</input><input type=\"checkbox\" id=\"showForRange\"/>" . wfMsg('smw_ob_showRange') . "</input></span>"; $html .= "<div id=\"ontologybrowser\">"; //TODO: Add the following code to a hook. However, the problem is, that // advancedOption.js should also be moved to the Linked Data Extension, but it // is used for getting parameters for the ajax calls to smwf_ob_OntologyBrowserAccess(). if (defined('LOD_LINKEDDATA_VERSION')) { // Check if the triples store is propertly connected. $connectionError = ""; $tsa = new LODTripleStoreAccess(); if (!$tsa->isConnected()) { $connectionError = "<div class=\"aoConnectionError\">" . wfMsg("smw_ob_ts_not_connected") . "</div>"; } $ids = LODAdministrationStore::getInstance()->getAllSourceDefinitionIDs(); $sourceOptions = ""; foreach ($ids as $sourceID) { $sourceOptions .= "<option>{$sourceID}</option>"; } $advancedOptions = wfMsg("smw_ob_advanced_options"); $fromWiki = wfMsg("smw_ob_source_wiki"); $selectDatasource = wfMsg("smw_ob_select_datasource"); $selectMultiHint = wfMsg("smw_ob_select_multiple"); $html .= <<<TEXT <div id="advancedOptions" class="advancedOptions"> \t<div id="aoFoldIcon" class="aoFoldClosed"> </div> \t<span id="aoTitle" class="aoTitle"><b>{$advancedOptions}</b> </span> \t<div id="aoContent" class="aoContent"> \t\t{$connectionError} \t\t<div><b>{$selectDatasource}</b></div> \t\t<select id="dataSourceSelector" name="DataSource" size="5" multiple="multiple" class="aoDataSourceSelector"> \t\t\t<option>{$fromWiki}</option> \t\t\t{$sourceOptions} \t\t</select> \t\t<div class="OBStaticHint">{$selectMultiHint}</div> \t</div> </div> TEXT; } $html .= "\t\t\r\n\t\t<!-- Categore Tree hook -->\t" . "<div id=\"treeContainer\"><span class=\"OB-header\">\t\r\n\t\t\t<img src=\"{$wgScriptPath}/extensions/SMWHalo/skins/concept.gif\" style=\"margin-bottom: -1px\"></img><a class=\"selectedSwitch treeSwitch\" id=\"categoryTreeSwitch\" onclick=\"globalActionListener.switchTreeComponent(event,'categoryTree')\">" . wfMsg('smw_ob_categoryTree') . "</a>\r\n\t\t\t<img src=\"{$wgScriptPath}/extensions/SMWHalo/skins/property.gif\" style=\"margin-bottom: -1px\"></img><a class=\"treeSwitch\" id=\"propertyTreeSwitch\" onclick=\"globalActionListener.switchTreeComponent(event,'propertyTree')\">" . wfMsg('smw_ob_attributeTree') . "</a>"; $html .= $switch; $html .= "</span>"; if ($showMenuBar) { $html .= "<span class=\"menuBar menuBarTree menuBarcategoryTree\" id=\"menuBarcategoryTree\"><a onclick=\"categoryActionListener.showSubMenu(" . SMW_OB_COMMAND_ADDSUBCATEGORY . ")\">" . wfMsg('smw_ob_cmd_createsubcategory') . "</a> | <a onclick=\"categoryActionListener.showSubMenu(" . SMW_OB_COMMAND_ADDSUBCATEGORY_SAMELEVEL . ")\">" . wfMsg('smw_ob_cmd_createsubcategorysamelevel') . "</a> | <a onclick=\"categoryActionListener.showSubMenu(" . SMW_OB_COMMAND_CATEGORY_RENAME . ")\">" . wfMsg('smw_ob_cmd_renamecategory') . "</a><div id=\"categoryTreeMenu\"></div></span>\r\n\t\t\t<span style=\"display:none;\" class=\"menuBar menuBarTree menuBarpropertyTree\" id=\"menuBarpropertyTree\"><a onclick=\"propertyActionListener.showSubMenu(" . SMW_OB_COMMAND_ADDSUBPROPERTY . ")\">" . wfMsg('smw_ob_cmd_createsubproperty') . "</a> | <a onclick=\"propertyActionListener.showSubMenu(" . SMW_OB_COMMAND_ADDSUBPROPERTY_SAMELEVEL . ")\">" . wfMsg('smw_ob_cmd_createsubpropertysamelevel') . "</a> | <a onclick=\"propertyActionListener.showSubMenu(" . SMW_OB_COMMAND_PROPERTY_RENAME . ")\">" . wfMsg('smw_ob_cmd_renameproperty') . "</a><div id=\"propertyTreeMenu\"></div></span>"; $html .= $menu; } // add containers $html .= "<div id=\"categoryTree\" class=\"categoryTreeColors treeContainer\">\r\n\t\t </div>\t\t\r\n\t\t <div id=\"propertyTree\" style=\"display:none\" class=\"propertyTreeListColors treeContainer\">\r\n\t\t </div>"; $html .= $treeContainer; $html .= "<span class=\"OB-filters\"><span>" . wfMsg('smw_ob_filter') . "</span><input type=\"text\" id=\"treeFilter\"><button type=\"button\" name=\"filterCategories\" onclick=\"globalActionListener.filterTree(event)\">" . wfMsg('smw_ob_filter') . "</button></span>\r\n\t\t</div>\r\n\t\t\r\n\t\t<!-- Attribute Tree hook -->\r\n\t\t\t\t\r\n\t\t<div id=\"leftArrow\" class=\"pfeil\">\r\n\t\t\t<img src=\"{$wgScriptPath}/extensions/SMWHalo/skins/OntologyBrowser/images/bigarrow.gif\" onclick=\"globalActionListener.toogleCatInstArrow(event)\" />\r\n\t\t</div>"; $html .= $boxContainer; $html .= "<!-- Instance List hook -->\t\r\n\t\t<div id=\"instanceContainer\">\r\n\t\t <span class=\"OB-header\"><img style=\"margin-bottom: -3px\" src=\"{$wgScriptPath}/extensions/SMWHalo/skins/instance.gif\"></img> " . wfMsg('smw_ob_instanceList') . "</span>\r\n\t\t " . ($showMenuBar ? "<span class=\"menuBar menuBarInstance\" id=\"menuBarInstance\"><a onclick=\"instanceActionListener.showSubMenu(" . SMW_OB_COMMAND_INSTANCE_RENAME . ")\">" . wfMsg('smw_ob_cmd_renameinstance') . "</a> | <a onclick=\"instanceActionListener.showSubMenu(" . SMW_OB_COMMAND_INSTANCE_DELETE . ")\">" . wfMsg('smw_ob_cmd_deleteinstance') . "</a><div id=\"instanceListMenu\"></div></span>" : "") . "\t\t\t\r\n\t\t <div id=\"instanceList\" class=\"instanceListColors\">\r\n\t\t </div>\r\n\t\t <span class=\"OB-filters\"><span>" . wfMsg('smw_ob_filter') . "</span><input type=\"text\" id=\"instanceFilter\"><button type=\"button\" name=\"filterInstances\" onclick=\"globalActionListener.filterInstances(event)\">" . wfMsg('smw_ob_filter') . "</button></span>\r\n\t\t</div>\r\n\t\t\t\r\n\t\t<div id=\"rightArrow\" class=\"pfeil\">\r\n\t\t\t<img src=\"{$wgScriptPath}/extensions/SMWHalo/skins/OntologyBrowser/images/bigarrow.gif\" onclick=\"globalActionListener.toogleInstPropArrow(event)\" />\r\n\t\t</div>\r\n\t\t\t\t\r\n\t\t<!-- Relation/Attribute Annotation level hook -->\r\n\t\t<div id=\"relattributesContainer\"><span class=\"OB-header\">\r\n\t\t\t<span><img style=\"margin-bottom: -3px\" src=\"{$wgScriptPath}/extensions/SMWHalo/skins/property.gif\"></img> " . wfMsg('smw_ob_att') . "</span>\r\n\t\t\t<span id=\"relattValues\">" . wfMsg('smw_ob_relattValues') . "</span><span id=\"relattRangeType\" style=\"display:none;\">" . wfMsg('smw_ob_relattRangeType') . "</span></span>\r\n\t\t\t" . ($showMenuBar ? "<span class=\"menuBar menuBarProperties\" id=\"menuBarProperties\"><a onclick=\"schemaActionPropertyListener.showSubMenu(" . SMW_OB_COMMAND_ADD_SCHEMAPROPERTY . ")\">" . wfMsg('smw_ob_cmd_addpropertytodomain') . "<span id=\"currentSelectedCategory\">...</span></a><div id=\"schemaPropertiesMenu\"></div></span>" : "") . "\t\r\n\t\t\t<div id=\"relattributes\" class=\"propertyTreeListColors\"></div>\r\n\t\t\t<span class=\"OB-filters\"><span>" . wfMsg('smw_ob_filter') . "</span><input type=\"text\" size=\"22\" id=\"propertyFilter\"><button type=\"button\" name=\"filterProperties\" onclick=\"globalActionListener.filterProperties(event)\">" . wfMsg('smw_ob_filter') . "</button></span>\t\t\r\n\t\t</div>\t\t\r\n\t\t<div id=\"OB-filters\">\r\n\t\t\t" . "" . "\r\n\t\t</div>" . "<div id=\"OB-footer\">" . wfMsg('smw_ob_footer') . "\r\n\t\t\t\r\n\t\t</div>\r\n\t\t</div>\r\n\t\t"; $wgOut->addHTML($html); }
public function addWSAsDataSource($wsId) { if (defined('LOD_LINKEDDATA_VERSION')) { global $IP; $this->removeWSFromDataSourceInformationGraph($wsId); //require_once($IP."/extensions/LinkedData/storage/TripleStore/LOD_PersistentTripleStoreAccess.php"); //require_once($IP."/extensions/LinkedData/storage/TripleStore/LOD_Triple.php"); $tsA = new LODPersistentTripleStoreAccess(true); $lAS = LODAdministrationStore::getInstance(); $tsA->createGraph($lAS->getSMWGraphsURI() . 'DataSourceInformationGraph'); $tsA->addPrefixes(TSNamespaces::getAllPrefixes()); $tsA->addPrefixes(LODAdministrationStore::getInstance()->getSourceDefinitionPrefixes()); $triples = array(); $triples[] = new LODTriple($this->getDataSourceURI("WS_" . $wsId), "rdf:type", "smw-lde:Datasource", "__objectURI"); $triples[] = new LODTriple($this->getDataSourceURI("WS_" . $wsId), "smw-lde:label", Title::newFromID($wsId)->getFullText(), "xsd:string"); $triples[] = new LODTriple($this->getDataSourceURI("WS_" . $wsId), "smw-lde:ID", Title::newFromID($wsId)->getFullText(), "xsd:string"); //todo: deal with persistency id=wsid $tsA->insertTriples($lAS->getSMWGraphsURI() . 'DataSourceInformationGraph', $triples); $tsA->flushCommands('di_ws', $wsId . '_dsinfo'); } }