| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 | <?php/** * Define a issuereport. * @author Administrateur SYS1 * @category Plugin * @license copyright */class IssueReport extends Entity{	public $id,$browser,$browserVersion,$online,$os,$from,$width,$height,$ip,$history,$state,$assign,$followers;	protected $TABLE_NAME = 'issue_report';	public $fields =	array(		'id' => 'key',		'browser' => 'string',		'browserVersion' => 'string',		'online' => 'boolean',		'state' => 'string',		'assign' => 'string',		'os' => 'string',		'from' => 'string',		'width' => 'int',		'height' => 'int',		'history' => 'longstring',		'followers' => 'longstring',		'ip' => 'string'	);	public static function states($key=null){		$states = array(			'open' => array('icon'=>'far fa-clock','label'=>'Ouvert','color'=>'#3c3c3c'),			'closed' => array('icon'=>'fas fa-check','label'=>'Résolu','color'=>'#2cbe4e'),			'canceled' => array('icon'=>'fas fa-ban','label'=>'Annulé','color'=>'#cb2431'),		);		if(!isset($key)) return $states;		return isset($states[$key]) ? $states[$key] : array(); 	}	public function remove($cascading = true){		self::deleteById($this->id);		if($cascading){			require_once(__DIR__.SLASH.'IssueEvent.class.php');			foreach(IssueEvent::loadAll(array('issue'=>$this->id)) as $event){				$event->remove();			}		}	}	public function followers($followersArray = null){		if(!isset($followersArray)) return explode(',', $this->followers);		$this->followers = implode(',',$followersArray);	}	public function addFollower($login){		$followers = $this->followers();		$followers[] = $login;		$followers = array_filter(array_unique($followers));		$this->followers($followers);		}}?>
 |