ComunicAPI/classes/models/GeneralSettings.php

157 lines
3.8 KiB
PHP

<?php
/**
* General settings model
*
* @author Pierre HUBERT
*/
class GeneralSettings extends BaseUserModel {
//Private fields
private $email;
private $firstName;
private $lastName;
private $publicPage;
private $openPage;
private $allowComments;
private $allowPostsFriends;
private $allowComunicMails;
private $friendsListPublic;
private $virtualDirectory;
private $personnalWebsite;
private $publicNote;
//Set and get the email address of the user
public function set_email(string $email){
$this->email = $email;
}
public function get_email() : string {
return $this->email;
}
//Set and get the first name of the user
public function set_firstName(string $firstName){
$this->firstName = $firstName;
}
public function get_firstName() : string {
return $this->firstName;
}
//Set and get the last name of the user
public function set_lastName(string $lastName){
$this->lastName = $lastName;
}
public function get_lastName() : string {
return $this->lastName;
}
//Set and get the public status of the user page
public function set_publicPage(bool $publicPage){
$this->publicPage = $publicPage;
}
public function is_publicPage() : bool {
return $this->publicPage;
}
//Set and get the open status of the user page
public function set_openPage(bool $openPage){
$this->openPage = $openPage;
}
public function is_openPage() : bool {
return $this->openPage;
}
/**
* Make sure the public and the open status of the page
* are coherent
*/
public function rationalizePublicOpenStatus(){
//Make sure the page is not open if it is not public
if(!$this->is_publicPage())
$this->set_openPage(false);
}
//Set and get the comments status on user page
public function set_allowComments(bool $allowComments){
$this->allowComments = $allowComments;
}
public function is_allowComments() : bool {
return $this->allowComments;
}
//Set and get the friends post authorization status on user page
public function set_allowPostsFriends(bool $allowPostsFriends){
$this->allowPostsFriends = $allowPostsFriends;
}
public function is_allowPostsFriends() : bool {
return $this->allowPostsFriends;
}
//Set and get comunic mails authorization status
public function set_allowComunicMails(bool $allowComunicMails){
$this->allowComunicMails = $allowComunicMails;
}
public function is_allowComunicMails() : bool {
return $this->allowComunicMails;
}
//Set and get the visibility of the friends list
public function set_friendsListPublic(bool $friendsListPublic){
$this->friendsListPublic = $friendsListPublic;
}
public function is_friendsListPublic() : bool {
return $this->friendsListPublic;
}
//Set and get the virtual directory of the user
public function set_virtualDirectory(string $virtualDirectory){
$this->virtualDirectory = $virtualDirectory == "" ? null : $virtualDirectory;
}
public function has_virtualDirectory() : bool {
return $this->virtualDirectory != null;
}
public function get_virtualDirectory() : string {
return $this->virtualDirectory != null ? $this->virtualDirectory : "null";
}
//Set and get the personnal website of the user
public function set_personnalWebsite(string $personnalWebsite){
$this->personnalWebsite = $personnalWebsite == "" ? null : $personnalWebsite;
}
public function has_personnalWebsite() : bool {
return $this->personnalWebsite != null;
}
public function get_personnalWebsite() : string {
return $this->personnalWebsite != null ? $this->personnalWebsite : "null";
}
//Set and get public acccount note
public function set_publicNote(string $publicNote){
$this->publicNote = $publicNote == "" ? null : $publicNote;
}
public function has_publicNote() : bool {
return $this->publicNote != null;
}
public function get_publicNote() : string {
return $this->publicNote != null ? $this->publicNote : "null";
}
}