Jump to content
Larry Ullman's Book Forums

ballvicki

Members
  • Posts

    4
  • Joined

  • Last visited

Posts posted by ballvicki

  1. First of all thank you for an invaluable resource - its helped me alot!

     

    I am having a bit of a problem setting up the database for the authManager. I used the setup script to set up three databases: Auth Assignment, AuthItem and AuthItemChild - but when I run the setup script it appears to stop adding to the database when it gets to the task bit!

     

    Am very much a newbie, so any help as to where my code is going wrong would be greatly appreciated!

     

    Vicki

    public function actionSetup()
    	{
    
    		$auth=Yii::app()->authManager;
    		
    		// Create Operations
    		$auth->createOperation('createPage');
    		$auth->createOperation('updatePage');
    		$auth->createOperation('deletePage');
    		$auth->createOperation('createFile');
    		$auth->createOperation('updateFile');
    		$auth->createOperation('deleteFile');
    		$auth->createOperation('createComment');
    		$auth->createOperation('updateComment');
    		$auth->createOperation('deleteComment');
    		$auth->createOperation('updateUser');
    		$auth->createOperation('deleteUser');
    		
    		// Create Tasks
    		// Update oe delete own user only
    		$task=$auth->createTask('updateOwnUser', 'Allows a user to update her record','return $params["id"]==Yii::app()->user->id;');
    		$task=addChild('updateUser');
    		$task=addChild('deleteUser');
    		
    		// Create your own content
    		$task=$auth->createTask('createContent', 'Allows users to create content on the site');
    		$task=addChild('createPage');
    		$task=addChild('createFile');
    		$task=addChild('createComment');
    		
    		// Edit your own content only
    		$task=$auth->createTask('updateOwnContent', 'Allows a user to update pages or files that she owns','return $params["ownerId"]==$params["userId"];');
    		$task=addChild('updatePage');
    		$task=addChild('deletePage');
    		$task=addChild('updateFile');
    		$task=addChild('deleteFile');
    		$task=addChild('updateComment');
    		
    		//Create MAKESHIFTER Role
    		$role=$auth->createRole('makeshifter');
    		//add a task to a role
    		$role=addChild('updateOwnUser');
    		//add an operation to a role
    		$role=addChild('createComment');
    		
    		// Create TUTOR Role
    		$role=$auth->createRole('tutor');
    		//add a role to a role
    		$role=addChild('makeshifter');
    		//add a task to a role
    		$role=addChild('createContent');
    		$role=addChild('updateOwnContent');
    		
    		// Create ADMIN Role
    		$role=$auth->createRole('admin');
    		//add a role to a role
    		$role=addChild('tutor');
    		//add a task to a role
    		$role=addChild('updatePage');
    		$role=addChild('deletePage');
    		$role=addChild('updateFile');
    		$role=addChild('deleteFile');
    		$role=addChild('updateComment');
    		$role=addChild('deleteComment');
    		$role=addChild('updateUser');
    		$role=addChild('deleteUser');
    		
    		// assign roles(1) to users(2) static default yii
    		//$auth->assign('public','demo');
    		
    		//save rules
    		$auth->save();
    	}
    }
    
×
×
  • Create New...