Skip to content

Commit

Permalink
Dev Added views & layouts
Browse files Browse the repository at this point in the history
Dev Added database update code.
  • Loading branch information
SamMousa committed Mar 5, 2013
1 parent 234208a commit e0dfdf8
Show file tree
Hide file tree
Showing 9 changed files with 245 additions and 2 deletions.
4 changes: 2 additions & 2 deletions application/config/version.php
Expand Up @@ -12,8 +12,8 @@
*
*/

$config['versionnumber'] = "2.00+";
$config['dbversionnumber'] = 164;
$config['versionnumber'] = "2.05";
$config['dbversionnumber'] = 165;
$config['buildnumber'] = '';
$config['updatable'] = true;

Expand Down
18 changes: 18 additions & 0 deletions application/helpers/update/updatedb_helper.php
Expand Up @@ -1050,6 +1050,24 @@ function db_upgrade_all($oldversion) {

// Not updating settings table as upgrade process takes care of that step now
}

if ($oldversion < 165)
{
Yii::app()->db->createCommand()->createTable('{{plugins}}', array(
'id' => 'pk',
'name' => 'string NOT NULL',
'active' => 'boolean'
));
Yii::app()->db->createCommand()->createTable('{{plugin_settings}}', array(
'id' => 'pk',
'plugin_id' => 'integer NOT NULL',
'model' => 'string',
'model_id' => 'integer',
'key' => 'string',
'value' => 'text'
));
Yii::app()->db->createCommand()->update('{{settings_global}}',array('stg_value'=>165),"stg_name='DBVersion'");
}
$oTransaction->commit();
}
catch(Exception $e)
Expand Down
54 changes: 54 additions & 0 deletions application/views/layouts/main.php
@@ -0,0 +1,54 @@
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<?php
/* @var $cs CClientScript */
$cs=Yii::app()->getClientScript();
$cs->registerCoreScript('jquery');
$cs->registerScriptFile(Yii::app()->getConfig('third_party') . 'jqueryui/js/jquery-ui-1.10.0.custom.js');
$cs->registerScriptFile(Yii::app()->getConfig('generalscripts') . 'jquery/jquery.ui.touch-punch.min.js');
$cs->registerScriptFile(Yii::app()->getConfig('generalscripts') . 'jquery/jquery.qtip.js');
$cs->registerScriptFile(Yii::app()->getConfig('generalscripts') . 'jquery/jquery.notify.js');
$cs->registerScriptFile(Yii::app()->getConfig('adminscripts') . 'admin_core.js');
$cs->registerScript('LimeScript', $this->widget('ext.LimeScript.LimeScript', array(), true), CClientScript::POS_HEAD);
?>

<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->getConfig('third_party');?>jqueryui/css/smoothness/jquery-ui-1.10.0.custom.css" />
<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->getConfig('adminstyleurl');?>/jquery-ui/jquery-ui.css" />
<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->getConfig('adminstyleurl');?>printablestyle.css" media="print" />
<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->getConfig('adminstyleurl');?>adminstyle.css" />
<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->getConfig('styleurl');?>adminstyle.css" />
<?php
if(!empty($css_admin_includes)) {
foreach ($css_admin_includes as $cssinclude)
{
?>
<link rel="stylesheet" type="text/css" media="all" href="<?php echo $cssinclude; ?>" />
<?php
}
}
/*if ($bIsRTL){?>
<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->getConfig('adminstyleurl');?>adminstyle-rtl.css" /><?php
}*/
?>
<link rel="shortcut icon" href="<?php echo App()->baseUrl; ?>styles/favicon.ico" type="image/x-icon" />
<link rel="icon" href="<?php echo App()->baseUrl; ?>styles/favicon.ico" type="image/x-icon" />
<?php //echo $firebug ?>


<title>Limesurvey Administration</title>

</head>
<body>
<?php $this->widget('ext.FlashMessage.FlashMessage'); ?>
<?php $this->widget('ext.Menu.MenuWidget', $this->navData); ?>
<div id="content">
<?php echo $content; ?>
</div>
<div id="ajaxprogress" title="Ajax request in progress" style="text-align: center">
<img src="<?php echo Yii::app()->getConfig('adminstyleurl');?>/images/ajax-loader.gif"/>
</div>
</body>

</html>
52 changes: 52 additions & 0 deletions application/views/layouts/survey.php
@@ -0,0 +1,52 @@
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<?php

/* @var $cs CClientScript */
$cs=Yii::app()->getClientScript();
$cs->registerCoreScript('jquery');
$cs->registerScriptFile(Yii::app()->getConfig('third_party') . 'jqueryui/js/jquery-ui-1.10.0.custom.js');
$cs->registerScriptFile(Yii::app()->getConfig('generalscripts') . 'jquery/jquery.ui.touch-punch.min.js');
$cs->registerScriptFile(Yii::app()->getConfig('generalscripts') . 'jquery/jquery.qtip.js');
$cs->registerScriptFile(Yii::app()->getConfig('generalscripts') . 'jquery/jquery.notify.js');
$cs->registerScriptFile(Yii::app()->createUrl('config/script'));
$cs->registerScriptFile(Yii::app()->getConfig('adminscripts') . 'admin_core.js');
?>

<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->getConfig('third_party');?>jqueryui/css/smoothness/jquery-ui-1.10.0.custom.css" />
<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->getConfig('adminstyleurl');?>/jquery-ui/jquery-ui.css" />
<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->getConfig('adminstyleurl');?>printablestyle.css" media="print" />
<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->getConfig('adminstyleurl');?>adminstyle.css" />
<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->getConfig('styleurl');?>adminstyle.css" />
<?php
if(!empty($css_admin_includes)) {
foreach ($css_admin_includes as $cssinclude)
{
?>
<link rel="stylesheet" type="text/css" media="all" href="<?php echo $cssinclude; ?>" />
<?php
}
}
/*if ($bIsRTL){?>
<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->getConfig('adminstyleurl');?>adminstyle-rtl.css" /><?php
}*/
?>
<link rel="shortcut icon" href="<?php echo App()->baseUrl; ?>styles/favicon.ico" type="image/x-icon" />
<link rel="icon" href="<?php echo App()->baseUrl; ?>styles/favicon.ico" type="image/x-icon" />


<title>Limesurvey</title>
</head>
<body>
<?php $this->widget('ext.FlashMessage.FlashMessage'); ?>
<div id="content">
<?php echo $content; ?>
</div>
<div id="ajaxprogress" title="Ajax request in progress" style="text-align: center">
<img src="<?php echo Yii::app()->getConfig('adminstyleurl');?>/images/ajax-loader.gif"/>
</div>
</body>

</html>
32 changes: 32 additions & 0 deletions application/views/plugins/configure.php
@@ -0,0 +1,32 @@
<?php
App()->getClientScript()->registerCssFile('/styles/configure.css');

?>
<div id="plugin-<?php echo isset($plugin['name']) ? $plugin['name'] : ''; ?>">


<div class="pluginsettings">
<?php
if (isset($plugin['name']))
{
echo CHtml::tag('h1', array(), "Settings for plugin {$plugin['name']}");
}

Yii::import("application.helpers.PluginSettingsHelper");
$PluginSettings = new PluginSettingsHelper();

echo CHtml::beginForm('', 'post', array('id' => "pluginsettings-{$plugin['name']}"));
echo CHtml::openTag('ol');
foreach ($settings as $name => $setting)
{
echo CHtml::tag('li', array(), $PluginSettings->renderSetting($name, $setting, "pluginsettings-{$plugin['name']}", true));

}
echo CHtml::closeTag('ol');
echo CHtml::submitButton('Save plugin settings');
echo CHtml::endForm();

?>

</div>
</div>
34 changes: 34 additions & 0 deletions application/views/plugins/index.php
@@ -0,0 +1,34 @@
<div style="width: 50%; margin: auto;">
<?php
/* @var $this ConfigController */
/* @var $dataProvider CActiveDataProvider */
$dataProvider = new CArrayDataProvider($data);
$gridColumns = array(
array(// display the 'name' attribute
'class' => 'CLinkColumn',
'header' => 'Plugin',
'labelExpression' => function($data) { return $data['name']; },
'urlExpression' => function($data) { return array("/plugins/configure", "id" => $data['id']); }
),
array(// display the activation link
'class' => 'CLinkColumn',
'header' => 'Activation status',
'labelExpression' => function($data) { return ($data['active'] == 0 ? 'activate' : 'deactivate'); },
'urlExpression' => function($data) { return $data['active'] == 0 ? array("/plugins/activate", "id" => $data['id']) : array("/plugins/activate", "id" => $data['id']); }
)
);
/*
array( // display a column with "view", "update" and "delete" buttons
'class' => 'CallbackColumn',
'label' => function($data) { return ($data->active == 1) ? "deactivate": "activate"; },
'url' => function($data) { return array("/plugins/activate", "id"=>$data["id"]); }
)
);
*/
$this->widget('application.extensions.GridViewWidget', array(
'dataProvider'=>$dataProvider,
'columns'=>$gridColumns,
'rowCssClassExpression'=> function ($data, $row) { return ($row % 2 ? 'even' : 'odd') . ' ' . ($data['new']==1 ? "new" : "old"); },
));
?>
</div>
16 changes: 16 additions & 0 deletions installer/sql/create-mssql.sql
Expand Up @@ -527,6 +527,22 @@ CREATE TABLE [prefix_templates] (
PRIMARY KEY ([folder])
);

CREATE TABLE [prefix_plugins] (
[id] int(11) NOT NULL identity(1,1),
[name] varchar(50) NOT NULL,
[active] int(1) NOT NULL default '0',
PRIMARY KEY (`id`)
);

CREATE TABLE [prefix_plugin_settings] (
[id] int(11) NOT NULL IDENTITY(1,1),
[plugin_id] int(11) NOT NULL,
[model] varchar(50) NULL,
[model_id] int(11) NULL,
[key] varchar(50) NOT NULL,
[value] text NULL,
PRIMARY KEY (`id`),
);

--
-- Secondary indexes
Expand Down
19 changes: 19 additions & 0 deletions installer/sql/create-mysql.sql
Expand Up @@ -533,6 +533,25 @@ CREATE TABLE `prefix_templates` (
PRIMARY KEY (`folder`)
) ENGINE=MYISAM CHARACTER SET utf8 COLLATE utf8_unicode_ci;

--
-- @todo Make name unique
--
CREATE TABLE `prefix_plugins` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(50) NOT NULL,
`active` int(1) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MYISAM CHARACTER SET utf8 COLLATE utf8_unicode_ci;

CREATE TABLE `prefix_plugin_settings` (
`id` int(11) NOT NULL auto_increment,
`plugin_id` int(11) NOT NULL,
`model` varchar(50) NULL,
`model_id` int(11) NULL,
`key` varchar(50) NOT NULL,
`value` text NULL,
PRIMARY KEY (`id`)
) ENGINE=MYISAM AUTO_INCREMENT=1 CHARACTER SET utf8 COLLATE utf8_unicode_ci;

--
-- Secondary indexes
Expand Down
18 changes: 18 additions & 0 deletions installer/sql/create-pgsql.sql
Expand Up @@ -538,6 +538,24 @@ CREATE TABLE prefix_templates (
CONSTRAINT prefix_templates_pkey PRIMARY KEY ("folder")
);

--
-- @todo Make name unique
--

CREATE TABLE `prefix_plugins` (
`id` integer PRIMARY KEY NOT NULL,
`name` character varying(50) NOT NULL,
`active` integer NOT NULL default '0'
);

CREATE TABLE `prefix_plugin_settings` (
`id` integer PRIMARY KEY NOT NULL,
`plugin_id` integer NOT NULL,
`model` character varying(50) NULL,
`model_id` integer NULL,
`key` character varying(50) NOT NULL,
`value` text NULL
);

--
-- Secondary indexes
Expand Down

0 comments on commit e0dfdf8

Please sign in to comment.