* @version 0.0.0 * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 Ship-Simu Developer Team * @license GNU GPL 3.0 or any newer version * @link http://www.shipsimu.org * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ interface Personellizer extends FrameworkInterface { /////////////////////// /// General methods /// /////////////////////// /** * Remove min/max age * * @return void */ function removeMinMaxAge (); /** * Create a valid birthday * * @return void */ function createBirthday (); /** * Verify if given year/month/day is a valid date combination * * @param $year 4-digit year (valid : 2007, 1946, * invalid: 24, 2a, aa) * @param $month 1 to 2-digit month (range: 1 to 12) * @param $day 1 to 2-digit day (range: 1 to 31/30/29/28) * @return boolean true = date is valid, * false = date is invalid */ function isDateValid ($year, $month, $day); ///////////////////////// //// Status requests //// ///////////////////////// /** * Is the person employed? * * @return boolean true = person is employed * false = person is umemployed */ function isEmployed (); /** * Is the person married? (to which one doesn't matter here) * * @return boolean true = person is married * false = person is not married */ function isMarried (); /** * Is the person a male? * * @return boolean true = person is male * false = person is not male (maybe female? ;-)) */ function isMale (); /** * Is the person a female? * * @return boolean true = person is female * false = person is not female (maybe male? ;-)) */ function isFemale (); ///////////////// //// Getters //// ///////////////// /** * Getter for surname * * @return $surname The person's surname */ function getSurname (); /** * Getter for family name * * @return $family The person's family name */ function getFamily (); /** * Getter for gender * * @return $gender The person's gender (F/M) */ function getGender (); /** * Getter for salary * * @return $salary The person's current salary */ function getSalary (); ///////////////// //// Setters //// ///////////////// /** * Setter for surname * * @param $surname The person's new surname as a string * @return void */ function setSurname ($surname); /** * Setter for family name * * @param $family The person's new family name as a string * @return void */ function setFamily ($family); /** * Setter for gender. Do not use this so often... ;-) * This method shall only be used when the person is "created" * * @param $gender The person's new gender as a 1-char string (M/F) * @return void */ function setGender ($gender); /** * Setter for employment status * * @param $employed The person's new employment stats * @return void */ function setEmployed ($employed); /** * Setter for marrital status * * @param $married The person's new marrital status * @return void */ function setMarried ($married); /** * Setter for a already validated birthday. * * @param $year The person's new year-of-birth (4 digits) * @param $month The person's new month-of-birth (1 to 2 digits) * @param $day The person's new day-of-birth (1 to 2 digits) * @return void */ function setBirthday ($year, $month, $day); ///////////////////////////////////// //// Methods for changing salary //// ///////////////////////////////////// /** * Increase person's salary by a specified amount * * @param $add Add this float amount to current salary * @return void */ function increaseSalary ($add); /** * Decrease person's salary by a specified amount * * @param $sub Subtract this float amount to current salary * @return void */ function decreaseSalary ($sub); } // [EOF] ?>