Added (slidely adjusted) auto generated CRUD for db::Programme
This commit is contained in:
@@ -33,6 +33,7 @@ return ArrayX::merge(
|
||||
'bootstrap.components.*',
|
||||
'bootstrap.behaviors.*',
|
||||
'bootstrap.helpers.*',
|
||||
'bootstrap.widgets.*',
|
||||
],
|
||||
|
||||
'modules' =>
|
||||
@@ -64,8 +65,9 @@ return ArrayX::merge(
|
||||
'rules' =>
|
||||
[
|
||||
|
||||
'' => 'site/index',
|
||||
'<action:\w+>' => 'site/<action>',
|
||||
|
||||
'Programme/' => 'Programme/index',
|
||||
'Programme/<action:\w+>' => 'programme/<action>',
|
||||
|
||||
'gii' => 'gii',
|
||||
'gii/<controller:\w+>' => 'gii/<controller>',
|
||||
@@ -73,7 +75,11 @@ return ArrayX::merge(
|
||||
|
||||
//'<controller:\w+>/<id:\d+>' => '<controller>/view',
|
||||
//'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
|
||||
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
|
||||
//'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
|
||||
|
||||
|
||||
'' => 'site/index',
|
||||
//'<action:\w+>' => 'site/<action>',
|
||||
],
|
||||
],
|
||||
|
||||
|
||||
179
www/protected/controllers/ProgrammeController.php
Normal file
179
www/protected/controllers/ProgrammeController.php
Normal file
@@ -0,0 +1,179 @@
|
||||
<?php
|
||||
|
||||
class ProgrammeController extends Controller
|
||||
{
|
||||
|
||||
public $layout='//layouts/column2';
|
||||
|
||||
public $selectedNav = '';
|
||||
|
||||
/**
|
||||
* @return array action filters
|
||||
*/
|
||||
public function filters()
|
||||
{
|
||||
return array(
|
||||
'accessControl', // perform access control for CRUD operations
|
||||
'postOnly + delete', // we only allow deletion via POST request
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Specifies the access control rules.
|
||||
* This method is used by the 'accessControl' filter.
|
||||
* @return array access control rules
|
||||
*/
|
||||
public function accessRules()
|
||||
{
|
||||
return array(
|
||||
array('allow', // allow all users to perform 'index' and 'view' actions
|
||||
'actions'=>array('index','view','create','update','admin','delete'),
|
||||
'users'=>array('*'),
|
||||
),
|
||||
// array('allow', // allow authenticated user to perform 'create' and 'update' actions
|
||||
// 'actions'=>array('create','update'),
|
||||
// 'users'=>array('@'),
|
||||
// ),
|
||||
// array('allow', // allow admin user to perform 'admin' and 'delete' actions
|
||||
// 'actions'=>array('admin','delete'),
|
||||
// 'users'=>array('admin'),
|
||||
// ),
|
||||
// array('deny', // deny all users
|
||||
// 'users'=>array('*'),
|
||||
// ),
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Displays a particular model.
|
||||
* @param integer $id the ID of the model to be displayed
|
||||
*/
|
||||
public function actionView($id)
|
||||
{
|
||||
$this->render('view',array(
|
||||
'model'=>$this->loadModel($id),
|
||||
));
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a new model.
|
||||
* If creation is successful, the browser will be redirected to the 'view' page.
|
||||
*/
|
||||
public function actionCreate()
|
||||
{
|
||||
$model=new Programme;
|
||||
|
||||
// Uncomment the following line if AJAX validation is needed
|
||||
// $this->performAjaxValidation($model);
|
||||
|
||||
if (isset($_POST['Programme'])) {
|
||||
$model->attributes=$_POST['Programme'];
|
||||
if ($model->save()) {
|
||||
$this->redirect(array('view','id'=>$model->ID));
|
||||
}
|
||||
}
|
||||
|
||||
$this->render('create',array(
|
||||
'model'=>$model,
|
||||
));
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a particular model.
|
||||
* If update is successful, the browser will be redirected to the 'view' page.
|
||||
* @param integer $id the ID of the model to be updated
|
||||
*/
|
||||
public function actionUpdate($id)
|
||||
{
|
||||
$model=$this->loadModel($id);
|
||||
|
||||
// Uncomment the following line if AJAX validation is needed
|
||||
// $this->performAjaxValidation($model);
|
||||
|
||||
if (isset($_POST['Programme'])) {
|
||||
$model->attributes=$_POST['Programme'];
|
||||
if ($model->save()) {
|
||||
$this->redirect(array('view','id'=>$model->ID));
|
||||
}
|
||||
}
|
||||
|
||||
$this->render('update',array(
|
||||
'model'=>$model,
|
||||
));
|
||||
}
|
||||
|
||||
/**
|
||||
* Deletes a particular model.
|
||||
* If deletion is successful, the browser will be redirected to the 'admin' page.
|
||||
* @param integer $id the ID of the model to be deleted
|
||||
*/
|
||||
public function actionDelete($id)
|
||||
{
|
||||
if (Yii::app()->request->isPostRequest) {
|
||||
// we only allow deletion via POST request
|
||||
$this->loadModel($id)->delete();
|
||||
|
||||
// if AJAX request (triggered by deletion via admin grid view), we should not redirect the browser
|
||||
if (!isset($_GET['ajax'])) {
|
||||
$this->redirect(isset($_POST['returnUrl']) ? $_POST['returnUrl'] : array('admin'));
|
||||
}
|
||||
} else {
|
||||
throw new CHttpException(400,'Invalid request. Please do not repeat this request again.');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Lists all models.
|
||||
*/
|
||||
public function actionIndex()
|
||||
{
|
||||
$dataProvider=new CActiveDataProvider('Programme');
|
||||
$this->render('index',array(
|
||||
'dataProvider'=>$dataProvider,
|
||||
));
|
||||
}
|
||||
|
||||
/**
|
||||
* Manages all models.
|
||||
*/
|
||||
public function actionAdmin()
|
||||
{
|
||||
$model=new Programme('search');
|
||||
$model->unsetAttributes(); // clear any default values
|
||||
if (isset($_GET['Programme'])) {
|
||||
$model->attributes=$_GET['Programme'];
|
||||
}
|
||||
|
||||
$this->render('admin',array(
|
||||
'model'=>$model,
|
||||
));
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the data model based on the primary key given in the GET variable.
|
||||
* If the data model is not found, an HTTP exception will be raised.
|
||||
* @param integer $id the ID of the model to be loaded
|
||||
* @return Programme the loaded model
|
||||
* @throws CHttpException
|
||||
*/
|
||||
public function loadModel($id)
|
||||
{
|
||||
$model=Programme::model()->findByPk($id);
|
||||
if ($model===null) {
|
||||
throw new CHttpException(404,'The requested page does not exist.');
|
||||
}
|
||||
return $model;
|
||||
}
|
||||
|
||||
/**
|
||||
* Performs the AJAX validation.
|
||||
* @param Programme $model the model to be validated
|
||||
*/
|
||||
protected function performAjaxValidation($model)
|
||||
{
|
||||
if (isset($_POST['ajax']) && $_POST['ajax']==='programme-form') {
|
||||
echo CActiveForm::validate($model);
|
||||
Yii::app()->end();
|
||||
}
|
||||
}
|
||||
}
|
||||
144
www/protected/models/Programme.php
Normal file
144
www/protected/models/Programme.php
Normal file
@@ -0,0 +1,144 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* This is the model class for table "programme".
|
||||
*
|
||||
* The followings are the available columns in table 'programme':
|
||||
* @property integer $ID
|
||||
* @property string $Name
|
||||
* @property double $Downloads
|
||||
* @property string $Kategorie
|
||||
* @property double $Sterne
|
||||
* @property integer $enabled
|
||||
* @property integer $visible
|
||||
* @property string $Language
|
||||
* @property string $Description
|
||||
* @property string $add_date
|
||||
* @property string $download_url
|
||||
* @property integer $viewable_code
|
||||
* @property string $sourceforge_url
|
||||
* @property string $homepage_url
|
||||
* @property string $github_url
|
||||
* @property integer $uses_absCanv
|
||||
* @property string $update_identifier
|
||||
* @property integer $highscore_gid
|
||||
*/
|
||||
class Programme extends CActiveRecord
|
||||
{
|
||||
/**
|
||||
* @return string the associated database table name
|
||||
*/
|
||||
public function tableName()
|
||||
{
|
||||
return 'programme';
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array validation rules for model attributes.
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
// NOTE: you should only define rules for those attributes that
|
||||
// will receive user inputs.
|
||||
return array(
|
||||
array('Name, Downloads, Kategorie, Sterne, enabled, visible, Language, Description, add_date, download_url, viewable_code, sourceforge_url, homepage_url, github_url, uses_absCanv, update_identifier', 'required'),
|
||||
array('enabled, visible, viewable_code, uses_absCanv, highscore_gid', 'numerical', 'integerOnly'=>true),
|
||||
array('Downloads, Sterne', 'numerical'),
|
||||
array('update_identifier', 'length', 'max'=>28),
|
||||
// The following rule is used by search().
|
||||
// @todo Please remove those attributes that should not be searched.
|
||||
array('ID, Name, Downloads, Kategorie, Sterne, enabled, visible, Language, Description, add_date, download_url, viewable_code, sourceforge_url, homepage_url, github_url, uses_absCanv, update_identifier, highscore_gid', 'safe', 'on'=>'search'),
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array relational rules.
|
||||
*/
|
||||
public function relations()
|
||||
{
|
||||
// NOTE: you may need to adjust the relation name and the related
|
||||
// class name for the relations automatically generated below.
|
||||
return array(
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array customized attribute labels (name=>label)
|
||||
*/
|
||||
public function attributeLabels()
|
||||
{
|
||||
return array(
|
||||
'ID' => 'ID',
|
||||
'Name' => 'Name',
|
||||
'Downloads' => 'Downloads',
|
||||
'Kategorie' => 'Kategorie',
|
||||
'Sterne' => 'Sterne',
|
||||
'enabled' => 'Enabled',
|
||||
'visible' => 'Visible',
|
||||
'Language' => 'Language',
|
||||
'Description' => 'Description',
|
||||
'add_date' => 'Add Date',
|
||||
'download_url' => 'Download Url',
|
||||
'viewable_code' => 'Viewable Code',
|
||||
'sourceforge_url' => 'Sourceforge Url',
|
||||
'homepage_url' => 'Homepage Url',
|
||||
'github_url' => 'Github Url',
|
||||
'uses_absCanv' => 'Uses Abs Canv',
|
||||
'update_identifier' => 'Update Identifier',
|
||||
'highscore_gid' => 'Highscore Gid',
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieves a list of models based on the current search/filter conditions.
|
||||
*
|
||||
* Typical usecase:
|
||||
* - Initialize the model fields with values from filter form.
|
||||
* - Execute this method to get CActiveDataProvider instance which will filter
|
||||
* models according to data in model fields.
|
||||
* - Pass data provider to CGridView, CListView or any similar widget.
|
||||
*
|
||||
* @return CActiveDataProvider the data provider that can return the models
|
||||
* based on the search/filter conditions.
|
||||
*/
|
||||
public function search()
|
||||
{
|
||||
// @todo Please modify the following code to remove attributes that should not be searched.
|
||||
|
||||
$criteria=new CDbCriteria;
|
||||
|
||||
$criteria->compare('ID',$this->ID);
|
||||
$criteria->compare('Name',$this->Name,true);
|
||||
$criteria->compare('Downloads',$this->Downloads);
|
||||
$criteria->compare('Kategorie',$this->Kategorie,true);
|
||||
$criteria->compare('Sterne',$this->Sterne);
|
||||
$criteria->compare('enabled',$this->enabled);
|
||||
$criteria->compare('visible',$this->visible);
|
||||
$criteria->compare('Language',$this->Language,true);
|
||||
$criteria->compare('Description',$this->Description,true);
|
||||
$criteria->compare('add_date',$this->add_date,true);
|
||||
$criteria->compare('download_url',$this->download_url,true);
|
||||
$criteria->compare('viewable_code',$this->viewable_code);
|
||||
$criteria->compare('sourceforge_url',$this->sourceforge_url,true);
|
||||
$criteria->compare('homepage_url',$this->homepage_url,true);
|
||||
$criteria->compare('github_url',$this->github_url,true);
|
||||
$criteria->compare('uses_absCanv',$this->uses_absCanv);
|
||||
$criteria->compare('update_identifier',$this->update_identifier,true);
|
||||
$criteria->compare('highscore_gid',$this->highscore_gid);
|
||||
|
||||
return new CActiveDataProvider($this, array(
|
||||
'criteria'=>$criteria,
|
||||
));
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the static model of the specified AR class.
|
||||
* Please note that you should have this exact method in all your CActiveRecord descendants!
|
||||
* @param string $className active record class name.
|
||||
* @return Programme the static model class
|
||||
*/
|
||||
public static function model($className=__CLASS__)
|
||||
{
|
||||
return parent::model($className);
|
||||
}
|
||||
}
|
||||
35
www/protected/views/layouts/column2.php
Normal file
35
www/protected/views/layouts/column2.php
Normal file
@@ -0,0 +1,35 @@
|
||||
<?php /* @var $this Controller */
|
||||
|
||||
require_once('protected/lib/ArrayX.php');
|
||||
use Yiinitializr\Helpers\ArrayX;
|
||||
|
||||
?>
|
||||
<?php $this->beginContent('//layouts/main'); ?>
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="span-9" style="width: 870px;">
|
||||
<div id="content">
|
||||
<?php echo $content; ?>
|
||||
</div>
|
||||
<!-- content -->
|
||||
</div>
|
||||
<div class="span-3">
|
||||
<div class="well" style="max-width: 340px; padding: 8px 0;">
|
||||
<?php
|
||||
$this->widget('bootstrap.widgets.TbNav',
|
||||
[
|
||||
'type' => TbHtml::NAV_TYPE_LIST,
|
||||
'items' => ArrayX::merge(
|
||||
[
|
||||
['label' => 'List header'],
|
||||
],
|
||||
$this->menu)
|
||||
]
|
||||
);
|
||||
?>
|
||||
</div>
|
||||
<!-- well -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php $this->endContent(); ?>
|
||||
@@ -25,6 +25,8 @@
|
||||
<!endif]-->
|
||||
|
||||
<?php
|
||||
if (! isset($this->selectedNav)) $this->selectedNav = "";
|
||||
|
||||
$this->widget('bootstrap.widgets.TbNavbar',
|
||||
[
|
||||
'brandLabel' => Yii::app()->name,
|
||||
|
||||
65
www/protected/views/programme/_form.php
Normal file
65
www/protected/views/programme/_form.php
Normal file
@@ -0,0 +1,65 @@
|
||||
<?php
|
||||
/* @var $this ProgrammeController */
|
||||
/* @var $model Programme */
|
||||
/* @var $form TbActiveForm */
|
||||
?>
|
||||
|
||||
<div class="form">
|
||||
|
||||
<?php $form=$this->beginWidget('bootstrap.widgets.TbActiveForm', array(
|
||||
'id'=>'programme-form',
|
||||
// Please note: When you enable ajax validation, make sure the corresponding
|
||||
// controller action is handling ajax validation correctly.
|
||||
// There is a call to performAjaxValidation() commented in generated controller code.
|
||||
// See class documentation of CActiveForm for details on this.
|
||||
'enableAjaxValidation'=>false,
|
||||
)); ?>
|
||||
|
||||
<p class="help-block">Fields with <span class="required">*</span> are required.</p>
|
||||
|
||||
<?php echo $form->errorSummary($model); ?>
|
||||
|
||||
<?php echo $form->textAreaControlGroup($model,'Name',array('rows'=>6,'span'=>8)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'Downloads',array('span'=>5)); ?>
|
||||
|
||||
<?php echo $form->textAreaControlGroup($model,'Kategorie',array('rows'=>6,'span'=>8)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'Sterne',array('span'=>5)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'enabled',array('span'=>5)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'visible',array('span'=>5)); ?>
|
||||
|
||||
<?php echo $form->textAreaControlGroup($model,'Language',array('rows'=>6,'span'=>8)); ?>
|
||||
|
||||
<?php echo $form->textAreaControlGroup($model,'Description',array('rows'=>6,'span'=>8)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'add_date',array('span'=>5)); ?>
|
||||
|
||||
<?php echo $form->textAreaControlGroup($model,'download_url',array('rows'=>6,'span'=>8)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'viewable_code',array('span'=>5)); ?>
|
||||
|
||||
<?php echo $form->textAreaControlGroup($model,'sourceforge_url',array('rows'=>6,'span'=>8)); ?>
|
||||
|
||||
<?php echo $form->textAreaControlGroup($model,'homepage_url',array('rows'=>6,'span'=>8)); ?>
|
||||
|
||||
<?php echo $form->textAreaControlGroup($model,'github_url',array('rows'=>6,'span'=>8)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'uses_absCanv',array('span'=>5)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'update_identifier',array('span'=>5,'maxlength'=>28)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'highscore_gid',array('span'=>5)); ?>
|
||||
|
||||
<div class="form-actions">
|
||||
<?php echo TbHtml::submitButton($model->isNewRecord ? 'Create' : 'Save',array(
|
||||
'color'=>TbHtml::BUTTON_COLOR_PRIMARY,
|
||||
'size'=>TbHtml::BUTTON_SIZE_LARGE,
|
||||
)); ?>
|
||||
</div>
|
||||
|
||||
<?php $this->endWidget(); ?>
|
||||
|
||||
</div><!-- form -->
|
||||
56
www/protected/views/programme/_search.php
Normal file
56
www/protected/views/programme/_search.php
Normal file
@@ -0,0 +1,56 @@
|
||||
<?php
|
||||
/* @var $this ProgrammeController */
|
||||
/* @var $model Programme */
|
||||
/* @var $form CActiveForm */
|
||||
?>
|
||||
|
||||
<div class="wide form">
|
||||
|
||||
<?php $form=$this->beginWidget('bootstrap.widgets.TbActiveForm', array(
|
||||
'action'=>Yii::app()->createUrl($this->route),
|
||||
'method'=>'get',
|
||||
)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'ID',array('span'=>5)); ?>
|
||||
|
||||
<?php echo $form->textAreaControlGroup($model,'Name',array('rows'=>6,'span'=>8)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'Downloads',array('span'=>5)); ?>
|
||||
|
||||
<?php echo $form->textAreaControlGroup($model,'Kategorie',array('rows'=>6,'span'=>8)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'Sterne',array('span'=>5)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'enabled',array('span'=>5)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'visible',array('span'=>5)); ?>
|
||||
|
||||
<?php echo $form->textAreaControlGroup($model,'Language',array('rows'=>6,'span'=>8)); ?>
|
||||
|
||||
<?php echo $form->textAreaControlGroup($model,'Description',array('rows'=>6,'span'=>8)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'add_date',array('span'=>5)); ?>
|
||||
|
||||
<?php echo $form->textAreaControlGroup($model,'download_url',array('rows'=>6,'span'=>8)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'viewable_code',array('span'=>5)); ?>
|
||||
|
||||
<?php echo $form->textAreaControlGroup($model,'sourceforge_url',array('rows'=>6,'span'=>8)); ?>
|
||||
|
||||
<?php echo $form->textAreaControlGroup($model,'homepage_url',array('rows'=>6,'span'=>8)); ?>
|
||||
|
||||
<?php echo $form->textAreaControlGroup($model,'github_url',array('rows'=>6,'span'=>8)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'uses_absCanv',array('span'=>5)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'update_identifier',array('span'=>5,'maxlength'=>28)); ?>
|
||||
|
||||
<?php echo $form->textFieldControlGroup($model,'highscore_gid',array('span'=>5)); ?>
|
||||
|
||||
<div class="form-actions">
|
||||
<?php echo TbHtml::submitButton('Search', array('color' => TbHtml::BUTTON_COLOR_PRIMARY,));?>
|
||||
</div>
|
||||
|
||||
<?php $this->endWidget(); ?>
|
||||
|
||||
</div><!-- search-form -->
|
||||
83
www/protected/views/programme/_view.php
Normal file
83
www/protected/views/programme/_view.php
Normal file
@@ -0,0 +1,83 @@
|
||||
<?php
|
||||
/* @var $this ProgrammeController */
|
||||
/* @var $data Programme */
|
||||
?>
|
||||
|
||||
<div class="view">
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('ID')); ?>:</b>
|
||||
<?php echo CHtml::link(CHtml::encode($data->ID),array('view','id'=>$data->ID)); ?>
|
||||
<br />
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('Name')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->Name); ?>
|
||||
<br />
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('Downloads')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->Downloads); ?>
|
||||
<br />
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('Kategorie')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->Kategorie); ?>
|
||||
<br />
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('Sterne')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->Sterne); ?>
|
||||
<br />
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('enabled')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->enabled); ?>
|
||||
<br />
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('visible')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->visible); ?>
|
||||
<br />
|
||||
|
||||
<?php /*
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('Language')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->Language); ?>
|
||||
<br />
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('Description')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->Description); ?>
|
||||
<br />
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('add_date')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->add_date); ?>
|
||||
<br />
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('download_url')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->download_url); ?>
|
||||
<br />
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('viewable_code')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->viewable_code); ?>
|
||||
<br />
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('sourceforge_url')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->sourceforge_url); ?>
|
||||
<br />
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('homepage_url')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->homepage_url); ?>
|
||||
<br />
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('github_url')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->github_url); ?>
|
||||
<br />
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('uses_absCanv')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->uses_absCanv); ?>
|
||||
<br />
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('update_identifier')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->update_identifier); ?>
|
||||
<br />
|
||||
|
||||
<b><?php echo CHtml::encode($data->getAttributeLabel('highscore_gid')); ?>:</b>
|
||||
<?php echo CHtml::encode($data->highscore_gid); ?>
|
||||
<br />
|
||||
|
||||
*/ ?>
|
||||
|
||||
</div>
|
||||
78
www/protected/views/programme/admin.php
Normal file
78
www/protected/views/programme/admin.php
Normal file
@@ -0,0 +1,78 @@
|
||||
<?php
|
||||
/* @var $this ProgrammeController */
|
||||
/* @var $model Programme */
|
||||
|
||||
|
||||
$this->breadcrumbs=array(
|
||||
'Programmes'=>array('index'),
|
||||
'Manage',
|
||||
);
|
||||
|
||||
$this->menu=array(
|
||||
array('label'=>'List Programme', 'url'=>array('index')),
|
||||
array('label'=>'Create Programme', 'url'=>array('create')),
|
||||
);
|
||||
|
||||
Yii::app()->clientScript->registerScript('search', "
|
||||
$('.search-button').click(function(){
|
||||
$('.search-form').toggle();
|
||||
return false;
|
||||
});
|
||||
$('.search-form form').submit(function(){
|
||||
$('#programme-grid').yiiGridView('update', {
|
||||
data: $(this).serialize()
|
||||
});
|
||||
return false;
|
||||
});
|
||||
");
|
||||
|
||||
|
||||
|
||||
?>
|
||||
|
||||
<h1>Manage Programmes</h1>
|
||||
|
||||
<p>
|
||||
You may optionally enter a comparison operator (<b><</b>, <b><=</b>, <b>></b>, <b>>=</b>, <b>
|
||||
<></b>
|
||||
or <b>=</b>) at the beginning of each of your search values to specify how the comparison should be done.
|
||||
</p>
|
||||
|
||||
<?php echo CHtml::link('Advanced Search','#',array('class'=>'search-button btn')); ?>
|
||||
<div class="search-form" style="display:none">
|
||||
<?php $this->renderPartial('_search',array(
|
||||
'model'=>$model,
|
||||
)); ?>
|
||||
</div><!-- search-form -->
|
||||
|
||||
<?php $this->widget('bootstrap.widgets.TbGridView',array(
|
||||
'type' => TbHtml::GRID_TYPE_BORDERED,
|
||||
'id'=>'programme-grid',
|
||||
'dataProvider'=>$model->search(),
|
||||
'filter'=>$model,
|
||||
'columns'=>array(
|
||||
'ID',
|
||||
'Name',
|
||||
'Downloads',
|
||||
'Kategorie',
|
||||
'Sterne',
|
||||
'enabled',
|
||||
/*
|
||||
'visible',
|
||||
'Language',
|
||||
'Description',
|
||||
'add_date',
|
||||
'download_url',
|
||||
'viewable_code',
|
||||
'sourceforge_url',
|
||||
'homepage_url',
|
||||
'github_url',
|
||||
'uses_absCanv',
|
||||
'update_identifier',
|
||||
'highscore_gid',
|
||||
*/
|
||||
array(
|
||||
'class'=>'bootstrap.widgets.TbButtonColumn',
|
||||
),
|
||||
),
|
||||
)); ?>
|
||||
20
www/protected/views/programme/create.php
Normal file
20
www/protected/views/programme/create.php
Normal file
@@ -0,0 +1,20 @@
|
||||
<?php
|
||||
/* @var $this ProgrammeController */
|
||||
/* @var $model Programme */
|
||||
?>
|
||||
|
||||
<?php
|
||||
$this->breadcrumbs=array(
|
||||
'Programmes'=>array('index'),
|
||||
'Create',
|
||||
);
|
||||
|
||||
$this->menu=array(
|
||||
array('label'=>'List Programme', 'url'=>array('index')),
|
||||
array('label'=>'Manage Programme', 'url'=>array('admin')),
|
||||
);
|
||||
?>
|
||||
|
||||
<h1>Create Programme</h1>
|
||||
|
||||
<?php $this->renderPartial('_form', array('model'=>$model)); ?>
|
||||
22
www/protected/views/programme/index.php
Normal file
22
www/protected/views/programme/index.php
Normal file
@@ -0,0 +1,22 @@
|
||||
<?php
|
||||
/* @var $this ProgrammeController */
|
||||
/* @var $dataProvider CActiveDataProvider */
|
||||
?>
|
||||
|
||||
<?php
|
||||
$this->breadcrumbs=array(
|
||||
'Programmes',
|
||||
);
|
||||
|
||||
$this->menu=array(
|
||||
array('label'=>'Create Programme','url'=>array('create')),
|
||||
array('label'=>'Manage Programme','url'=>array('admin')),
|
||||
);
|
||||
?>
|
||||
|
||||
<h1>Programmes</h1>
|
||||
|
||||
<?php $this->widget('bootstrap.widgets.TbListView',array(
|
||||
'dataProvider'=>$dataProvider,
|
||||
'itemView'=>'_view',
|
||||
)); ?>
|
||||
23
www/protected/views/programme/update.php
Normal file
23
www/protected/views/programme/update.php
Normal file
@@ -0,0 +1,23 @@
|
||||
<?php
|
||||
/* @var $this ProgrammeController */
|
||||
/* @var $model Programme */
|
||||
?>
|
||||
|
||||
<?php
|
||||
$this->breadcrumbs=array(
|
||||
'Programmes'=>array('index'),
|
||||
$model->Name=>array('view','id'=>$model->ID),
|
||||
'Update',
|
||||
);
|
||||
|
||||
$this->menu=array(
|
||||
array('label'=>'List Programme', 'url'=>array('index')),
|
||||
array('label'=>'Create Programme', 'url'=>array('create')),
|
||||
array('label'=>'View Programme', 'url'=>array('view', 'id'=>$model->ID)),
|
||||
array('label'=>'Manage Programme', 'url'=>array('admin')),
|
||||
);
|
||||
?>
|
||||
|
||||
<h1>Update Programme <?php echo $model->ID; ?></h1>
|
||||
|
||||
<?php $this->renderPartial('_form', array('model'=>$model)); ?>
|
||||
48
www/protected/views/programme/view.php
Normal file
48
www/protected/views/programme/view.php
Normal file
@@ -0,0 +1,48 @@
|
||||
<?php
|
||||
/* @var $this ProgrammeController */
|
||||
/* @var $model Programme */
|
||||
?>
|
||||
|
||||
<?php
|
||||
$this->breadcrumbs=array(
|
||||
'Programmes'=>array('index'),
|
||||
$model->Name,
|
||||
);
|
||||
|
||||
$this->menu=array(
|
||||
array('label'=>'List Programme', 'url'=>array('index')),
|
||||
array('label'=>'Create Programme', 'url'=>array('create')),
|
||||
array('label'=>'Update Programme', 'url'=>array('update', 'id'=>$model->ID)),
|
||||
array('label'=>'Delete Programme', 'url'=>'#', 'linkOptions'=>array('submit'=>array('delete','id'=>$model->ID),'confirm'=>'Are you sure you want to delete this item?')),
|
||||
array('label'=>'Manage Programme', 'url'=>array('admin')),
|
||||
);
|
||||
?>
|
||||
|
||||
<h1>View Programme #<?php echo $model->ID; ?></h1>
|
||||
|
||||
<?php $this->widget('zii.widgets.CDetailView',array(
|
||||
'htmlOptions' => array(
|
||||
'class' => 'table table-striped table-condensed table-hover',
|
||||
),
|
||||
'data'=>$model,
|
||||
'attributes'=>array(
|
||||
'ID',
|
||||
'Name',
|
||||
'Downloads',
|
||||
'Kategorie',
|
||||
'Sterne',
|
||||
'enabled',
|
||||
'visible',
|
||||
'Language',
|
||||
'Description',
|
||||
'add_date',
|
||||
'download_url',
|
||||
'viewable_code',
|
||||
'sourceforge_url',
|
||||
'homepage_url',
|
||||
'github_url',
|
||||
'uses_absCanv',
|
||||
'update_identifier',
|
||||
'highscore_gid',
|
||||
),
|
||||
)); ?>
|
||||
Reference in New Issue
Block a user