<?php     
defined('C5_EXECUTE') or die(_("Access Denied."));

class RegistrantGroupPackage extends Package {
	
	protected $pkgHandle = 'registrant_group';
	protected $appVersionRequired = '5.5';
	protected $pkgVersion = '1.1';
	
	public function getPackageName() {
		return t("Registrant Group"); 
	}	
	
	public function getPackageDescription() {
		return t("Adds users to a chosen group upon registration.");
	}

	public function on_start() {
		Events::extend('on_user_add', 'RegistrantGroupPackage', 'on_user_add', 'packages/registrant_group/controller.php');
	}

	public function on_user_add($userInfo) {
		$co = new Config();
		$gID = $co->get('REGISTRANT_GROUP_ID');
		if (!empty($gID)) {
			Loader::model('groups');
			$group = Group::getByID($gID);
			if (!empty($group)) { //check that group wasn't deleted
				$userInfo->getUserObject()->enterGroup($group);
			}
		}
	}
	
	public function install() {
		$pkg = parent::install();
		
		//Add config setting entry (default value to "none")
		$co = new Config();
		$co->setPackageObject($pkg);
		$co->save('REGISTRANT_GROUP_ID', 0);
		
		//Install dashboard page
		Loader::model('single_page');
		SinglePage::add('/dashboard/users/registrant_group', $pkg);
	}
	
}