summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTristan Zur <tzur@ccwn.org>2012-06-11 18:26:37 +0200
committerTristan Zur <tzur@ccwn.org>2012-06-11 18:26:37 +0200
commite4d6e829d133584fd04e5f7ae36ba786115b7586 (patch)
tree5e5a5598fda2386dc0fc69e85c603e1808780b00
parent8f7b134e5a5e8ad43e7dd2f23f7120655bf5aa2d (diff)
Funktionalität zum erneuern eines Passworts hinzugefügt
- Generierung eines neuen Passworts - eMail an den Verein mit dem neuen Passwort - eMail an die Admin-Adresse, dass Verein ein neues Passwort bekommen hat
-rw-r--r--images/email.pngbin0 -> 882 bytes
-rw-r--r--protected/controllers/UserController.php18
-rw-r--r--protected/models/User.php4
-rw-r--r--protected/tests/functional/UserControllerTest.php8
-rw-r--r--protected/views/mail/newVerein.php40
-rw-r--r--protected/views/user/admin.php47
6 files changed, 84 insertions, 33 deletions
diff --git a/images/email.png b/images/email.png
new file mode 100644
index 0000000..5ad33db
--- /dev/null
+++ b/images/email.png
Binary files differ
diff --git a/protected/controllers/UserController.php b/protected/controllers/UserController.php
index b061795..3c28e7b 100644
--- a/protected/controllers/UserController.php
+++ b/protected/controllers/UserController.php
@@ -143,7 +143,23 @@ class UserController extends Controller {
$model->admin_pw_reset = true;
if ($model->save()) {
- // TODO Send email
+ // E-Mail an den Verein
+ $message = new YiiMailMessage();
+ $message->view = "newVerein";
+ $message->setBody(array("username"=>$model->username, "pw"=>$pw));
+ $message->subject = 'Ihr Verein wurde auf astaf.de eingetragen';
+ $message->addTo($model->verein->email);
+ $message->from = Yii::app()->params['adminEmail'];
+ Yii::app()->mail->send($message);
+
+ // E-Mail an die Admin-Adresse
+ $message = new YiiMailMessage();
+ $message->setBody("Dem Verein '".$model->verein->name."' (".$model->username.") wurde ein neues Passwort zugeschickt.");
+ $message->subject = 'Der Verein \''.$model->verein->name.'\' wurde auf astaf.de eingetragen';
+ $message->addTo(Yii::app()->params['adminEmail']);
+ $message->from = Yii::app()->params['adminEmail'];
+ Yii::app()->mail->send($message);
+
echo CJSON::encode(array(
'status'=>'success',
'message'=>'Das neue Passwort wurde erfolgreich generiert: '.$pw
diff --git a/protected/models/User.php b/protected/models/User.php
index c432afe..e601042 100644
--- a/protected/models/User.php
+++ b/protected/models/User.php
@@ -17,7 +17,7 @@
* @property integer $user_pw_reset
*
* The followings are the available model relations:
- * @property Vereine[] $vereine
+ * @property Verein $verein
*/
class User extends CActiveRecord
{
@@ -65,7 +65,7 @@ class User extends CActiveRecord
// NOTE: you may need to adjust the relation name and the related
// class name for the relations automatically generated below.
return array(
- 'vereine' => array(self::HAS_MANY, 'Vereine', 'slug'),
+ 'verein' => array(self::HAS_ONE, 'Verein', 'slug'),
);
}
diff --git a/protected/tests/functional/UserControllerTest.php b/protected/tests/functional/UserControllerTest.php
new file mode 100644
index 0000000..c23102f
--- /dev/null
+++ b/protected/tests/functional/UserControllerTest.php
@@ -0,0 +1,8 @@
+<?php
+$yii=dirname(__FILE__).'/../../../../yii/framework/yii.php';
+$config=dirname(__FILE__).'/../../config/maincfg.php';
+require_once($yii);
+Yii::createWebApplication($config)->run();
+$uc = new UserController(1);
+echo $uc->actionNewPassword(1);
+?> \ No newline at end of file
diff --git a/protected/views/mail/newVerein.php b/protected/views/mail/newVerein.php
new file mode 100644
index 0000000..13362fa
--- /dev/null
+++ b/protected/views/mail/newVerein.php
@@ -0,0 +1,40 @@
+Sehr geehrte Damen und Herren,
+
+wie jedes Jahr betreuen wir auch dieses Jahr wieder das Internetangebot
+für das Waiblinger Altstadtfest im Internet (http://www.astaf.de). Wie
+jedes Jahr bieten wir Ihnen auch dieses Jahr wieder die Möglichkeit, Ihren
+Verein auf der Altstadtfestseite zu präsentieren.
+
+Wir haben bis jetzt die spärlichen Informationen die das
+Altstadtfestprogrammheft bietet in unsere Datenbank eingespeichert. Damit
+Sie vom vollen Umfang der Homepage profitieren können benötigen wir
+allerdings Ihre Mithilfe. Sie haben die Möglichkeit eine kurze
+Selbstbeschreibung und Ihre Angebote und Programmpunkte auf dem
+Altstadtfest einzutragen. Nach diesen Daten können die Benutzer dann
+suchen und so zu Ihrem Stand geleitet werden.
+
+Sie können die Daten unter folgendem Link eingeben und auch ändern:
+
+http://vereine.astaf.de
+Benutzername: <?php echo $username;?>
+
+Passwort: <?php echo $pw;?>
+
+
+Bitte halten Sie Ihr Passwort vertraulich, mit ihm können alle Ihre Daten auf
+der Homepage geändert werden.
+
+Sollten Sie Fragen bezüglich der Altstadtfesthomepage haben, wenden Sie
+sich bitte direkt an uns: info@astaf.de oder 07151 273649 (Patrick Seeger)
+Am Beispiel des Computerclubs Waiblingen sehen Sie eine vollständig
+ausgefüllte Vereinspräsentation mit Angeboten und (wenigen) Terminen.
+http://www.astaf.de/index.php?option=showVerein&task=details?id=8
+
+Mit freundlichen Grüßen
+Das Altstadtfest Homepageteam
+
+Computerclub Waiblingen e.V.
+1. Vorsitzender
+Patrick Seeger
+vorstand@ccwn.org
+http://www.ccwn.org \ No newline at end of file
diff --git a/protected/views/user/admin.php b/protected/views/user/admin.php
index 488559f..ed6b636 100644
--- a/protected/views/user/admin.php
+++ b/protected/views/user/admin.php
@@ -1,41 +1,22 @@
<?php
$this->breadcrumbs=array(
- 'Users'=>array('index'),
- 'Manage',
+ 'Benutzer'=>array('index'),
+ 'Benutzerverwaltung',
);
$this->menu=array(
- array('label'=>'List User', 'url'=>array('index')),
- array('label'=>'Create User', 'url'=>array('create')),
+ array('label'=>'Benutzer', 'url'=>array('index')),
+ array('label'=>'Neuen Benutzer erstellen', 'url'=>array('create')),
);
-
-Yii::app()->clientScript->registerScript('search', "
-$('.search-button').click(function(){
- $('.search-form').toggle();
- return false;
-});
-$('.search-form form').submit(function(){
- $.fn.yiiGridView.update('user-grid', {
- data: $(this).serialize()
- });
- return false;
-});
-");
?>
-<h1>Manage Users</h1>
+<h1>Benutzerverwaltung</h1>
-<p>
-You may optionally enter a comparison operator (<b>&lt;</b>, <b>&lt;=</b>, <b>&gt;</b>, <b>&gt;=</b>, <b>&lt;&gt;</b>
-or <b>=</b>) at the beginning of each of your search values to specify how the comparison should be done.
-</p>
+<?php $this->renderPartial('/common/_comparison_text'); ?>
-<?php echo CHtml::link('Advanced Search','#',array('class'=>'search-button')); ?>
-<div class="search-form" style="display:none">
-<?php $this->renderPartial('_search',array(
+<?php $this->renderPartial('/common/_advanced_search',array(
'model'=>$model,
)); ?>
-</div><!-- search-form -->
<?php $this->widget('zii.widgets.grid.CGridView', array(
'id'=>'user-grid',
@@ -46,10 +27,16 @@ or <b>=</b>) at the beginning of each of your search values to specify how the c
'username',
'created_at',
'last_login',
- 'is_active',
- 'is_super_admin',
- 'admin_pw_reset',
- 'user_pw_reset',
+ array('header'=>'Aktiviert?',
+ 'name'=>'is_active',
+ 'value'=>'CHtml::image($data->is_active ? "images/ok.png" : "images/nok.png", $data->is_active ? "ok.png" : "nok.png")', 'type'=>'raw'),
+ array('header'=>'Admin',
+ 'name'=>'is_super_admin',
+ 'value'=>'CHtml::image($data->is_super_admin ? "images/ok.png" : "images/nok.png", $data->is_super_admin ? "ok.png" : "nok.png")', 'type'=>'raw'),
+ //'admin_pw_reset',
+ //'user_pw_reset',
+ array('header'=>'eMail',
+ 'value'=>'($data->verein) ? $data->verein->email : ""'),
array(
'class'=>'CButtonColumn',
'template'=>'{email}{view}{update}{delete}',