summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--framework/Wsat/TWsatARGenerator.php232
-rw-r--r--framework/Wsat/TWsatService.php62
-rw-r--r--framework/Wsat/TWsatUserManager.php18
-rw-r--r--framework/Wsat/pages/TWsatGenerateAR.page33
-rw-r--r--framework/Wsat/pages/TWsatGenerateAR.php49
-rw-r--r--framework/Wsat/pages/TWsatHome.page5
-rw-r--r--framework/Wsat/pages/TWsatHome.php15
-rw-r--r--framework/Wsat/pages/TWsatLogin.page45
-rw-r--r--framework/Wsat/pages/TWsatLogin.php30
-rw-r--r--framework/Wsat/pages/TWsatScaffolding.page3
-rw-r--r--framework/Wsat/pages/TWsatScaffolding.php15
-rw-r--r--framework/Wsat/pages/config.xml5
-rw-r--r--framework/Wsat/pages/layout/TWsatLayout.php32
-rw-r--r--framework/Wsat/pages/layout/TWsatLayout.tpl53
-rw-r--r--framework/Wsat/themes/.htaccess1
-rw-r--r--framework/Wsat/themes/PradoSoft/imgs/arrowdown.gifbin836 -> 0 bytes
-rw-r--r--framework/Wsat/themes/PradoSoft/imgs/mantisbg.jpgbin4043 -> 0 bytes
-rw-r--r--framework/Wsat/themes/PradoSoft/imgs/pradologo.gifbin3039 -> 0 bytes
-rw-r--r--framework/Wsat/themes/PradoSoft/main.css133
19 files changed, 0 insertions, 731 deletions
diff --git a/framework/Wsat/TWsatARGenerator.php b/framework/Wsat/TWsatARGenerator.php
deleted file mode 100644
index 433e1640..00000000
--- a/framework/Wsat/TWsatARGenerator.php
+++ /dev/null
@@ -1,232 +0,0 @@
-<?php
-
-/**
- * Description of TWsatARGenerator
- *
- * @author Daniel
- */
-class TWsatARGenerator {
-
- /**
- * Gets the current Db connection, the connection object is obtained from
- * the TActiveRecordManager if connection is currently null.
- * @return TDbConnection current db connection for this object.
- */
- private $_conn;
-
- /**
- * @return TActiveRecordGateway record table gateway.
- */
- private $_gateway;
-
- /**
- * Output folder where AR classes will be generated.
- */
- private $_op_file;
-
- /**
- * Class name prefix
- */
- private $_clas_prefix;
-
- /**
- * all table relations array
- */
- private $_relations;
-
- function __construct() {
- $ar_manager = TActiveRecordManager::getInstance();
- $this->_conn = $ar_manager->getDbConnection();
- $this->_conn->Active = true;
- $this->_gateway = $ar_manager->getRecordGateway();
- }
-
- /**
- * Destructor.
- * Disconnect the db connection.
- */
- public function __destruct() {
- if ($this->_conn !== null)
- $this->_conn->Active = false;
- }
-
- public function setOpFile($op_file_namespace) {
- $op_file = Prado::getPathOfNamespace($op_file_namespace);
- if (empty($op_file)) {
- throw new Exception("You need to fix your output folder namespace.");
- }
- if (!is_dir($op_file)) {
- mkdir($op_file, 0777, true);
- }
- $this->_op_file = $op_file;
- }
-
- public function setClasPrefix($_clas_prefix) {
- $this->_clas_prefix = $_clas_prefix;
- }
-
-//-----------------------------------------------------------------------------
- // <editor-fold defaultstate="collapsed" desc="Main APIs">
- public function generate($tableName) {
- $tableInfo = $this->_gateway->getTableInfo($this->_conn, $tableName);
- if (count($tableInfo->getColumns()) === 0) {
- throw new Exception("Unable to find table or view $tableName in " . $this->_conn->getConnectionString() . ".");
- } else {
- $properties = array();
- foreach ($tableInfo->getColumns() as $field => $column)
- $properties[] = $this->generateProperty($field, $column);
- $toString = $this->_buildSmartToString($tableInfo);
- }
-
- $clasName = $this->_getProperClassName($tableName);
- $class = $this->generateClass($properties, $tableName, $clasName, $toString);
- $output = $this->_op_file . DIRECTORY_SEPARATOR . $clasName . ".php";
- file_put_contents($output, $class);
- }
-
- public function generateAll() {
- foreach ($this->_getAllTableNames() as $tableName) {
- if ($tableName == "pradocache") {
- continue;
- }
- $this->generate($tableName);
- }
- }
-
- public function buildRelations() {
- $this->_relations = array();
- foreach ($this->_getAllTableNames() as $table_name) {
- $tableInfo = $this->_gateway->getTableInfo($this->_conn, $table_name);
- foreach ($tableInfo->getForeignKeys() as $fk_data) {
- $owner_table = $fk_data["table"];
- $slave_table = $table_name;
- $fk_prop = key($fk_data["keys"]);
-
- $this->_relations[$owner_table][] = array(
- "prop_name" => strtolower($slave_table),
- "rel_type" => "self::HAS_MANY",
- "ref_class_name" => $this->_getProperClassName($slave_table),
- "prop_ref" => $fk_prop
- );
-
- $this->_relations[$slave_table][] = array(
- "prop_name" => strtolower($owner_table),
- "rel_type" => "self::BELONGS_TO",
- "ref_class_name" => $this->_getProperClassName($owner_table),
- "prop_ref" => $fk_prop
- );
- }
- }
- }
-
-// </editor-fold>
-//-----------------------------------------------------------------------------
- // <editor-fold defaultstate="collapsed" desc="Common Methods">
-
- private function _getAllTableNames() {
- $command = $this->_conn->createCommand("Show Tables");
- $dataReader = $command->query();
- $dataReader->bindColumn(1, $table);
- $tables = array();
- while ($dataReader->read()) {
- $tables[] = $table;
- }
- return $tables;
- }
-
- private function _getProperClassName($tableName) {
- $table_name_words = str_replace("_", " ", strtolower($tableName));
- $final_conversion = str_replace(" ", "", ucwords($table_name_words));
- return $this->_clas_prefix . $final_conversion;
- }
-
- public function renderAllTablesInformation() {
- foreach ($this->_getAllTableNames() as $table_name) {
- echo $table_name . "<br>";
-
- $tableInfo = $this->_gateway->getTableInfo($this->_conn, $table_name);
- echo "Table info:" . "<br>";
- echo "<pre>";
- var_dump($tableInfo);
- echo "</pre>";
- }
- }
-
-//-----------------------------------------------------------------------------
-
- protected function generateProperty($field, $column) {
- $prop = '';
- $name = '$' . $field;
-
- /* TODO use in version 2.0 */
- // $type = $column->getPHPType();
-
- $prop .= "\tpublic $name;";
- return $prop;
- }
-
- private function _renderRelations($tablename) {
- if (!isset($this->_relations[$tablename])) {
- return "";
- }
- $code = "\tpublic static \$RELATIONS = array (";
- foreach ($this->_relations[$tablename] as $rel_data) {
- $code .= "\n\t\t'" . $rel_data["prop_name"] . "' => array(" . $rel_data["rel_type"] . ", '" . $rel_data["ref_class_name"] . "', '" . $rel_data["prop_ref"] . "'),";
- }
- $code = substr($code, 0, -1);
- $code .= "\n\t);";
- return $code;
- }
-
- private function _buildSmartToString($tableInfo) {
- $code = "\tpublic function __toString() {";
- $property = "throw new THttpException(500, 'Not implemented yet.');";
- try {
- foreach ($tableInfo->getColumns() as $column) {
- if (isset($column->IsPrimaryKey) && $column->IsPrimaryKey) {
- $property = str_replace(array("`", "'", '"'), "", $column->ColumnName);
- } elseif ($column->DbType == "varchar") {
- $property = str_replace(array("`", "'", '"'), "", $column->ColumnName);
- break;
- }
- }
- } catch (Exception $ex) {
-
- }
- $code .= "\n\t\treturn \$this->$property;";
- $code .= "\n\t}";
- return $code;
- }
-
- protected function generateClass($properties, $tablename, $classname, $toString) {
- $props = implode("\n", $properties);
- $relations = $this->_renderRelations($tablename);
- $date = date('Y-m-d h:i:s');
- return <<<EOD
-<?php
-/**
- * Auto generated by PRADO - WSAT on $date.
- * @author prado_user_name
- */
-class $classname extends TActiveRecord {
-
- const TABLE='$tablename';
-
-$props
-
- public static function finder(\$className=__CLASS__) {
- return parent::finder(\$className);
- }
-
-$relations
-
-$toString
-}
-?>
-EOD;
- }
-
-// </editor-fold>
-}
-
-?>
diff --git a/framework/Wsat/TWsatService.php b/framework/Wsat/TWsatService.php
deleted file mode 100644
index 3af34d49..00000000
--- a/framework/Wsat/TWsatService.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
-
-/**
- * Description of TWsat
- * Inspired in both Microsoft Web Site Administration Tool(WSAT) and Yii's Gii.
- * @version 1.0
- * @author Daniel Sampedro darthdaniel85@gmail.com
- * @since Prado 3.3
- *
- * To use TWsatService, configure it in the application configuration file like following:
- * <code>
- * <services>
- * ...
- * <service id="wsat" class="System.Wsat.TWsatService" Password="my_secret_password" />
- * </services>
- * </code>
- * ...and then you need to go to http://localhost/yoursite/index.php?wsat=TWsatLogin
- * and generate code and configure your site.
- */
-class TWsatService extends TPageService {
-
- private $_pass = '';
-
-//-----------------------------------------------------------------------------
- public function init($config) {
- if ($this->getApplication()->getMode() === TApplicationMode::Performance || $this->getApplication()->getMode() === TApplicationMode::Normal) {
- throw new TInvalidOperationException("You should not use Prado WSAT in any of the production modes.");
- }
- if (empty($this->_pass)) {
- throw new TConfigurationException("You need to specify the Password attribute.");
- }
- $this->setDefaultPage("TWsatHome");
- $this->_startThemeManager();
- parent::init($config);
- }
-
- public function getBasePath() {
- $basePath = Prado::getPathOfNamespace("System.Wsat.pages");
- return realpath($basePath);
- }
-
- private function _startThemeManager() {
- $themeManager = new TThemeManager;
- $themeManager->BasePath = "System.Wsat.themes";
- $url = Prado::getApplication()->getAssetManager()->publishFilePath(Prado::getPathOfNamespace('System.Wsat'));
- $themeManager->BaseUrl = $url . DIRECTORY_SEPARATOR . "themes";
-
- $themeManager->init(null);
- $this->setThemeManager($themeManager);
- }
-
- public function getPassword() {
- return $this->_pass;
- }
-
- public function setPassword($_pass) {
- $this->_pass = $_pass;
- }
-
-}
-
-?>
diff --git a/framework/Wsat/TWsatUserManager.php b/framework/Wsat/TWsatUserManager.php
deleted file mode 100644
index 1dfd2288..00000000
--- a/framework/Wsat/TWsatUserManager.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-
-Prado::using('System.Security.TUserManager');
-
-/**
- * Description of TWsatUserManager
- *
- * @author Daniel
- */
-class TWsatUserManager extends TUserManager {
-
- public function init($config) {
- parent::init($config);
- }
-
-}
-
-?>
diff --git a/framework/Wsat/pages/TWsatGenerateAR.page b/framework/Wsat/pages/TWsatGenerateAR.page
deleted file mode 100644
index acd456fd..00000000
--- a/framework/Wsat/pages/TWsatGenerateAR.page
+++ /dev/null
@@ -1,33 +0,0 @@
-<com:TContent ID="Content">
- <div style="margin-left: 220px; font-size: 14px">
- <div class="form_row">
- <com:TLabel Text="Table Name:" ForControl="table_name" style="margin-right: 24px" />
- <com:TTextBox ID="table_name" Text="*" CssClass="in_text" />
- <com:TRequiredFieldValidator ControlToValidate="table_name" Text="Table name cannot be blank." Display="Dynamic" />
- </div>
- <div class="form_row">
- <com:TLabel Text="Class Prefix:" ForControl="class_prefix" style="margin-right: 25px"/>
- <com:TTextBox ID="class_prefix" Text="AR_" CssClass="in_text" />
- </div>
- <div class="form_row">
- <com:TLabel Text="Output Folder:" ForControl="output_folder" style="margin-right: 8px"/>
- <com:TTextBox ID="output_folder" Text="Application.App_Data.AR_Classes" CssClass="in_text" />
- </div>
-
- <div class="form_row">
- <com:TLabel Text="Build Relations:" ForControl="build_rel"/>
- <com:TCheckBox ID="build_rel" Checked="true" />
- </div>
-
- <com:TPanel ID="success_panel" Visible="false">
- <com:TLabel ID="generation_msg" />
- </com:TPanel>
-
- <br/>
- <div style="text-align: center">
- <com:TButton Text="Preview" OnClick="preview" Visible="false" />
- <com:TButton Text="Generate" OnClick="generate" />
- </div>
- </div>
-
-</com:TContent>
diff --git a/framework/Wsat/pages/TWsatGenerateAR.php b/framework/Wsat/pages/TWsatGenerateAR.php
deleted file mode 100644
index 3d4291e2..00000000
--- a/framework/Wsat/pages/TWsatGenerateAR.php
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-
-/**
- * Description of Inicio
- *
- * @author daniels
- */
-Prado::using("System.Wsat.TWsatARGenerator");
-
-class TWsatGenerateAR extends TPage {
-
- public function generate($sender) {
- if ($this->IsValid) {
- $table_name = $this->table_name->Text;
- $class_prefix = $this->class_prefix->Text;
- $output_folder_ns = $this->output_folder->Text;
-
- try {
- $ar_generator = new TWsatARGenerator();
- $ar_generator->setOpFile($output_folder_ns);
- $ar_generator->setClasPrefix($class_prefix);
-
- if ($this->build_rel->Checked) {
- $ar_generator->buildRelations();
- }
- if ($table_name != "*") {
- $ar_generator->generate($table_name);
- } else {
- $ar_generator->generateAll();
- }
- $this->success_panel->CssClass = "success_panel";
- $this->generation_msg->Text = "The code has been generated successfully.";
- } catch (Exception $ex) {
- $this->success_panel->CssClass = "exception_panel";
- $this->generation_msg->Text = $ex->getMessage();
- }
- $this->success_panel->Visible = true;
- }
- }
-
- public function preview($sender) {
-// $ar_generator = new TWsatARGenerator();
-// $ar_generator->renderAllTablesInformation();
- throw new THttpException(500, "Not implemented yet.");
- }
-
-}
-
-?> \ No newline at end of file
diff --git a/framework/Wsat/pages/TWsatHome.page b/framework/Wsat/pages/TWsatHome.page
deleted file mode 100644
index 16aa3669..00000000
--- a/framework/Wsat/pages/TWsatHome.page
+++ /dev/null
@@ -1,5 +0,0 @@
-<com:TContent ID="Content">
- <label style="font-size: 18px; font-weight: bold">Welcome to Web Site Administration Tool</label>
-
- <div style="margin-top: 25px"><b>Application Dir:</b> <%= Prado::getPathOfNamespace('Application') %></div>
-</com:TContent>
diff --git a/framework/Wsat/pages/TWsatHome.php b/framework/Wsat/pages/TWsatHome.php
deleted file mode 100644
index a7430911..00000000
--- a/framework/Wsat/pages/TWsatHome.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-
-/**
- * Description of Inicio
- *
- * @author daniels
- */
-Prado::using("System.Wsat.TWsatARGenerator");
-
-class TWsatHome extends TPage {
-
-
-}
-
-?> \ No newline at end of file
diff --git a/framework/Wsat/pages/TWsatLogin.page b/framework/Wsat/pages/TWsatLogin.page
deleted file mode 100644
index d0a94f2a..00000000
--- a/framework/Wsat/pages/TWsatLogin.page
+++ /dev/null
@@ -1,45 +0,0 @@
-<%@ MasterClass="" %>
-
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
- <com:THead Title="PRADO - WSAT">
- <com:TMetaTag HttpEquiv="Content-Type" Content="text/html; charset=utf-8" />
- <com:TMetaTag HttpEquiv="Content-Language" Content="en" />
- </com:THead>
-
- <body>
- <com:TForm>
-
- <div id="header">
- <a href="<%= $this->Service->DefaultPageUrl %>">
- <div class="logo"></div>
- <div style="float: left; margin-top: 17px">PRADO <br /> Web Site Administration Tool</div>
- </a>
- <div class="mantisbg"></div>
- <div style="clear: both"></div>
- </div>
-
- <div class="mainmenu">
- <div style="float: right"><com:THyperLink NavigateUrl="http://www.pradosoft.com/" Text="PradoSoft.com" Target="_blank" />&nbsp;|&nbsp;</div>
- <div style="float: right"><com:THyperLink NavigateUrl="<%= $this->Service->DefaultPageUrl %>" Text="Web App" Target="_blank" />&nbsp;|&nbsp;</div>
- <div style="float: right"><com:THyperLink NavigateUrl="http://www.pradosoft.com/forum/" Text="Help" Target="_blank" />&nbsp;|&nbsp;</div>
- <div style="clear: both"></div>
- </div>
-
- <div class="login_form">
- <com:TLabel Text="Please enter your password:" ForControl="password"/><br/>
- <com:TTextBox ID="password" TextMode="Password" style="margin: 5px" /><br/>
- <com:TRequiredFieldValidator ControlToValidate="password" ValidationGroup="loginGroup" Text="Password cannot be blank." /><br/>
- <com:TCustomValidator ControlToValidate="password" ValidationGroup="loginGroup" OnServerValidate="validatePassword" Text="Incorrect password." />
-
- <com:TButton Text="Enter" ValidationGroup="loginGroup" OnClick="login" />
- </div>
-
- <div id="footer">
- Copyright &copy; 2005-<%= date('Y') %> <a href="http://www.pradosoft.com">PradoSoft</a>.
- <br/><br/>
- <%= Prado::poweredByPrado() %>
- </div>
- </com:TForm>
- </body>
-</html>
diff --git a/framework/Wsat/pages/TWsatLogin.php b/framework/Wsat/pages/TWsatLogin.php
deleted file mode 100644
index 69f8cc39..00000000
--- a/framework/Wsat/pages/TWsatLogin.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-
-/**
- * Description of Inicio
- *
- * @author daniels
- */
-class TWsatLogin extends TPage {
-
- public function login() {
- $config_pass = $this->getService()->getPassword();
- $user_pass = $this->password->Text;
-
- if ($user_pass === $config_pass) {
- $this->Session["wsat_password"] = $config_pass;
-
- $authManager = $this->Application->getModule('auth');
- $url = $authManager->ReturnUrl;
- if (empty($url)) {
- $url = $this->Service->constructUrl('TWsatHome');
- }
- $this->Response->redirect($url);
- } else {
- echo "user or pass wrong";
- }
- }
-
-}
-
-?> \ No newline at end of file
diff --git a/framework/Wsat/pages/TWsatScaffolding.page b/framework/Wsat/pages/TWsatScaffolding.page
deleted file mode 100644
index 42f78d09..00000000
--- a/framework/Wsat/pages/TWsatScaffolding.page
+++ /dev/null
@@ -1,3 +0,0 @@
-<com:TContent ID="Content">
- Scaffolding will be avaliable in Prado 3.4
-</com:TContent>
diff --git a/framework/Wsat/pages/TWsatScaffolding.php b/framework/Wsat/pages/TWsatScaffolding.php
deleted file mode 100644
index ce5860d3..00000000
--- a/framework/Wsat/pages/TWsatScaffolding.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-
-/**
- * Description of Inicio
- *
- * @author daniels
- */
-Prado::using("System.Wsat.TWsatARGenerator");
-
-class TWsatScaffolding extends TPage {
-
-
-}
-
-?> \ No newline at end of file
diff --git a/framework/Wsat/pages/config.xml b/framework/Wsat/pages/config.xml
deleted file mode 100644
index 3ed8ea41..00000000
--- a/framework/Wsat/pages/config.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<configuration>
- <pages Theme="PradoSoft" MasterClass="System.Wsat.pages.layout.TWsatLayout" />
-</configuration> \ No newline at end of file
diff --git a/framework/Wsat/pages/layout/TWsatLayout.php b/framework/Wsat/pages/layout/TWsatLayout.php
deleted file mode 100644
index ce337265..00000000
--- a/framework/Wsat/pages/layout/TWsatLayout.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-/**
- * Description of MainLayout
- *
- * @author daniels
- */
-class TWsatLayout extends TTemplateControl {
-
- public function onLoad($param) {
- parent::onLoad($param);
- $this->validateSecurity();
- }
-
- private function validateSecurity() {
- if ($this->Session["wsat_password"] !== $this->getService()->getPassword()) {
- if (!$this->getPage() instanceof TWsatLogin) {
- $url = $this->Service->constructUrl('TWsatLogin');
- $this->Response->redirect($url);
- }
- }
- }
-
- public function logout() {
- $this->Session["wsat_password"] = "";
- $url = $this->Service->constructUrl('TWsatLogin');
- $this->Response->redirect($url);
- }
-
-}
-
-?> \ No newline at end of file
diff --git a/framework/Wsat/pages/layout/TWsatLayout.tpl b/framework/Wsat/pages/layout/TWsatLayout.tpl
deleted file mode 100644
index d91ff333..00000000
--- a/framework/Wsat/pages/layout/TWsatLayout.tpl
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
- <com:THead Title="PRADO - WSAT">
- <com:TMetaTag HttpEquiv="Content-Type" Content="text/html; charset=utf-8" />
- <com:TMetaTag HttpEquiv="Content-Language" Content="en" />
- </com:THead>
-
- <body>
- <com:TForm>
-
- <div id="header">
- <a href="<%= $this->Service->DefaultPageUrl %>">
- <div class="logo"></div>
- <div style="float: left; margin-top: 17px">PRADO <br /> Web Site Administration Tool</div>
- </a>
- <div class="mantisbg"></div>
- <div style="clear: both"></div>
- </div>
-
- <div class="mainmenu">
- <div style="float: right"><com:TLinkButton Text="Logout" OnClick="logout" /></div>
- <div style="float: right"><com:THyperLink NavigateUrl="http://www.pradosoft.com/" Text="PradoSoft.com" Target="_blank" />&nbsp;|&nbsp;</div>
- <div style="float: right"><com:THyperLink NavigateUrl="<%= $this->Service->DefaultPageUrl %>" Text="Web App" Target="_blank" />&nbsp;|&nbsp;</div>
- <div style="float: right"><com:THyperLink NavigateUrl="http://www.pradosoft.com/forum/" Text="Help" Target="_blank" />&nbsp;|&nbsp;</div>
- <div style="clear: both"></div>
- </div>
-
- <div id="central_div">
- <div id="toc">
- <div class="topic">
- <div>Code Generation</div>
- <ul>
- <li><com:THyperLink NavigateUrl="<%= $this->Service->constructUrl('TWsatGenerateAR') %>" Text="AR Classes" /></li>
- <li><com:THyperLink NavigateUrl="<%= $this->Service->constructUrl('TWsatScaffolding') %>" Text="Scaffolding" /></li>
- </ul>
- </div>
- </div>
-
- <div id="content">
- <com:TContentPlaceHolder ID="Content" />
- </div>
-
- <div style="clear: both"></div>
- </div>
-
- <div id="footer">
- Copyright &copy; 2005-<%= date('Y') %> <a href="http://www.pradosoft.com">PradoSoft</a>.
- <br/><br/>
- <%= Prado::poweredByPrado() %>
- </div>
- </com:TForm>
- </body>
-</html> \ No newline at end of file
diff --git a/framework/Wsat/themes/.htaccess b/framework/Wsat/themes/.htaccess
deleted file mode 100644
index f7661d04..00000000
--- a/framework/Wsat/themes/.htaccess
+++ /dev/null
@@ -1 +0,0 @@
-allow from all
diff --git a/framework/Wsat/themes/PradoSoft/imgs/arrowdown.gif b/framework/Wsat/themes/PradoSoft/imgs/arrowdown.gif
deleted file mode 100644
index 1b508cd6..00000000
--- a/framework/Wsat/themes/PradoSoft/imgs/arrowdown.gif
+++ /dev/null
Binary files differ
diff --git a/framework/Wsat/themes/PradoSoft/imgs/mantisbg.jpg b/framework/Wsat/themes/PradoSoft/imgs/mantisbg.jpg
deleted file mode 100644
index ee06998d..00000000
--- a/framework/Wsat/themes/PradoSoft/imgs/mantisbg.jpg
+++ /dev/null
Binary files differ
diff --git a/framework/Wsat/themes/PradoSoft/imgs/pradologo.gif b/framework/Wsat/themes/PradoSoft/imgs/pradologo.gif
deleted file mode 100644
index 3b073b80..00000000
--- a/framework/Wsat/themes/PradoSoft/imgs/pradologo.gif
+++ /dev/null
Binary files differ
diff --git a/framework/Wsat/themes/PradoSoft/main.css b/framework/Wsat/themes/PradoSoft/main.css
deleted file mode 100644
index ed36c238..00000000
--- a/framework/Wsat/themes/PradoSoft/main.css
+++ /dev/null
@@ -1,133 +0,0 @@
-html, body{
- margin: 0px;
- padding: 0px;
- font-family: 'Lucida Grande', Verdana, Geneva, Lucida, Helvetica, Arial, sans-serif;
- font-weight: normal;
-}
-
-#header {
- font-size:25px;
- font-weight:bold;
- color: #666;
-}
-
-.logo{
- width: 204px;
- height:100px;
- background-image: url('imgs/pradologo.gif');
- background-repeat: no-repeat;
- float: left;
-}
-
-.mantisbg{
- width: 221px;
- height: 100px;
- background-image: url('imgs/mantisbg.jpg');
- background-repeat: no-repeat;
- float: right;
-}
-
-.mainmenu {
- padding:10px;
- padding-right:10px;
- background:#EDEDED;
- border-bottom: 1px solid #A6A6A6;
- border-top: 1px solid #DCDCDC;
- color:white;
- text-align:right;
- font-size: 10pt;
-}
-
-.mainmenu a {
- color:#737373;
- text-decoration:none;
-}
-
-.mainmenu a:hover {
- color: #FF0000;
-}
-
-#toc {
- background-color: #F3F3F3;
- width:220px;
- padding:0px 10px 0px 10px;
- float: left;
-}
-
-#content {
- padding: 1em 1em 1em 1em;
- line-height: 135%;
- float: left;
-}
-
-.topic {
- font-size: 9pt;
- padding: 0px 0px 0px 0px;
-}
-
-.topic div {
- background-image: url('imgs/arrowdown.gif');
- background-repeat: no-repeat;
- background-position: left center;
- margin: 0px;
- font-size: 8pt;
- font-weight:bold;
- color:#2A480A;
- padding: 5px;
- padding-left: 15px;
- border-top: 1px solid #fff;
- border-bottom: 1px solid #E2E2E2;
-}
-
-.topic ul
-{
- margin: 0px;
- padding: 0px;
-}
-
-.topic ul li
-{
- list-style: none;
- margin: 0px;
- padding: 5px;
- padding-left: 15px;
- border-bottom: 1px dotted #D8D8D8;
-}
-
-.topic a {
- color:#4F811A;
- font-size: 8pt;
- text-decoration: none;
-}
-
-.topic a:hover {
- color:#2A480A;
-}
-
-/* form styles */
-.form_row{
- margin: 10px;
-}
-
-.in_text{
- width: 250px;
-}
-
-.login_form{
- text-align: center;
- margin: 30px auto;
- border: 1px solid red;
- border-radius: 5px;
- padding: 10px;
- width: 250px;
- font-size: 11px;
-}
-
-#footer {
- clear:both;
- color: gray;
- font-size:8pt;
- text-align:center;
- margin-top:25px;
- padding:10px;
-} \ No newline at end of file