setDBO(VoxelCareDB::getDatabase()); } function _buildQuery() { $where = array(); $this->_query = "SELECT p.id id, p.name name, p.path path, p.defaultversion defaultversion FROM #__vxc_plugin p ORDER BY p.name"; return $this->_query; } function getData() { if (!$this->_data) { $query = $this->_buildQuery(); $this->_db->setQuery($query); $this->_data =& $this->_db->loadObjectList(); $useCommonInS3 = LegacyHelper::getPHPGlobalVar("useCommonInS3"); if ($useCommonInS3) { $vxModel = new vxcModelVoxelService(); // Recogemos las versiones disponibles foreach($this->_data as $plugin) { $contents = array(); $vxModel->GetVxCommonDirectoryList($plugin->path, $contents); foreach ($contents['files'] as $file) { $archivo = $file['name']; if (substr($archivo, -4) == ".vxp") { $pluginNameArray = explode('_', $archivo); $pluginName = $pluginNameArray[0]; if ($pluginName == $plugin->name) { if (!$plugin->availableVersions) $plugin->availableVersions = array(); $fin = strpos($pluginNameArray[1], ".vxp"); $plugin->availableVersions[] = substr($pluginNameArray[1], 0, $fin); } } } } } else { foreach($this->_data as $plugin) { if (LegacyHelper::getNewMode()) { include(JPATH_BASE.'/components/com_vxc/helpers/commonpath.php'); $dirName = $commonPath ."/". $plugin->path; } else $dirName = $_SERVER['DOCUMENT_ROOT']."/../vxcommon/". $plugin->path; $fileArray = @scandir($dirName); foreach($fileArray as $archivo) { if (substr($archivo ,-4)==".vxp") { $pluginNameArray = explode('_',$archivo); $pluginName = $pluginNameArray[0]; if ($pluginName == $plugin->name) { if (!$plugin->availableVersions) $plugin->availableVersions = array(); $fin = strpos($pluginNameArray[1],".vxp"); $plugin->availableVersions[] = substr($pluginNameArray[1],0,$fin); } } } } } } return $this->_data; } function changeDefaultVersion($pluginId,$version) { $pluginId = (int)$pluginId; if (!$pluginId) return; $sql = "UPDATE #__vxc_plugin SET defaultversion = " . $this->_db->Quote($version) . " WHERE id = $pluginId"; $this->_db->Execute($sql); } } ?>