浏览代码

minor fixes

euromark 13 年之前
父节点
当前提交
8eb0704074

+ 2 - 1
Console/Command/UserShell.php

@@ -79,7 +79,8 @@ class UserShell extends AppShell {
 			'active' => 1
 		));
 		if (!empty($username)) {
-			$data['User']['username'] = $username;
+			$usernameField = $this->User->displayField; //'username';
+			$data['User'][$usernameField] = $username;
 		}
 		if (!empty($email)) {
 			$data['User']['email'] = $email;

+ 3 - 4
Controller/Component/CommonComponent.php

@@ -390,12 +390,11 @@ class CommonComponent extends Component {
 	 * returns nothing and automatically redirects
 	 * 2010-11-06 ms
 	 */
-	public function autoRedirect($whereTo, $allowSelf = false, $status = null) {
+	public function autoRedirect($whereTo, $allowSelf = true, $status = null) {
 		if ($allowSelf || $this->Controller->referer(null, true) != '/' . $this->Controller->request->url) {
-			$this->Controller->redirect($this->Controller->referer($whereTo, true));
-		} else {
-			$this->Controller->redirect($whereTo, $status);
+			$this->Controller->redirect($this->Controller->referer($whereTo, true), $status);
 		}
+		$this->Controller->redirect($whereTo, $status);
 	}
 
 	/**

+ 7 - 6
Lib/IcalLib.php

@@ -5,8 +5,7 @@
 App::import('Vendor', 'Tools.ical', array('file'=>'ical/ical.php'));
 App::import('Vendor', 'Tools.icalobject', array('file'=>'ical/i_cal_object.php'));
 
-App::uses('View', 'View');
-App::uses('TimeHelper', 'View/Helper');
+App::uses('CakeTime', 'Utility');
 
 /**
  * A wrapper for the Ical/Ics calendar lib
@@ -24,7 +23,6 @@ class IcalLib {
 
 	public function __construct() {
 		$this->ICalObject = new ICalObject();
-		$this->Time = new TimeHelper(new View(null));
 	}
 
 /** BUILDING **/
@@ -41,15 +39,18 @@ class IcalLib {
 	 */
 	public function build($data, $addStartAndEnd = true) {
 		if (isset($data['start'])) {
-			$data['dtstart'] = $this->Time->toAtom($data['start']);
+			$data['dtstart'] = CakeTime::toAtom($data['start']);
+			$data['dtstart'] = str_replace(array('-', ':'), '', $data['dtstart']);
 			unset($data['start']);
 		}
 		if (isset($data['end'])) {
-			$data['dtend'] = $this->Time->toAtom($data['end']);
+			$data['dtend'] = CakeTime::toAtom($data['end']);
+			$data['dtend'] = str_replace(array('-', ':'), '', $data['dtend']);
 			unset($data['end']);
 		}
 		if (isset($data['timestamp'])) {
-			$data['dtstamp'] = $this->Time->toAtom($data['timestamp']);
+			$data['dtstamp'] = CakeTime::toAtom($data['timestamp']);
+			$data['dtstamp'] = str_replace(array('-', ':'), '', $data['dtstamp']);
 			unset($data['timestamp']);
 		}
 		if (isset($data['id'])) {

+ 12 - 3
Model/Behavior/PasswordableBehavior.php

@@ -35,16 +35,19 @@ if (!defined('PWD_MAX_LENGTH')) {
  * @author Mark Scherer
  * @link http://www.dereuromark.de/2011/08/25/working-with-passwords-in-cakephp
  * @license MIT
- * 2011-08-24 ms
+ * 2012-08-18 ms
  */
 class PasswordableBehavior extends ModelBehavior {
 
+	/**
+	 * @access public
+	 */
 	public $settings = array();
 
 	/**
 	 * @access protected
 	 */
-	public $_defaultSettings = array(
+	protected $_defaultSettings = array(
 		'field' => 'password',
 		'confirm' => true, # set to false if in admin view and no confirmation (pwd_repeat) is required
 		'allowEmpty' => false, # if password must be provided or be changed (set to true for update sites)
@@ -58,7 +61,10 @@ class PasswordableBehavior extends ModelBehavior {
 		'allowSame' => true, # dont allow the old password on change
 	);
 
-	public $_validationRules = array(
+	/**
+	 * @access protected
+	 */
+	protected $_validationRules = array(
 		'formField' => array(
 			'between' => array(
 				'rule' => array('between', PWD_MIN_LENGTH, PWD_MAX_LENGTH),
@@ -165,6 +171,7 @@ class PasswordableBehavior extends ModelBehavior {
 	/**
 	 * adding validation rules
 	 * also adds and merges config settings (direct + configure)
+	 * @return void
 	 * 2011-08-24 ms
 	 */
 	public function setup(Model $Model, $config = array()) {
@@ -209,6 +216,7 @@ class PasswordableBehavior extends ModelBehavior {
 	 * 
 	 * @todo currently there is a cake core bug that can break functionality here
 	 * (see http://cakephp.lighthouseapp.com/projects/42648/tickets/3071-behavior-validation-methods-broken for details)
+	 * @return bool $success
 	 * 2011-07-22 ms
 	 */
 	public function beforeValidate(Model $Model) {
@@ -264,6 +272,7 @@ class PasswordableBehavior extends ModelBehavior {
 
 	/**
 	 * hashing the password now
+	 * @return bool $success
 	 * 2011-07-22 ms
 	 */
 	public function beforeSave(Model $Model) {

+ 9 - 11
Test/Case/Model/Behavior/PasswordableBehaviorTest.php

@@ -1,8 +1,6 @@
 <?php
-
-App::uses('Model', 'Model');
-App::uses('AppModel', 'Model');
-
+//App::uses('Model', 'Model');
+//App::uses('AppModel', 'Model');
 App::uses('ComponentCollection', 'Controller');
 
 class PasswordableBehaviorTest extends CakeTestCase {
@@ -16,7 +14,7 @@ class PasswordableBehaviorTest extends CakeTestCase {
 	 */
 	public function setUp() {
 		parent::setUp();
-		
+
 		$this->User = ClassRegistry::init('User');
 	}
 
@@ -26,7 +24,7 @@ class PasswordableBehaviorTest extends CakeTestCase {
 	public function tearDown() {
 		unset($this->User);
 		parent::tearDown();
-		
+
 		ClassRegistry::flush();
 	}
 
@@ -112,7 +110,7 @@ class PasswordableBehaviorTest extends CakeTestCase {
 
 		$this->User->Behaviors->detach('Passwordable');
 		$this->User->validate = array();
-		
+
 		$this->User->Behaviors->attach('Tools.Passwordable', array('current'=>true));
 		$this->User->create();
 		$data = array(
@@ -129,7 +127,7 @@ class PasswordableBehaviorTest extends CakeTestCase {
 
 		$this->tearDown();
 		$this->setUp();
-		
+
 		$this->User->Behaviors->attach('Tools.Passwordable', array('allowEmpty'=>true, 'current'=>true));
 		$this->User->create();
 		$data = array(
@@ -139,11 +137,11 @@ class PasswordableBehaviorTest extends CakeTestCase {
 			'pwd_current' => '',
 		);
 		$is = $this->User->save($data);
-		
+
 		debug($this->User->data);
 		debug($this->User->validate);
 		debug($this->User->validationErrors); ob_flush();
-		
+
 		$this->assertTrue(!empty($is));
 	}
 
@@ -214,7 +212,7 @@ class PasswordableBehaviorTest extends CakeTestCase {
 		$res = $this->User->save($data);
 		$this->assertTrue(!empty($res));
 		$uid = $this->User->id;
-		
+
 		# cake bug => attached behavior validation rules cannot be triggered
 		//$this->tearDown();
 		//$this->setUp();