ERROR: ' . $query . '
' . "\n"; - } else { - echo 'SUCCESS: ' . $query . '
' . "\n"; - } - - /* - * while (ob_get_level() > 0) { - * ob_end_flush(); - * } - * - * flush(); - */ - } - - if (is_string($query) === true) { - $query = []; - } - } - - fclose($file); - redirect(get_base_url() . 'dashboard/upgrade/'); - } - } -} - -/** - * - * @deprecated since release 6.2.0 - */ -function redirect_upgrade_db() -{ - _deprecated_function(__FUNCTION__, '6.2.0'); - - $app = \Liten\Liten::getInstance(); - $acl = new \app\src\ACL(get_persondata('personID')); - if ($acl->userHasRole(8)) { - if (RELEASE_TAG == \app\src\Core\etsis_Updater::inst()->init('RELEASE_TAG')) { - if (get_option('dbversion') < \app\src\Core\etsis_Updater::inst()->init('DB_VERSION')) { - if (basename($app->req->server["REQUEST_URI"]) != "upgrade") { - redirect(get_base_url() . 'dashboard/upgrade/'); - } - } - } - } -} - -/** - * Fires the dashboard_right_widgets action. - * - * @deprecated since 5.0.0 - * @since 1.0.0 - */ -function dashboard_right_widgets() -{ - _deprecated_function(__FUNCTION__, '5.0.0'); - /** - * Prints widgets on the right side of the dashboard. - * - * @deprecated since 5.0.0 - * @since 1.0.0 - */ - do_action('dashboard_right_widgets'); -} - -/** - * An action called to create db tables needed - * for a plugin - * - * @see Plugin::register_activation_hook() - * - * @deprecated since release 6.1.06 - * @since 4.2.0 - * @uses do_action() Calls 'create_db_table' hook. - */ -do_action('create_db_table'); - /** * Merge user defined arguments into defaults array. * @@ -167,7 +63,7 @@ function dashboard_right_widgets() function et_parse_args($args, $defaults = '') { _deprecated_function(__FUNCTION__, '6.2.0', 'etsis_parse_args'); - + return etsis_parse_args($args, $defaults); } @@ -183,7 +79,7 @@ function et_parse_args($args, $defaults = '') function et_hash_password($password) { _deprecated_function(__FUNCTION__, '6.2.0', 'etsis_hash_password'); - + return etsis_hash_password($password); } @@ -203,7 +99,7 @@ function et_hash_password($password) function et_check_password($password, $hash, $person_id = '') { _deprecated_function(__FUNCTION__, '6.2.0', 'etsis_check_password'); - + return etsis_check_password($password, $hash, $person_id); } @@ -222,7 +118,7 @@ function et_check_password($password, $hash, $person_id = '') function et_set_password($password, $person_id) { _deprecated_function(__FUNCTION__, '6.2.0', 'etsis_set_password'); - + return etsis_set_password($password, $person_id); } @@ -241,7 +137,7 @@ function et_set_password($password, $person_id) function et_parse_str($string, $array) { _deprecated_function(__FUNCTION__, '6.2.0', 'etsis_parse_str'); - + return etsis_parse_str($string, $array); } @@ -254,7 +150,7 @@ function et_parse_str($string, $array) function et_autop($pee, $br = 1) { _deprecated_function(__FUNCTION__, '6.2.0', 'etsis_autop'); - + return etsis_autop($pee, $br); } @@ -266,6 +162,18 @@ function et_autop($pee, $br = 1) function et_dropdown_languages($active = '') { _deprecated_function(__FUNCTION__, '6.2.0', 'etsis_dropdown_languages'); - + return etsis_dropdown_languages($active); -} \ No newline at end of file +} + +/** + * + * @deprecated since release 6.2.10 + * @return function + */ +function isUserLoggedIn() +{ + _deprecated_function(__FUNCTION__, '6.2.10', 'is_user_logged_in'); + + return is_user_logged_in(); +} diff --git a/app/functions/person-function.php b/app/functions/person-function.php index 222e465d..b78d60f6 100755 --- a/app/functions/person-function.php +++ b/app/functions/person-function.php @@ -230,9 +230,9 @@ function get_initials($ID, $initials = 2) $name = get_person_by('personID', $ID); if ($initials == 2) { - return substr(_h($name->fname), 0, 1) . '. ' . substr(_h($name->lname), 0, 1) . '.'; + return mb_substr(_h($name->fname), 0, 1, 'UTF-8') . '. ' . mb_substr(_h($name->lname), 0, 1, 'UTF-8') . '.'; } else { - return _h($name->lname) . ', ' . substr(_h($name->fname), 0, 1) . '.'; + return _h($name->lname) . ', ' . mb_substr(_h($name->fname), 0, 1, 'UTF-8') . '.'; } } diff --git a/app/functions/student-function.php b/app/functions/student-function.php index b01024f7..4319add0 100755 --- a/app/functions/student-function.php +++ b/app/functions/student-function.php @@ -554,6 +554,48 @@ function get_stu_restriction($stu_id) return $q; } +/** + * Student hiatuses. + * + * @since 6.2.10 + * @return Hiatus proper name. + */ +function get_shis_name($code) { + switch ($code) { + case "W": + $hiatus = "Withdrawal"; + break; + case "LOA": + $hiatus = "Leave of Absence"; + break; + case "SA": + $hiatus = "Study Abroad"; + break; + case "ILLN": + $hiatus = "Illness"; + break; + case "DISM": + $hiatus = "Dismissal"; + break; + } + return $hiatus; +} + +/** + * Retrieve student's hiatus status. + * + * @since 6.2.10 + * @return Student's hiatus status. + */ +function get_stu_shis($stu_id, $field) { + $app = \Liten\Liten::getInstance(); + $shis = $app->db->hiatus() + ->where('endDate <= "0000-00-00"')->_and_() + ->where('stuID = ?', $stu_id) + ->findOne(); + return _h($shis->$field); +} + function get_stu_header($stu_id) { $student = get_student($stu_id); @@ -575,32 +617,32 @@ function get_stu_header($stu_id) diff --git a/app/functions/textdomain-function.php b/app/functions/textdomain-function.php index e2029cb0..b3d01951 100755 --- a/app/functions/textdomain-function.php +++ b/app/functions/textdomain-function.php @@ -10,7 +10,6 @@ * @package eduTrac SIS * @author Joshua ParkerNew Release: r%s
" +msgstr "Nouvelle Version: r%s
" + +#: src/Core/etsis_Updater.php:146 +msgid "An unexpected error occurred. Something may be wrong with edutracsis.com or this server’s configuration. If you continue to have problems, please try the support forums." +msgstr "Une erreur inattendue est apparue. Quelque chose peut être incompatible avec edutracsis.com ou cette configuration serveur’s . Si vous continuez à avoir des problèmes, s'il vous plaît essayer le forums support." + +#: views/dashboard/core-update.php:25 views/dashboard/core-update.php:28 +msgid "eduTrac SIS Update" +msgstr "Mise à jour d'eduTrac SIS" + +#: src/Core/etsis_Updater.php:205 +msgid "Last checked on %s @ %s" +msgstr "Dernière vérification sur %s @ %s" + +#: src/Core/etsis_Updater.php:212 +msgid "Installing Updates: " +msgstr "Installation de la mises à jour:" + +#: src/Core/etsis_Updater.php:234 +msgid "Update successful!" +msgstr "Mise à jour réussie!" + +#: src/Core/etsis_Updater.php:236 +msgid "Update failed: %s!" +msgstr "Mise à jour échoué: %s!" + +#: src/Core/etsis_Updater.php:245 +msgid "You currently have the latest release of eduTrac SIS installed: r%s
" +msgstr "Vous avez actuellement la dernière version de eduTrac SIS installée: r%s
" + +#: src/Core/etsis_Updater.php:248 +msgid "Could not check for updates! See log file for details." +msgstr "Impossible de vérifier les mises à jour! Voir le fichier de log pour plus de détails." + +#: views/dashboard/menu.php:212 +msgid "Graduate Students" +msgstr "Étudiants diplômés" + +#: views/dashboard/menu.php:215 +msgid "(TRAN) - Transcript" +msgstr "(TRAN) - Transcription" + +#: views/dashboard/menu.php:318 +msgid "(AINST) - Add Institution" +msgstr "(AINST) - Ajouter Institution" + +#: views/dashboard/menu.php:337 +msgid "(APPL) - Application" +msgstr "(APPL) - Application" + +#: views/plugins/index.php:64 +msgid "Visit plugin site" +msgstr "Visitez le site du plugin" + +#: functions/core-function.php:55 +msgid "The following directory could not be created: %s" +msgstr "Le répertoire suivant n'a pas pu être créé: %s" + +#: functions/student-function.php:28 +msgid "Invalid student ID: Empty ID given." +msgstr "ID d'étudiant invalide: ID donné est vide." + +#: functions/student-function.php:34 functions/student-function.php:94 +#: functions/student-function.php:208 +msgid "Invalid student ID: student id must be numeric." +msgstr "ID d'étudiant invalide: id d'étudiant doit être numérique." + +#: functions/person-function.php:28 functions/person-function.php:189 +#: functions/person-function.php:219 functions/student-function.php:60 +msgid "Invalid person ID: empty ID given." +msgstr "ID de personne invalide: ID donné vide. " -#: functions/core-function.php:1159 +#: functions/person-function.php:34 functions/person-function.php:195 +#: functions/person-function.php:225 functions/student-function.php:66 +msgid "Invalid person ID: person id must be numeric." +msgstr "ID de personne invalide: id de personne ne doit pas être numérique." + +#: functions/student-function.php:88 functions/student-function.php:202 +msgid "Invalid student ID: empty ID given." +msgstr "ID d'étudiant invalide: ID donné est vide." + +#: functions/core-function.php:479 msgid "Invalid password: empty password given." -msgstr "" +msgstr "ID de mot de passe invalide: ID de mot de passe donné est vide." -#: functions/core-function.php:1785 +#: functions/core-function.php:935 msgid "Invalid file: empty file given." -msgstr "" +msgstr "ID de fichier invalide: ID de fichier donné est vide." -#: functions/core-function.php:1918 functions/core-function.php:1946 +#: functions/core-function.php:1068 functions/core-function.php:1096 msgid "Invalid file name: empty file name given." -msgstr "" +msgstr "ID de nom de fichier invalide: ID de nom de fichier donné est vide." -#: functions/core-function.php:1929 -#, php-format -msgid "" -"The following function is already defined elsewhere: %s" -msgstr "" +#: functions/core-function.php:1079 +msgid "The following function is already defined elsewhere: %s" +msgstr "La fonction suivante est déjà définie ailleurs: %s" -#: functions/core-function.php:2006 +#: functions/core-function.php:1156 msgid "Cannot read file " -msgstr "" +msgstr "Impossible de lire le fichier" -#: functions/core-function.php:2060 -msgid "" -"Plugin could not be activated because it triggered a fatal error" -"strong>.New Release: r%s
" -msgstr "" +#: views/cron/new.php:252 views/cron/view.php:250 +msgid "Each Time" +msgstr "Chaque fois" -#: views/dashboard/core-update.php:65 -msgid "Installing Updates: " -msgstr "" +#: views/form/grade-scale.php:171 +#: views/student/templates/transcript/default.template.php:91 +msgid "Grade Points" +msgstr "Points de Grade" -#: views/dashboard/core-update.php:74 -msgid "Update successful" -msgstr "" +#: views/admin/links.php:197 +msgid "Are you sure you want to delete this quick link?" +msgstr "Êtes-vous sûr de vouloir supprimer ce lien rapide?" -#: views/dashboard/core-update.php:76 -#, php-format -msgid "Update failed: %s!" -msgstr "" +#: views/cron/new.php:256 views/cron/view.php:254 +msgid "Set the time in seconds (Each) of how often the cronjob should run (i.e. 2 minute, Hour or every Day / 07:00.)" +msgstr "Réglez le temps en secondes (chaque) de la façon dont souvent le cronjob devrait fonctionner (i.e. 2 minute, Heure ou tous les jours / 07:00.)" -#: views/dashboard/core-update.php:85 -#, php-format -msgid "" -"You currently have the latest release of eduTrac SIS installed: r%s
" -msgstr "" +#: views/form/import.php:28 views/form/import.php:31 +msgid "Quick Importer" +msgstr "Importer Rapidement" -#: views/dashboard/core-update.php:88 -msgid "Could not check for updates! See log file for details." -msgstr "" +#: routers/myet.router.php:166 +msgid "Manage News & Announcements" +msgstr "Gestion des Nouvelles & Annonces" -#: views/dashboard/index.php:48 -msgid "Latest eduTrac SIS Updates" -msgstr "" +#: views/cron/setting.php:28 views/cron/setting.php:31 +msgid "Cronjob Handler Settings" +msgstr "Paramètres Cronjob Handler" -#: views/dashboard/index.php:98 -msgid "Students by Academic Program" -msgstr "" +#: views/form/import.php:71 +msgid "Database Table" +msgstr "Table de la Base de données" -#: views/dashboard/index.php:108 views/section/gradebook.php:42 -msgid "Students" -msgstr "Étudiants" +#: views/admin/news.php:29 +msgid "Add News" +msgstr "Ajouter Nouvelles" -#: views/dashboard/index.php:132 -msgid "Gender by Academic Departments" -msgstr "" +#: views/cron/setting.php:71 views/cron/setting.php:122 +msgid "Cronjob Password" +msgstr "Mot de passe Cronjob" -#: views/dashboard/index.php:142 views/index/apply.php:165 -#: views/person/add.php:320 views/person/view.php:300 -msgid "Male" -msgstr "Mâle" +#: views/form/import.php:75 views/form/semester.php:28 +#: views/form/semester.php:31 views/form/semester.php:79 +#: views/form/semester.php:161 views/form/term.php:53 views/form/term.php:171 +#: views/form/view-semester.php:28 views/form/view-semester.php:81 +#: views/form/view-term.php:62 +msgid "Semester" +msgstr "Semestre" -#: views/dashboard/index.php:143 views/index/apply.php:166 -#: views/person/add.php:321 views/person/view.php:301 -msgid "Female" -msgstr "Femelle" +#: views/admin/news.php:42 +msgid "Add News & Annoucement" +msgstr "Ajouter Nouvelles & Annoucement" -#: views/dashboard/install-module.php:64 views/form/import.php:63 -#: views/form/photo.php:50 views/plugins/install.php:62 -#: views/section/students.php:171 views/section/students.php:250 -msgid "Select file" -msgstr "" +#: views/cron/setting.php:86 views/cron/setting.php:142 +msgid "Cronjob Timeout" +msgstr "Cronjob temps mort" -#: views/dashboard/install-module.php:64 views/form/import.php:63 -#: views/form/photo.php:50 views/plugins/install.php:62 -#: views/section/students.php:171 views/section/students.php:250 -msgid "Change" -msgstr "Changement" +#: views/form/import.php:78 +msgid "Student Bill/Invoice" +msgstr "Facture/Facture d'achat Etudiant" -#: views/dashboard/menu.php:47 -msgid "Install Module" -msgstr "" +#: views/admin/news.php:51 views/admin/pages.php:51 views/admin/pages.php:158 +#: views/calendar/view-event.php:200 views/comm-mgmt/index.php:41 +#: views/course/atceq.php:90 views/course/atceq.php:125 +#: views/course/extr.php:68 views/course/extr.php:181 +#: views/course/vextr.php:107 views/course/vtceq.php:58 +#: views/course/vtceq.php:88 views/courses/cart.php:43 +#: views/courses/index.php:79 views/financial/jentries.php:59 +#: views/financial/journal-entries.php:60 views/financial/view-jentry.php:53 +#: views/hr/jobs.php:112 views/hr/jobs.php:184 views/program/add.php:70 +#: views/program/view.php:74 views/section/add-assignment.php:69 +#: views/section/assignments.php:51 views/section/booking-info.php:422 +#: views/section/catalog-pdf.php:50 views/section/view-assignment.php:71 +#: views/staff/view.php:133 views/student/fgrades.php:38 +#: views/student/schedule.php:37 views/student/stac.php:67 +msgid "Title" +msgstr "Titre" -#: views/dashboard/menu.php:63 -msgid "(PERM) - Permissions" -msgstr "" +#: views/cron/setting.php:126 +msgid "This password is required in order to run your cronjob (i.e. /var/www/home/username/app/views/cron/cronjob password=CRONPASSWORD)." +msgstr "Le mot de passe est requis afin d'exécuter votre cronjob (i.e. /var/www/home/username/app/views/cron/cronjob password=CRONPASSWORD)." -#: views/dashboard/menu.php:66 -msgid "(ROLE) - Roles" -msgstr "" +#: views/form/import.php:83 +msgid "Student Fee" +msgstr "Frais d'Etudiant" -#: views/dashboard/menu.php:88 -msgid "(SLR) - Stu Load Rules" -msgstr "" +#: views/admin/news.php:55 views/admin/news.php:156 views/admin/pages.php:55 +#: views/admin/pages.php:162 +msgid "Details" +msgstr "Détails" -#: views/dashboard/menu.php:95 -msgid "(RSTR) - Restrict. Codes" -msgstr "" +#: views/cron/setting.php:146 +msgid "The number in seconds that a cronjob can run before it should time out." +msgstr "Le nombre de secondes que cronjob peut exécuter avant qu'il ne puisse s'expirer." -#: views/dashboard/menu.php:157 views/person/addr-form.php:30 -#: views/person/addr.php:30 views/person/adsu.php:24 views/person/index.php:27 -#: views/person/perms.php:29 views/person/role.php:29 views/person/view.php:30 -msgid "Search Person" -msgstr "" +#: views/form/import.php:87 +msgid "Credit Load" +msgstr "Cargement Crédit" -#: views/dashboard/menu.php:164 -msgid "New Person" -msgstr "" +#: views/admin/news.php:62 views/admin/news.php:163 views/admin/pages.php:62 +#: views/admin/pages.php:169 +msgid "Draft" +msgstr "Rédiger" -#: views/dashboard/menu.php:174 views/staff/add.php:27 views/staff/index.php:25 -#: views/staff/view.php:30 -msgid "Search Staff" -msgstr "" +#: views/cron/view.php:46 views/cron/view.php:49 +msgid "View Cronjob Handler" +msgstr "Voir Cronjob Handler" -#: views/dashboard/menu.php:179 -msgid "Create Staff" -msgstr "" +#: views/form/import.php:90 views/form/minor.php:28 views/form/minor.php:31 +#: views/form/view-minor.php:28 views/program/add.php:231 +#: views/program/ajax.php:589 views/program/view.php:236 +#: views/student/templates/transcript/default.template.php:165 +msgid "Minor" +msgstr "Mineur" -#: views/dashboard/menu.php:181 -msgid "(STAF) - Staff" -msgstr "" +#: views/admin/news.php:63 views/admin/news.php:164 views/admin/pages.php:63 +#: views/admin/pages.php:170 +msgid "Publish" +msgstr "Publier" -#: views/dashboard/menu.php:187 -msgid "(SPRO) - Stu. Profile" -msgstr "" +#: views/cron/view.php:107 +msgid "MailLog" +msgstr "MailLog" -#: views/dashboard/menu.php:192 views/person/addr-form.php:34 -#: views/person/addr.php:34 views/person/adsu.php:28 -msgid "Address Summary" -msgstr "" +#: views/form/import.php:92 views/form/specialization.php:28 +#: views/form/specialization.php:31 views/program/add.php:244 +#: views/program/ajax.php:682 views/program/view.php:249 +#: views/student/templates/transcript/default.template.php:166 +msgid "Specialization" +msgstr "Spécialisation" -#: views/dashboard/menu.php:194 -msgid "Address Form" -msgstr "" +#: views/admin/news.php:92 views/admin/news.php:152 views/index/news.php:33 +msgid "News Title" +msgstr "Nouvelles Titre" -#: views/dashboard/menu.php:198 views/person/add.php:347 -msgid "Person Role" -msgstr "" +#: views/cron/view.php:122 +msgid "MailLog Email" +msgstr "Email MailLog" -#: views/dashboard/menu.php:202 -msgid "Person Perm" -msgstr "" +#: views/form/import.php:97 views/form/school.php:28 views/form/school.php:31 +#: views/form/view-school.php:28 views/hr/view.php:206 +#: views/program/add.php:132 views/program/view.php:136 views/staff/add.php:155 +#: views/staff/view.php:175 views/student/add-prog.php:93 +#: views/student/add.php:123 views/student/sacp.php:76 +msgid "School" +msgstr "École" -#: views/dashboard/menu.php:212 -msgid "Graduate Students" -msgstr "" +#: views/admin/news.php:93 views/admin/pages.php:99 +#: views/dashboard/modules.php:60 views/index/news.php:34 +msgid "Author" +msgstr "Auteur" -#: views/dashboard/menu.php:215 -msgid "(TRAN) - Transcript" -msgstr "" +#: views/dashboard/index.php:48 +msgid "Latest eduTrac SIS Updates" +msgstr "Dernières Mises à jour de eduTrac SIS" -#: views/dashboard/menu.php:223 views/program/add.php:28 -#: views/program/index.php:24 views/program/view.php:28 -msgid "Search Program" -msgstr "" +#: views/form/import.php:102 views/person/adsu.php:49 views/staff/view.php:123 +msgid "Address" +msgstr "Adresse" -#: views/dashboard/menu.php:227 -msgid "(APRG) - Add Program" -msgstr "" +#: views/admin/news.php:94 views/admin/pages.php:100 +msgid "Created" +msgstr "Créé" -#: views/dashboard/menu.php:239 -msgid "(ACRS) - Add Course" -msgstr "" +#: views/dashboard/index.php:98 +msgid "Students by Academic Program" +msgstr "Etudiants par Programme Académique" -#: views/dashboard/menu.php:246 -msgid "Transfer" -msgstr "" +#: views/form/import.php:103 views/hr/add.php:140 views/hr/positions.php:198 +#: views/hr/view.php:141 views/staff/add.php:58 views/staff/add.php:84 +#: views/staff/index.php:22 +msgid "Staff" +msgstr "Personnel" -#: views/dashboard/menu.php:249 -msgid "New Tran. Equiv." -msgstr "" +#: views/admin/news.php:95 views/admin/pages.php:101 +msgid "Last Modified" +msgstr "Dernière mise à jour" -#: views/dashboard/menu.php:250 -msgid "Tran. Crse. Equiv." -msgstr "" +#: views/dashboard/index.php:108 views/section/gradebook.php:42 +msgid "Students" +msgstr "Étudiants" -#: views/dashboard/menu.php:259 views/section/add.php:80 -#: views/section/courses.php:41 views/section/sros.php:89 -#: views/section/view.php:95 -msgid "Section" -msgstr "" +#: views/form/import.php:104 +msgid "Staff Meta" +msgstr "Méta Personnel " -#: views/dashboard/menu.php:261 views/section/add.php:49 -#: views/section/addnl-info.php:27 views/section/billing-info.php:27 -#: views/section/booking-info.php:61 views/section/index.php:24 -#: views/section/offering-info.php:27 views/section/section-fgrade.php:28 -#: views/section/view.php:48 -msgid "Search Section" -msgstr "" +#: views/admin/news.php:196 +msgid "Are you sure you want to delete this news posting?" +msgstr "Êtes-vous sûr de vouloir supprimer cette nouvelles annonce?" -#: views/dashboard/menu.php:272 -msgid "(BRGN) - Batch Reg." -msgstr "" +#: views/dashboard/index.php:132 +msgid "Gender by Academic Departments" +msgstr "Genre par Départements Académiques" -#: views/dashboard/menu.php:275 -msgid "(SROS) - Stu. Roster" -msgstr "" +#: views/form/import.php:109 +msgid "Student Acad Cred" +msgstr "Acad Cred Etudiant" -#: views/dashboard/menu.php:283 views/dashboard/menu.php:297 -#: views/section/courses.php:65 views/section/gradebook.php:23 -msgid "Gradebook" -msgstr "" +#: views/admin/pages.php:29 views/admin/pages.php:42 +msgid "Add Page" +msgstr "Ajout de Page" -#: views/dashboard/menu.php:288 views/section/add-assignment.php:29 -#: views/section/courses.php:63 -msgid "Add Assignment" -msgstr "" +#: views/dashboard/index.php:142 views/index/apply.php:165 +#: views/person/add.php:320 views/person/view.php:300 +msgid "Male" +msgstr "Homme" -#: views/dashboard/menu.php:291 views/section/assignments.php:29 -#: views/section/assignments.php:32 views/section/courses.php:68 -#: views/section/export-grades.php:23 views/section/grading.php:29 -#: views/section/view-assignment.php:29 -msgid "Assignments" -msgstr "" +#: views/form/import.php:110 +msgid "Student Acad Level" +msgstr "Acad Level Etudiant " -#: views/dashboard/menu.php:303 views/section/courses.php:71 -#: views/section/students.php:73 -msgid "Email Students" -msgstr "" +#: views/admin/pages.php:98 +msgid "Page Title" +msgstr "Titre de la Page" -#: views/dashboard/menu.php:318 -msgid "(AINST) - Add Institution" -msgstr "" +#: views/dashboard/index.php:143 views/index/apply.php:166 +#: views/person/add.php:321 views/person/view.php:301 +msgid "Female" +msgstr "Femelle" -#: views/dashboard/menu.php:337 -msgid "(APPL) - Application" -msgstr "" +#: views/form/import.php:111 +msgid "Student Course Section" +msgstr "Section Cours pour Etudiant" -#: views/dashboard/menu.php:365 -msgid "Files" -msgstr "" +#: views/admin/pages.php:206 +msgid "Are you sure you want to delete this page?" +msgstr "Êtes-vous sûr de vouloir supprimer cette page?" -#: views/dashboard/modules.php:38 -msgid "" -"Modules can extend the functionality of eduTrac SIS. There are several " -"modules available in our " -msgstr "" +#: views/dashboard/install-module.php:79 views/form/import.php:63 +#: views/form/photo.php:50 views/plugins/install.php:77 +#: views/section/students.php:171 views/section/students.php:250 +msgid "Select file" +msgstr "Sélectionner Fichier" -#: views/dashboard/modules.php:38 -msgid "Marketplace" -msgstr "" +#: views/form/import.php:112 +msgid "Student Program" +msgstr "Programme Etudiant" -#: views/dashboard/modules.php:58 -msgid "Module" -msgstr "" +#: views/application/add-inst.php:25 views/application/add.php:20 +#: views/application/index.php:19 views/application/inst-attended.php:41 +#: views/application/inst.php:25 views/application/view-inst.php:25 +#: views/application/view.php:28 views/calendar/booking-form.php:59 +#: views/calendar/events.php:25 views/calendar/index.php:75 +#: views/calendar/requests.php:26 views/calendar/setting.php:25 +#: views/calendar/view-event.php:26 views/calendar/view-request.php:77 +#: views/comm-mgmt/add.php:65 views/comm-mgmt/index.php:19 +#: views/comm-mgmt/mailmerge.php:19 views/comm-mgmt/queue.php:25 +#: views/comm-mgmt/schedule.php:25 views/comm-mgmt/view.php:70 +#: views/course/add.php:30 views/course/addnl-info.php:28 +#: views/course/atceq.php:56 views/course/extr.php:27 views/course/index.php:18 +#: views/course/tceq.php:19 views/course/tcre.php:72 views/course/vextr.php:27 +#: views/course/view.php:28 views/course/vtceq.php:24 views/cron/index.php:25 +#: views/cron/log.php:26 views/cron/new.php:45 views/cron/setting.php:25 +#: views/cron/view.php:43 views/dashboard/core-update.php:21 +#: views/dashboard/index.php:19 views/dashboard/install-module.php:24 +#: views/dashboard/modules.php:20 views/dashboard/support.php:23 +#: views/dashboard/update.php:19 views/error/audit.php:19 +#: views/error/logs.php:20 views/financial/account-history.php:24 +#: views/financial/add-jentry.php:93 views/financial/add-payment.php:43 +#: views/financial/batch.php:36 views/financial/billing-table.php:25 +#: views/financial/create-bill.php:43 views/financial/gl-accounts.php:25 +#: views/financial/gl-filter.php:19 views/financial/index.php:25 +#: views/financial/issue-refund.php:43 views/financial/jentry-filter.php:19 +#: views/financial/journal-entries.php:25 views/financial/payment-plan.php:43 +#: views/financial/paypal.php:19 views/financial/view-bill.php:28 +#: views/financial/view-comments.php:29 views/financial/view-payments.php:29 +#: views/financial/view-refunds.php:29 views/form/acad-year.php:20 +#: views/form/building.php:25 views/form/ccd.php:25 views/form/cip.php:25 +#: views/form/degree.php:20 views/form/department.php:20 +#: views/form/grade-scale.php:20 views/form/import.php:25 +#: views/form/location.php:25 views/form/major.php:25 views/form/minor.php:25 +#: views/form/room.php:25 views/form/rstr-code.php:25 views/form/school.php:25 +#: views/form/semester.php:25 views/form/specialization.php:25 +#: views/form/student-load-rule.php:19 views/form/subject.php:20 +#: views/form/term.php:20 views/form/view-acad-year.php:25 +#: views/form/view-building.php:25 views/form/view-ccd.php:25 +#: views/form/view-cip.php:25 views/form/view-degree.php:25 +#: views/form/view-department.php:25 views/form/view-grade-scale.php:25 +#: views/form/view-location.php:25 views/form/view-major.php:25 +#: views/form/view-minor.php:25 views/form/view-room.php:25 +#: views/form/view-rstr-code.php:25 views/form/view-school.php:25 +#: views/form/view-semester.php:25 views/form/view-specialization.php:25 +#: views/form/view-student-load-rule.php:25 views/form/view-subject.php:25 +#: views/form/view-term.php:25 views/hr/add.php:27 views/hr/grades.php:25 +#: views/hr/index.php:20 views/hr/jobs.php:25 views/hr/positions.php:28 +#: views/hr/timesheets.php:19 views/hr/view-timesheet.php:27 +#: views/hr/view.php:28 views/permission/add.php:26 +#: views/permission/index.php:26 views/permission/view.php:26 +#: views/person/add.php:59 views/person/addr-form.php:27 +#: views/person/addr.php:27 views/person/adsu.php:21 views/person/index.php:21 +#: views/person/perms.php:26 views/person/role.php:26 views/person/view.php:27 +#: views/plugins/index.php:20 views/plugins/install.php:24 +#: views/program/add.php:25 views/program/index.php:18 +#: views/program/view.php:25 views/role/add.php:25 views/role/index.php:20 +#: views/role/view.php:26 views/section/add-assignment.php:24 +#: views/section/add.php:46 views/section/addnl-info.php:24 +#: views/section/assignments.php:24 views/section/attendance.php:19 +#: views/section/attendance_report.php:19 views/section/batch-register.php:39 +#: views/section/billing-info.php:24 views/section/booking-info.php:58 +#: views/section/catalog.php:18 views/section/courses.php:18 +#: views/section/export-grades.php:18 views/section/final-grade.php:24 +#: views/section/gradebook.php:18 views/section/grading.php:24 +#: views/section/index.php:18 views/section/offering-info.php:24 +#: views/section/register.php:56 views/section/section-fgrade.php:25 +#: views/section/sros.php:40 views/section/students.php:68 +#: views/section/timetable.php:74 views/section/view-assignment.php:24 +#: views/section/view.php:45 views/setting/email.php:20 +#: views/setting/index.php:21 views/setting/registration.php:20 +#: views/setting/templates.php:136 views/sql/add-query.php:33 +#: views/sql/csv-email.php:25 views/sql/index.php:49 +#: views/sql/saved-queries.php:25 views/sql/view-query.php:33 +#: views/staff/add.php:24 views/staff/file-manager.php:34 +#: views/staff/index.php:19 views/staff/timesheets.php:25 +#: views/staff/view-timesheet.php:25 views/staff/view.php:27 +#: views/student/add-prog.php:42 views/student/add.php:41 +#: views/student/graduation.php:25 views/student/index.php:18 +#: views/student/sacd.php:25 views/student/sacp.php:28 +#: views/student/shis.php:31 views/student/stac.php:25 +#: views/student/strc.php:31 views/student/sttr.php:19 +#: views/student/tran.php:42 views/student/view.php:35 +msgid "You are here" +msgstr "Vous êtes ici" -#: views/dashboard/modules.php:61 -msgid "Module URI" -msgstr "" +#: views/dashboard/install-module.php:79 views/form/import.php:63 +#: views/form/photo.php:50 views/plugins/install.php:77 +#: views/section/students.php:171 views/section/students.php:250 +msgid "Change" +msgstr "Changement" -#: views/dashboard/modules.php:62 -msgid "Version" -msgstr "" +#: views/form/import.php:113 +msgid "Student Term" +msgstr "Condition Etudiant" -#: views/dashboard/modules.php:74 -msgid "Visit module site" -msgstr "Site de module de visite" +#: views/application/add-inst.php:28 views/application/view-inst.php:28 +msgid "Search Institution" +msgstr "Recherche Institution" -#: views/dashboard/support.php:26 views/dashboard/support.php:29 -msgid "Online Documenation" -msgstr "" +#: views/dashboard/menu.php:47 +msgid "Install Module" +msgstr "Installer Module" -#: views/dashboard/support.php:38 -msgid "Your browser does not support iframes." -msgstr "" +#: views/form/import.php:114 +msgid "Student Term GPA" +msgstr "Condition Etudiant GPA" -#: views/dashboard/upgrade.php:30 -msgid "Warning!" -msgstr "Alerte!" +#: views/application/add-inst.php:30 views/application/add-inst.php:33 +msgid "Add Institution" +msgstr "Ajout Institution" -#: views/dashboard/upgrade.php:30 -msgid "Hey admin, your database is out of date and currently at version " -msgstr "" +#: views/dashboard/menu.php:63 +msgid "(PERM) - Permissions" +msgstr "(PERM) - Permissions" -#: views/dashboard/upgrade.php:30 -msgid "" -". Click the button below to upgrade your database. When the upgrade is " -"complete," -msgstr "" +#: views/form/import.php:115 +msgid "Student Term Load" +msgstr "Chargement Condition Etudiant " -#: views/dashboard/upgrade.php:30 -msgid "click here" -msgstr "" +#: views/application/add-inst.php:62 views/application/inst.php:65 +#: views/application/view-inst.php:62 +msgid "FICE/CEEB Code" +msgstr "FICE/CEEB Code" -#: views/dashboard/upgrade.php:30 -msgid "" -"to return to the dashboard. If you are behind on a few versions, you may be " -"redirected to this page again until the system is fully up to date." -msgstr "" +#: views/dashboard/menu.php:66 +msgid "(ROLE) - Roles" +msgstr "(ROLE) - Rôles" -#: views/dashboard/upgrade.php:44 -msgid "" -"Hey admin, you database is currently up to date. There is nothing else here " -"to see. " -msgstr "" -"Hey admin, votre base de données est actuellement mis à jour. Il n'y a rien " -"ici pour voir." +#: views/form/location.php:60 views/form/location.php:105 +#: views/form/view-location.php:62 views/program/ajax.php:414 +#: views/program/ajax.php:880 views/section/ajax.php:204 +msgid "Location Code" +msgstr "Code Location " -#: views/dashboard/upgrade.php:44 views/setting/index.php:346 -msgid "Click here" -msgstr "" +#: views/application/add-inst.php:69 views/application/view-inst.php:69 +#: views/financial/gl-accounts.php:64 views/financial/gl-summary.php:59 +#: views/person/addr-form.php:272 views/person/addr-form.php:325 +#: views/person/addr.php:276 views/person/addr.php:329 views/person/adsu.php:84 +msgid "Type" +msgstr "Type" -#: views/dashboard/upgrade.php:44 -msgid "to return to the dashboard." -msgstr "" +#: views/dashboard/menu.php:88 +msgid "(SLR) - Stu Load Rules" +msgstr "(SLR) - Chargement de Règles Stu" -#: views/error/404.php:27 -msgid "Ouch!" -msgstr "" +#: views/form/location.php:67 views/form/location.php:106 +#: views/form/view-location.php:69 views/program/ajax.php:421 +#: views/program/ajax.php:887 views/section/ajax.php:211 +msgid "Location Name" +msgstr "Nom Location" -#: views/error/404.php:27 -msgid "404 error" -msgstr "" +#: views/application/add-inst.php:73 +msgid "High School" +msgstr "Lycée" -#: views/error/404.php:32 -msgid "" -"It seems the page you are looking for is not here anymore. The page might " -"have moved to another address or just removed by our staff." -msgstr "" -"Il semble que la page que vous recherchez est pas plus ici. La page aurait " -"déplacé à une autre adresse ou tout simplement retiré par notre personnel." +#: views/dashboard/menu.php:95 +msgid "(RSTR) - Restrict. Codes" +msgstr "(RSTR) - Restrict. Codes" -#: views/error/404.php:40 -msgid "Is this a serious error?" -msgstr "" +#: views/form/major.php:60 views/form/major.php:105 +#: views/form/view-major.php:62 views/program/ajax.php:508 +msgid "Major Code" +msgstr "Code Major" -#: views/error/404.php:40 -msgid "Let us know" -msgstr "" +#: views/application/add-inst.php:74 +msgid "College" +msgstr "Collège" -#: views/error/audit.php:41 -msgid "Process" -msgstr "" +#: views/dashboard/menu.php:157 views/person/addr-form.php:30 +#: views/person/addr.php:30 views/person/adsu.php:24 views/person/index.php:27 +#: views/person/perms.php:29 views/person/role.php:29 views/person/view.php:30 +msgid "Search Person" +msgstr "Recherche de Personne" -#: views/error/audit.php:42 -msgid "Record" -msgstr "" +#: views/form/major.php:67 views/form/major.php:106 +#: views/form/view-major.php:69 views/program/ajax.php:515 +msgid "Major Name" +msgstr "Nom Major" -#: views/error/audit.php:44 -msgid "Action Date" -msgstr "" +#: views/application/add-inst.php:75 +msgid "University" +msgstr "Université" -#: views/error/audit.php:45 -msgid "Expire Date" -msgstr "" +#: views/dashboard/menu.php:164 +msgid "New Person" +msgstr "Nouvelle Personne" -#: views/error/logs.php:41 -msgid "Error Type" -msgstr "" +#: views/form/minor.php:60 views/form/minor.php:105 +#: views/form/view-minor.php:62 views/program/ajax.php:601 +msgid "Minor Code" +msgstr "Code Mineur" -#: views/error/logs.php:42 -msgid "String" -msgstr "" +#: views/application/add-inst.php:83 views/application/inst.php:67 +#: views/application/view-inst.php:83 views/install/index.php:213 +#: views/setting/index.php:64 +msgid "Institution Name" +msgstr "Nom Institution" -#: views/error/logs.php:43 -msgid "File" -msgstr "" +#: views/dashboard/menu.php:179 +msgid "Create Staff" +msgstr "Créer Personnel" -#: views/error/logs.php:44 -msgid "Line Number" -msgstr "" +#: views/form/minor.php:67 views/form/minor.php:106 +#: views/form/view-minor.php:69 views/program/ajax.php:608 +msgid "Minor Name" +msgstr "Nom Mineur" -#: views/error/screen-error.php:29 -msgid "Error!" -msgstr "Erreur!" +#: views/application/add-inst.php:96 views/application/view-inst.php:96 +#: views/form/address.php:51 views/index/apply.php:91 +#: views/index/profile.php:99 views/person/add.php:181 +#: views/person/addr-form.php:121 views/person/addr.php:121 +#: views/person/view.php:166 +msgid "City" +msgstr "Ville" -#: views/financial/account-history.php:30 views/financial/index.php:92 -#: views/student/bill.php:60 -msgid "Account History" -msgstr "" +#: views/dashboard/menu.php:181 +msgid "(STAF) - Staff" +msgstr "(STAF) - Personnel" -#: views/financial/account-history.php:51 views/student/account-history.php:39 -msgid "Print history" -msgstr "" +#: views/form/photo.php:27 +msgid "Upload School Photo" +msgstr "Mise à jour de Photo d'école" -#: views/financial/account-history.php:52 views/student/account-history.php:40 -msgid "Save as PDF" -msgstr "" +#: views/application/add-inst.php:103 views/application/view-inst.php:103 +#: views/form/address.php:55 views/index/apply.php:121 +#: views/index/profile.php:103 views/person/add.php:190 +#: views/person/addr-form.php:130 views/person/addr.php:130 +#: views/person/view.php:175 +msgid "State" +msgstr "État" -#: views/financial/account-history.php:68 views/financial/ah-pdf.php:79 -#: views/student/account-history.php:56 -msgid "e-mail" -msgstr "" +#: views/dashboard/menu.php:187 +msgid "(SPRO) - Stu. Profile" +msgstr "(SPRO) - Profil Stu. " -#: views/financial/account-history.php:69 -#: views/financial/account-history.php:78 views/financial/ah-pdf.php:80 -#: views/financial/ah-pdf.php:89 views/student/account-history.php:57 -#: views/student/account-history.php:66 -msgid "phone" -msgstr "" +#: views/form/photo.php:40 +msgid "If you decide later on that you'd rather use the Gravatar service instead of the photo you uploaded, click the photo to delete it." +msgstr "Si vous décidez plus tard que vous préférez utiliser le service Gravatar la place de la photo que vous avez téléchargé, cliquez sur la photo pour la supprimer." -#: views/financial/account-history.php:73 views/financial/ah-pdf.php:84 -#: views/student/account-history.php:61 -msgid "Student information" -msgstr "" +#: views/application/add-inst.php:110 views/application/view-inst.php:110 +#: views/form/address.php:70 views/index/apply.php:128 views/person/add.php:211 +#: views/person/addr-form.php:157 views/person/addr.php:157 +#: views/person/view.php:193 +msgid "Country" +msgstr "Patrie" -#: views/financial/account-history.php:77 views/financial/ah-pdf.php:88 -#: views/student/account-history.php:65 -msgid "e-mail:" -msgstr "" +#: views/dashboard/menu.php:192 views/person/addr-form.php:34 +#: views/person/addr.php:34 views/person/adsu.php:28 +msgid "Address Summary" +msgstr "Résumé d'Adresse" -#: views/financial/account-history.php:91 views/financial/add-jentry.php:137 -#: views/financial/ah-pdf.php:102 views/financial/jentries.php:57 -#: views/financial/journal-entries.php:58 views/financial/view-jentry.php:71 -#: views/index/news.php:35 views/section/attendance_report.php:74 -#: views/student/account-history.php:79 -msgid "Date" -msgstr "" +#: views/form/room.php:72 views/form/view-room.php:74 +msgid "Room Code" +msgstr "Code Salle" -#: views/financial/account-history.php:93 views/financial/ah-pdf.php:104 -#: views/student/account-history.php:81 -msgid "Charges" -msgstr "" +#: views/application/add.php:23 views/application/index.php:25 +#: views/application/inst-attended.php:44 views/application/view.php:31 +msgid "Search Application" +msgstr "Recherche d'application" -#: views/financial/account-history.php:95 views/financial/ah-pdf.php:106 -#: views/financial/view-bill.php:57 views/financial/view-comments.php:58 -#: views/financial/view-payments.php:58 views/financial/view-refunds.php:58 -#: views/student/account-history.php:83 -msgid "Payments" -msgstr "" +#: views/dashboard/menu.php:194 +msgid "Address Form" +msgstr "Formulaire d'Adresse " -#: views/financial/account-history.php:96 views/financial/ah-pdf.php:107 -#: views/student/account-history.php:84 -msgid "Method" -msgstr "" +#: views/form/room.php:85 views/form/room.php:131 views/form/view-room.php:87 +msgid "Room Number" +msgstr "Numéro de Salle" -#: views/financial/account-history.php:97 views/financial/ah-pdf.php:108 -#: views/financial/gl-accounts.php:65 views/financial/view-bill.php:221 -#: views/financial/view-jentry.php:112 views/student/account-history.php:85 -#: views/student/vbill.php:156 -msgid "Balance" -msgstr "" +#: views/application/add.php:25 views/application/add.php:28 +#: views/person/index.php:98 +msgid "Create Application" +msgstr "Créer demande" -#: views/financial/account-history.php:114 views/financial/ah-pdf.php:125 -#: views/student/account-history.php:102 -msgid "Term:" -msgstr "" +#: views/dashboard/menu.php:198 views/person/add.php:347 +msgid "Person Role" +msgstr "Rôle de Personne" -#: views/financial/account-history.php:134 -#: views/student/account-history.php:122 -msgid "Agreement Date:" -msgstr "" +#: views/form/rstr-code.php:28 views/form/rstr-code.php:31 +#: views/form/view-rstr-code.php:28 +msgid "Restriction Codes" +msgstr "Codes Restriction" -#: views/financial/account-history.php:135 -#: views/student/account-history.php:123 -msgid "Payment:" -msgstr "" +#: views/application/add.php:55 views/application/index.php:59 +#: views/application/view.php:65 views/person/addr-form.php:67 +#: views/person/addr.php:67 views/person/view.php:69 +msgid "Person ID" +msgstr "ID Personne" -#: views/financial/account-history.php:136 -#: views/student/account-history.php:124 -msgid "Agreement Ends:" -msgstr "" +#: views/dashboard/menu.php:202 +msgid "Person Perm" +msgstr "Personne Permanente" -#: views/financial/account-history.php:136 -#: views/student/account-history.php:124 -msgid "Open" -msgstr "" +#: views/form/rstr-code.php:115 +msgid "Restriction Code" +msgstr "Code Restriction" -#: views/financial/account-history.php:137 -#: views/student/account-history.php:125 -msgid "Comments:" -msgstr "" +#: views/application/add.php:64 views/application/view.php:74 +msgid "First/Mid/Last Name" +msgstr "Prénom/Patronyme/Nom de famille" -#: views/financial/account-history.php:161 views/financial/view-bill.php:344 -#: views/financial/view-comments.php:160 views/financial/view-payments.php:204 -#: views/financial/view-refunds.php:195 views/student/add-prog.php:215 -#: views/student/sacd.php:268 views/student/sacp.php:295 -#: views/student/shis.php:286 views/student/stac.php:165 -#: views/student/strc.php:255 views/student/sttr.php:122 -#: views/student/view.php:184 -msgid "" -"\"FERPA gives parents certain rights with respect to their children's " -"education records. \n" -" These rights transfer to the student when he or she " -"reaches the age of 18 or attends a school beyond \n" -" the high school level. Students to whom the rights have " -"transferred are 'eligible students.'\"" -msgstr "" +#: views/dashboard/menu.php:223 views/program/add.php:28 +#: views/program/index.php:24 views/program/view.php:28 +msgid "Search Program" +msgstr "Rechercher Programme" -#: views/financial/account-history.php:164 views/financial/view-bill.php:347 -#: views/financial/view-comments.php:163 views/financial/view-payments.php:207 -#: views/financial/view-refunds.php:198 views/student/add-prog.php:218 -#: views/student/sacd.php:271 views/student/sacp.php:298 -#: views/student/shis.php:289 views/student/stac.php:168 -#: views/student/strc.php:258 views/student/sttr.php:125 -#: views/student/view.php:187 -msgid "" -"If the FERPA restriction states \"Yes\", then the student has requested that " -"none of their \n" -" information be given out without their permission. To " -"get a better understanding of FERPA, visit \n" -" the U.S. DOE's website @ " -msgstr "" +#: views/form/school.php:60 views/form/school.php:118 +#: views/form/view-school.php:62 +msgid "School Code" +msgstr "Code Ecole" -#: views/financial/add-jentry.php:96 views/financial/add-jentry.php:99 -msgid "Add Journal Entry" -msgstr "" +#: views/application/add.php:79 views/application/view.php:89 +msgid "Permanent Address" +msgstr "Adresse Permanente " -#: views/financial/add-jentry.php:115 views/financial/journal-entries.php:44 -msgid "Entries" -msgstr "" +#: views/dashboard/menu.php:227 +msgid "(APRG) - Add Program" +msgstr "(APRG) - Ajouter Programme" -#: views/financial/add-jentry.php:116 views/financial/journal-entries.php:45 -msgid "Add Entry" -msgstr "" +#: views/form/school.php:67 views/form/school.php:119 +#: views/form/view-school.php:69 +msgid "School Name" +msgstr "Nom d'Ecole" -#: views/financial/add-jentry.php:149 -msgid "Entry Title" -msgstr "" +#: views/application/add.php:89 views/application/view.php:99 +#: views/index/apply.php:133 +msgid "DOB" +msgstr "DOB" -#: views/financial/add-jentry.php:164 views/financial/jentries.php:58 -#: views/financial/journal-entries.php:59 views/financial/view-jentry.php:49 -msgid "Manual ID" -msgstr "" +#: views/dashboard/menu.php:239 +msgid "(ACRS) - Add Course" +msgstr "(ACRS) - Ajouter Cours" -#: views/financial/add-jentry.php:197 -msgid "Include -(minus) symbol before the credit amount." -msgstr "" +#: views/form/semester.php:72 views/form/view-semester.php:74 +msgid "Semester Code" +msgstr "Code Semestre" -#: views/financial/add-jentry.php:202 -msgid "GL Account" -msgstr "" +#: views/application/add.php:108 views/application/view.php:118 +msgid "Age" +msgstr "Âge" -#: views/financial/add-jentry.php:203 views/financial/gl-accounts.php:141 -#: views/financial/gl-accounts.php:200 views/financial/view-jentry.php:83 -msgid "Memo" -msgstr "Note" +#: views/dashboard/menu.php:246 +msgid "Transfer" +msgstr "Transfert" -#: views/financial/add-jentry.php:204 views/financial/billing-table.php:67 -#: views/financial/billing-table.php:121 views/financial/billing-table.php:173 -#: views/financial/jentries.php:62 views/financial/journal-entries.php:63 -#: views/financial/payment-plan.php:204 views/financial/view-jentry.php:84 -msgid "Amount" -msgstr "Montant" +#: views/form/specialization.php:60 views/form/specialization.php:105 +#: views/form/view-specialization.php:62 views/program/ajax.php:694 +msgid "Specialization Code" +msgstr "Code Spécialisation " -#: views/financial/add-jentry.php:234 -msgid "Debit: " -msgstr "Débit:" +#: views/application/add.php:121 views/application/view.php:131 +#: views/index/apply.php:162 views/index/profile.php:79 +#: views/person/add.php:316 views/person/view.php:296 +msgid "Gender" +msgstr "Sexe" -#: views/financial/add-jentry.php:235 -msgid "Credit: " -msgstr "Crédit:" +#: views/dashboard/menu.php:249 +msgid "New Tran. Equiv." +msgstr "Nouveau Tran. Equiv." -#: views/financial/add-jentry.php:236 -msgid "Balance:" -msgstr "" +#: views/form/specialization.php:67 views/form/specialization.php:106 +#: views/form/view-specialization.php:69 views/program/ajax.php:701 +msgid "Specialization Name" +msgstr "Nom Spécialisation" -#: views/financial/add-payment.php:69 views/financial/batch.php:62 -#: views/financial/create-bill.php:69 views/financial/issue-refund.php:67 -#: views/financial/payment-plan.php:69 -msgid "Generate Bill/Add Fee" -msgstr "" +#: views/application/add.php:130 views/application/view.php:140 +msgid "Phone Number" +msgstr "Numéro de Téléphone" -#: views/financial/add-payment.php:72 views/financial/batch.php:65 -#: views/financial/create-bill.php:72 views/financial/issue-refund.php:46 -#: views/financial/issue-refund.php:49 views/financial/issue-refund.php:70 -#: views/financial/payment-plan.php:72 views/financial/view-refunds.php:171 -#: views/financial/view-refunds.php:222 -msgid "Issue Refund" -msgstr "" +#: views/dashboard/menu.php:250 +msgid "Tran. Crse. Equiv." +msgstr "Tran. Crse. Equiv." -#: views/financial/add-payment.php:87 views/financial/create-bill.php:87 -#: views/financial/issue-refund.php:85 views/financial/payment-plan.php:87 -#: views/financial/payment-plan.php:202 views/section/attendance.php:53 -#: views/section/register.php:90 views/section/students.php:97 -#: views/student/graduation.php:59 views/student/tran.php:76 -msgid "Student ID" -msgstr "" +#: views/form/student-load-rule.php:22 views/form/student-load-rule.php:25 +#: views/form/view-student-load-rule.php:28 +msgid "Student Load Rules" +msgstr "Règle de Chargement Etudiant" -#: views/financial/add-payment.php:128 views/financial/view-payments.php:151 -#: views/financial/view-payments.php:260 views/form/import.php:80 -msgid "Payment" -msgstr "Paiement" +#: views/application/add.php:139 views/application/view.php:149 +msgid "Email Address" +msgstr "Adresse EMail" -#: views/financial/add-payment.php:137 views/financial/view-payments.php:269 -msgid "Payment Date" -msgstr "" +#: views/dashboard/menu.php:259 views/section/add.php:80 +#: views/section/courses.php:41 views/section/sros.php:89 +#: views/section/view.php:95 +msgid "Section" +msgstr "Section" -#: views/financial/add-payment.php:149 views/financial/view-payments.php:281 -msgid "Payment Type" -msgstr "" +#: views/form/student-load-rule.php:56 views/form/view-student-load-rule.php:66 +msgid "Full Time" +msgstr "Temps plein" -#: views/financial/add-payment.php:161 views/financial/view-payments.php:293 -msgid "Check Number" -msgstr "" +#: views/application/add.php:162 views/application/view.php:181 +msgid "Application Date" +msgstr "Date De La Demande" -#: views/financial/batch.php:80 -msgid "Population" -msgstr "" +#: views/dashboard/menu.php:261 views/section/add.php:49 +#: views/section/addnl-info.php:27 views/section/billing-info.php:27 +#: views/section/booking-info.php:61 views/section/index.php:24 +#: views/section/offering-info.php:27 views/section/section-fgrade.php:28 +#: views/section/view.php:48 +msgid "Search Section" +msgstr "Recherche de Section" -#: views/financial/batch.php:84 views/student/add-prog.php:82 -#: views/student/add.php:84 views/student/sacp.php:68 -msgid "Program" -msgstr "" +#: views/form/student-load-rule.php:57 views/form/view-student-load-rule.php:67 +msgid "3/4 Time" +msgstr "3/4 de Temps" -#: views/financial/batch.php:138 views/financial/create-bill.php:103 -msgid "Bill / Fee Date" -msgstr "" +#: views/application/add.php:186 views/application/appls.php:34 +#: views/application/appls.php:65 views/application/index.php:61 +#: views/application/view.php:209 views/index/apply.php:93 +#: views/student/add.php:159 +msgid "Start Term" +msgstr "Condition de Début" -#: views/financial/batch.php:163 views/financial/create-bill.php:128 -msgid "Fees" -msgstr "" +#: views/dashboard/menu.php:272 +msgid "(BRGN) - Batch Reg." +msgstr "(BRGN) - Batch Reg." -#: views/financial/billing-table.php:28 views/financial/billing-table.php:31 -#: views/form/import.php:79 -msgid "Billing Table" -msgstr "" +#: views/form/student-load-rule.php:58 views/form/view-student-load-rule.php:68 +msgid "Half Time" +msgstr "Mi-temps" -#: views/financial/create-bill.php:46 views/financial/create-bill.php:49 -msgid "Create Bill" -msgstr "" +#: views/application/add.php:198 views/application/view.php:221 +#: views/index/apply.php:177 views/student/view.php:87 +msgid "Admit Status" +msgstr "Statut Admettre" -#: views/financial/create-bill.php:204 -msgid "" -"Comments will only be posted when a bill is initially created. If you are " -"adding a fee to an already existing bill and want to add a comment about the " -"new addition, you can do so when viewing the student's bill. Unlike other " -"system comments, these comments will be seen by students." -msgstr "" -"Commentaires ne seront affichées que lorsqu'un projet de loi est d'abord " -"créé. Si vous ajoutez des frais à un projet de loi déjà existante et que " -"vous souhaitez ajouter un commentaire à propos de la nouvelle addition, vous " -"pouvez le faire lors de la visualisation du projet de loi de l'étudiant. " -"Contrairement à d'autres commentaires du système, ces commentaires seront " -"vus par les étudiants." +#: views/dashboard/menu.php:275 +msgid "(SROS) - Stu. Roster" +msgstr "(SROS) - Liste Stu. " -#: views/financial/gl-accounts.php:28 views/financial/gl-accounts.php:47 -#: views/financial/gl-filter.php:39 views/financial/jentry-filter.php:39 -msgid "GL Accounts" -msgstr "" +#: views/form/student-load-rule.php:59 views/form/view-student-load-rule.php:69 +msgid "Less Than Half Time" +msgstr "Moins de la mi-temps" -#: views/financial/gl-accounts.php:32 -msgid "Chart of Accounts" -msgstr "" +#: views/application/add.php:226 views/application/view.php:265 +msgid "PSAT Verbal/Math" +msgstr "PSAT Verbal/Math" -#: views/financial/gl-accounts.php:49 views/financial/gl-filter.php:41 -#: views/financial/gl-summary.php:22 views/financial/gl-summary.php:33 -#: views/financial/jentry-filter.php:41 -msgid "General Ledger Summary" -msgstr "" +#: views/dashboard/menu.php:283 views/dashboard/menu.php:297 +#: views/section/courses.php:65 views/section/gradebook.php:23 +msgid "Gradebook" +msgstr "Bulletin de Notes" -#: views/financial/gl-accounts.php:62 -msgid "Account Number" -msgstr "" +#: views/form/student-load-rule.php:67 views/form/student-load-rule.php:144 +#: views/form/view-student-load-rule.php:77 +msgid "Minimum Credits" +msgstr "Crédits Minimum" -#: views/financial/gl-accounts.php:108 views/financial/gl-accounts.php:167 -#: views/financial/view-jentry.php:82 -msgid "Account" -msgstr "" +#: views/application/add.php:238 views/application/view.php:277 +msgid "SAT Verbal/Math" +msgstr "SAT Verbal/Math" -#: views/financial/gl-accounts.php:114 views/financial/gl-accounts.php:173 -msgid "Account #" -msgstr "" +#: views/dashboard/menu.php:288 views/section/add-assignment.php:29 +#: views/section/courses.php:63 +msgid "Add Assignment" +msgstr "Ajout Affectation" + +#: views/form/student-load-rule.php:74 views/form/student-load-rule.php:145 +#: views/form/view-student-load-rule.php:84 +msgid "Maximum Credits" +msgstr "Crédits Maximum" + +#: views/application/add.php:250 views/application/view.php:289 +msgid "ACT English/Math" +msgstr "ACT Anglais/Math" -#: views/financial/gl-accounts.php:123 views/financial/gl-accounts.php:182 -msgid "Account Name" -msgstr "" +#: views/dashboard/menu.php:291 views/section/assignments.php:29 +#: views/section/assignments.php:32 views/section/courses.php:68 +#: views/section/export-grades.php:23 views/section/grading.php:29 +#: views/section/view-assignment.php:29 +msgid "Assignments" +msgstr "Affectation" -#: views/financial/gl-accounts.php:132 views/financial/gl-accounts.php:191 -msgid "Account Type" -msgstr "" +#: views/form/student-load-rule.php:86 views/form/student-load-rule.php:146 +#: views/form/student-load-rule.php:194 +#: views/form/view-student-load-rule.php:96 +#: views/form/view-student-load-rule.php:147 +msgid "Term(s)" +msgstr "Condition(s)" -#: views/financial/gl-filter.php:22 views/financial/gl-filter.php:25 -msgid "Search General Ledger" -msgstr "" +#: views/application/appls.php:21 +msgid "My Applications" +msgstr "Mon Application" -#: views/financial/gl-filter.php:48 views/financial/jentry-filter.php:48 -msgid "Select statement period" -msgstr "" +#: views/dashboard/menu.php:303 views/section/courses.php:71 +#: views/section/students.php:73 +msgid "Email Students" +msgstr "Email Etudiant" -#: views/financial/gl-filter.php:61 views/financial/jentry-filter.php:61 -msgid "From" -msgstr "" +#: views/form/student-load-rule.php:93 views/form/student-load-rule.php:147 +#: views/form/student-load-rule.php:208 +#: views/form/view-student-load-rule.php:103 +#: views/form/view-student-load-rule.php:161 +msgid "Academic Level(s)" +msgstr "Niveau(x) Académique" -#: views/financial/gl-filter.php:79 views/financial/jentry-filter.php:79 -msgid "To" -msgstr "" +#: views/application/appls.php:49 views/application/index.php:83 +#: views/application/inst.php:88 views/comm-mgmt/index.php:61 +#: views/course/extr.php:96 views/course/index.php:83 views/course/tceq.php:84 +#: views/financial/index.php:91 views/financial/journal-entries.php:87 +#: views/financial/payment-plan.php:231 views/form/acad-year.php:119 +#: views/form/building.php:142 views/form/ccd.php:126 views/form/cip.php:124 +#: views/form/degree.php:117 views/form/department.php:161 +#: views/form/location.php:126 views/form/major.php:126 +#: views/form/minor.php:126 views/form/room.php:153 +#: views/form/rstr-code.php:138 views/form/school.php:141 +#: views/form/semester.php:186 views/form/specialization.php:126 +#: views/form/student-load-rule.php:172 views/form/subject.php:119 +#: views/form/term.php:197 views/hr/index.php:86 views/person/index.php:87 +#: views/program/index.php:83 views/section/assignments.php:73 +#: views/section/index.php:83 views/staff/index.php:83 +#: views/staff/timesheets.php:74 views/student/bill.php:58 +#: views/student/index.php:80 +msgid "View" +msgstr "Vue" -#: views/financial/gl-summary.php:41 views/financial/jentries.php:41 -#: views/section/attendance.php:39 -msgid "Today's Date" -msgstr "" +#: views/dashboard/menu.php:365 +msgid "Files" +msgstr "Fichiers" -#: views/financial/gl-summary.php:46 views/financial/jentries.php:46 -msgid "Statement Period" -msgstr "" +#: views/form/student-load-rule.php:197 +#: views/form/view-student-load-rule.php:150 +msgid "In this field, you will only enter your term designation without the two digit year separated by a backslash \"\\\" (i.e. FA\\FAM1\\SP)." +msgstr "Dans ce domaine, vous ne saisissez que votre désignation à long terme sans l'année à deux chiffres séparés par une barre oblique inverse \"\\\" (i.e. FA\\FAM1\\SP)." -#: views/financial/gl-summary.php:57 -msgid "GL Number" -msgstr "" +#: views/application/appls.php:73 +msgid "Admission Status" +msgstr "Statut d'Admission" -#: views/financial/gl-summary.php:58 -msgid "Account Title" -msgstr "" +#: views/dashboard/modules.php:38 +msgid "Modules can extend the functionality of eduTrac SIS. There are several modules available in our " +msgstr "Les modules peuvent étendre les fonctionnalités de eduTrac SIS. Il existe plusieurs modules disponibles dans notre" -#: views/financial/gl-summary.php:60 -msgid "Opening" -msgstr "" +#: views/form/student-load-rule.php:211 +#: views/form/view-student-load-rule.php:164 +msgid "Enter the academic level or levels that should be applied to this rule separated by a backslash \"\\\" (i.e. CE\\UG\\GR)" +msgstr "Entrez le ou les niveaux académique qui devrait être appliqué à cette règle séparés par une barre oblique inverse \"\\\" (par exemple CE\\UG\\GR)" -#: views/financial/gl-summary.php:61 views/financial/view-jentry.php:104 -msgid "Debit" -msgstr "Débit" +#: views/application/appls.php:77 views/index/apply.php:98 +msgid "PSAT Verbal" +msgstr "PSAT Verbal" -#: views/financial/gl-summary.php:62 views/financial/view-jentry.php:108 -msgid "Credit" -msgstr "Crédit" +#: views/dashboard/modules.php:38 +msgid "Marketplace" +msgstr "marché" -#: views/financial/gl-summary.php:63 -msgid "Closing" -msgstr "" +#: views/form/term.php:65 views/form/view-term.php:74 +msgid "Term Code" +msgstr "Code de la Condition " -#: views/financial/gl-summary.php:84 -msgid "Total" -msgstr "" +#: views/application/appls.php:81 views/index/apply.php:179 +msgid "PSAT Math" +msgstr "PSAT Math" -#: views/financial/gl-summary.php:94 views/financial/jentries.php:88 -#: views/financial/view-jentry.php:118 -msgid "This computer generated statement does not need signature." -msgstr "Cette déclaration générée par ordinateur n'a pas besoin de signature." +#: views/dashboard/modules.php:58 +msgid "Module" +msgstr "Module" -#: views/financial/index.php:28 views/student/vbill.php:27 -msgid "Bill" -msgstr "" +#: views/form/term.php:79 views/form/view-term.php:88 +msgid "Reporting Term" +msgstr "Terme du rapport" -#: views/financial/index.php:66 views/financial/view-bill.php:83 -#: views/financial/view-comments.php:75 views/student/vbill.php:53 -msgid "Invoice #" -msgstr "" +#: views/application/appls.php:85 views/index/apply.php:100 +msgid "SAT Verbal" +msgstr "SAT Verbal" -#: views/financial/index.php:67 views/index/apply.php:79 -#: views/index/profile.php:47 views/install/index.php:222 -#: views/person/add.php:145 views/person/addr-form.php:85 -#: views/person/addr.php:85 views/person/index.php:63 views/person/view.php:130 -#: views/staff/index.php:60 views/student/index.php:57 -msgid "Last Name" -msgstr "" +#: views/dashboard/modules.php:61 +msgid "Module URI" +msgstr "Module URI" -#: views/financial/index.php:68 views/index/apply.php:77 -#: views/index/profile.php:43 views/install/index.php:219 -#: views/person/add.php:136 views/person/addr-form.php:76 -#: views/person/addr.php:76 views/person/index.php:64 views/person/view.php:121 -#: views/staff/index.php:61 views/student/index.php:58 -msgid "First Name" -msgstr "" +#: views/form/term.php:116 views/form/view-term.php:125 +msgid "Drop/Add End Date" +msgstr "Suppression / Ajout Date de fin" -#: views/financial/index.php:117 -msgid "Bill Search" -msgstr "" +#: views/application/appls.php:89 views/index/apply.php:181 +msgid "SAT Math" +msgstr "SAT Math" -#: views/financial/issue-refund.php:126 views/financial/view-refunds.php:251 -msgid "Refund Amount" -msgstr "" +#: views/dashboard/modules.php:62 +msgid "Version" +msgstr "Version" -#: views/financial/issue-refund.php:135 views/financial/view-refunds.php:260 -msgid "Refund Date" -msgstr "" +#: views/form/view-acad-year.php:30 views/form/view-acad-year.php:33 +msgid "View Academic Year" +msgstr "Voir Année Académique" -#: views/financial/jentries.php:22 -msgid "General Journal Entries" -msgstr "" +#: views/application/appls.php:93 views/index/apply.php:102 +msgid "ACT English" +msgstr "Anglais ACT" -#: views/financial/jentries.php:33 -msgid "Journal Entry Summary" -msgstr "" +#: views/dashboard/modules.php:74 +msgid "Visit module site" +msgstr "Site de module de visite" -#: views/financial/jentries.php:61 views/financial/view-jentry.php:66 -msgid "Posted by" -msgstr "" +#: views/form/view-building.php:30 +msgid "View Building" +msgstr "Voir bâtiment" -#: views/financial/jentries.php:81 -msgid "Total Amount" -msgstr "" +#: views/application/appls.php:97 views/index/apply.php:183 +msgid "ACT Math" +msgstr "ACT Math" -#: views/financial/jentry-filter.php:22 views/financial/jentry-filter.php:25 -msgid "Search Journal Entries" -msgstr "" +#: views/dashboard/support.php:26 views/dashboard/support.php:29 +msgid "Online Documenation" +msgstr "Documentation en ligne" -#: views/financial/journal-entries.php:62 views/financial/payment-plan.php:321 -msgid "Posted By" -msgstr "" +#: views/application/appls.php:111 views/course/extr.php:226 +#: views/course/extr.php:235 views/course/vextr.php:152 +#: views/course/vextr.php:161 views/financial/create-bill.php:199 +#: views/financial/payment-plan.php:159 views/financial/payment-plan.php:311 +#: views/financial/payment-plan.php:405 views/financial/view-bill.php:58 +#: views/financial/view-comments.php:59 views/financial/view-payments.php:59 +#: views/financial/view-refunds.php:59 views/section/add.php:339 +#: views/section/view.php:268 views/student/sacp.php:192 +#: views/student/sacp.php:201 views/student/shis.php:73 +#: views/student/shis.php:121 views/student/shis.php:209 +#: views/student/strc.php:75 views/student/strc.php:120 +#: views/student/strc.php:175 +msgid "Comments" +msgstr "Commentaires" -#: views/financial/payment-plan.php:97 views/financial/payment-plan.php:264 -msgid "Payment Frequency" -msgstr "" +#: views/dashboard/support.php:38 +msgid "Your browser does not support iframes." +msgstr "Votre navigateur ne supporte pas les iframes." -#: views/financial/payment-plan.php:101 views/financial/payment-plan.php:268 -msgid "Daily" -msgstr "" +#: views/application/index.php:58 views/hr/index.php:59 +#: views/person/index.php:60 views/staff/index.php:58 +#: views/student/index.php:55 +msgid "Image" +msgstr "Image" -#: views/financial/payment-plan.php:103 views/financial/payment-plan.php:270 -msgid "Bi-Weekly" -msgstr "" +#: views/application/index.php:60 views/financial/billing-table.php:60 +#: views/financial/billing-table.php:120 views/financial/billing-table.php:166 +#: views/financial/gl-accounts.php:63 views/financial/payment-plan.php:203 +#: views/form/department.php:135 views/hr/index.php:61 +#: views/permission/add.php:63 views/permission/index.php:51 +#: views/permission/view.php:63 views/role/index.php:42 +#: views/section/templates/roster/default.template.php:82 +msgid "Name" +msgstr "Prénom" -#: views/financial/payment-plan.php:104 views/financial/payment-plan.php:271 -msgid "Monthly" -msgstr "" +#: views/application/index.php:85 +msgid "Create Student" +msgstr "Créer Etudiant" -#: views/financial/payment-plan.php:105 views/financial/payment-plan.php:272 -msgid "Yearly" -msgstr "" +#: views/application/index.php:111 +msgid "Application Search" +msgstr "Rechercher Application" -#: views/financial/payment-plan.php:113 -msgid "Frequency Amount" -msgstr "" +#: views/application/inst-attended.php:78 +msgid "Applicant ID" +msgstr "ID Application" -#: views/financial/payment-plan.php:205 -msgid "Pay Frequency" -msgstr "" +#: views/application/inst-attended.php:100 +msgid "Attend From Date" +msgstr "Assister à la Date" -#: views/financial/payment-plan.php:357 -msgid "Start and End Date" -msgstr "" +#: views/application/inst-attended.php:112 +msgid "Attend To Date" +msgstr "Assister à ce jour" -#: views/financial/payment-plan.php:362 -msgid "" -"The start date will act as the date the student and the institution agreed " -"upon said payment plan. Start date is a required field but End date is " -"optional." -msgstr "" +#: views/application/inst-attended.php:130 views/application/view.php:384 +#: views/financial/batch.php:87 views/financial/batch.php:111 +#: views/form/import.php:89 views/form/major.php:28 views/form/major.php:31 +#: views/form/view-major.php:28 views/program/add.php:218 +#: views/program/ajax.php:496 views/program/view.php:223 +#: views/student/add.php:105 +#: views/student/templates/transcript/default.template.php:164 +msgid "Major" +msgstr "Majeur" -#: views/financial/payment-plan.php:386 -msgid "" -"Ignore this field if the payment plan is not associated with a particular " -"term." -msgstr "" +#: views/application/inst-attended.php:139 views/application/view.php:385 +#: views/student/sttr.php:64 +msgid "GPA" +msgstr "GPA" -#: views/financial/payment-plan.php:410 -msgid "" -"Place any notes and or instructions for the student. This will appear on the " -"account history screen for both the student as well as student accounts." -msgstr "" +#: views/application/inst-attended.php:148 views/application/view.php:386 +#: views/form/degree.php:23 views/form/degree.php:26 views/form/import.php:88 +#: views/form/view-degree.php:28 views/program/add.php:192 +#: views/program/ajax.php:303 views/program/view.php:197 +#: views/student/templates/transcript/default.template.php:163 +msgid "Degree" +msgstr "Diplôme" -#: views/financial/payment-plan.php:430 -msgid "Payment Plan:" -msgstr "" +#: views/application/inst-attended.php:157 +msgid "Conferral Date" +msgstr "Date de délégation" -#: views/financial/payment-plan.php:435 -msgid "Are you sure you want to delete this payment plan?" -msgstr "" +#: views/application/inst.php:66 +msgid "Institution Type" +msgstr "Type d'établissement" -#: views/financial/paypal-ipn.php:110 views/student/paypal-ipn.php:106 -msgid "IPN Fraud Warning" -msgstr "" +#: views/dashboard/upgrade.php:30 +msgid "Warning!" +msgstr "Alerte!" -#: views/financial/paypal-ipn.php:130 views/student/paypal-ipn.php:130 -msgid "Invalid IPN" -msgstr "" +#: views/application/view-inst.php:30 +msgid "View Institution" +msgstr "Voir Etablissement" -#: views/financial/paypal.php:22 views/financial/paypal.php:25 -msgid "Paypal Settings" -msgstr "" +#: views/dashboard/upgrade.php:30 +msgid "Hey admin, your database is out of date and currently at version " +msgstr "Salut admin, votre base de données est à jour et est actuellement à sa dernière version" -#: views/financial/paypal.php:51 -msgid "Enable?" -msgstr "" +#: views/application/view-inst.php:73 +msgid "HS High School" +msgstr "HS Lycée" -#: views/financial/paypal.php:64 -msgid "Post Over SSL?" -msgstr "" +#: views/dashboard/upgrade.php:30 +msgid ". Click the button below to upgrade your database. When the upgrade is complete," +msgstr ". Cliquez sur le bouton ci-dessous pour mettre à jour votre base de données. Lorsque la mise à niveau est terminée," -#: views/financial/paypal.php:77 views/financial/paypal.php:150 -msgid "Business Email" -msgstr "" +#: views/application/view-inst.php:74 +msgid "COL College" +msgstr "COL Collège" -#: views/financial/paypal.php:92 -msgid "Currency Code" -msgstr "" +#: views/dashboard/upgrade.php:30 +msgid "click here" +msgstr "Cliquez ICI" -#: views/financial/paypal.php:96 -msgid "US Dollar" -msgstr "" +#: views/application/view-inst.php:75 +msgid "UNIV University" +msgstr "UNIV Université" -#: views/financial/paypal.php:97 -msgid "Austrailian Dollar" -msgstr "" +#: views/dashboard/upgrade.php:30 +msgid "to return to the dashboard. If you are behind on a few versions, you may be redirected to this page again until the system is fully up to date." +msgstr "Pour revenir au tableau de bord. Si vous êtes en retard sur quelques versions, vous pouvez être redirigé vers cette page à nouveau jusqu'à ce que le système soit complètement à jour." -#: views/financial/paypal.php:98 -msgid "Euro" -msgstr "" +#: views/application/view.php:33 views/application/view.php:36 +msgid "View Application" +msgstr "Voir Application" -#: views/financial/paypal.php:106 -msgid "Testing?" -msgstr "" +#: views/dashboard/upgrade.php:44 +msgid "Hey admin, you database is currently up to date. There is nothing else here to see. " +msgstr "Hey admin, votre base de données est actuellement mis à jour. Il n'y a rien ici pour voir." -#: views/financial/paypal.php:132 -msgid "IPN URL to enter into PayPal settings:" -msgstr "IPN URL pour entrer dans les paramètres de PayPal:" +#: views/application/view.php:158 views/error/audit.php:43 +#: views/index/apply.php:51 views/index/profile.php:35 +#: views/install/index.php:137 views/install/index.php:189 +#: views/install/index.php:216 views/person/add.php:93 views/person/view.php:78 +msgid "Username" +msgstr "Nom d'utilisateur" -#: views/financial/paypal.php:134 -msgid "" -"There is no need to enable IPN in PayPal. eduTrac SIS will automatically let " -"PayPal know to use the above URL." -msgstr "" +#: views/dashboard/upgrade.php:44 views/setting/index.php:346 +msgid "Click here" +msgstr "Cliquez ici" -#: views/financial/paypal.php:155 -msgid "" -"Set this to the email that is specified on your Paypal account. If you are " -"in testing mode, make sure to set this to the email address in your Sandbox " -"account." -msgstr "" -"Définir à l'e-mail qui est spécifié sur votre compte Paypal. Si vous êtes en " -"mode de test, assurez-vous de définir ce à l'adresse e-mail dans votre " -"compte Sandbox." +#: views/application/view.php:230 +msgid "Application Status" +msgstr "Etat de l'Application" -#: views/financial/paypal.php:174 -msgid "Sandbox Mode" -msgstr "" +#: views/dashboard/upgrade.php:44 +msgid "to return to the dashboard." +msgstr "Pour revenir au tableau de bord." -#: views/financial/paypal.php:179 -msgid "" -"If you are testing to make sure that the communication between your site and " -"Paypal is working, set this to 'Yes' otherwise set it to 'No' for Live " -"production." -msgstr "" -"Si vous testez pour vous assurer que la communication entre votre site et " -"Paypal fonctionne, réglez-le sur 'Oui»'autrement, définissez à 'Non' pour la " -"production en direct." +#: views/application/view.php:234 views/hr/view-timesheet.php:129 +msgid "Pending" +msgstr "En attendant" -#: views/financial/view-bill.php:34 views/financial/view-comments.php:35 -msgid "View Bill" -msgstr "" +#: views/error/404.php:27 +msgid "Ouch!" +msgstr "Aie!" -#: views/financial/view-bill.php:58 views/financial/view-comments.php:59 -#: views/financial/view-payments.php:59 views/financial/view-refunds.php:59 -msgid "Refunds" -msgstr "" +#: views/application/view.php:235 +msgid "Under Review" +msgstr "A Revoir" -#: views/financial/view-bill.php:74 -msgid "Delete Bill / Invoice" -msgstr "" +#: views/error/404.php:27 +msgid "404 error" +msgstr "404 erreur" -#: views/financial/view-bill.php:92 -msgid "Invoice Date / Term" -msgstr "" +#: views/application/view.php:236 +msgid "Accepted" +msgstr "Accepté" -#: views/financial/view-bill.php:112 views/student/vbill.php:81 -msgid "Tuition / Adjusted" -msgstr "" +#: views/error/404.php:32 +msgid "It seems the page you are looking for is not here anymore. The page might have moved to another address or just removed by our staff." +msgstr "Il semble que la page que vous recherchez est pas plus ici. La page aurait déplacé à une autre adresse ou tout simplement retiré par notre personnel." -#: views/financial/view-bill.php:125 views/financial/view-bill.php:135 -#: views/form/import.php:84 views/student/vbill.php:93 -#: views/student/vbill.php:102 -msgid "Tuition" -msgstr "" +#: views/application/view.php:237 +msgid "Not Accepted" +msgstr "Pas Accepté" -#: views/financial/view-bill.php:161 -msgid "Are you sure you want to delete this fee?" -msgstr "Êtes-vous sûr de vouloir supprimer cette taxe?" +#: views/error/404.php:40 +msgid "Is this a serious error?" +msgstr "Est-ce une grave erreur?" -#: views/financial/view-bill.php:195 views/student/vbill.php:130 -msgid "Begin / End Balance" -msgstr "" +#: views/application/view.php:301 views/application/view.php:318 +#: views/application/view.php:517 +msgid "Applicant Comments" +msgstr "Commentaires de Demande " -#: views/financial/view-bill.php:207 views/student/vbill.php:142 -msgid "Credit / Refund Totals" -msgstr "" +#: views/error/404.php:40 +msgid "Let us know" +msgstr "Laissez nous savoir" -#: views/financial/view-bill.php:232 views/financial/view-comments.php:108 -#: views/student/vbill.php:167 -msgid "Student Comments" -msgstr "" +#: views/application/view.php:307 views/financial/view-bill.php:242 +#: views/financial/view-comments.php:117 +msgid "Staff Comments" +msgstr "Commentaires du personnel " -#: views/financial/view-bill.php:265 -msgid "Previous" -msgstr "" +#: views/error/audit.php:41 +msgid "Process" +msgstr "Processus" -#: views/financial/view-bill.php:268 -msgid "Next" -msgstr "" +#: views/application/view.php:337 +msgid "Internal Comments" +msgstr "Commentaires internes" -#: views/financial/view-bill.php:287 -msgid "Delete Invoice: " -msgstr "" +#: views/error/audit.php:42 +msgid "Record" +msgstr "Dossier" -#: views/financial/view-bill.php:292 -msgid "" -"There is no undoing this, so are you sure you want to delete this bill / " -"invoice." -msgstr "" +#: views/application/view.php:382 +msgid "From Date" +msgstr "Date de " -#: views/financial/view-bill.php:313 -msgid "Bill / Invoice Term" -msgstr "" +#: views/error/audit.php:44 +msgid "Action Date" +msgstr "Date de l'Action" -#: views/financial/view-bill.php:318 -msgid "" -"A bill/invoice is connected to a term and there is ONE bill per/term, per/" -"student. It is strongly encouraged to not change the term on a student's " -"bill. If you do change the term, make sure to change it to a term where a " -"bill does not currently exists. If you update the bill to a term where a " -"bill already exists for a student, this will have disastrous effects and it " -"cannot be undone." -msgstr "" +#: views/application/view.php:383 +msgid "To Date" +msgstr "à la Date" -#: views/financial/view-bill.php:319 -msgid "" -"Moreover, if you created the bill using the wrong term, and you need to move " -"the bill to a term where a current bill *does not* exist " -"for the student, you first need to change/update the term on fees, payments, " -"and refunds first, and then change/update the term on the bill." -msgstr "" +#: views/error/audit.php:45 +msgid "Expire Date" +msgstr "Date d'expiration" -#: views/financial/view-comments.php:84 -msgid "Invoice Date" -msgstr "" +#: views/application/view.php:387 views/student/add.php:207 +msgid "Grad Date" +msgstr "Date Grad" -#: views/financial/view-jentry.php:22 views/financial/view-jentry.php:33 -msgid "General Journal Entry" -msgstr "" +#: views/error/logs.php:41 +msgid "Error Type" +msgstr "Type d'Erreur" -#: views/financial/view-jentry.php:45 -msgid "Journal ID" -msgstr "" +#: views/application/view.php:388 views/courses/cart.php:48 +#: views/error/audit.php:40 views/financial/billing-table.php:123 +#: views/hr/timesheets.php:45 views/plugins/index.php:43 +#: views/staff/timesheets.php:54 +msgid "Action" +msgstr "Action" -#: views/financial/view-payments.php:35 -msgid "View Bill Payments" -msgstr "" +#: views/error/logs.php:42 +msgid "String" +msgstr "Chaîne de caractère" -#: views/financial/view-payments.php:75 views/financial/view-refunds.php:75 -msgid "Invoice # / Date / Term" -msgstr "" +#: views/application/view.php:522 +msgid "These comments will be shown to the applicant in myeduTrac." +msgstr "Ces commentaires seront affichés à la requérante en myeduTrac." -#: views/financial/view-payments.php:98 -msgid "Date / Type / Check / Term / Payment" -msgstr "" +#: views/error/logs.php:43 +msgid "File" +msgstr "Fichier" -#: views/financial/view-payments.php:130 -msgid "Payment Note:" -msgstr "" +#: views/calendar/booking-form.php:64 views/calendar/booking-form.php:67 +msgid "Room / Event Booking Form" +msgstr "Salle / Formulaire de réservation d'Événement " -#: views/financial/view-payments.php:155 -msgid "Are you sure you want to delete this payment?" -msgstr "Êtes-vous sûr de vouloir supprimer ce paiement?" +#: views/error/logs.php:44 +msgid "Line Number" +msgstr "Nombre de Ligne" -#: views/financial/view-refunds.php:35 -msgid "View Bill Refunds" -msgstr "" +#: views/calendar/booking-form.php:81 +msgid "It is recommended that you check the availability of a room before submitting the form. An email will be sent to the requestor confirming the booking of a room or event." +msgstr "Il est recommandé que vous vérifiez la disponibilité d'une chambre avant de soumettre le formulaire. Un e-mail sera envoyé au demandeur confirmant la réservation d'une chambre ou d'un événement." -#: views/financial/view-refunds.php:98 -msgid "Date / Term / Refund" -msgstr "" +#: views/calendar/booking-form.php:101 views/calendar/events.php:54 +#: views/calendar/requests.php:55 views/calendar/view-request.php:119 +msgid "Requestor" +msgstr "Demandeur" -#: views/financial/view-refunds.php:121 -msgid "Refund Note:" -msgstr "" +#: views/calendar/booking-form.php:113 views/calendar/request-form.php:89 +#: views/calendar/view-request.php:131 views/form/request-form.php:89 +msgid "Request Type" +msgstr "Type de Requête" -#: views/financial/view-refunds.php:142 views/form/import.php:82 -msgid "Refund" -msgstr "Remboursement" +#: views/financial/account-history.php:29 views/financial/index.php:92 +#: views/student/bill.php:59 +msgid "Account History" +msgstr "Historique du compte" -#: views/financial/view-refunds.php:146 -msgid "Are you sure you want to delete this refund?" -msgstr "Êtes-vous sûr de vouloir supprimer ce remboursement?" +#: views/calendar/booking-form.php:117 views/calendar/request-form.php:92 +#: views/calendar/view-request.php:135 views/form/request-form.php:92 +msgid "Meeting" +msgstr "Rencontre" -#: views/form/acad-year.php:23 views/form/acad-year.php:26 -#: views/form/acad-year.php:99 views/form/import.php:77 -#: views/form/semester.php:60 views/form/view-acad-year.php:28 -#: views/form/view-semester.php:62 views/program/ajax.php:206 -msgid "Academic Year" -msgstr "" +#: views/financial/account-history.php:50 views/student/account-history.php:38 +msgid "Print history" +msgstr "historique d'impression" -#: views/form/acad-year.php:53 views/form/acad-year.php:60 -#: views/form/view-acad-year.php:62 views/form/view-acad-year.php:69 -msgid "Acad Year" -msgstr "" +#: views/calendar/booking-form.php:118 views/calendar/request-form.php:93 +#: views/calendar/view-request.php:136 views/form/request-form.php:93 +msgid "Event" +msgstr "Événement" -#: views/form/acad-year.php:98 -msgid "Academic Year Code" -msgstr "" +#: views/financial/account-history.php:51 views/student/account-history.php:39 +msgid "Save as PDF" +msgstr "Enregistrer en PDF" -#: views/form/address.php:43 views/index/apply.php:87 -#: views/index/profile.php:91 views/person/add.php:163 -#: views/person/addr-form.php:103 views/person/addr.php:103 -#: views/person/view.php:148 -msgid "Address1" -msgstr "" +#: views/calendar/booking-form.php:126 views/calendar/events.php:52 +#: views/calendar/request-form.php:97 views/calendar/requests.php:53 +#: views/calendar/setting.php:67 views/calendar/setting.php:97 +#: views/calendar/view-request.php:144 views/form/request-form.php:97 +msgid "Category" +msgstr "Catégorie" -#: views/form/address.php:47 views/index/apply.php:89 -#: views/index/profile.php:95 views/person/add.php:172 -#: views/person/addr-form.php:112 views/person/addr.php:112 -#: views/person/view.php:157 -msgid "Address2" -msgstr "" +#: views/financial/account-history.php:67 views/financial/ah-pdf.php:79 +#: views/student/account-history.php:55 +msgid "e-mail" +msgstr "e-mail" -#: views/form/address.php:62 views/index/apply.php:126 -#: views/index/profile.php:107 -msgid "Zip" -msgstr "" +#: views/calendar/booking-form.php:138 views/calendar/events.php:50 +#: views/calendar/request-form.php:104 views/calendar/requests.php:51 +#: views/calendar/view-request.php:156 views/form/request-form.php:104 +msgid "Event Name" +msgstr "Nom de l'événement" -#: views/form/address.php:66 views/index/apply.php:85 -msgid "Phone #" -msgstr "" +#: views/financial/account-history.php:68 +#: views/financial/account-history.php:77 views/financial/ah-pdf.php:80 +#: views/financial/ah-pdf.php:89 views/student/account-history.php:56 +#: views/student/account-history.php:65 +msgid "phone" +msgstr "téléphone" -#: views/form/address.php:77 views/form/department.php:136 -#: views/index/apply.php:83 views/index/profile.php:55 -#: views/section/students.php:120 views/setting/email.php:48 -#: views/setting/index.php:49 views/setting/registration.php:48 -#: views/setting/templates.php:155 views/staff/view.php:218 -msgid "Email" -msgstr "" +#: views/calendar/booking-form.php:147 views/calendar/request-form.php:108 +#: views/calendar/view-event.php:209 views/calendar/view-request.php:165 +#: views/dashboard/modules.php:59 views/financial/account-history.php:91 +#: views/financial/add-jentry.php:173 views/financial/ah-pdf.php:103 +#: views/financial/jentries.php:60 views/financial/journal-entries.php:61 +#: views/financial/view-jentry.php:62 views/form/department.php:138 +#: views/form/request-form.php:108 views/form/rstr-code.php:67 +#: views/form/rstr-code.php:116 views/form/view-rstr-code.php:69 +#: views/plugins/index.php:42 views/section/booking-info.php:431 +#: views/setting/templates.php:170 views/student/account-history.php:79 +msgid "Description" +msgstr "Description" -#: views/form/building.php:28 views/form/building.php:31 -#: views/form/import.php:95 views/form/room.php:60 views/form/room.php:130 -#: views/form/school.php:74 views/form/school.php:120 -#: views/form/view-building.php:28 views/form/view-room.php:62 -#: views/form/view-school.php:76 views/hr/view.php:173 -#: views/section/catalog-pdf.php:56 views/section/offering-info.php:76 -#: views/staff/add.php:116 views/staff/view.php:142 -#: views/student/schedule.php:39 -msgid "Building" -msgstr "" +#: views/financial/account-history.php:72 views/financial/ah-pdf.php:84 +#: views/student/account-history.php:60 +msgid "Student information" +msgstr "l'information des étudiants" -#: views/form/building.php:60 views/form/building.php:121 -#: views/form/view-building.php:62 -msgid "Building Code" -msgstr "" +#: views/calendar/booking-form.php:156 views/calendar/events.php:53 +#: views/calendar/request-form.php:112 views/calendar/requests.php:54 +#: views/calendar/view-event.php:55 views/calendar/view-event.php:109 +#: views/calendar/view-event.php:140 views/calendar/view-request.php:174 +#: views/form/import.php:96 views/form/request-form.php:112 +#: views/form/room.php:28 views/form/room.php:31 views/form/view-room.php:28 +#: views/section/booking-info.php:362 views/section/catalog-pdf.php:57 +#: views/student/schedule.php:39 +msgid "Room" +msgstr "Salle" -#: views/form/building.php:67 views/form/building.php:122 -#: views/form/view-building.php:69 -msgid "Building Name" -msgstr "" +#: views/financial/account-history.php:76 views/financial/ah-pdf.php:88 +#: views/student/account-history.php:64 +msgid "e-mail:" +msgstr "e-mail" -#: views/form/ccd.php:28 views/form/ccd.php:31 views/form/import.php:91 -#: views/form/view-ccd.php:28 views/program/add.php:205 -#: views/program/ajax.php:402 views/program/view.php:210 -#: views/student/templates/transcript/default.template.php:167 -msgid "CCD" -msgstr "" +#: views/calendar/booking-form.php:174 views/calendar/request-form.php:126 +#: views/calendar/view-request.php:192 views/form/request-form.php:126 +#: views/section/booking-info.php:168 +msgid "First Day" +msgstr "Premier jour" -#: views/form/ccd.php:60 views/form/ccd.php:105 views/form/view-ccd.php:62 -msgid "CCD Code" -msgstr "" +#: views/financial/account-history.php:90 views/financial/add-jentry.php:137 +#: views/financial/ah-pdf.php:102 views/financial/jentries.php:57 +#: views/financial/journal-entries.php:58 views/financial/view-jentry.php:71 +#: views/index/news.php:35 views/section/attendance_report.php:74 +#: views/student/account-history.php:78 +msgid "Date" +msgstr "Date" -#: views/form/ccd.php:67 views/form/ccd.php:106 views/form/view-ccd.php:69 -msgid "CCD Name" -msgstr "" +#: views/calendar/booking-form.php:186 views/calendar/request-form.php:119 +#: views/calendar/view-request.php:204 views/form/request-form.php:119 +#: views/section/booking-info.php:186 +msgid "Last Day" +msgstr "Dernier jour" -#: views/form/cip.php:28 views/form/cip.php:31 views/form/import.php:93 -#: views/form/view-cip.php:28 views/program/add.php:266 -#: views/program/ajax.php:775 views/program/view.php:271 -msgid "CIP" -msgstr "" +#: views/financial/account-history.php:92 views/financial/ah-pdf.php:104 +#: views/student/account-history.php:80 +msgid "Charges" +msgstr "Frais" -#: views/form/cip.php:60 views/form/cip.php:103 views/form/view-cip.php:62 -#: views/program/ajax.php:787 -msgid "CIP Code" -msgstr "" +#: views/calendar/booking-form.php:198 views/calendar/request-form.php:140 +#: views/calendar/view-event.php:164 views/calendar/view-request.php:216 +#: views/form/request-form.php:140 views/hr/view-timesheet.php:104 +#: views/hr/view-timesheet.php:211 views/section/add.php:261 +#: views/section/booking-info.php:198 views/section/booking-info.php:386 +#: views/section/offering-info.php:142 views/staff/timesheets.php:142 +#: views/staff/view-timesheet.php:54 views/staff/view-timesheet.php:137 +msgid "Start Time" +msgstr "Heure de début" -#: views/form/cip.php:67 views/form/cip.php:104 views/form/view-cip.php:69 -#: views/program/ajax.php:794 -msgid "CIP Name" -msgstr "" +#: views/financial/account-history.php:94 views/financial/ah-pdf.php:106 +#: views/financial/view-bill.php:56 views/financial/view-comments.php:57 +#: views/financial/view-payments.php:57 views/financial/view-refunds.php:57 +#: views/student/account-history.php:82 +msgid "Payments" +msgstr "Paiements" -#: views/form/degree.php:53 views/form/degree.php:96 -#: views/form/view-degree.php:62 views/program/ajax.php:315 -msgid "Degree Code" -msgstr "" +#: views/calendar/booking-form.php:210 views/calendar/request-form.php:133 +#: views/calendar/view-event.php:188 views/calendar/view-request.php:228 +#: views/form/request-form.php:133 views/hr/view-timesheet.php:105 +#: views/hr/view-timesheet.php:223 views/section/add.php:273 +#: views/section/booking-info.php:210 views/section/booking-info.php:410 +#: views/section/offering-info.php:154 views/staff/timesheets.php:154 +#: views/staff/view-timesheet.php:55 views/staff/view-timesheet.php:149 +msgid "End Time" +msgstr "Heure de fin" -#: views/form/degree.php:60 views/form/degree.php:97 -#: views/form/view-degree.php:69 views/program/ajax.php:324 -msgid "Degree Name" -msgstr "" +#: views/financial/account-history.php:95 views/financial/ah-pdf.php:107 +#: views/student/account-history.php:83 +msgid "Method" +msgstr "méthode" -#: views/form/department.php:89 views/form/view-department.php:98 -msgid "Department Phone #" -msgstr "" +#: views/calendar/booking-form.php:222 views/calendar/request-form.php:147 +#: views/calendar/view-request.php:240 views/form/request-form.php:147 +#: views/section/booking-info.php:222 +msgid "Repeat?" +msgstr "Répétition" -#: views/form/department.php:134 views/form/rstr-code.php:60 -#: views/form/view-rstr-code.php:62 -msgid "Code" -msgstr "" +#: views/financial/account-history.php:96 views/financial/ah-pdf.php:108 +#: views/financial/gl-accounts.php:65 views/financial/view-bill.php:220 +#: views/financial/view-jentry.php:112 views/student/account-history.php:84 +#: views/student/vbill.php:155 +msgid "Balance" +msgstr "Balance" -#: views/form/department.php:137 views/hr/index.php:63 -#: views/index/profile.php:59 views/person/add.php:241 -#: views/person/addr-form.php:242 views/person/addr-form.php:295 -#: views/person/addr.php:246 views/person/addr.php:299 -#: views/person/view.php:202 -msgid "Phone" -msgstr "Téléphone" +#: views/calendar/booking-form.php:231 views/calendar/request-form.php:153 +#: views/calendar/view-request.php:249 views/form/request-form.php:153 +#: views/section/booking-info.php:231 +msgid "Repeat Occurrence" +msgstr "Répétez Occurrence" -#: views/form/grade-scale.php:23 views/form/grade-scale.php:31 -msgid "Grade Scale" -msgstr "" +#: views/financial/account-history.php:113 views/financial/ah-pdf.php:125 +#: views/student/account-history.php:101 +msgid "Term:" +msgstr "Condition:" -#: views/form/grade-scale.php:67 views/form/grade-scale.php:170 -#: views/form/view-grade-scale.php:69 -msgid "Percent" -msgstr "" +#: views/calendar/booking-form.php:234 views/calendar/request-form.php:155 +#: views/calendar/view-request.php:252 views/form/request-form.php:155 +#: views/section/booking-info.php:234 +msgid "Every Day" +msgstr "Tous les Jours" -#: views/form/grade-scale.php:74 views/form/view-grade-scale.php:76 -msgid "Points" -msgstr "" +#: views/financial/account-history.php:133 +#: views/student/account-history.php:121 +msgid "Agreement Date:" +msgstr "Date d'Accord:" -#: views/form/grade-scale.php:81 views/form/grade-scale.php:141 -#: views/form/view-grade-scale.php:83 views/form/view-grade-scale.php:142 -msgid "Count in GPA" -msgstr "" +#: views/calendar/booking-form.php:237 views/calendar/request-form.php:158 +#: views/calendar/view-request.php:255 views/financial/payment-plan.php:102 +#: views/financial/payment-plan.php:269 views/form/request-form.php:158 +#: views/section/booking-info.php:237 +msgid "Weekly" +msgstr "De la semaine" -#: views/form/grade-scale.php:146 views/form/view-grade-scale.php:147 -msgid "Should this be applied and calculated in the GPA?" -msgstr "" +#: views/financial/account-history.php:134 +#: views/student/account-history.php:122 +msgid "Payment:" +msgstr "Paiement:" -#: views/form/grade-scale.php:171 -#: views/student/templates/transcript/default.template.php:91 -msgid "Grade Points" -msgstr "" +#: views/calendar/booking-form.php:240 views/calendar/request-form.php:161 +#: views/calendar/view-request.php:258 views/form/request-form.php:161 +#: views/section/booking-info.php:240 +msgid "Biweekly" +msgstr "Deux fois par semaine" -#: views/form/import.php:28 views/form/import.php:31 -msgid "Quick Importer" -msgstr "" +#: views/financial/account-history.php:135 +#: views/student/account-history.php:123 +msgid "Agreement Ends:" +msgstr "Fin de l'Accord:" -#: views/form/import.php:71 -msgid "Database Table" -msgstr "" +#: views/calendar/booking-form.php:256 views/calendar/request-form.php:169 +#: views/calendar/view-request.php:275 views/form/request-form.php:169 +#: views/section/booking-info.php:259 +msgid "Check Availability" +msgstr "Vérifier La Disponibilité" -#: views/form/import.php:75 views/form/semester.php:28 -#: views/form/semester.php:31 views/form/semester.php:79 -#: views/form/semester.php:161 views/form/term.php:53 views/form/term.php:171 -#: views/form/view-semester.php:28 views/form/view-semester.php:81 -#: views/form/view-term.php:62 -msgid "Semester" -msgstr "Semestre" +#: views/financial/account-history.php:135 +#: views/student/account-history.php:123 +msgid "Open" +msgstr "Ouvert" -#: views/form/import.php:78 -msgid "Student Bill/Invoice" -msgstr "" +#: views/calendar/booking-form.php:257 views/calendar/view-request.php:276 +msgid "Book It" +msgstr "Réserver" -#: views/form/import.php:83 -msgid "Student Fee" -msgstr "" +#: views/financial/account-history.php:136 +#: views/student/account-history.php:124 +msgid "Comments:" +msgstr "Commentaires:" -#: views/form/import.php:87 -msgid "Credit Load" +#: views/calendar/events.php:30 views/calendar/events.php:33 +#: views/calendar/view-event.php:31 +msgid "Events List" +msgstr "Liste des événements" + +#: views/financial/account-history.php:160 views/financial/view-bill.php:343 +#: views/financial/view-comments.php:159 views/financial/view-payments.php:203 +#: views/financial/view-refunds.php:194 views/student/add-prog.php:214 +#: views/student/sacd.php:267 views/student/sacp.php:294 +#: views/student/shis.php:287 views/student/stac.php:166 +#: views/student/strc.php:256 views/student/sttr.php:121 +#: views/student/view.php:183 +msgid "" +"\"FERPA gives parents certain rights with respect to their children's education records. \n" +" These rights transfer to the student when he or she reaches the age of 18 or attends a school beyond \n" +" the high school level. Students to whom the rights have transferred are 'eligible students.'\"" msgstr "" +"\"FERPA donne aux parents certains droits à l'égard des dossiers scolaires de leurs enfants. \n" +" Ces droits transfèrent à l'étudiant quand il ou elle atteint l'âge de 18 ans ou fréquente une école au-delà \n" +" le niveau d'études secondaires. Les étudiants à qui les droits ont transférés sont «élèves admissibles.» \"" -#: views/form/import.php:90 views/form/minor.php:28 views/form/minor.php:31 -#: views/form/view-minor.php:28 views/program/add.php:231 -#: views/program/ajax.php:589 views/program/view.php:236 -#: views/student/templates/transcript/default.template.php:165 -msgid "Minor" +#: views/calendar/events.php:51 views/calendar/requests.php:52 +msgid "Event Type" +msgstr "Type d'événement" + +#: views/financial/account-history.php:163 views/financial/view-bill.php:346 +#: views/financial/view-comments.php:162 views/financial/view-payments.php:206 +#: views/financial/view-refunds.php:197 views/student/add-prog.php:217 +#: views/student/sacd.php:270 views/student/sacp.php:297 +#: views/student/shis.php:290 views/student/stac.php:169 +#: views/student/strc.php:259 views/student/sttr.php:124 +#: views/student/view.php:186 +msgid "" +"If the FERPA restriction states \"Yes\", then the student has requested that none of their \n" +" information be given out without their permission. To get a better understanding of FERPA, visit \n" +" the U.S. DOE's website @ " msgstr "" +"Si la restriction FERPA indique \"Oui\", puis l'étudiant a demandé que rien de leur \n" +" information soit donnée sans leur permission. Pour obtenir une meilleure compréhension de la FERPA, visite \n" +" le site web du U.S. DOE @ " -#: views/form/import.php:92 views/form/specialization.php:28 -#: views/form/specialization.php:31 views/program/add.php:244 -#: views/program/ajax.php:682 views/program/view.php:249 -#: views/student/templates/transcript/default.template.php:166 -msgid "Specialization" -msgstr "" +#: views/calendar/events.php:55 views/calendar/requests.php:56 +#: views/calendar/view-event.php:107 views/section/booking-info.php:329 +msgid "Start Date/Time" +msgstr "Début Jour/Heure" -#: views/form/import.php:97 views/form/school.php:28 views/form/school.php:31 -#: views/form/view-school.php:28 views/hr/view.php:206 -#: views/program/add.php:132 views/program/view.php:136 views/staff/add.php:155 -#: views/staff/view.php:175 views/student/add-prog.php:94 -#: views/student/add.php:123 views/student/sacp.php:77 -msgid "School" -msgstr "École" +#: views/financial/add-jentry.php:96 views/financial/add-jentry.php:99 +msgid "Add Journal Entry" +msgstr "Ajout de Journal d'Entrée" -#: views/form/import.php:102 views/person/adsu.php:49 views/staff/view.php:123 -msgid "Address" -msgstr "Adresse" +#: views/calendar/index.php:95 views/section/timetable.php:95 +#: views/student/timetable.php:89 +msgid "Month" +msgstr "Mois" -#: views/form/import.php:103 views/hr/add.php:140 views/hr/positions.php:198 -#: views/hr/view.php:141 views/staff/add.php:58 views/staff/add.php:84 -#: views/staff/index.php:22 -msgid "Staff" -msgstr "Personnel" +#: views/financial/add-jentry.php:115 views/financial/journal-entries.php:44 +msgid "Entries" +msgstr "Entrées" -#: views/form/import.php:104 -msgid "Staff Meta" -msgstr "" +#: views/calendar/index.php:96 views/section/timetable.php:96 +#: views/student/timetable.php:90 +msgid "Week" +msgstr "Semaine" -#: views/form/import.php:109 -msgid "Student Acad Cred" -msgstr "" +#: views/financial/add-jentry.php:116 views/financial/journal-entries.php:45 +msgid "Add Entry" +msgstr "Ajout d'Entrée" -#: views/form/import.php:110 -msgid "Student Acad Level" -msgstr "" +#: views/calendar/index.php:97 views/section/timetable.php:97 +#: views/student/timetable.php:91 +msgid "Day" +msgstr "Jour" -#: views/form/import.php:111 -msgid "Student Course Section" -msgstr "" +#: views/financial/add-jentry.php:149 +msgid "Entry Title" +msgstr "Titre d'Entrée" -#: views/form/import.php:112 -msgid "Student Program" -msgstr "" +#: views/calendar/index.php:98 views/section/timetable.php:98 +#: views/student/timetable.php:92 +msgid "Today" +msgstr "Aujourd'hui" -#: views/form/import.php:113 -msgid "Student Term" -msgstr "" +#: views/financial/add-jentry.php:164 views/financial/jentries.php:58 +#: views/financial/journal-entries.php:59 views/financial/view-jentry.php:49 +msgid "Manual ID" +msgstr "ID Manuel" -#: views/form/import.php:114 -msgid "Student Term GPA" -msgstr "" +#: views/calendar/request-form.php:61 views/form/request-form.php:61 +msgid "Room/Event Request Form" +msgstr "Formulaire de demande Salle/Evénement" -#: views/form/import.php:115 -msgid "Student Term Load" -msgstr "" +#: views/financial/add-jentry.php:197 +msgid "Include -(minus) symbol before the credit amount." +msgstr "Inclure symbole - (moins) avant le montant du crédit." -#: views/form/location.php:60 views/form/location.php:105 -#: views/form/view-location.php:62 views/program/ajax.php:414 -#: views/program/ajax.php:880 views/section/ajax.php:204 -msgid "Location Code" -msgstr "" +#: views/calendar/request-form.php:75 views/form/request-form.php:75 +msgid "It is recommended that you check the availability of your request before submitting the form. Once the form is submitted, an email will be sent to the room scheduler. If there are no issues, when the room scheduler approves your request, you will receive a confirmation email." +msgstr "Il est recommandé de vérifier la disponibilité de votre demande avant de soumettre le formulaire. Une fois le formulaire est soumis, un email sera envoyé à l'organisateur de la chambre. Si il n'y a pas de questions, lorsque le planificateur de chambre approuve votre demande, vous recevrez un email de confirmation." -#: views/form/location.php:67 views/form/location.php:106 -#: views/form/view-location.php:69 views/program/ajax.php:421 -#: views/program/ajax.php:887 views/section/ajax.php:211 -msgid "Location Name" -msgstr "" +#: views/financial/add-jentry.php:202 +msgid "GL Account" +msgstr "GL Compte" -#: views/form/major.php:60 views/form/major.php:105 -#: views/form/view-major.php:62 views/program/ajax.php:508 -msgid "Major Code" -msgstr "" +#: views/calendar/request-form.php:170 views/form/request-form.php:170 +#: views/section/students.php:183 views/section/students.php:264 +#: views/sql/csv-email.php:111 +msgid "Send" +msgstr "Envoyer" -#: views/form/major.php:67 views/form/major.php:106 -#: views/form/view-major.php:69 views/program/ajax.php:515 -msgid "Major Name" -msgstr "" +#: views/financial/add-jentry.php:203 views/financial/gl-accounts.php:141 +#: views/financial/gl-accounts.php:200 views/financial/view-jentry.php:83 +msgid "Memo" +msgstr "Note" -#: views/form/minor.php:60 views/form/minor.php:105 -#: views/form/view-minor.php:62 views/program/ajax.php:601 -msgid "Minor Code" -msgstr "" +#: views/calendar/requests.php:87 +msgid "Are you sure you want to delete this booking request?" +msgstr "Êtes-vous sûr de vouloir supprimer cette demande de réservation?" -#: views/form/minor.php:67 views/form/minor.php:106 -#: views/form/view-minor.php:69 views/program/ajax.php:608 -msgid "Minor Name" -msgstr "" +#: views/financial/add-jentry.php:204 views/financial/billing-table.php:67 +#: views/financial/billing-table.php:121 views/financial/billing-table.php:173 +#: views/financial/jentries.php:62 views/financial/journal-entries.php:63 +#: views/financial/payment-plan.php:204 views/financial/view-jentry.php:84 +msgid "Amount" +msgstr "Montant" -#: views/form/photo.php:27 -msgid "Upload School Photo" -msgstr "" +#: views/calendar/setting.php:30 views/calendar/setting.php:33 +msgid "Room Request Settings" +msgstr "Paramètres de Demande de Salle?" -#: views/form/photo.php:40 -msgid "" -"If you decide later on that you'd rather use the Gravatar service instead of " -"the photo you uploaded, click the photo to delete it." -msgstr "" -"Si vous décidez plus tard que vous préférez utiliser le service Gravatar la " -"place de la photo que vous avez téléchargé, cliquez sur la photo pour la " -"supprimer." +#: views/financial/add-jentry.php:234 +msgid "Debit: " +msgstr "Débit:" -#: views/form/room.php:72 views/form/view-room.php:74 -msgid "Room Code" -msgstr "" +#: views/calendar/setting.php:43 +msgid "If you would like to change the background colors, please refer to the online color picker." +msgstr "Si vous voulez changer les couleurs de fond, s'il vous plaît se référer au sélecteur de couleur en ligne ." -#: views/form/room.php:85 views/form/room.php:131 views/form/view-room.php:87 -msgid "Room Number" -msgstr "" +#: views/financial/add-jentry.php:235 +msgid "Credit: " +msgstr "Crédit:" -#: views/form/rstr-code.php:28 views/form/rstr-code.php:31 -#: views/form/view-rstr-code.php:28 -msgid "Restriction Codes" -msgstr "" +#: views/calendar/setting.php:53 views/comm-mgmt/add.php:86 +#: views/comm-mgmt/mailmerge.php:38 views/comm-mgmt/schedule.php:48 +#: views/comm-mgmt/view.php:93 views/course/add.php:53 +#: views/course/addnl-info.php:53 views/course/atceq.php:77 +#: views/course/extr.php:123 views/course/tcre.php:93 views/course/vextr.php:50 +#: views/course/view.php:56 views/course/vtceq.php:45 views/cron/new.php:78 +#: views/cron/setting.php:58 views/cron/view.php:76 +#: views/dashboard/install-module.php:62 views/financial/add-jentry.php:124 +#: views/financial/add-payment.php:62 views/financial/batch.php:55 +#: views/financial/billing-table.php:46 views/financial/create-bill.php:62 +#: views/financial/issue-refund.php:60 views/financial/payment-plan.php:62 +#: views/financial/paypal.php:38 views/form/building.php:46 +#: views/form/ccd.php:46 views/form/cip.php:46 views/form/degree.php:39 +#: views/form/department.php:39 views/form/grade-scale.php:46 +#: views/form/import.php:46 views/form/location.php:46 views/form/major.php:46 +#: views/form/minor.php:46 views/form/room.php:46 views/form/rstr-code.php:46 +#: views/form/specialization.php:46 views/form/student-load-rule.php:38 +#: views/form/subject.php:39 views/form/term.php:39 +#: views/form/view-building.php:48 views/form/view-ccd.php:48 +#: views/form/view-cip.php:48 views/form/view-degree.php:48 +#: views/form/view-department.php:48 views/form/view-grade-scale.php:48 +#: views/form/view-location.php:48 views/form/view-major.php:48 +#: views/form/view-minor.php:48 views/form/view-room.php:48 +#: views/form/view-rstr-code.php:48 views/form/view-specialization.php:48 +#: views/form/view-student-load-rule.php:48 views/form/view-subject.php:48 +#: views/form/view-term.php:48 views/hr/add.php:99 views/hr/view.php:100 +#: views/permission/add.php:49 views/permission/view.php:49 +#: views/person/add.php:80 views/person/addr-form.php:54 +#: views/person/addr.php:54 views/person/view.php:56 +#: views/plugins/install.php:60 views/program/add.php:48 +#: views/program/view.php:52 views/role/add.php:48 views/role/view.php:49 +#: views/section/add-assignment.php:47 views/section/add.php:67 +#: views/section/addnl-info.php:49 views/section/batch-register.php:60 +#: views/section/offering-info.php:49 views/section/register.php:77 +#: views/section/sros.php:61 views/section/view-assignment.php:49 +#: views/section/view.php:68 views/setting/email.php:39 +#: views/setting/index.php:40 views/setting/registration.php:39 +#: views/sql/add-query.php:56 views/sql/csv-email.php:46 views/sql/index.php:83 +#: views/sql/view-query.php:56 views/staff/add.php:45 views/staff/view.php:99 +#: views/student/add-prog.php:68 views/student/add.php:62 +#: views/student/graduation.php:46 views/student/sacp.php:54 +#: views/student/tran.php:63 +msgid "Indicates field is required" +msgstr "Indique champ est obligatoire" -#: views/form/rstr-code.php:115 -msgid "Restriction Code" -msgstr "" +#: views/financial/add-jentry.php:236 +msgid "Balance:" +msgstr "Balance:" -#: views/form/school.php:60 views/form/school.php:118 -#: views/form/view-school.php:62 -msgid "School Code" -msgstr "" +#: views/calendar/setting.php:68 views/calendar/setting.php:106 +msgid "Background Color" +msgstr "Couleur de fond" -#: views/form/school.php:67 views/form/school.php:119 -#: views/form/view-school.php:69 -msgid "School Name" -msgstr "" +#: views/financial/add-payment.php:69 views/financial/batch.php:62 +#: views/financial/create-bill.php:69 views/financial/issue-refund.php:67 +#: views/financial/payment-plan.php:69 +msgid "Generate Bill/Add Fee" +msgstr "Générer Frais Facture/Ajout " -#: views/form/semester.php:72 views/form/view-semester.php:74 -msgid "Semester Code" -msgstr "" +#: views/calendar/setting.php:90 +msgid "Edit Category" +msgstr "Editer la Catégorie" -#: views/form/specialization.php:60 views/form/specialization.php:105 -#: views/form/view-specialization.php:62 views/program/ajax.php:694 -msgid "Specialization Code" -msgstr "" +#: views/financial/add-payment.php:72 views/financial/batch.php:65 +#: views/financial/create-bill.php:72 views/financial/issue-refund.php:46 +#: views/financial/issue-refund.php:49 views/financial/issue-refund.php:70 +#: views/financial/payment-plan.php:72 views/financial/view-refunds.php:170 +#: views/financial/view-refunds.php:221 +msgid "Issue Refund" +msgstr "Problème de remboursement" -#: views/form/specialization.php:67 views/form/specialization.php:106 -#: views/form/view-specialization.php:69 views/program/ajax.php:701 -msgid "Specialization Name" -msgstr "" +#: views/calendar/view-event.php:51 views/calendar/view-event.php:106 +#: views/section/booking-info.php:276 views/section/booking-info.php:328 +msgid "Meeting Day" +msgstr "Jour Réunion" -#: views/form/student-load-rule.php:22 views/form/student-load-rule.php:25 -#: views/form/view-student-load-rule.php:28 -msgid "Student Load Rules" -msgstr "" +#: views/financial/add-payment.php:87 views/financial/create-bill.php:87 +#: views/financial/issue-refund.php:85 views/financial/payment-plan.php:87 +#: views/financial/payment-plan.php:202 views/section/attendance.php:53 +#: views/section/register.php:90 views/section/students.php:97 +#: views/student/graduation.php:59 views/student/tran.php:76 +msgid "Student ID" +msgstr "ID Etudiant" -#: views/form/student-load-rule.php:56 views/form/view-student-load-rule.php:66 -msgid "Full Time" -msgstr "" +#: views/calendar/view-event.php:52 views/courses/cart.php:45 +#: views/courses/index.php:81 views/section/booking-info.php:277 +#: views/section/catalog-pdf.php:54 views/student/schedule.php:41 +msgid "Time" +msgstr "Temps" -#: views/form/student-load-rule.php:57 views/form/view-student-load-rule.php:67 -msgid "3/4 Time" -msgstr "" +#: views/financial/add-payment.php:128 views/financial/view-payments.php:150 +#: views/financial/view-payments.php:259 views/form/import.php:80 +msgid "Payment" +msgstr "Paiement" -#: views/form/student-load-rule.php:58 views/form/view-student-load-rule.php:68 -msgid "Half Time" -msgstr "" +#: views/calendar/view-event.php:53 +msgid "Event Title" +msgstr "Titre d’Evènement " -#: views/form/student-load-rule.php:59 views/form/view-student-load-rule.php:69 -msgid "Less Than Half Time" -msgstr "" +#: views/financial/add-payment.php:137 views/financial/view-payments.php:268 +msgid "Payment Date" +msgstr "Date de Paiement" -#: views/form/student-load-rule.php:67 views/form/student-load-rule.php:144 -#: views/form/view-student-load-rule.php:77 -msgid "Minimum Credits" -msgstr "" +#: views/calendar/view-event.php:54 +msgid "Event Description" +msgstr "Description de l'Evènement " -#: views/form/student-load-rule.php:74 views/form/student-load-rule.php:145 -#: views/form/view-student-load-rule.php:84 -msgid "Maximum Credits" -msgstr "" +#: views/financial/add-payment.php:149 views/financial/view-payments.php:280 +msgid "Payment Type" +msgstr "Type de payement" -#: views/form/student-load-rule.php:86 views/form/student-load-rule.php:146 -#: views/form/student-load-rule.php:194 -#: views/form/view-student-load-rule.php:96 -#: views/form/view-student-load-rule.php:147 -msgid "Term(s)" -msgstr "" +#: views/calendar/view-event.php:81 views/calendar/view-event.php:246 +msgid "Are you sure you want to delete this booking?" +msgstr "Êtes-vous sûr de vouloir supprimer cette réservation?" -#: views/form/student-load-rule.php:93 views/form/student-load-rule.php:147 -#: views/form/student-load-rule.php:208 -#: views/form/view-student-load-rule.php:103 -#: views/form/view-student-load-rule.php:161 -msgid "Academic Level(s)" -msgstr "" +#: views/financial/add-payment.php:161 views/financial/view-payments.php:292 +msgid "Check Number" +msgstr "Nombre de Control" -#: views/form/student-load-rule.php:197 -#: views/form/view-student-load-rule.php:150 -msgid "" -"In this field, you will only enter your term designation without the two " -"digit year separated by a backslash \"\\\" (i.e. FA\\FAM1\\SP)." -msgstr "" +#: views/calendar/view-event.php:108 views/section/booking-info.php:330 +msgid "End Date/Time" +msgstr "Fin Jour/Heure" -#: views/form/student-load-rule.php:211 -#: views/form/view-student-load-rule.php:164 -msgid "" -"Enter the academic level or levels that should be applied to this rule " -"separated by a backslash \"\\\" (i.e. CE\\UG\\GR)" -msgstr "" +#: views/financial/batch.php:80 +msgid "Population" +msgstr "Population" -#: views/form/term.php:65 views/form/view-term.php:74 -msgid "Term Code" -msgstr "" +#: views/calendar/view-event.php:131 views/section/booking-info.php:353 +msgid "Edit Event Meta" +msgstr "Editer Méta Evénement" -#: views/form/term.php:79 views/form/view-term.php:88 -msgid "Reporting Term" -msgstr "" +#: views/financial/batch.php:84 views/student/add-prog.php:81 +#: views/student/add.php:84 views/student/sacp.php:67 +msgid "Program" +msgstr "Programme" -#: views/form/term.php:116 views/form/view-term.php:125 -msgid "Drop/Add End Date" -msgstr "" +#: views/calendar/view-event.php:152 views/course/extr.php:157 +#: views/course/tceq.php:59 views/financial/payment-plan.php:206 +#: views/form/semester.php:92 views/form/semester.php:162 +#: views/form/term.php:92 views/form/term.php:172 +#: views/form/view-semester.php:94 views/form/view-term.php:101 +#: views/hr/add.php:190 views/hr/positions.php:120 views/hr/positions.php:242 +#: views/hr/view.php:281 views/person/addr-form.php:178 +#: views/person/addr.php:178 views/section/booking-info.php:374 +#: views/staff/add.php:191 views/student/add-prog.php:150 +#: views/student/shis.php:71 views/student/shis.php:230 +#: views/student/strc.php:72 views/student/strc.php:199 +#: views/student/sttr.php:65 +msgid "Start Date" +msgstr "Date de début" -#: views/form/view-acad-year.php:30 views/form/view-acad-year.php:33 -msgid "View Academic Year" -msgstr "" +#: views/financial/batch.php:138 views/financial/create-bill.php:103 +msgid "Bill / Fee Date" +msgstr "Facture / Date de Frais " -#: views/form/view-building.php:30 -msgid "View Building" -msgstr "" +#: views/calendar/view-event.php:176 views/course/extr.php:72 +#: views/course/extr.php:169 views/course/index.php:60 views/course/tceq.php:60 +#: views/financial/payment-plan.php:207 views/form/semester.php:104 +#: views/form/semester.php:163 views/form/term.php:104 views/form/term.php:173 +#: views/form/view-semester.php:106 views/form/view-term.php:113 +#: views/hr/add.php:202 views/hr/positions.php:121 views/hr/positions.php:254 +#: views/hr/view.php:293 views/person/addr-form.php:190 +#: views/person/addr.php:190 views/program/index.php:60 +#: views/section/booking-info.php:398 views/staff/add.php:203 +#: views/student/add-prog.php:162 views/student/shis.php:72 +#: views/student/shis.php:240 views/student/strc.php:73 +#: views/student/strc.php:209 views/student/sttr.php:66 +msgid "End Date" +msgstr "Date de Fin" -#: views/form/view-building.php:33 views/form/view-ccd.php:33 -#: views/form/view-cip.php:33 views/form/view-location.php:33 -#: views/form/view-major.php:33 views/form/view-minor.php:33 -#: views/form/view-room.php:33 views/form/view-specialization.php:33 -#: views/form/view-subject.php:33 -msgid "Viewing " -msgstr "" +#: views/financial/batch.php:163 views/financial/create-bill.php:128 +msgid "Fees" +msgstr "Frais" -#: views/form/view-ccd.php:30 -msgid "View CCD" -msgstr "" +#: views/calendar/view-request.php:99 +msgid "It is recommended that you check the availability of a room before submitting the form. If there are changes to the original request, you need to make the changes and click \"Update\" before processing the request." +msgstr "Il est recommandé de vérifier la disponibilité d'une chambre avant de soumettre le formulaire. S'il y a des changements à la demande initiale, vous devez apporter les modifications et cliquez sur \"Update\" avant de traiter la demande." -#: views/form/view-cip.php:30 -msgid "View CIP" -msgstr "" +#: views/financial/billing-table.php:28 views/financial/billing-table.php:31 +#: views/form/import.php:79 +msgid "Billing Table" +msgstr "Table Facturation" -#: views/form/view-degree.php:30 views/form/view-degree.php:33 -msgid "View Degree" -msgstr "" +#: views/calendar/view-request.php:277 views/course/vextr.php:213 +#: views/financial/billing-table.php:195 views/financial/gl-accounts.php:209 +#: views/financial/payment-plan.php:340 views/financial/view-bill.php:261 +#: views/financial/view-comments.php:135 views/financial/view-payments.php:178 +#: views/financial/view-refunds.php:169 views/hr/grades.php:181 +#: views/hr/jobs.php:215 views/hr/positions.php:272 views/index/password.php:64 +#: views/setting/templates.php:251 views/setting/templates.php:272 +#: views/setting/templates.php:293 views/setting/templates.php:314 +#: views/setting/templates.php:335 views/setting/templates.php:356 +#: views/setting/templates.php:377 +msgid "Update" +msgstr "Réactualiser" -#: views/form/view-department.php:30 views/form/view-department.php:33 -msgid "View Department" -msgstr "" +#: views/financial/create-bill.php:46 views/financial/create-bill.php:49 +msgid "Create Bill" +msgstr "Créer Facture" -#: views/form/view-grade-scale.php:28 -msgid "Grading Scale" -msgstr "" +#: views/financial/create-bill.php:204 +msgid "Comments will only be posted when a bill is initially created. If you are adding a fee to an already existing bill and want to add a comment about the new addition, you can do so when viewing the student's bill. Unlike other system comments, these comments will be seen by students." +msgstr "Commentaires ne seront affichées que lorsqu'un projet de loi est d'abord créé. Si vous ajoutez des frais à un projet de loi déjà existante et que vous souhaitez ajouter un commentaire à propos de la nouvelle addition, vous pouvez le faire lors de la visualisation du projet de loi de l'étudiant. Contrairement à d'autres commentaires du système, ces commentaires seront vus par les étudiants." -#: views/form/view-grade-scale.php:30 views/form/view-grade-scale.php:33 -msgid "Edit Grade" -msgstr "" +#: views/comm-mgmt/add.php:100 views/comm-mgmt/add.php:160 +#: views/comm-mgmt/view.php:107 views/comm-mgmt/view.php:175 +msgid "Placeholders" +msgstr "Placeholders" -#: views/form/view-location.php:30 -msgid "View Location" -msgstr "" +#: views/financial/gl-accounts.php:28 views/financial/gl-accounts.php:47 +#: views/financial/gl-filter.php:39 views/financial/jentry-filter.php:39 +msgid "GL Accounts" +msgstr "GL Comptes" -#: views/form/view-major.php:30 -msgid "View Major" -msgstr "" +#: views/comm-mgmt/add.php:106 views/comm-mgmt/index.php:40 +#: views/comm-mgmt/view.php:113 +msgid "Email Key" +msgstr "Clé Email" -#: views/form/view-minor.php:30 -msgid "View Minor" -msgstr "" +#: views/financial/gl-accounts.php:32 +msgid "Chart of Accounts" +msgstr "Plan comptable" -#: views/form/view-room.php:30 -msgid "View Room" -msgstr "" +#: views/comm-mgmt/add.php:113 views/comm-mgmt/view.php:120 +msgid "Email Name" +msgstr "Nom Email" -#: views/form/view-rstr-code.php:30 views/form/view-rstr-code.php:33 -msgid "Edit Restriction Code" -msgstr "" +#: views/financial/gl-accounts.php:49 views/financial/gl-filter.php:41 +#: views/financial/gl-summary.php:22 views/financial/gl-summary.php:33 +#: views/financial/jentry-filter.php:41 +msgid "General Ledger Summary" +msgstr "Résumé Grand livre général" -#: views/form/view-school.php:30 views/form/view-school.php:33 -msgid "View School" -msgstr "" +#: views/comm-mgmt/add.php:121 views/comm-mgmt/view.php:128 +#: views/section/sros.php:105 views/student/tran.php:107 +msgid "Template" +msgstr "Modèle" -#: views/form/view-semester.php:30 views/form/view-semester.php:33 -msgid "View Semester" -msgstr "" +#: views/financial/gl-accounts.php:62 +msgid "Account Number" +msgstr "Numéro de compte" -#: views/form/view-specialization.php:28 -msgid "Specialization List" -msgstr "" +#: views/comm-mgmt/mailmerge.php:52 views/comm-mgmt/schedule.php:101 +#: views/section/batch-register.php:106 views/sql/csv-email.php:90 +#: views/sql/index.php:108 views/sql/saved-queries.php:31 +#: views/student/graduation.php:68 +msgid "Saved Query" +msgstr "Requête enregistrée" -#: views/form/view-specialization.php:30 -msgid "View Specialization" -msgstr "" +#: views/financial/gl-accounts.php:108 views/financial/gl-accounts.php:167 +#: views/financial/view-jentry.php:82 +msgid "Account" +msgstr "Compte" -#: views/form/view-student-load-rule.php:30 -#: views/form/view-student-load-rule.php:33 -msgid "Edit Student Load Rule" -msgstr "" +#: views/comm-mgmt/mailmerge.php:70 +msgid "Avery Label" +msgstr "Label Avery" -#: views/form/view-subject.php:30 -msgid "View Subject" -msgstr "" +#: views/financial/gl-accounts.php:114 views/financial/gl-accounts.php:173 +msgid "Account #" +msgstr "Compte #" -#: views/form/view-term.php:30 views/form/view-term.php:33 -msgid "View Term" -msgstr "" +#: views/comm-mgmt/queue.php:50 views/course/add.php:79 +#: views/course/ajax.php:192 views/course/tcre.php:185 views/course/view.php:82 +#: views/form/import.php:86 views/form/subject.php:23 views/form/subject.php:26 +#: views/form/view-subject.php:28 views/student/sacd.php:93 +msgid "Subject" +msgstr "Sujet" -#: views/hr/add.php:30 views/hr/index.php:26 views/hr/positions.php:31 -#: views/hr/view.php:31 -msgid "Search Employee" -msgstr "" +#: views/financial/gl-accounts.php:123 views/financial/gl-accounts.php:182 +msgid "Account Name" +msgstr "Nom du Compte" -#: views/hr/add.php:32 views/hr/add.php:109 views/hr/index.php:88 -#: views/hr/jobs.php:91 views/hr/jobs.php:163 views/hr/positions.php:101 -#: views/hr/view.php:110 views/staff/view.php:109 -msgid "Add Position" -msgstr "" +#: views/comm-mgmt/queue.php:51 views/sql/add-query.php:90 +#: views/sql/index.php:120 views/sql/view-query.php:91 +msgid "Query" +msgstr "Demande" -#: views/hr/add.php:64 views/hr/positions.php:65 views/hr/view-timesheet.php:64 -#: views/hr/view.php:65 views/staff/view.php:64 -msgid "Title:" -msgstr "" +#: views/financial/gl-accounts.php:132 views/financial/gl-accounts.php:191 +msgid "Account Type" +msgstr "Type de Compte" -#: views/hr/add.php:65 views/hr/positions.php:66 views/hr/view-timesheet.php:65 -#: views/hr/view.php:66 views/staff/view.php:65 -msgid "Dept:" -msgstr "" +#: views/comm-mgmt/queue.php:52 +msgid "Processed" +msgstr "Traité" -#: views/hr/add.php:66 views/hr/positions.php:67 views/hr/view-timesheet.php:66 -#: views/hr/view.php:67 views/staff/view.php:66 -msgid "Office:" -msgstr "" +#: views/financial/gl-filter.php:22 views/financial/gl-filter.php:25 +msgid "Search General Ledger" +msgstr "Rechercher Grand livre Général" -#: views/hr/add.php:72 views/hr/positions.php:73 views/hr/view-timesheet.php:72 -#: views/hr/view.php:73 views/staff/view.php:72 -msgid "Office Phone:" -msgstr "" +#: views/comm-mgmt/queue.php:95 +msgid "Are you sure you want to delete this item from the queue?" +msgstr "Êtes-vous sûr de vouloir supprimer cet élément de la file d'attente?" -#: views/hr/add.php:107 views/hr/positions.php:99 views/hr/view.php:108 -#: views/staff/view.php:107 -msgid "Staff Record" -msgstr "" +#: views/financial/gl-filter.php:48 views/financial/jentry-filter.php:48 +msgid "Select statement period" +msgstr "Sélectionnez une période de déclaration" -#: views/hr/add.php:108 views/hr/index.php:90 views/hr/positions.php:100 -#: views/hr/view.php:109 views/staff/view.php:108 -msgid "View Positions" -msgstr "" +#: views/comm-mgmt/schedule.php:62 views/section/students.php:150 +#: views/section/students.php:229 +msgid "Email Subject" +msgstr "Sujet de l'Email" -#: views/hr/add.php:123 views/hr/positions.php:181 views/hr/view.php:124 -#: views/staff/add.php:67 -msgid "Employment Type" -msgstr "" +#: views/financial/gl-filter.php:61 views/financial/jentry-filter.php:61 +msgid "From" +msgstr "De " + +#: views/comm-mgmt/schedule.php:69 +msgid "From Name" +msgstr "Nom De" -#: views/hr/add.php:135 views/hr/positions.php:193 views/hr/view.php:136 -#: views/staff/add.php:79 -msgid "Staff Type" -msgstr "" +#: views/financial/gl-filter.php:79 views/financial/jentry-filter.php:79 +msgid "To" +msgstr "A" -#: views/hr/add.php:139 views/hr/positions.php:197 views/hr/view.php:140 -#: views/staff/add.php:83 -msgid "Faculty" -msgstr "Faculté" +#: views/comm-mgmt/schedule.php:76 +msgid "From Email" +msgstr "Email De" -#: views/hr/add.php:148 views/hr/positions.php:206 views/hr/view.php:149 -#: views/staff/add.php:92 -msgid "Supervisor" -msgstr "" +#: views/financial/gl-summary.php:41 views/financial/jentries.php:41 +#: views/section/attendance.php:39 +msgid "Today's Date" +msgstr "Date d'Aujourd'hui" -#: views/hr/add.php:160 views/hr/jobs.php:52 views/hr/positions.php:115 -#: views/hr/positions.php:218 views/hr/timesheets.php:42 -#: views/hr/view-timesheet.php:178 views/hr/view.php:161 -#: views/staff/add.php:104 views/staff/timesheets.php:52 -#: views/staff/timesheets.php:109 views/staff/view-timesheet.php:104 -msgid "Job Title" -msgstr "" +#: views/comm-mgmt/schedule.php:89 +msgid "Email Template" +msgstr "Email Modèle" -#: views/hr/add.php:178 views/hr/positions.php:119 views/hr/positions.php:230 -#: views/hr/view.php:269 views/staff/add.php:179 -msgid "Hire Date" -msgstr "" +#: views/financial/gl-summary.php:46 views/financial/jentries.php:46 +msgid "Statement Period" +msgstr "Période de déclaration" -#: views/hr/add.php:214 views/hr/view.php:331 views/person/add.php:391 -#: views/person/view.php:362 views/staff/add.php:228 views/staff/view.php:236 -#: views/student/add-prog.php:175 views/student/add.php:216 -#: views/student/sacp.php:219 -msgid "Approved By" -msgstr "" +#: views/comm-mgmt/view.php:75 views/comm-mgmt/view.php:78 +msgid "View Email Template" +msgstr "Voir Modèle Email" -#: views/hr/grades.php:52 views/hr/grades.php:105 views/hr/grades.php:161 -msgid "Starting Salary" -msgstr "" +#: views/financial/gl-summary.php:57 +msgid "GL Number" +msgstr "Nombre GL" -#: views/hr/grades.php:53 views/hr/grades.php:114 views/hr/grades.php:170 -msgid "Ending Salary" -msgstr "" +#: views/comm-mgmt/view.php:138 views/course/vextr.php:199 +#: views/course/view.php:243 views/financial/payment-plan.php:330 +#: views/hr/view.php:340 views/person/view.php:380 views/staff/view.php:245 +#: views/student/sacp.php:227 +msgid "Last Update" +msgstr "Dernière Mise à jour" -#: views/hr/grades.php:89 views/hr/grades.php:145 -msgid "Add Pay Grade" -msgstr "" +#: views/financial/gl-summary.php:58 +msgid "Account Title" +msgstr "Titre du Compte" -#: views/hr/index.php:23 views/hr/timesheets.php:41 -msgid "Employee" -msgstr "Employé" +#: views/course/add.php:33 views/course/addnl-info.php:31 +#: views/course/index.php:24 views/course/view.php:31 +#: views/dashboard/menu.php:237 +msgid "Search Course" +msgstr "Recherche de cours" -#: views/hr/index.php:60 views/index/profile.php:31 -#: views/permission/index.php:49 views/person/index.php:61 -#: views/role/index.php:41 -#: views/section/templates/roster/default.template.php:81 -#: views/staff/index.php:59 views/student/index.php:56 -msgid "ID" -msgstr "" +#: views/financial/gl-summary.php:60 +msgid "Opening" +msgstr "Ouverture" -#: views/hr/index.php:117 -msgid "Employee Search" -msgstr "" +#: views/course/add.php:35 +msgid "Create Course" +msgstr "Créer Cours" -#: views/hr/jobs.php:51 views/hr/jobs.php:100 views/hr/jobs.php:172 -#: views/hr/positions.php:114 -msgid "Pay Grade" -msgstr "" +#: views/financial/gl-summary.php:61 views/financial/view-jentry.php:104 +msgid "Debit" +msgstr "Débit" -#: views/hr/jobs.php:53 views/hr/jobs.php:121 views/hr/jobs.php:193 -#: views/hr/positions.php:116 views/hr/view.php:230 -msgid "Hourly Wage" -msgstr "" +#: views/course/add.php:38 +msgid "Add Course" +msgstr "Ajout de Cours" -#: views/hr/jobs.php:54 views/hr/jobs.php:130 views/hr/jobs.php:202 -msgid "Hours Per Week" -msgstr "" +#: views/financial/gl-summary.php:62 views/financial/view-jentry.php:108 +msgid "Credit" +msgstr "Crédit" -#: views/hr/positions.php:33 -msgid "Positions" -msgstr "" +#: views/course/add.php:66 views/course/ajax.php:66 views/course/tcre.php:207 +#: views/course/view.php:69 views/form/department.php:23 +#: views/form/department.php:26 views/form/import.php:85 +#: views/form/rstr-code.php:73 views/form/rstr-code.php:117 +#: views/form/view-department.php:28 views/form/view-rstr-code.php:75 +#: views/hr/index.php:62 views/hr/view.php:218 views/program/add.php:119 +#: views/program/ajax.php:74 views/program/view.php:123 +#: views/section/add.php:120 views/section/ajax.php:66 +#: views/section/view.php:135 views/staff/add.php:167 views/staff/view.php:193 +#: views/student/sacd.php:117 views/student/strc.php:74 +msgid "Department" +msgstr "Département " -#: views/hr/positions.php:117 views/hr/view.php:248 -msgid "Weekly Hours" -msgstr "" +#: views/financial/gl-summary.php:63 +msgid "Closing" +msgstr "Fermeture" -#: views/hr/positions.php:118 views/hr/view.php:257 -msgid "Monthly Salary" -msgstr "" +#: views/course/add.php:92 views/course/atceq.php:127 views/course/view.php:104 +#: views/course/vtceq.php:90 views/section/add.php:146 +#: views/section/view.php:160 +msgid "Course Level" +msgstr "Niveau de cours" -#: views/hr/positions.php:140 -msgid "Not Set" -msgstr "" +#: views/financial/gl-summary.php:84 +msgid "Total" +msgstr "Total" -#: views/hr/positions.php:169 -msgid "Edit Position" -msgstr "" +#: views/course/add.php:101 views/course/index.php:57 views/course/tcre.php:167 +#: views/course/view.php:113 views/section/add.php:164 +#: views/section/courses.php:42 views/section/index.php:58 +#: views/section/view.php:178 views/student/sacd.php:75 +msgid "Short Title" +msgstr "Titre court" -#: views/hr/timesheets.php:40 views/hr/view-timesheet.php:103 -#: views/staff/timesheets.php:51 views/staff/view-timesheet.php:53 -msgid "Work Week" -msgstr "" +#: views/financial/gl-summary.php:94 views/financial/jentries.php:88 +#: views/financial/view-jentry.php:118 +msgid "This computer generated statement does not need signature." +msgstr "Cette déclaration générée par ordinateur n'a pas besoin de signature." -#: views/hr/timesheets.php:43 -msgid "Hours" -msgstr "Heures" +#: views/course/add.php:108 views/course/tcre.php:176 views/course/view.php:122 +#: views/student/sacd.php:84 +msgid "Long Title" +msgstr "Titre long" -#: views/hr/timesheets.php:44 -msgid "Pay" -msgstr "" +#: views/financial/index.php:28 views/student/vbill.php:26 +msgid "Bill" +msgstr "Facture" -#: views/hr/view-timesheet.php:32 views/staff/view-timesheet.php:30 -#: views/staff/view-timesheet.php:34 -msgid "View Timesheet" -msgstr "" +#: views/course/add.php:115 views/course/view.php:95 +msgid "Course Number" +msgstr "Nombre de cours" -#: views/hr/view-timesheet.php:106 views/staff/timesheets.php:53 -#: views/staff/timesheets.php:101 views/staff/view-timesheet.php:56 -#: views/staff/view-timesheet.php:96 -msgid "Work Hours" -msgstr "" +#: views/financial/index.php:66 views/financial/view-bill.php:82 +#: views/financial/view-comments.php:74 views/student/vbill.php:52 +msgid "Invoice #" +msgstr "Facture d'achat #" -#: views/hr/view-timesheet.php:107 views/hr/view-timesheet.php:235 -#: views/staff/timesheets.php:166 views/staff/view-timesheet.php:57 -#: views/staff/view-timesheet.php:161 -msgid "Note" -msgstr "" +#: views/course/add.php:140 views/course/view.php:143 views/program/add.php:173 +#: views/program/view.php:178 +msgid "Effective / End Date" +msgstr "Date de Effective/fin" -#: views/hr/view-timesheet.php:130 -msgid "Rejected" -msgstr "Rejeté" +#: views/financial/index.php:67 views/index/apply.php:79 +#: views/index/profile.php:47 views/install/index.php:222 +#: views/person/add.php:145 views/person/addr-form.php:85 +#: views/person/addr.php:85 views/person/index.php:63 views/person/view.php:130 +#: views/staff/index.php:60 views/student/index.php:57 +msgid "Last Name" +msgstr "Nom de famille" -#: views/hr/view-timesheet.php:131 -msgid "Approved" -msgstr "Approuvé" +#: views/course/add.php:159 views/course/atceq.php:91 +#: views/course/atceq.php:126 views/course/extr.php:188 +#: views/course/tcre.php:107 views/course/vextr.php:114 +#: views/course/view.php:181 views/course/vtceq.php:59 +#: views/course/vtceq.php:89 views/courses/cart.php:46 +#: views/courses/index.php:82 views/section/catalog-pdf.php:52 +#: views/student/stac.php:69 +msgid "Credits" +msgstr "Crédits" -#: views/hr/view-timesheet.php:171 -msgid "Timesheet Entry" -msgstr "" +#: views/financial/index.php:68 views/index/apply.php:77 +#: views/index/profile.php:43 views/install/index.php:219 +#: views/person/add.php:136 views/person/addr-form.php:76 +#: views/person/addr.php:76 views/person/index.php:64 views/person/view.php:121 +#: views/staff/index.php:61 views/student/index.php:58 +msgid "First Name" +msgstr "Prénom" -#: views/hr/view-timesheet.php:187 views/staff/timesheets.php:118 -#: views/staff/view-timesheet.php:113 -msgid "Work Week Start" -msgstr "" +#: views/course/add.php:166 views/course/view.php:190 +#: views/financial/batch.php:90 views/financial/batch.php:123 +#: views/program/add.php:257 views/program/view.php:262 +#: views/section/add.php:155 views/section/view.php:169 +#: views/student/add.php:144 views/student/sacp.php:106 +#: views/student/view.php:84 +msgid "Academic Level" +msgstr "Niveau académique" -#: views/hr/view-timesheet.php:199 views/staff/timesheets.php:130 -#: views/staff/view-timesheet.php:125 -msgid "Work Day" -msgstr "" +#: views/financial/index.php:117 +msgid "Bill Search" +msgstr "Recherche de Facture" -#: views/hr/view.php:33 -msgid "View Employee" -msgstr "" +#: views/course/add.php:175 views/program/add.php:88 views/program/view.php:92 +#: views/section/add.php:308 views/section/view.php:227 +msgid "Status / Date" +msgstr "Statut / Date" -#: views/hr/view.php:185 views/staff/add.php:128 views/staff/view.php:154 -msgid "Office" -msgstr "" +#: views/financial/issue-refund.php:126 views/financial/view-refunds.php:250 +msgid "Refund Amount" +msgstr "Montant du remboursement" -#: views/hr/view.php:197 views/staff/add.php:140 views/staff/view.php:166 -msgid "Office Phone" -msgstr "" +#: views/course/add.php:199 views/course/extr.php:259 +#: views/course/vextr.php:185 views/course/view.php:225 +#: views/program/add.php:101 views/program/view.php:105 +#: views/section/add.php:321 views/section/view.php:250 +msgid "Approval Person" +msgstr "Personne d'approbation" -#: views/hr/view.php:314 views/staff/add.php:220 views/staff/view.php:210 -msgid "I Inactive" -msgstr "I Inactif" +#: views/financial/issue-refund.php:135 views/financial/view-refunds.php:259 +msgid "Refund Date" +msgstr "Date de remboursement" -#: views/index/apply.php:32 -msgid "Apply for Admissions" -msgstr "" +#: views/course/add.php:206 views/course/view.php:234 views/program/add.php:110 +#: views/program/view.php:114 views/section/add.php:330 +#: views/section/view.php:259 +msgid "Approval Date" +msgstr "Date d'Approbation" -#: views/index/apply.php:53 views/index/login.php:55 -#: views/install/index.php:140 views/install/index.php:198 -#: views/install/index.php:225 -msgid "Password" -msgstr "Pot de passe" +#: views/financial/jentries.php:22 +msgid "General Journal Entries" +msgstr "Général Journal d'Entrées" + +#: views/course/addnl-info.php:38 +msgid "Additional Course Info:" +msgstr "Info supplémentaire de Cours:" -#: views/index/apply.php:68 views/index/profile.php:39 views/person/add.php:120 -#: views/person/view.php:105 -msgid "Prefix" -msgstr "" +#: views/financial/jentries.php:33 +msgid "Journal Entry Summary" +msgstr "Journal Résumé d'Entrée " -#: views/index/apply.php:71 views/person/add.php:124 views/person/view.php:109 -msgid "Ms." -msgstr "" +#: views/course/addnl-info.php:66 views/section/view.php:240 +msgid "Prerequisites" +msgstr "Conditions préalables" -#: views/index/apply.php:72 views/person/add.php:125 views/person/view.php:110 -msgid "Miss." -msgstr "" +#: views/financial/jentries.php:61 views/financial/view-jentry.php:66 +msgid "Posted by" +msgstr "Posté par" -#: views/index/apply.php:73 views/person/add.php:126 views/person/view.php:111 -msgid "Mrs." -msgstr "" +#: views/course/addnl-info.php:73 +msgid "Allow Audit" +msgstr "Autoriser la vérification" -#: views/index/apply.php:74 views/person/add.php:127 views/person/view.php:112 -msgid "Mr." -msgstr "" +#: views/financial/jentries.php:81 +msgid "Total Amount" +msgstr "Montant total" -#: views/index/apply.php:75 views/person/add.php:128 views/person/view.php:113 -msgid "Dr." -msgstr "" +#: views/dashboard/core-admin-bar.php:187 views/dashboard/menu.php:316 +msgid "(INST) - Institution" +msgstr "(INST) - Etablissement" -#: views/index/apply.php:81 views/person/add.php:154 -#: views/person/addr-form.php:94 views/person/addr.php:94 -#: views/person/view.php:139 -msgid "Middle Initial" -msgstr "" +#: functions/student-function.php:233 views/course/addnl-info.php:77 +#: views/course/addnl-info.php:90 views/course/addnl-info.php:155 +#: views/course/index.php:119 views/course/view.php:314 +#: views/financial/paypal.php:55 views/financial/paypal.php:68 +#: views/financial/paypal.php:110 views/form/grade-scale.php:85 +#: views/form/grade-scale.php:101 views/form/semester.php:120 +#: views/form/student-load-rule.php:104 views/form/term.php:132 +#: views/form/view-grade-scale.php:87 views/form/view-grade-scale.php:103 +#: views/form/view-semester.php:122 views/form/view-student-load-rule.php:114 +#: views/form/view-term.php:141 views/index/apply.php:143 +#: views/person/add.php:272 views/person/view.php:252 views/section/add.php:289 +#: views/section/offering-info.php:170 views/setting/index.php:77 +#: views/setting/index.php:139 views/setting/registration.php:67 +#: views/student/sacp.php:131 +msgid "Yes" +msgstr "Oui" -#: views/index/apply.php:138 views/index/profile.php:63 -msgid "SSN" -msgstr "" +#: views/financial/jentry-filter.php:22 views/financial/jentry-filter.php:25 +msgid "Search Journal Entries" +msgstr "Recherche de Journal d'Entrée" -#: views/index/apply.php:140 views/index/profile.php:67 -msgid "Veteran" -msgstr "Vétéran" +#: views/dashboard/core-admin-bar.php:188 +msgid "(AINST) - New Institution" +msgstr "(AINST) - Nouvel Etablissement" -#: views/index/apply.php:146 views/index/profile.php:71 -msgid "Ethnicity" -msgstr "" +#: functions/student-function.php:235 views/course/addnl-info.php:78 +#: views/course/addnl-info.php:91 views/course/addnl-info.php:156 +#: views/course/index.php:120 views/course/view.php:315 +#: views/financial/paypal.php:56 views/financial/paypal.php:69 +#: views/financial/paypal.php:111 views/form/grade-scale.php:86 +#: views/form/grade-scale.php:102 views/form/semester.php:121 +#: views/form/student-load-rule.php:105 views/form/term.php:133 +#: views/form/view-grade-scale.php:88 views/form/view-grade-scale.php:104 +#: views/form/view-semester.php:123 views/form/view-student-load-rule.php:115 +#: views/form/view-term.php:142 views/index/apply.php:144 +#: views/person/add.php:273 views/person/view.php:253 views/section/add.php:290 +#: views/section/offering-info.php:171 views/setting/index.php:78 +#: views/setting/index.php:140 views/setting/registration.php:68 +#: views/student/sacp.php:132 +msgid "No" +msgstr "Aucun" -#: views/index/apply.php:149 views/person/add.php:285 views/person/view.php:265 -msgid "White, Non-Hispanic" -msgstr "" +#: views/financial/journal-entries.php:62 views/financial/payment-plan.php:321 +msgid "Posted By" +msgstr "Posté Par" -#: views/index/apply.php:150 views/person/add.php:286 views/person/view.php:266 -msgid "Black, Non-Hispanic" -msgstr "" +#: views/dashboard/core-admin-bar.php:193 views/dashboard/menu.php:324 +msgid "Communication Mgmt" +msgstr "Communication Mgmt" -#: views/index/apply.php:151 views/person/add.php:287 views/person/view.php:267 -msgid "Hispanic" -msgstr "" +#: views/course/addnl-info.php:86 +msgid "Allow Waitlist" +msgstr "Autoriser Waitlist" -#: views/index/apply.php:152 views/person/add.php:288 views/person/view.php:268 -msgid "Native American" -msgstr "" +#: views/financial/payment-plan.php:97 views/financial/payment-plan.php:264 +msgid "Payment Frequency" +msgstr "Fréquence de paiement" -#: views/index/apply.php:153 views/person/add.php:289 views/person/view.php:269 -msgid "Native Alaskan" -msgstr "" +#: views/comm-mgmt/add.php:70 views/comm-mgmt/add.php:73 +#: views/dashboard/core-admin-bar.php:196 views/dashboard/menu.php:327 +msgid "Add Email Template" +msgstr "Ajout de Modèle Email" -#: views/index/apply.php:154 views/person/add.php:290 views/person/view.php:270 -msgid "Pacific Islander" -msgstr "" +#: views/course/addnl-info.php:105 +msgid "Minimum Enrollment" +msgstr "Inscription minimum" -#: views/index/apply.php:155 views/person/add.php:291 views/person/view.php:271 -msgid "Asian" -msgstr "" +#: views/financial/payment-plan.php:101 views/financial/payment-plan.php:268 +msgid "Daily" +msgstr "Journalier" -#: views/index/apply.php:156 views/person/add.php:292 views/person/view.php:272 -msgid "Indian" -msgstr "" +#: views/comm-mgmt/schedule.php:30 views/comm-mgmt/schedule.php:33 +#: views/dashboard/core-admin-bar.php:197 views/dashboard/menu.php:328 +msgid "Schedule Email" +msgstr "Email Programmé" -#: views/index/apply.php:157 views/person/add.php:293 views/person/view.php:273 -msgid "Middle Eastern" -msgstr "" +#: views/course/addnl-info.php:112 views/form/room.php:92 +#: views/form/room.php:132 views/form/view-room.php:94 +msgid "Seating Capacity" +msgstr "Nombre de places" -#: views/index/apply.php:158 views/person/add.php:294 views/person/view.php:274 -msgid "African" -msgstr "" +#: views/financial/payment-plan.php:103 views/financial/payment-plan.php:270 +msgid "Bi-Weekly" +msgstr "Bihebdomadaire" -#: views/index/apply.php:159 views/person/add.php:295 views/person/view.php:275 -msgid "Mixed Race" -msgstr "" +#: views/comm-mgmt/queue.php:30 views/comm-mgmt/queue.php:33 +#: views/dashboard/core-admin-bar.php:198 views/dashboard/menu.php:329 +msgid "Email Queue" +msgstr "file de Email" -#: views/index/apply.php:160 views/person/add.php:296 views/person/view.php:276 -msgid "Other" -msgstr "" +#: views/course/addnl-info.php:150 views/course/index.php:114 +#: views/course/view.php:309 +msgid "Are you sure you want to create a copy of this course?" +msgstr "Etes-vous sûr que vous voulez créer une copie de ce cours?" -#: views/index/apply.php:168 views/index/profile.php:83 -#: views/person/add.php:329 views/person/view.php:309 -msgid "Emergency Contact" -msgstr "" +#: views/financial/payment-plan.php:104 views/financial/payment-plan.php:271 +msgid "Monthly" +msgstr "Mensuel" -#: views/index/apply.php:170 views/person/add.php:338 views/person/view.php:318 -msgid "Emergency Contact Phone" -msgstr "" +#: views/comm-mgmt/mailmerge.php:22 views/comm-mgmt/mailmerge.php:25 +#: views/dashboard/core-admin-bar.php:199 views/dashboard/menu.php:330 +msgid "Mail Merge" +msgstr "Mail publipostage" -#: views/index/apply.php:196 -msgid "Having troubles?" -msgstr "" +#: views/course/ajax.php:71 views/course/ajax.php:197 views/program/ajax.php:79 +#: views/program/ajax.php:211 views/program/ajax.php:308 +#: views/program/ajax.php:407 views/program/ajax.php:501 +#: views/program/ajax.php:594 views/program/ajax.php:687 +#: views/program/ajax.php:780 views/program/ajax.php:873 +#: views/section/ajax.php:71 views/section/ajax.php:197 +msgid "You must fill out the required fields." +msgstr "Vous devez remplir les champs obligatoires." -#: views/index/index.php:40 -msgid "Welcome to myeduTrac" -msgstr "" +#: views/financial/payment-plan.php:105 views/financial/payment-plan.php:272 +msgid "Yearly" +msgstr "Annuel" -#: views/index/index.php:52 -msgid "News & Announcements" -msgstr "" +#: views/dashboard/core-admin-bar.php:204 +msgid "NSLC" +msgstr "NSLC" -#: views/index/index.php:61 views/index/view-news.php:27 -msgid "by" -msgstr "" +#: views/course/ajax.php:72 views/program/ajax.php:80 views/section/ajax.php:72 +msgid "The Department was created successfully." +msgstr "Le Département a été créé avec succès." -#: views/index/index.php:65 -msgid "read more" -msgstr "" +#: views/financial/payment-plan.php:113 +msgid "Frequency Amount" +msgstr "Montant de fréquence" -#: views/index/index.php:84 -msgid "Welcome Message" -msgstr "" +#: views/dashboard/core-admin-bar.php:206 +msgid "(NSCP) Purge" +msgstr "(NSCP) épuration" -#: views/index/login.php:59 -msgid "Remember me" -msgstr "" +#: views/course/ajax.php:78 views/form/department.php:53 +#: views/form/view-department.php:62 views/program/ajax.php:86 +#: views/section/ajax.php:78 +msgid "Department Code" +msgstr "Code de Département " -#: views/index/offline.php:29 views/setting/index.php:105 -msgid "Offline" -msgstr "" +#: views/financial/payment-plan.php:205 +msgid "Pay Frequency" +msgstr "Fréquence de Paiement" -#: views/index/password.php:42 -msgid "Current Password" -msgstr "" +#: views/dashboard/core-admin-bar.php:207 +msgid "(NSCS) Setup" +msgstr "(NSCS) Installateur" -#: views/index/password.php:46 -msgid "New Password" -msgstr "" +#: views/course/ajax.php:87 views/form/department.php:60 +#: views/form/view-department.php:69 views/program/ajax.php:95 +#: views/section/ajax.php:87 +msgid "Department Type" +msgstr "Type de Département" -#: views/index/profile.php:21 -msgid "My Profile" -msgstr "" +#: views/financial/payment-plan.php:357 +msgid "Start and End Date" +msgstr "Date de début et de fin" -#: views/index/profile.php:51 -msgid "Middle Name" -msgstr "" +#: views/dashboard/core-admin-bar.php:208 +msgid "(NSCX) Extraction" +msgstr "(NSCX) Extraction" -#: views/index/profile.php:75 views/person/add.php:304 -#: views/person/view.php:284 -msgid "Date of Birth" -msgstr "" +#: views/course/ajax.php:96 views/form/department.php:69 +#: views/form/view-department.php:78 views/program/ajax.php:104 +#: views/section/ajax.php:96 +msgid "Department Name" +msgstr "Nom du département" -#: views/index/profile.php:87 -msgid "Emergency Contact's Phone" -msgstr "" +#: views/financial/payment-plan.php:362 +msgid "The start date will act as the date the student and the institution agreed upon said payment plan. Start date is a required field but End date is optional." +msgstr "La date de début agira comme date l'étudiant et l'institution d'accord sur ledit plan de paiement. Date de début est un champ obligatoire mais la date de fin est facultative." -#: views/index/spam.php:26 -msgid "Spam Registration" -msgstr "" +#: views/dashboard/core-admin-bar.php:209 +msgid "(NSCE) Verification" +msgstr "(NSCE) Vérification" -#: views/index/spam.php:28 -msgid "We don't allows spammers the ability to apply for admissions." -msgstr "" -"Nous ne permettons pas les spammeurs la capacité d'appliquer pour les " -"admissions." +#: views/course/ajax.php:105 views/form/department.php:82 +#: views/form/view-department.php:91 views/program/ajax.php:113 +#: views/section/ajax.php:105 +msgid "Department Email" +msgstr "Email Département" -#: views/index/view-news.php:32 -msgid "Last Update:" -msgstr "" +#: views/financial/payment-plan.php:386 +msgid "Ignore this field if the payment plan is not associated with a particular term." +msgstr "Ignorez ce champ si le plan de paiement ne est pas associé à un terme particulier." + +#: views/dashboard/core-admin-bar.php:210 +msgid "(NSCC) Correction" +msgstr "(NSCC) Correction" + +#: views/course/ajax.php:114 views/program/ajax.php:122 +#: views/section/ajax.php:114 +msgid "Department Phone" +msgstr "Numéro de téléphone du Département" -#: views/install/index.php:23 -msgid "eduTrac SIS Installer" -msgstr "" +#: views/financial/payment-plan.php:410 +msgid "Place any notes and or instructions for the student. This will appear on the account history screen for both the student as well as student accounts." +msgstr "Placez les notes et instructions relatives à l'étudiant. Celui-ci apparaîtra sur l'écran de l'historique du compte pour l'étudiant ainsi que les comptes des étudiants." -#: views/install/index.php:42 -msgid "eduTrac SIS Installation Wizard" -msgstr "" +#: views/dashboard/core-admin-bar.php:211 +msgid "(NSCT) NSLC File" +msgstr "(NSCT) Fichier NSLC " -#: views/install/index.php:52 -msgid "Step 1 - Introduction" -msgstr "" +#: views/course/ajax.php:123 views/form/department.php:96 +#: views/form/grade-scale.php:107 views/form/view-department.php:105 +#: views/form/view-grade-scale.php:109 views/program/add.php:79 +#: views/program/ajax.php:131 views/program/view.php:83 +#: views/section/ajax.php:123 +msgid "Short Description" +msgstr "Courte Description" -#: views/install/index.php:54 -msgid "" -"Welcome to the eduTrac Student Information System. Before getting started, " -"we need some information on the database. You will need to know the " -"following items before proceeding." -msgstr "" -"Bienvenue au Système d'information eduTrac étudiants. Avant de commencer, " -"nous avons besoin de quelques informations sur la base de données. Vous " -"aurez besoin de connaître les points suivants avant de poursuivre." +#: views/financial/payment-plan.php:430 +msgid "Payment Plan:" +msgstr "Plan de Paiement" -#: views/install/index.php:57 -msgid "Database name" -msgstr "" +#: views/dashboard/core-admin-bar.php:217 +msgid "Person Management" +msgstr "Gestion de la personne" -#: views/install/index.php:58 -msgid "Database username" -msgstr "" +#: views/course/ajax.php:131 views/course/ajax.php:222 +#: views/person/adsu.php:101 views/program/ajax.php:139 +#: views/program/ajax.php:236 views/program/ajax.php:333 +#: views/program/ajax.php:429 views/program/ajax.php:522 +#: views/program/ajax.php:615 views/program/ajax.php:708 +#: views/program/ajax.php:801 views/program/ajax.php:894 +#: views/section/ajax.php:131 views/section/ajax.php:218 +#: views/student/sacp.php:245 views/student/shis.php:192 +#: views/student/strc.php:158 +msgid "Add" +msgstr "Ajouter" -#: views/install/index.php:59 -msgid "Database password" -msgstr "" +#: views/financial/payment-plan.php:435 +msgid "Are you sure you want to delete this payment plan?" +msgstr "Êtes-vous sûr de vouloir supprimer ce plan de paiement?" -#: views/install/index.php:60 -msgid "Database host" -msgstr "" +#: views/dashboard/core-admin-bar.php:220 views/dashboard/menu.php:155 +#: views/form/import.php:101 views/person/index.php:24 +msgid "Person" +msgstr "Personne" -#: views/install/index.php:63 -msgid "" -"If for some reason the config.php file does not get created after the " -"installer has finished, don't worry. All this does is fill in the database " -"information to the config file. Just go to the root of the install, make a " -"copy of config.sample.php, rename the copy to config.php, and fill in the " -"database information." -msgstr "" -"Si pour une raison quelconque le fichier config.php n'a pas pu être créé " -"après l'installation est terminée, ne vous inquiétez pas. Tout cela ne fait " -"que remplir les informations dans le fichier de configuration de base de " -"données. Il suffit d'aller à la racine de l'installation, faire une copie de " -"config.sample.php, renommez la copie en config.php, et remplissez les " -"informations de base de données." +#: views/course/ajax.php:198 +msgid "The Subject was created successfully." +msgstr "Le sujet a été créé avec succès." -#: views/install/index.php:65 -msgid "" -"In all likelihood, these items were supplied to you by your Web Host. If you " -"do not have this information, then you will need to contact them before you " -"can continue. If you're all ready..." -msgstr "" -"Selon toute vraisemblance, ces éléments ont été fournis par votre hébergeur. " -"Si vous ne disposez pas de cette information, alors vous aurez besoin de les " -"contacter avant de pouvoir continuer. Si vous êtes tout prêt..." +#: views/financial/paypal-ipn.php:110 views/student/paypal-ipn.php:106 +msgid "IPN Fraud Warning" +msgstr "IPN Avertissement de fraude" -#: views/install/index.php:66 views/install/index.php:95 -#: views/install/index.php:149 -msgid "Next Step" -msgstr "" +#: views/dashboard/core-admin-bar.php:222 +msgid "(NAE) Name & Address" +msgstr "(NAE) Nom & Adresse" -#: views/install/index.php:78 -msgid "Step 2 - Environment Test" -msgstr "" +#: views/course/ajax.php:204 views/form/subject.php:53 +#: views/form/subject.php:98 views/form/view-subject.php:62 +msgid "Subject Code" +msgstr "Code de Sujet" -#: views/install/index.php:80 -msgid "" -"If your system fails any of the tests to the right, then you need to correct " -"them, refresh your browser to make sure all have a green 'ok' or an orange " -"'warning' and then proceed with the install. If you proceed without " -"correcting the errors, the install may fail and/or eduTrac may not function " -"properly." -msgstr "" +#: views/financial/paypal-ipn.php:130 views/student/paypal-ipn.php:130 +msgid "Invalid IPN" +msgstr "IPN Invalide" -#: views/install/index.php:99 -msgid "Legend" -msgstr "" +#: views/dashboard/core-admin-bar.php:223 +msgid "(APER) Add Person" +msgstr "(APER) Ajouter une personne" -#: views/install/index.php:101 -msgid "ok" -msgstr "" +#: views/course/ajax.php:213 views/form/subject.php:60 +#: views/form/subject.php:99 views/form/view-subject.php:69 +msgid "Subject Name" +msgstr "Nom Sujet" -#: views/install/index.php:101 -msgid "All OK" -msgstr "" +#: views/financial/paypal.php:22 views/financial/paypal.php:25 +msgid "Paypal Settings" +msgstr "Réglages Paypal" -#: views/install/index.php:102 -msgid "warning" -msgstr "" +#: views/dashboard/core-admin-bar.php:227 +msgid "(STAF) Staff" +msgstr "(STAF) Personnel" -#: views/install/index.php:102 -msgid "Not a deal breaker and is only a recommendation" -msgstr "" +#: views/course/atceq.php:59 views/course/atceq.php:62 +msgid "New Transfer Course Equivalency" +msgstr "Nouveau transfert Cours d'équivalence" -#: views/install/index.php:103 -msgid "error" -msgstr "" +#: views/financial/paypal.php:51 +msgid "Enable?" +msgstr "Activer?" -#: views/install/index.php:103 -msgid "eduTrac SIS requires this feature and can't work without it" -msgstr "" +#: views/_layouts/myet/default.layout.php:151 +#: views/dashboard/core-admin-bar.php:230 views/dashboard/menu.php:209 +#: views/financial/view-payments.php:238 views/financial/view-refunds.php:229 +#: views/form/import.php:108 views/section/attendance_report.php:57 +#: views/section/export-grades.php:44 views/section/final-grade.php:54 +#: views/section/grading.php:55 views/section/section-fgrade.php:57 +#: views/student/index.php:21 +msgid "Student" +msgstr "Étudiant" -#: views/install/index.php:118 views/install/index.php:134 -msgid "Database Name" -msgstr "" +#: views/course/atceq.php:89 views/course/tcre.php:105 +#: views/course/vtceq.php:57 +msgid "Transfer Course" +msgstr "Transfert de Cours" -#: views/install/index.php:119 -msgid "The name of the database you want to run eduTrac SIS in." -msgstr "" +#: views/financial/paypal.php:64 +msgid "Post Over SSL?" +msgstr "Poster sur SSL?" -#: views/install/index.php:125 -msgid "Step 3 - Database Connection" -msgstr "" +#: views/dashboard/core-admin-bar.php:232 +msgid "(SPRO) Student Profile" +msgstr "(SPRO) Profil de l'Etudiant" -#: views/install/index.php:127 -msgid "" -"On the right, you should enter your database connection details. If you're " -"not sure about these, contact your host." -msgstr "" -"Sur la droite, vous devez saisir vos détails de connexion de base de " -"données. Si vous n'êtes pas sûr de ceux-ci, contactez votre hôte." +#: views/course/atceq.php:92 views/course/vtceq.php:60 +msgid "Min Grade" +msgstr "Grade Min" -#: views/install/index.php:143 -msgid "Database Host" -msgstr "" +#: views/financial/paypal.php:77 views/financial/paypal.php:150 +msgid "Business Email" +msgstr "Email d'affaires" -#: views/install/index.php:164 -msgid "Step 4 - Install Database Tables" -msgstr "" +#: views/dashboard/core-admin-bar.php:233 views/student/graduation.php:28 +#: views/student/graduation.php:31 +msgid "Graduate Student(s)" +msgstr "Etudiant diplômé(s)" -#: views/install/index.php:166 -msgid "" -"It will take at least 30 seconds to a minute to install the tables. So " -"please be patient." -msgstr "" -"Il faudra au moins 30 secondes à une minute pour installer les tables. Alors " -"s'il vous plaît soyez patient." +#: views/course/atceq.php:124 views/course/tceq.php:58 +#: views/course/tcre.php:106 views/course/vtceq.php:87 +msgid "Equivalent Course" +msgstr "Cours équivalent" -#: views/install/index.php:173 -msgid "Install Tables" -msgstr "" +#: views/financial/paypal.php:92 +msgid "Currency Code" +msgstr "Code de devise" -#: views/install/index.php:190 -msgid "" -"Usernames can have only alphanumeric characters, spaces, underscores, " -"hyphens, periods and the @ symbol." -msgstr "" +#: views/dashboard/core-admin-bar.php:234 +msgid "(TRAN) Transcript" +msgstr "(TRAN) Transcription" -#: views/install/index.php:199 -msgid "" -"Hint: The password should be at least seven characters long. To make it " -"stronger, use upper and lower case letters, numbers and symbols like ! \" ? " -"$ % ^ & )." -msgstr "" +#: views/course/atceq.php:164 views/course/vtceq.php:122 +#: views/financial/payment-plan.php:122 views/financial/payment-plan.php:280 +#: views/section/view.php:116 views/student/sacp.php:169 +msgid "Start / End Date" +msgstr "Date Début / Fin " -#: views/install/index.php:205 -msgid "Step 5 - Admin Account" -msgstr "" +#: views/financial/paypal.php:96 +msgid "US Dollar" +msgstr "Dollars américain" -#: views/install/index.php:206 -msgid "" -"Fill in the information to the right and you’ll be on your way to using the " -"eduTrac SIS." -msgstr "" +#: views/application/index.php:22 views/dashboard/core-admin-bar.php:241 +#: views/dashboard/menu.php:335 views/form/import.php:105 +#: views/setting/index.php:122 +msgid "Application" +msgstr "Demande" -#: views/install/index.php:228 -msgid "Your E-mail" -msgstr "" +#: views/course/atceq.php:183 views/course/tceq.php:61 +#: views/course/tcre.php:108 views/course/vtceq.php:141 +#: views/form/grade-scale.php:60 views/form/grade-scale.php:169 +#: views/form/view-grade-scale.php:62 views/hr/grades.php:51 +#: views/hr/grades.php:96 views/hr/grades.php:152 +#: views/section/export-grades.php:45 views/section/final-grade.php:55 +#: views/section/grading.php:56 views/section/section-fgrade.php:58 +#: views/student/fgrades.php:39 views/student/stac.php:72 +#: views/student/templates/transcript/default.template.php:88 +msgid "Grade" +msgstr "Grade" -#: views/install/index.php:234 -msgid "Create Admin" -msgstr "" +#: views/financial/paypal.php:97 +msgid "Austrailian Dollar" +msgstr "Dollar Austrailien" -#: views/install/index.php:249 -msgid "Success!" -msgstr "Succès!" +#: views/dashboard/core-admin-bar.php:243 +msgid "(APPL) Application" +msgstr "(APPL) Demande" -#: views/install/index.php:251 -msgid "" -"eduTrac SIS has been installed. Click the button below in order to create " -"the config file, flush the installer and be redirected to the login page." -msgstr "" +#: views/course/atceq.php:198 views/course/vtceq.php:156 +#: views/financial/add-payment.php:176 views/financial/create-bill.php:163 +#: views/financial/issue-refund.php:153 views/financial/view-payments.php:301 +#: views/financial/view-refunds.php:271 views/student/shis.php:250 +#: views/student/strc.php:219 +msgid "Comment" +msgstr "Commentaire" -#: views/install/index.php:253 -msgid "Finish Installer" -msgstr "" +#: views/financial/paypal.php:98 +msgid "Euro" +msgstr "Euro" -#: views/install/index.php:265 -msgid "Javascript is required in order to use this installer." -msgstr "" +#: views/application/inst-attended.php:46 +#: views/application/inst-attended.php:49 +#: views/dashboard/core-admin-bar.php:244 views/dashboard/menu.php:338 +#: views/form/import.php:107 +msgid "Institution Attended" +msgstr "Institution assisté" -#: views/install/index.php:266 -msgid "How to enable javascript" -msgstr "" +#: views/course/extr.php:30 views/course/extr.php:33 views/course/tceq.php:57 +#: views/dashboard/menu.php:248 +msgid "External Course" +msgstr "Cours externe" -#: views/install/index.php:268 -msgid "Upgrade Browser" -msgstr "" +#: views/financial/paypal.php:106 +msgid "Testing?" +msgstr "Essai?" -#: views/permission/add.php:29 views/permission/index.php:32 -#: views/permission/view.php:29 -msgid "Manage Permissions" -msgstr "" +#: views/dashboard/core-admin-bar.php:249 views/dashboard/menu.php:343 +msgid "Financials" +msgstr "Services financiers" -#: views/permission/add.php:31 views/permission/add.php:34 -msgid "Add Permission" -msgstr "" +#: views/course/extr.php:67 views/course/extr.php:148 views/course/vextr.php:75 +#: views/student/stac.php:66 +msgid "Course Name" +msgstr "Nom du cours" -#: views/permission/add.php:70 views/permission/index.php:50 -#: views/permission/view.php:70 -msgid "Key" -msgstr "" +#: views/financial/paypal.php:132 +msgid "IPN URL to enter into PayPal settings:" +msgstr "IPN URL pour entrer dans les paramètres de PayPal:" -#: views/permission/index.php:29 views/person/index.php:103 -msgid "Permissions" -msgstr "" +#: views/dashboard/core-admin-bar.php:252 views/dashboard/menu.php:346 +msgid "General Ledger" +msgstr "Grand livre général" -#: views/permission/index.php:86 -msgid "New Permision" -msgstr "" +#: views/course/extr.php:71 views/course/index.php:59 +#: views/program/index.php:59 +msgid "Effective Date" +msgstr "Date effective" -#: views/permission/view.php:31 views/permission/view.php:34 -msgid "View Permission" -msgstr "" +#: views/financial/paypal.php:134 +msgid "There is no need to enable IPN in PayPal. eduTrac SIS will automatically let PayPal know to use the above URL." +msgstr "Il n'y a pas besoin d'activer IPN dans PayPal. eduTrac SIS permettra automatiquement PayPal de savoir utiliser l'URL ci-dessus." -#: views/person/add.php:62 views/person/add.php:65 -msgid "Name & Address" -msgstr "" +#: views/dashboard/core-admin-bar.php:254 views/dashboard/menu.php:348 +msgid "Account Chart" +msgstr "Panier du Compte" -#: views/person/add.php:102 views/person/add.php:411 views/person/index.php:62 -#: views/person/view.php:87 views/person/view.php:418 -msgid "Alternate ID" -msgstr "" +#: views/course/extr.php:195 views/course/vextr.php:121 +msgid "Minimum Grade" +msgstr "Grade Minimum" -#: views/person/add.php:111 views/person/add.php:429 views/person/view.php:96 -#: views/person/view.php:436 -msgid "Person Type" -msgstr "" +#: views/financial/paypal.php:155 +msgid "Set this to the email that is specified on your Paypal account. If you are in testing mode, make sure to set this to the email address in your Sandbox account." +msgstr "Définir à l'e-mail qui est spécifié sur votre compte Paypal. Si vous êtes en mode de test, assurez-vous de définir ce à l'adresse e-mail dans votre compte Sandbox." -#: views/person/add.php:202 views/person/addr-form.php:142 -#: views/person/addr.php:142 views/person/view.php:184 -msgid "Zip Code" -msgstr "" +#: views/dashboard/core-admin-bar.php:255 views/dashboard/menu.php:349 +#: views/financial/gl-accounts.php:48 views/financial/gl-filter.php:40 +#: views/financial/jentry-filter.php:40 views/financial/journal-entries.php:28 +#: views/financial/journal-entries.php:31 +msgid "Journal Entries" +msgstr "Écritures" -#: views/person/add.php:250 views/person/view.php:211 -msgid "Preferred Email" -msgstr "" +#: views/course/extr.php:210 views/course/vextr.php:130 +#: views/financial/add-payment.php:103 views/financial/batch.php:180 +#: views/financial/create-bill.php:145 views/financial/index.php:69 +#: views/financial/issue-refund.php:101 views/financial/payment-plan.php:147 +#: views/financial/payment-plan.php:299 views/financial/payment-plan.php:381 +#: views/financial/view-comments.php:92 views/financial/view-payments.php:247 +#: views/financial/view-refunds.php:238 views/form/import.php:76 +#: views/form/term.php:23 views/form/term.php:26 views/form/term.php:72 +#: views/form/term.php:170 views/form/view-term.php:28 +#: views/form/view-term.php:81 views/section/add.php:89 +#: views/section/batch-register.php:87 views/section/catalog.php:40 +#: views/section/courses.php:40 views/section/index.php:60 +#: views/section/register.php:106 views/section/sros.php:74 +#: views/section/view.php:104 views/student/bill.php:38 +#: views/student/fgrades.php:36 views/student/stac.php:71 +#: views/student/templates/transcript/default.template.php:92 +#: views/student/terms.php:36 views/student/vbill.php:70 +msgid "Term" +msgstr "Condition" -#: views/person/add.php:259 views/person/view.php:239 -msgid "Social Security #" -msgstr "" +#: views/financial/paypal.php:174 +msgid "Sandbox Mode" +msgstr "Mode Sandbox" -#: views/person/add.php:268 views/person/view.php:248 -msgid "Veteran?" -msgstr "Vétéran?" +#: views/dashboard/core-admin-bar.php:260 views/dashboard/menu.php:355 +msgid "Student Accounts" +msgstr "Comptes étudiants" -#: views/person/add.php:281 views/person/view.php:261 -msgid "Ethnicity?" -msgstr "" +#: views/course/extr.php:252 views/course/vextr.php:178 +#: views/student/view.php:86 +msgid "Status Date" +msgstr "Date de Statut " -#: views/person/add.php:363 -msgid "Send username & password to the user" -msgstr "" +#: views/financial/paypal.php:179 +msgid "If you are testing to make sure that the communication between your site and Paypal is working, set this to 'Yes' otherwise set it to 'No' for Live production." +msgstr "Si vous testez pour vous assurer que la communication entre votre site et Paypal fonctionne, réglez-le sur 'Oui»'autrement, définissez à 'Non' pour la production en direct." -#: views/person/add.php:382 views/person/view.php:353 -msgid "Approved Date" -msgstr "" +#: views/dashboard/core-admin-bar.php:262 views/dashboard/menu.php:357 +msgid "Billing Tables" +msgstr "Tables de facturation" -#: views/person/add.php:415 views/person/view.php:422 -msgid "" -"The unique ID for each person is autogenerated by the system. However, some " -"institutions have their own format for person/student ID's. If this is the " -"case for your institution, you can use this alternate ID field." -msgstr "" +#: views/course/extr.php:266 views/course/vextr.php:192 views/hr/view.php:322 +#: views/person/addr-form.php:211 views/person/addr.php:215 +#: views/staff/view.php:227 views/student/add.php:225 +msgid "Add Date" +msgstr "Ajout de date" -#: views/person/addr-form.php:36 views/person/addr.php:36 -msgid "Edit Address" -msgstr "" +#: views/financial/view-bill.php:33 views/financial/view-comments.php:34 +msgid "View Bill" +msgstr "Voir Facture " -#: views/person/addr-form.php:169 views/person/addr.php:169 -msgid "Address Type" -msgstr "" +#: views/dashboard/core-admin-bar.php:263 views/dashboard/menu.php:358 +#: views/financial/account-history.php:27 views/financial/index.php:31 +#: views/financial/view-bill.php:31 views/financial/view-comments.php:32 +#: views/financial/view-payments.php:32 views/financial/view-refunds.php:32 +msgid "Search Bill" +msgstr "Recherche Facture " -#: views/person/addr-form.php:220 views/person/addr.php:224 -msgid "Added By" -msgstr "" +#: views/course/index.php:21 views/section/catalog.php:42 +#: views/student/terms.php:37 +msgid "Courses" +msgstr "Cours " -#: views/person/addr-form.php:257 views/person/addr-form.php:310 -#: views/person/addr.php:261 views/person/addr.php:314 -msgid "Extension" -msgstr "" +#: views/financial/view-bill.php:57 views/financial/view-comments.php:58 +#: views/financial/view-payments.php:58 views/financial/view-refunds.php:58 +msgid "Refunds" +msgstr "Remboursements" -#: views/person/addr-form.php:276 views/person/addr-form.php:329 -#: views/person/addr.php:280 views/person/addr.php:333 -msgid "Business" -msgstr "" +#: views/dashboard/core-admin-bar.php:264 +msgid "Create Bill/Add Fees" +msgstr "Créer Facture / Ajout Honoraires" -#: views/person/addr-form.php:277 views/person/addr-form.php:330 -#: views/person/addr.php:281 views/person/addr.php:334 -msgid "Cellular" -msgstr "" +#: views/course/index.php:56 views/student/schedule.php:36 +msgid "Course Code" +msgstr "Code de cours" -#: views/person/addr-form.php:352 views/person/addr.php:356 -msgid "Primary Email" -msgstr "" +#: views/financial/view-bill.php:73 +msgid "Delete Bill / Invoice" +msgstr "Supprimer Facture / Facture d'achat" -#: views/person/addr-form.php:370 views/person/addr.php:374 -msgid "Secondary Email" -msgstr "" +#: views/dashboard/core-admin-bar.php:265 views/financial/add-payment.php:70 +#: views/financial/batch.php:39 views/financial/batch.php:42 +#: views/financial/batch.php:63 views/financial/create-bill.php:70 +#: views/financial/issue-refund.php:68 views/financial/payment-plan.php:70 +msgid "Batch Fees" +msgstr "Frais de lot" -#: views/person/adsu.php:31 -msgid "ID: " -msgstr "" +#: views/course/index.php:84 +msgid "Clone" +msgstr "Clone" -#: views/person/index.php:90 -msgid "Switch to User" -msgstr "" +#: views/financial/view-bill.php:91 +msgid "Invoice Date / Term" +msgstr "Date de la Facture / Condition" -#: views/person/index.php:94 -msgid "Create Staff Record" -msgstr "" +#: views/dashboard/core-admin-bar.php:266 views/financial/add-payment.php:46 +#: views/financial/add-payment.php:49 views/financial/add-payment.php:71 +#: views/financial/batch.php:64 views/financial/create-bill.php:71 +#: views/financial/issue-refund.php:69 views/financial/payment-plan.php:71 +#: views/financial/view-payments.php:179 views/financial/view-payments.php:230 +msgid "Add Payment" +msgstr "Ajouter Paiement" -#: views/person/index.php:101 views/person/role.php:57 -#: views/person/view.php:389 -msgid "Role" -msgstr "" +#: views/course/index.php:85 +msgid "A" +msgstr "A" -#: views/person/index.php:128 -msgid "Person Search" -msgstr "" +#: views/financial/view-bill.php:111 views/student/vbill.php:80 +msgid "Tuition / Adjusted" +msgstr "Cours / Ajusté" -#: views/person/perms.php:33 -msgid "Manage Person Permissions" -msgstr "" +#: views/dashboard/core-admin-bar.php:267 +msgid "Issue a Refund" +msgstr "Émettre un remboursement" -#: views/person/perms.php:36 views/person/role.php:36 -msgid "ID#" -msgstr "" +#: views/course/index.php:86 views/dashboard/menu.php:242 +#: views/dashboard/menu.php:268 views/section/add.php:51 +msgid "Create Section" +msgstr "Créer Section" -#: views/person/perms.php:57 views/person/view.php:398 views/role/add.php:67 -#: views/role/view.php:68 -msgid "Permission" -msgstr "" +#: views/financial/view-bill.php:124 views/financial/view-bill.php:134 +#: views/form/import.php:84 views/student/vbill.php:92 +#: views/student/vbill.php:101 +msgid "Tuition" +msgstr "Cours" -#: views/person/perms.php:58 views/role/add.php:68 views/role/view.php:69 -msgid "Allow" -msgstr "" +#: views/dashboard/core-admin-bar.php:268 +#: views/financial/account-history.php:132 views/financial/add-payment.php:73 +#: views/financial/batch.php:66 views/financial/create-bill.php:73 +#: views/financial/issue-refund.php:71 views/financial/payment-plan.php:46 +#: views/financial/payment-plan.php:49 views/financial/payment-plan.php:73 +#: views/form/import.php:81 views/student/account-history.php:120 +msgid "Payment Plan" +msgstr "Plan de paiement" -#: views/person/role.php:33 -msgid "Manage Person Role" -msgstr "" +#: views/course/tceq.php:22 views/course/tceq.php:25 +msgid "Search Transfer Course Equivalency" +msgstr "Recherche Transfert Cours d'équivalence" -#: views/person/role.php:58 -msgid "Member" -msgstr "" +#: views/financial/view-bill.php:160 +msgid "Are you sure you want to delete this fee?" +msgstr "Êtes-vous sûr de vouloir supprimer cette taxe?" -#: views/person/role.php:59 -msgid "Not Member" -msgstr "" +#: views/dashboard/core-admin-bar.php:272 views/dashboard/menu.php:56 +msgid "Paypal Gateway" +msgstr "Paypal Passerelle" -#: views/person/view.php:32 -msgid "View Person" -msgstr "" +#: views/course/tcre.php:75 views/course/tcre.php:78 +#: views/dashboard/menu.php:251 views/student/stac.php:131 +msgid "Transfer Credit" +msgstr "Transfert de crédit" -#: views/person/view.php:35 -msgid "Person:" -msgstr "" +#: views/financial/view-bill.php:194 views/student/vbill.php:129 +msgid "Begin / End Balance" +msgstr "Début / Fin Solde" -#: views/person/view.php:371 -msgid "Last Login" -msgstr "" +#: views/dashboard/core-admin-bar.php:281 views/setting/index.php:278 +#: views/setting/index.php:437 +msgid "eduTrac Analytics" +msgstr "eduTrac Analytics" -#: views/person/view.php:454 -msgid "Person Status" -msgstr "" +#: views/course/tcre.php:154 +msgid "CRSE ID/Name" +msgstr "CRSE ID/Nom" -#: views/person/view.php:458 -msgid "" -"The status on person records can be useful for when running reports, mail " -"merge, etc in order to differentiate between 'active' and 'inactive' person " -"records. However, when using student, staff or faculty records, it is best " -"to join the 'person' table to those tables in order to pull their current " -"status since the status from those tables might be more accurate than the " -"status in the person table." -msgstr "" +#: views/financial/view-bill.php:206 views/student/vbill.php:141 +msgid "Credit / Refund Totals" +msgstr "Totaux Crédit / remboursement" -#: views/plugins/index.php:41 -msgid "Plugin" -msgstr "" +#: views/_layouts/myet/default.layout.php:204 +#: views/dashboard/core-admin-bar.php:317 +msgid "Profile" +msgstr "Profil" -#: views/plugins/index.php:64 -msgid "Visit plugin site" -msgstr "" +#: views/course/tcre.php:194 views/student/sacd.php:105 +msgid "Acad Lvl/Crse Lvl" +msgstr "Lvl/Crse Lvl Acad " -#: views/plugins/install.php:29 views/plugins/install.php:32 -msgid "Install Plugin" -msgstr "" +#: views/financial/view-bill.php:231 views/financial/view-comments.php:107 +#: views/student/vbill.php:166 +msgid "Student Comments" +msgstr "Commentaires Etudiant" -#: views/program/add.php:30 -msgid "Create Program" -msgstr "" +#: views/dashboard/core-admin-bar.php:317 +msgid "edit" +msgstr "Éditer" + +#: views/course/tcre.php:222 views/course/view.php:131 +#: views/student/sacd.php:129 +msgid "Credit Type" +msgstr "Type de Crédits" -#: views/program/add.php:33 -msgid "Add Academic Program" -msgstr "" +#: views/financial/view-bill.php:264 +msgid "Previous" +msgstr "Précédent" -#: views/program/add.php:61 views/program/index.php:56 -#: views/program/view.php:65 -msgid "Program Code" -msgstr "" +#: views/_layouts/myet/default.layout.php:124 +#: views/dashboard/core-admin-bar.php:328 +msgid "Switch Back to" +msgstr "Repasser en" -#: views/program/add.php:144 views/program/view.php:148 -msgid "Effective Catalog Year" -msgstr "" +#: views/course/tcre.php:231 views/student/sacd.php:167 +msgid "Term/Rpt Term" +msgstr "Terme/Rpt Terme" -#: views/program/ajax.php:212 -msgid "The Academic Year was created successfully." -msgstr "" +#: views/financial/view-bill.php:267 +msgid "Next" +msgstr "Suivant" -#: views/program/ajax.php:218 -msgid "Acad Year Code" -msgstr "" +#: views/dashboard/core-admin-bar.php:332 +msgid "Lock Screen" +msgstr "Écran verrouillé" -#: views/program/ajax.php:227 -msgid "Acad Year Description" -msgstr "" +#: views/course/tcre.php:247 views/student/sacd.php:183 +msgid "Att/Comp Cred" +msgstr "Cred Att/Comp" -#: views/program/ajax.php:309 -msgid "The Degree was created successfully." -msgstr "" +#: views/financial/view-bill.php:286 +msgid "Delete Invoice: " +msgstr "Supprimer la facture:" -#: views/program/ajax.php:408 -msgid "The CCD was created successfully." -msgstr "" +#: views/dashboard/core-admin-bar.php:336 +msgid "Sign Out" +msgstr "Se Déconnecter" -#: views/program/ajax.php:502 -msgid "The Major was created successfully." -msgstr "" +#: views/course/tcre.php:260 views/student/sacd.php:195 +msgid "Grade/Grd Pts" +msgstr "Pts Grade/Grd" -#: views/program/ajax.php:595 -msgid "The Minor was created successfully." -msgstr "" +#: views/financial/view-bill.php:291 +msgid "There is no undoing this, so are you sure you want to delete this bill / invoice." +msgstr "Il n'y a pas de perte, alors êtes-vous sûr de vouloir supprimer cette facture/facture d'achat." -#: views/program/ajax.php:688 -msgid "The Specialization was created successfully." -msgstr "" +#: functions/hook-function.php:544 +msgid "© 2013" +msgstr "© 2013" -#: views/program/ajax.php:781 -msgid "The CIP was created successfully." -msgstr "" +#: views/course/tcre.php:273 views/student/sacd.php:217 +msgid "Status Date/Time" +msgstr "Statut Date/Heure" -#: views/program/ajax.php:874 views/section/ajax.php:198 -msgid "The Location was created successfully." -msgstr "" +#: views/financial/view-bill.php:312 +msgid "Bill / Invoice Term" +msgstr "Condition Facture / Facture d'achat" -#: views/program/index.php:21 -msgid "Programs" -msgstr "" +#: views/_layouts/myet/default.layout.php:79 views/dashboard/index.php:21 +#: views/index/apply.php:196 +msgid "Get Help" +msgstr "Aide" -#: views/program/index.php:57 views/student/add.php:96 -msgid "Program Title" -msgstr "" +#: views/course/tcre.php:286 +msgid "Student ID/Name" +msgstr "Etudiant ID/Nom" -#: views/program/view.php:30 -msgid "View Program" -msgstr "" +#: views/financial/view-bill.php:317 +msgid "A bill/invoice is connected to a term and there is ONE bill per/term, per/student. It is strongly encouraged to not change the term on a student's bill. If you do change the term, make sure to change it to a term where a bill does not currently exists. If you update the bill to a term where a bill already exists for a student, this will have disastrous effects and it cannot be undone." +msgstr "Un projet de loi/facture est connecté à un terme et il y a une facture par/condition, par/étudiant. Il est fortement recommandé de ne pas changer le terme sur la facture d'un étudiant. Si vous modifiez le terme, assurez-vous de le changer à un terme où un projet de loi n'existe actuellement. Si vous mettez à jour le projet de loi à un terme où existe déjà un projet de loi pour un étudiant, cela aura des effets désastreux et il ne peut pas être annulée." -#: views/role/add.php:28 views/role/index.php:23 views/role/index.php:26 -#: views/role/view.php:29 -msgid "Manage Roles" -msgstr "" +#: views/_layouts/myet/default.layout.php:83 views/index/login.php:32 +#: views/index/login.php:62 +msgid "Sign in" +msgstr "Connexion" -#: views/role/add.php:30 views/role/add.php:33 -msgid "Add Role" -msgstr "" +#: views/course/vextr.php:30 +msgid "Search / Add External Course" +msgstr "Recherche / Ajout cours externe" -#: views/role/add.php:56 views/role/view.php:57 -msgid "Role Name" -msgstr "" +#: views/financial/view-bill.php:318 +msgid "Moreover, if you created the bill using the wrong term, and you need to move the bill to a term where a current bill *does not* exist for the student, you first need to change/update the term on fees, payments, and refunds first, and then change/update the term on the bill." +msgstr "En outre, si vous avez créé le projet de loi en utilisant le mauvais terme, et vous avez besoin de déplacer le projet de loi à un terme où un projet de loi en cours *ne fait pas* existe pour l'étudiant, vous devez d'abord modifier/mettre à jour le terme sur les frais, les paiements et les remboursements d'abord, puis modifier/mettre à jour le terme du projet de loi." -#: views/role/index.php:75 -msgid "New Role" -msgstr "" +#: views/_layouts/myet/default.layout.php:96 views/index/apply.php:200 +msgid "Apply" +msgstr "Appliquer" -#: views/role/view.php:31 views/role/view.php:34 -msgid "Edit Role" -msgstr "" +#: views/course/vextr.php:84 views/student/sacd.php:148 +msgid "Start/End Date" +msgstr "Date Début/Fin" -#: views/section/add-assignment.php:27 views/section/assignments.php:27 -#: views/section/courses.php:21 views/section/export-grades.php:21 -#: views/section/final-grade.php:27 views/section/gradebook.php:21 -#: views/section/grading.php:27 views/section/students.php:71 -#: views/section/view-assignment.php:27 -msgid "Course Sections" -msgstr "" +#: views/financial/view-comments.php:83 +msgid "Invoice Date" +msgstr "Date Facture d'achat" -#: views/section/add-assignment.php:60 views/section/add-assignment.php:109 -#: views/section/assignments.php:50 views/section/view-assignment.php:62 -msgid "Short Name" -msgstr "" +#: views/_layouts/myet/default.layout.php:110 views/admin/index.php:26 +msgid "Admin" +msgstr "Admin" -#: views/section/add-assignment.php:78 views/section/assignments.php:52 -#: views/section/view-assignment.php:80 -msgid "Due Date" -msgstr "" +#: views/course/view.php:252 views/section/addnl-info.php:57 +#: views/section/billing-info.php:51 views/section/booking-info.php:89 +#: views/section/offering-info.php:57 views/section/view.php:76 +msgid "Additional Info" +msgstr "Info additionnelle" -#: views/section/add-assignment.php:113 -msgid "" -"Short Name should be no more than 6 characters. This is used as column " -"heading on the gradebook. Once you have submitted the form, you will not be " -"able to change this later." -msgstr "" -"Nom court ne devrait pas être plus de 6 caractères. Elle est utilisée comme " -"en-tête de colonne sur le carnet de notes. Une fois que vous avez envoyé le " -"formulaire, vous ne serez pas en mesure de changer plus tard." +#: views/financial/view-jentry.php:22 views/financial/view-jentry.php:33 +msgid "General Journal Entry" +msgstr "Journal Général d'Entrée" -#: views/section/add.php:101 -msgid "Start / End" -msgstr "" +#: views/_layouts/myet/default.layout.php:116 +msgid "Howdy," +msgstr "Salut," -#: views/section/add.php:133 views/section/view.php:147 -msgid "Credits / CEU's" -msgstr "" +#: views/course/vtceq.php:27 views/course/vtceq.php:30 +msgid "View Transfer Course Equivalency" +msgstr "Voir Transfert Cours d'équivalent" -#: views/section/add.php:186 views/section/addnl-info.php:88 -msgid "Section Type" -msgstr "" +#: views/financial/view-jentry.php:45 +msgid "Journal ID" +msgstr "ID Journal" -#: views/section/add.php:190 views/section/addnl-info.php:92 -msgid "ONL Online" -msgstr "" +#: views/_layouts/myet/default.layout.php:145 views/person/addr-form.php:278 +#: views/person/addr-form.php:331 views/person/addr.php:282 +#: views/person/addr.php:335 +msgid "Home" +msgstr "Accueil" -#: views/section/add.php:191 views/section/addnl-info.php:93 -msgid "HB Hybrid" -msgstr "" +#: views/courses/cart.php:25 +msgid "Shopping Cart" +msgstr "Panier" -#: views/section/add.php:192 views/section/addnl-info.php:94 -msgid "ONC On-Campus" -msgstr "" +#: views/financial/view-payments.php:34 +msgid "View Bill Payments" +msgstr "Voir paiements de factures" -#: views/section/add.php:200 views/section/addnl-info.php:102 -msgid "Instructor Method" -msgstr "" +#: views/_layouts/myet/default.layout.php:148 +msgid "My Menu" +msgstr "Mon Menu" -#: views/section/add.php:225 views/section/offering-info.php:100 -msgid "Meeting Days" -msgstr "" +#: views/courses/cart.php:44 views/courses/index.php:80 +#: views/section/booking-info.php:141 +msgid "Meeting Day(s)" +msgstr "Jour Réunion(s)" -#: views/section/add.php:229 views/section/offering-info.php:104 -msgid "Sunday" -msgstr "Simanche" +#: views/financial/view-payments.php:74 views/financial/view-refunds.php:74 +msgid "Invoice # / Date / Term" +msgstr "Facture d'achat # / Date / terme" -#: views/section/add.php:233 views/section/offering-info.php:108 -msgid "Monday" -msgstr "Lundi" +#: views/_layouts/myet/default.layout.php:154 views/student/bill.php:24 +msgid "My Bills" +msgstr "Mes factures" -#: views/section/add.php:237 views/section/offering-info.php:112 -msgid "Tuesday" -msgstr "Mardi" +#: views/courses/cart.php:47 views/courses/index.php:83 +#: views/form/building.php:80 views/form/import.php:94 +#: views/form/location.php:28 views/form/location.php:31 +#: views/form/view-building.php:82 views/form/view-location.php:28 +#: views/program/add.php:279 views/program/ajax.php:868 +#: views/program/view.php:284 views/section/add.php:173 +#: views/section/ajax.php:192 views/section/catalog-pdf.php:55 +#: views/section/view.php:204 views/student/add.php:114 +msgid "Location" +msgstr "Emplacement" -#: views/section/add.php:241 views/section/offering-info.php:116 -msgid "Wednesday" -msgstr "Mercredi" +#: views/financial/view-payments.php:97 +msgid "Date / Type / Check / Term / Payment" +msgstr "Date / Type / Contrôle / durée / Paiement" -#: views/section/add.php:245 views/section/offering-info.php:120 -msgid "Thursday" -msgstr "Jeudi" +#: views/_layouts/myet/default.layout.php:155 +msgid "Class Schedule" +msgstr "Horaire des cours" -#: views/section/add.php:249 views/section/offering-info.php:124 -msgid "Friday" -msgstr "Vendredi" +#: views/courses/cart.php:68 views/dashboard/install-module.php:79 +#: views/form/import.php:63 views/form/photo.php:50 +#: views/plugins/install.php:77 +msgid "Remove" +msgstr "Retirer" -#: views/section/add.php:253 views/section/offering-info.php:128 -msgid "Saturday" -msgstr "Samedi" +#: views/financial/view-payments.php:129 +msgid "Payment Note:" +msgstr "Note de Paiement:" -#: views/section/add.php:285 views/section/offering-info.php:166 -msgid "Register Online" -msgstr "" +#: views/_layouts/myet/default.layout.php:156 views/dashboard/menu.php:304 +#: views/section/view.php:277 views/student/fgrades.php:24 +msgid "Final Grades" +msgstr "Grades Finaux" -#: views/section/addnl-info.php:31 -msgid "View Section" -msgstr "" +#: views/courses/cart.php:70 views/courses/cart.php:90 +#: views/section/register.php:138 +msgid "Register" +msgstr "Registre" -#: views/section/addnl-info.php:58 views/section/billing-info.php:52 -#: views/section/booking-info.php:90 views/section/offering-info.php:31 -#: views/section/offering-info.php:58 views/section/view.php:77 -msgid "Offering Info" -msgstr "" +#: views/financial/view-payments.php:154 +msgid "Are you sure you want to delete this payment?" +msgstr "Êtes-vous sûr de vouloir supprimer ce paiement?" -#: views/section/addnl-info.php:59 views/section/billing-info.php:31 -#: views/section/billing-info.php:53 views/section/booking-info.php:91 -#: views/section/offering-info.php:59 views/section/view.php:78 -msgid "Billing Info" -msgstr "" +#: routers/myet.router.php:531 views/_layouts/myet/default.layout.php:174 +#: views/form/address.php:27 +msgid "Change of Address Form" +msgstr "Formulaire de changement d'adresse" -#: views/section/addnl-info.php:61 views/section/billing-info.php:55 -#: views/section/booking-info.php:93 views/section/offering-info.php:61 -#: views/section/view.php:80 -msgid "Booking Info" -msgstr "" +#: views/courses/index.php:60 +msgid "You have a hold on your account which is currently restricting you from registering for a course(s). Please contact the following office(s)/department(s) to inquire about the hold(s) on your account: " +msgstr "Vous avez une emprise sur votre compte qui est actuellement restreint de vous inscrire à un cours(s). S'il vous plaît contacter le bureau suivant(s)/service(s) pour se renseigner sur la cale(s) sur votre compte:" -#: views/section/addnl-info.php:76 views/section/catalog-pdf.php:51 -#: views/student/schedule.php:43 -msgid "Instructor" -msgstr "" +#: views/financial/view-refunds.php:34 +msgid "View Bill Refunds" +msgstr "Voir Facture de Remboursement " -#: views/section/addnl-info.php:117 -msgid "Contact Hours" -msgstr "" +#: views/_layouts/myet/default.layout.php:175 +msgid "Booking Request Form" +msgstr "Formulaire de demande de Réservation " -#: views/section/addnl-info.php:126 -msgid "Instructor Load" -msgstr "" +#: views/courses/index.php:84 +msgid "Info" +msgstr "Info" -#: views/section/assignments.php:74 -msgid "Grading" -msgstr "" +#: views/financial/view-refunds.php:97 +msgid "Date / Term / Refund" +msgstr "Date / durée / remboursement" -#: views/section/assignments.php:75 -msgid "Export Grades" -msgstr "" +#: routers/myet.router.php:606 views/_layouts/myet/default.layout.php:176 +msgid "School Photo" +msgstr "Photo d'Ecole" -#: views/section/attendance.php:24 views/section/attendance_report.php:24 -msgid "Attendance" -msgstr "" +#: views/courses/index.php:85 +msgid "Select" +msgstr "Sélectionner" -#: views/section/attendance.php:27 -msgid "Attendance for " -msgstr "" +#: views/financial/view-refunds.php:120 +msgid "Refund Note:" +msgstr "Note Remboursement:" -#: views/section/attendance.php:54 views/section/students.php:98 -#: views/section/students.php:132 views/student/add.php:75 -msgid "Student Name" -msgstr "" +#: views/_layouts/myet/default.layout.php:203 +msgid "Applications" +msgstr "Application" -#: views/section/attendance.php:75 -msgid "Absent" -msgstr "" +#: views/courses/index.php:111 +msgid "Section Info" +msgstr "Info Section" -#: views/section/attendance.php:76 -msgid "Present" -msgstr "" +#: views/financial/view-refunds.php:141 views/form/import.php:82 +msgid "Refund" +msgstr "Remboursement" -#: views/section/attendance_report.php:26 -#: views/section/attendance_report.php:29 -msgid "Attendance Report" -msgstr "" +#: views/_layouts/myet/default.layout.php:205 views/index/password.php:28 +msgid "Change Password" +msgstr "Editer Mot de Passe" -#: views/section/batch-register.php:42 views/section/batch-register.php:45 -msgid "Batch Registration" -msgstr "" +#: views/courses/index.php:119 +msgid "Instructor:" +msgstr "professeur:" -#: views/section/batch-register.php:71 -msgid "" -"Use the batch registration process if you need to register a group of " -"students into a particular course section. This screen comes in handy when " -"you need to create a saved query from a course section you need to cancel. " -"The best way is to create your saved query by selecting the student id's in " -"the old course section with an 'A' or 'N' status. Register them into the new " -"course section and then cancel the old course section." -msgstr "" -"Utilisez le processus d'enregistrement du lot si vous avez besoin " -"d'enregistrer un groupe d'étudiants dans une section de cours particulier. " -"Cet écran est très pratique lorsque vous avez besoin pour créer une requête " -"enregistrée à partir d'une section de cours vous devez annuler. La meilleure " -"façon est de créer votre requête enregistrée en sélectionnant les cartes " -"d'étudiant dans la section de cours ancienne avec un 'A' ou le statut 'N'. " -"Enregistrez-les dans la nouvelle section de cours, puis annuler la section " -"de cours ancienne." +#: views/financial/view-refunds.php:145 +msgid "Are you sure you want to delete this refund?" +msgstr "Êtes-vous sûr de vouloir supprimer ce remboursement?" -#: views/section/billing-info.php:70 -msgid "Course Fee" -msgstr "" +#: views/_layouts/myet/default.layout.php:206 +msgid "Logout" +msgstr "Se Déconnecter" -#: views/section/billing-info.php:79 -msgid "Lab Fee" -msgstr "" +#: views/courses/index.php:123 +msgid "Description:" +msgstr "Description:" -#: views/section/billing-info.php:88 -msgid "Course Materials Fee" -msgstr "" +#: views/form/acad-year.php:23 views/form/acad-year.php:26 +#: views/form/acad-year.php:99 views/form/import.php:77 +#: views/form/semester.php:60 views/form/view-acad-year.php:28 +#: views/form/view-semester.php:62 views/program/ajax.php:206 +msgid "Academic Year" +msgstr "Année académique" -#: views/section/booking-info.php:65 -msgid "Classroom Booking" -msgstr "" +#: views/_layouts/myet/default.layout.php:213 +msgid "Info Pages" +msgstr "Pages Info " -#: views/section/booking-info.php:108 -msgid "Main Classroom" -msgstr "" +#: views/courses/index.php:127 +msgid "Comment:" +msgstr "Commentaire:" -#: views/section/booking-info.php:117 views/section/booking-info.php:129 -#: views/section/booking-info.php:279 views/section/booking-info.php:331 -msgid "Classroom" -msgstr "Salle de classe" +#: views/form/acad-year.php:53 views/form/acad-year.php:60 +#: views/form/view-acad-year.php:62 views/form/view-acad-year.php:69 +msgid "Acad Year" +msgstr "Année Acad" -#: views/section/booking-info.php:150 -msgid "Meeting Time" -msgstr "" +#: views/_layouts/myet/default.layout.php:219 +msgid "News" +msgstr "Nouvelles" -#: views/section/booking-info.php:159 -msgid "Term Dates" -msgstr "" +#: views/courses/index.php:131 +msgid "Course Fee:" +msgstr "Frais de Cours:" -#: views/section/booking-info.php:161 -msgid "to" -msgstr "" +#: views/form/acad-year.php:98 +msgid "Academic Year Code" +msgstr "Code Année académique" -#: views/section/booking-info.php:304 -msgid "Are you sure you want to delete this classroom booking?" -msgstr "" -"Êtes-vous sûr de vouloir supprimer cette réservation de salle de classe?" +#: views/_layouts/myet/default.layout.php:222 +msgid "Quick Links" +msgstr "Liens Rapides" -#: views/section/booking-info.php:468 -msgid "Are you sure you want to delete this entry?" -msgstr "Êtes-vous sûr de vouloir supprimer cette entrée?" +#: views/courses/index.php:135 +msgid "Lab Fee:" +msgstr "Frais Laboratoire:" -#: views/section/catalog-pdf.php:53 -msgid "Days" -msgstr "Journées" +#: views/form/address.php:43 views/index/apply.php:87 +#: views/index/profile.php:91 views/person/add.php:163 +#: views/person/addr-form.php:103 views/person/addr.php:103 +#: views/person/view.php:148 +msgid "Address1" +msgstr "Adresse1" -#: views/section/catalog.php:41 -msgid "Term Name" -msgstr "" +#: views/_layouts/myet/default.layout.php:240 views/courses/index.php:39 +msgid "Search Courses" +msgstr "Recherche Cours" -#: views/section/catalog.php:63 -msgid "PDF Export" -msgstr "" +#: views/courses/index.php:139 +msgid "Material Fee:" +msgstr "Frais Matériel:" -#: views/section/courses.php:72 -msgid "Enter Final Grades" -msgstr "" +#: views/form/address.php:47 views/index/apply.php:89 +#: views/index/profile.php:95 views/person/add.php:172 +#: views/person/addr-form.php:112 views/person/addr.php:112 +#: views/person/view.php:157 +msgid "Address2" +msgstr "Adresse2" -#: views/section/export-grades.php:25 views/section/grading.php:31 -#: views/student/schedule.php:46 -msgid "Grades" -msgstr "" +#: views/_layouts/myet/default.layout.php:242 +msgid "Cart" +msgstr "Carte" -#: views/section/final-grade.php:29 views/section/gradebook.php:51 -msgid "Final Grade" -msgstr "" +#: views/courses/index.php:178 +msgid "Add to Cart" +msgstr "Ajouter au panier" -#: views/section/final-grade.php:32 -msgid "Final Grade for " -msgstr "" +#: views/form/address.php:62 views/index/apply.php:126 +#: views/index/profile.php:107 +msgid "Zip" +msgstr "code postal" -#: views/section/gradebook.php:26 -msgid "Gradebook for " -msgstr "" +#: views/admin/csseditor.php:51 views/admin/index.php:41 +msgid "CSS Editor" +msgstr "Editeur CSS" -#: views/section/gradebook.php:52 -msgid "FG" -msgstr "" +#: views/cron/index.php:46 views/cron/log.php:48 views/cron/new.php:67 +#: views/cron/setting.php:47 views/cron/view.php:65 +msgid "Handler Dashboard" +msgstr "Dashboard Maître " -#: views/section/index.php:21 -msgid "Sections" -msgstr "" +#: views/form/address.php:66 views/index/apply.php:85 +msgid "Phone #" +msgstr "Téléphone #" -#: views/section/index.php:56 -msgid "Course Sec ID" -msgstr "" +#: views/admin/csseditor.php:55 views/application/view.php:498 +#: views/calendar/setting.php:117 views/course/add.php:230 +#: views/course/addnl-info.php:126 views/course/extr.php:280 +#: views/course/view.php:285 views/course/vtceq.php:173 views/cron/new.php:174 +#: views/cron/setting.php:104 views/cron/view.php:172 +#: views/financial/gl-accounts.php:149 views/financial/paypal.php:124 +#: views/form/building.php:100 views/form/ccd.php:82 views/form/cip.php:82 +#: views/form/degree.php:75 views/form/department.php:111 +#: views/form/grade-scale.php:121 views/form/location.php:82 +#: views/form/major.php:82 views/form/minor.php:82 views/form/room.php:107 +#: views/form/rstr-code.php:92 views/form/specialization.php:82 +#: views/form/student-load-rule.php:120 views/form/subject.php:75 +#: views/form/term.php:147 views/form/view-acad-year.php:84 +#: views/form/view-building.php:102 views/form/view-ccd.php:84 +#: views/form/view-cip.php:84 views/form/view-degree.php:84 +#: views/form/view-department.php:120 views/form/view-grade-scale.php:123 +#: views/form/view-location.php:84 views/form/view-major.php:84 +#: views/form/view-minor.php:84 views/form/view-room.php:109 +#: views/form/view-rstr-code.php:94 views/form/view-school.php:96 +#: views/form/view-semester.php:138 views/form/view-specialization.php:84 +#: views/form/view-student-load-rule.php:130 views/form/view-subject.php:84 +#: views/form/view-term.php:156 views/hr/add.php:233 +#: views/hr/view-timesheet.php:150 views/hr/view-timesheet.php:246 +#: views/hr/view.php:357 views/index/index.php:100 views/permission/add.php:85 +#: views/permission/view.php:85 views/person/add.php:444 +#: views/person/addr-form.php:386 views/person/addr.php:390 +#: views/person/perms.php:76 views/person/role.php:91 views/person/view.php:469 +#: views/program/add.php:309 views/program/view.php:316 views/role/view.php:87 +#: views/section/add-assignment.php:92 views/section/add.php:357 +#: views/section/addnl-info.php:142 views/section/billing-info.php:105 +#: views/section/offering-info.php:186 views/section/view-assignment.php:97 +#: views/section/view.php:295 views/setting/email.php:123 +#: views/setting/index.php:305 views/setting/registration.php:147 +#: views/sql/add-query.php:132 views/sql/view-query.php:131 +#: views/staff/add.php:244 views/staff/timesheets.php:179 +#: views/staff/view-timesheet.php:174 views/staff/view.php:261 +#: views/student/add-prog.php:190 views/student/add.php:243 +#: views/student/sacd.php:243 views/student/sacp.php:244 +#: views/student/shis.php:190 views/student/strc.php:156 +#: views/student/view.php:159 +msgid "Save" +msgstr "Sauvegarder" -#: views/section/index.php:57 -msgid "Section Code" -msgstr "" +#: views/cron/index.php:47 views/cron/log.php:49 views/cron/new.php:48 +#: views/cron/new.php:51 views/cron/new.php:68 views/cron/setting.php:48 +#: views/cron/view.php:66 +msgid "New Cronjob Handler" +msgstr "Nouveau Cronjob Handler" -#: views/section/offering-info.php:88 -msgid "Class Room" -msgstr "" +#: views/form/address.php:77 views/form/department.php:136 +#: views/index/apply.php:83 views/index/profile.php:55 +#: views/section/students.php:120 views/setting/email.php:48 +#: views/setting/index.php:49 views/setting/registration.php:48 +#: views/setting/templates.php:155 views/staff/view.php:218 +msgid "Email" +msgstr "Email" -#: views/section/section-fgrade.php:32 -msgid "Course Section Final Grades" -msgstr "" +#: routers/myet.router.php:111 views/admin/index.php:29 +#: views/admin/pages.php:29 +msgid "Manage Pages" +msgstr "Gérer les pages" -#: views/section/section-fgrade.php:35 -msgid "Final Grades for " -msgstr "" +#: views/cron/index.php:48 views/cron/log.php:50 views/cron/new.php:69 +#: views/cron/setting.php:49 views/cron/view.php:67 +msgid "Log" +msgstr "Journal" -#: views/section/sros.php:43 views/section/sros.php:46 -msgid "Student Roster" -msgstr "" +#: views/form/building.php:28 views/form/building.php:31 +#: views/form/import.php:95 views/form/room.php:60 views/form/room.php:130 +#: views/form/school.php:74 views/form/school.php:120 +#: views/form/view-building.php:28 views/form/view-room.php:62 +#: views/form/view-school.php:76 views/hr/view.php:173 +#: views/section/catalog-pdf.php:56 views/section/offering-info.php:76 +#: views/staff/add.php:116 views/staff/view.php:142 +#: views/student/schedule.php:38 +msgid "Building" +msgstr "Bâtiment" -#: views/section/students.php:77 views/section/students.php:220 -msgid "Email Students in" -msgstr "" +#: views/admin/index.php:33 +msgid "Manage Links" +msgstr "Gérer les liens" + +#: views/cron/index.php:50 views/cron/log.php:52 views/cron/new.php:71 +#: views/cron/setting.php:51 views/cron/view.php:69 +msgid "About" +msgstr "A propos" -#: views/section/students.php:99 -msgid "Send Email" -msgstr "" +#: views/form/building.php:60 views/form/building.php:121 +#: views/form/view-building.php:62 +msgid "Building Code" +msgstr "Code Bâtiment" -#: views/section/students.php:141 -msgid "Student Email" -msgstr "" +#: views/admin/index.php:37 +msgid "Manage News" +msgstr "Gérer Nouvelles" -#: views/section/students.php:159 views/section/students.php:238 -msgid "Message" -msgstr "" +#: views/cron/index.php:64 +msgid "Cronjob" +msgstr "Cronjob" -#: views/section/students.php:168 views/section/students.php:247 -msgid "File Upload" -msgstr "" +#: views/form/building.php:67 views/form/building.php:122 +#: views/form/view-building.php:69 +msgid "Building Name" +msgstr "Nom du Bâtiment" -#: views/section/templates/roster/default.template.php:83 -#: views/student/sttr.php:64 -msgid "Acad Level" -msgstr "" +#: views/admin/index.php:44 +msgid "If you are having issues with results not updating after changes have been made, click the clear cache button below." +msgstr "Si vous rencontrez des problèmes avec la mise à jour des résultats pas après que les modifications ont été apportées, cliquez sur le bouton Effacer de la mémoire cache ci-dessous." -#: views/section/templates/roster/default.template.php:84 -msgid "Acad Program" -msgstr "" +#: views/cron/index.php:65 +msgid "Time/Each" +msgstr "Temps/Chaque" -#: views/section/templates/roster/default.template.php:85 -msgid "Acad Credit Status" -msgstr "" +#: views/form/ccd.php:28 views/form/ccd.php:31 views/form/import.php:91 +#: views/form/view-ccd.php:28 views/program/add.php:205 +#: views/program/ajax.php:402 views/program/view.php:210 +#: views/student/templates/transcript/default.template.php:167 +msgid "CCD" +msgstr "CCD" -#: views/section/view-assignment.php:31 -msgid "Assignment" -msgstr "" +#: views/admin/index.php:46 +msgid "Clear Cache" +msgstr "Vider le cache" -#: views/setting/email.php:46 views/setting/index.php:47 -#: views/setting/registration.php:46 views/setting/templates.php:153 -msgid "General" -msgstr "" +#: views/cron/index.php:66 +msgid "Last Run" +msgstr "Dernière exécution" -#: views/setting/email.php:47 views/setting/index.php:48 -#: views/setting/registration.php:47 views/setting/templates.php:154 -msgid "Registration" -msgstr "" +#: views/form/ccd.php:60 views/form/ccd.php:105 views/form/view-ccd.php:62 +msgid "CCD Code" +msgstr "Code CCD" -#: views/setting/email.php:63 views/setting/email.php:141 -msgid "System Email" -msgstr "" +#: functions/hook-function.php:722 +msgid "Active Students" +msgstr "Les élèves actifs" -#: views/setting/email.php:72 views/setting/email.php:161 -msgid "Registrar's Email" -msgstr "" +#: functions/hook-function.php:745 +msgid "Active Courses" +msgstr "Cours actifs" -#: views/setting/email.php:81 views/setting/email.php:181 -msgid "Room Request Email" -msgstr "" +#: functions/hook-function.php:768 +msgid "Active Programs" +msgstr "Programmes actifs" -#: views/setting/email.php:96 views/setting/email.php:201 -msgid "Contact Email" -msgstr "" +#: functions/hook-function.php:897 functions/hook-function.php:949 +msgid "my" +msgstr "ma" -#: views/setting/email.php:105 views/setting/email.php:221 -msgid "Admissions Email" -msgstr "" +#: functions/hook-function.php:930 functions/hook-function.php:932 +msgid "Powered by eduTrac SIS r" +msgstr "Propulsé par eduTrac SIS r" -#: views/setting/email.php:145 -msgid "All system and error related emails will be sent to this email address." -msgstr "" -"Tout système et emails d'erreur liés seront envoyés à cette adresse e-mail." +#: functions/hook-function.php:990 views/dashboard/core-admin-bar.php:50 +#: views/dashboard/menu.php:52 +msgid "Administrative" +msgstr "Administratif" -#: views/setting/email.php:165 -msgid "All course and course registration emails will be sent to this address." -msgstr "" -"Tous les cours et cours e-mails d'inscription seront envoyés à cette adresse." +#: functions/hook-function.php:991 +msgid "Academic" +msgstr "Académique" -#: views/setting/email.php:185 -msgid "This is the email where all room requests are sent." -msgstr "Ceci est l'e-mail où toutes les demandes de pièces sont envoyées." +#: functions/hook-function.php:1185 +msgid "LEC Lecture" +msgstr "LEC Conférence" -#: views/setting/email.php:205 -msgid "" -"Emails via the myeduTrac portal (i.e. address changes) will be sent to this " -"email address. This email address will show up in the contact details in the " -"portal's footer as well." -msgstr "" -"E-mails via le portail myeduTrac (adresse des changements) seront envoyés à " -"cette adresse e-mail. Cette adresse électronique apparaîtra dans les détails " -"de contact dans le pied de portail ainsi." +#: functions/hook-function.php:1186 +msgid "LAB Lab" +msgstr "LAB Lab" -#: views/setting/email.php:225 -msgid "" -"New applications submitted via the myeduTrac portal will be sent to this " -"email adddress." -msgstr "" -"Nouvelles demandes soumises via le portail myeduTrac seront envoyés à cette " -"adresse e-mail." +#: functions/hook-function.php:1187 +msgid "SEM Seminar" +msgstr "SEM Séminaire" -#: views/setting/index.php:24 views/setting/index.php:27 -msgid "System Settings" -msgstr "" +#: functions/hook-function.php:1188 +msgid "LL Lecture + Lab" +msgstr "LL Conférence + Lab" -#: views/setting/index.php:73 -msgid "Enable Benchmark" -msgstr "" +#: functions/hook-function.php:1189 +msgid "LS Lecture + Seminar" +msgstr "LS Conférences + Séminaire" -#: views/setting/index.php:86 -msgid "myeT Layout" -msgstr "" +#: functions/hook-function.php:1190 +msgid "SL Seminar + Lab" +msgstr "SL Séminaire + Lab" -#: views/setting/index.php:100 -msgid "myeT Mode" -msgstr "" +#: functions/hook-function.php:1191 +msgid "LLS Lecture + Lab + Seminar" +msgstr "LLS Conférences + Lab + Seminar" -#: views/setting/index.php:104 -msgid "Online" -msgstr "" +#: functions/hook-function.php:1211 +msgid "A Add" +msgstr "A Ajouter" -#: views/setting/index.php:113 -msgid "Offline Message" -msgstr "" +#: functions/hook-function.php:1212 +msgid "N New" +msgstr "N Nouveau" -#: views/setting/index.php:126 -msgid "Enabled" -msgstr "" +#: functions/hook-function.php:1213 +msgid "D Drop" +msgstr "D Goutte" -#: views/setting/index.php:127 -msgid "Disabled" -msgstr "" +#: functions/hook-function.php:1214 functions/hook-function.php:1237 +#: views/student/add.php:199 +msgid "W Withdrawn" +msgstr "W Retiré" -#: views/setting/index.php:135 -msgid "Applicant Email" -msgstr "" +#: functions/hook-function.php:1215 +msgid "C Cancelled" +msgstr "C Annulé" -#: views/setting/index.php:148 -msgid "Language" -msgstr "" +#: functions/hook-function.php:1235 views/hr/view.php:313 +#: views/staff/add.php:219 views/staff/view.php:209 views/student/add.php:196 +msgid "A Active" +msgstr "A Actif" -#: views/setting/index.php:160 -msgid "Timezone" -msgstr "" +#: functions/hook-function.php:1236 +msgid "P Potential" +msgstr "P Potentiel" -#: views/setting/index.php:174 -msgid "Cookie TTL" -msgstr "" +#: functions/hook-function.php:1238 +msgid "C Changed Mind" +msgstr "C Esprit Changé " -#: views/setting/index.php:183 -msgid "Cookie Path" -msgstr "" +#: functions/hook-function.php:1239 +msgid "G Graduated" +msgstr "G Diplômé" -#: views/setting/index.php:198 -msgid "File Manager Driver" -msgstr "" +#: functions/hook-function.php:1259 views/course/view.php:135 +#: views/student/sacd.php:133 +msgid "I Institutional" +msgstr "I Institutionnel" -#: views/setting/index.php:202 -msgid "Local" -msgstr "" +#: functions/hook-function.php:1260 functions/hook-function.php:1361 +#: views/student/sacd.php:134 +msgid "TR Transfer" +msgstr "TR Transfert" -#: views/setting/index.php:203 -msgid "Amazon S3" -msgstr "" +#: functions/hook-function.php:1261 +msgid "AP Advanced Placement" +msgstr "AP Placement avancé" -#: views/setting/index.php:211 -msgid "Amazon S3 Bucket" -msgstr "" +#: functions/hook-function.php:1262 +msgid "X Exempt" +msgstr "X Exempter" -#: views/setting/index.php:220 -msgid "S3 Access Key" -msgstr "" +#: functions/hook-function.php:1263 +msgid "T Test" +msgstr "T Teste" -#: views/setting/index.php:229 -msgid "S3 Secret Key" -msgstr "" +#: functions/hook-function.php:1283 +msgid "FR Freshman" +msgstr "FR Étudiant de première année" -#: views/setting/index.php:238 -msgid "Curl" -msgstr "" +#: functions/hook-function.php:1284 +msgid "SO Sophomore" +msgstr "SO Étudiant de seconde année" -#: views/setting/index.php:242 -msgid "On" -msgstr "Sur" +#: functions/hook-function.php:1285 +msgid "JR Junior" +msgstr "JR Étudiant de troisième" -#: views/setting/index.php:243 -msgid "Off" -msgstr "De" +#: functions/hook-function.php:1286 +msgid "SR Senior" +msgstr "SR Étudiant de licence" -#: views/setting/index.php:251 views/setting/index.php:342 -msgid "API Key" -msgstr "" +#: functions/hook-function.php:1287 +msgid "UG Undergraduate Student" +msgstr "UG Étudiant universitaire" -#: views/setting/index.php:260 -msgid "Contact Phone" -msgstr "" +#: functions/hook-function.php:1288 +msgid "GR Grad Student" +msgstr "GR Étudiant Diplomé" -#: views/setting/index.php:269 -msgid "Help Desk" -msgstr "" +#: functions/hook-function.php:1289 +msgid "PhD PhD Student" +msgstr "PhD Etudiant PhD" -#: views/setting/index.php:287 -msgid "Mailing Address" -msgstr "" +#: functions/hook-function.php:1360 +msgid "FF First Time Freshman" +msgstr "FF First Time Freshman" -#: views/setting/index.php:323 -msgid "myeduTrac Layout" -msgstr "" +#: functions/hook-function.php:1362 +msgid "RA Readmit" +msgstr "RA Réadmettre" -#: views/setting/index.php:327 -msgid "" -"You can create your own layout for myeduTrac self service portal. Make a " -"duplicate of the default layout (/app/views/_layouts/myet/default.php), " -"modify it and add your own css styling." -msgstr "" +#: functions/hook-function.php:1363 +msgid "NA Non-Applicable" +msgstr "NA Non-Applicable" -#: views/setting/index.php:346 -msgid "" -"Some screens in eduTrac rely on the internal REST API, so you will need and " -"API Key." -msgstr "" +#: functions/hook-function.php:1383 +msgid "Asset" +msgstr "Avantage" -#: views/setting/index.php:346 -msgid "to generate an api key for your account." -msgstr "" +#: functions/hook-function.php:1384 +msgid "Liability" +msgstr "Responsabilité" -#: views/setting/index.php:361 -msgid "myeduTrac Self Service" -msgstr "" +#: functions/hook-function.php:1385 +msgid "Equity" +msgstr "Équité" -#: views/setting/index.php:365 -msgid "Use this option to place myeduTrac self service into maintenance mode." -msgstr "" -"Utilisez cette option pour placer en self-service myeduTrac en mode de " -"maintenance." +#: functions/hook-function.php:1386 +msgid "Revenue" +msgstr "Revenu" -#: views/setting/index.php:380 -msgid "myeduTrac Offline Message" -msgstr "" +#: functions/hook-function.php:1387 +msgid "Expense" +msgstr "Frais" -#: views/setting/index.php:384 -msgid "" -"Type the message that should be shown to vistors when myeduTrac self service " -"is in offline mode. Those who have an account can still log into the site. " -"If the logged in user does not have dashboard access, they will be " -"redirected back to the offline message." -msgstr "" -"Tapez le message qui doit être montré aux visiteurs lorsque le service " -"d'auto myeduTrac est en mode déconnecté. Ceux qui ont un compte peut encore " -"se connecter au site. Si l'utilisateur connecté n'a pas accès de tableau de " -"bord, ils seront redirigés vers le message en mode hors connexion." +#: views/install/index.php:249 +msgid "Success!" +msgstr "Succès!" -#: views/setting/index.php:399 -msgid "myeduTrac Application Form" -msgstr "" +#: views/error/screen-error.php:29 +msgid "Error!" +msgstr "Erreur!" -#: views/setting/index.php:403 -msgid "" -"Enable this option to allow access to the application for admissions form." -msgstr "" -"Activer cette option pour permettre l'accès à la demande d'admission forme." +#: functions/installer-function.php:18 +msgid "Minimum PHP version required in order to run eduTrac ERP is PHP 5.4. Your PHP version: " +msgstr "Version minimum de PHP requise pour exécuter eduTrac ERP est PHP 5.4. Votre version de PHP:" -#: views/setting/index.php:418 -msgid "Send Applicant Email" -msgstr "" +#: functions/installer-function.php:21 +msgid "Your PHP version is " +msgstr "Votre version de PHP est" -#: views/setting/index.php:422 -msgid "" -"Set this to 'Yes' if an acceptance letter email should be sent when " -"applicant is moved to stu. Make sure to add a customized acceptance letter " -"template on the email template's screen." -msgstr "" +#: functions/installer-function.php:33 +msgid "Your memory limit is: " +msgstr "Votre limite de mémoire est:" -#: views/setting/index.php:441 -msgid "" -"If you are using eduTrac Analytics, enter the base url where it is installed " -"(i.e. http://example.com/ea/)." -msgstr "" +#: functions/installer-function.php:36 +msgid "Your memory is too low to complete the installation. Minimal value is 64MB, and you have it set to " +msgstr "Votre mémoire est trop faible pour terminer l'installation. Valeur minimale est de 64Mo, et vous l'avez réglé sur" -#: views/setting/registration.php:63 -msgid "Open Registration" -msgstr "" +#: modules/booking.module.php:464 +msgid "Room Request: " +msgstr "Demande de SAlle:" -#: views/setting/registration.php:76 -msgid "Current Term" -msgstr "" +#: modules/financial.module.php:474 +msgid "Pay Bill" +msgstr "Masse salariale" -#: views/setting/registration.php:88 views/setting/registration.php:165 -msgid "# of Courses" -msgstr "" +#: modules/financial.module.php:484 views/financial/view-bill.php:55 +#: views/financial/view-comments.php:56 views/financial/view-payments.php:56 +#: views/financial/view-refunds.php:56 +msgid "Student Bill" +msgstr "Facture Etudiant" -#: views/setting/registration.php:97 views/setting/registration.php:189 -msgid "Account Balance" -msgstr "" +#: modules/financial.module.php:498 +msgid "Pay Now" +msgstr "Payez Maintenant" -#: views/setting/registration.php:112 views/setting/registration.php:213 -msgid "Open Terms" -msgstr "" +#: routers/appl.router.php:240 +msgid "myeduTrac Username Change" +msgstr "Changement du nom d'utilisateur de myeduTrac " -#: views/setting/registration.php:121 views/setting/registration.php:237 -msgid "Registration Term" -msgstr "" +#: routers/cron.router.php:113 +msgid "Database saved." +msgstr "Base de données sauvegardées." -#: views/setting/registration.php:133 -msgid "Instructions" -msgstr "" +#: routers/cron.router.php:118 +msgid "Database not saved, could not create database file on server, please check write rights of this script." +msgstr "La Base de données n'est pas enregistrée, et n'a pas pu créer le fichier de base de données sur le serveur, s'il vous plaît vérifier les droits d'écriture de ce script." -#: views/setting/registration.php:170 -msgid "" -"Set the number of courses a student is able to register into for any given " -"term. There should only be one open term and it must match the registration " -"term. Depending how long your course offering list is, this may not work " -"100%." -msgstr "" -"Définissez le nombre de cours qu'un étudiant est en mesure d'enregistrer " -"dans pour un terme donné. Il ne devrait y avoir un mandat ouvert et il doit " -"correspondre à la durée d'enregistrement. En fonction depuis combien de " -"temps votre cours liste de l'offre est, cela peut ne pas fonctionner à 100%." +#: routers/cron.router.php:258 +msgid "Time settings missing, please add time settings" +msgstr "Paramètres de temps manquant, s'il vous plaît ajouter les paramètres de temps" -#: views/setting/registration.php:194 -msgid "" -"If a student's current balance minus the current term is greater than the " -"`Account Balance`, then the student is not eligible to register for courses " -"(i.e. -100). Set to 0 to disable." -msgstr "" +#: routers/cron.router.php:261 +msgid "Email address is invalid!" +msgstr "Adresse email invalide!" -#: views/setting/registration.php:218 -msgid "" -"Enter a comma delimited list of course terms that can be viewed on the " -"course registration screen (i.e. \"13/FA\",\"14/SP\")." -msgstr "" +#: routers/cron.router.php:279 +msgid "Cronjob already known in this system." +msgstr "Cronjob déjà connu dans ce système." -#: views/setting/registration.php:242 -msgid "" -"If `Open Registration` is set to yes, then choose the term for which a " -"student can register into courses." -msgstr "" -"Si `Ouvrir Registration` est définie à yes, puis choisissez la durée pour " -"laquelle un étudiant peut inscrire dans les cours." +#: routers/cron.router.php:283 +msgid "Cronjob URL is wrong." +msgstr "URL Cronjob est erroné." -#: views/setting/registration.php:261 -msgid "Registration Instructions" -msgstr "Instructions pour l'inscription" +#: routers/cron.router.php:300 +msgid "Your cronjob script cannot run without a password, Your cronjob password contains wrong characters, minimum of 4 letters and numbers." +msgstr "Votre script de cronjob ne peut pas fonctionner sans un mot de passe, votre mot de passe de cronjob contient des caractères incorrects, minimum de 4 lettres et de chiffres." -#: views/setting/registration.php:266 -msgid "" -"Enter any comments or instructions you would like to appear on the course " -"registration page." -msgstr "" -"Entrez des commentaires ou des instructions que vous souhaitez voir " -"apparaître sur la page d'inscription aux cours." +#: routers/cron.router.php:344 +msgid "Current URL is not correct; must begin with http(s):// and followed with a path." +msgstr "URL actuelle n'est pas correcte; Il doit commencer par http(s):// et suivi avec un chemin." -#: views/setting/templates.php:169 -msgid "Template Name" -msgstr "" +#: routers/cron.router.php:363 +msgid "Cronjob log cleaned." +msgstr "journal Cronjob nettoyé." -#: views/setting/templates.php:179 -msgid "Change of Address" -msgstr "" +#: routers/dashboard.router.php:258 routers/plugins.router.php:158 +msgid "The file you are trying to upload is not the accepted file type. Please try again." +msgstr "Le fichier que vous essayez de télécharger est pas le type de fichier acceptée. S'il vous plaît essayer à nouveau." -#: views/setting/templates.php:180 -msgid "" -"This email template is used when someone fills out and submits the change of " -"address form." -msgstr "" +#: routers/dashboard.router.php:269 +msgid "The module was uploaded and installed properly." +msgstr "Le module a été téléchargé et installé correctement." -#: views/setting/templates.php:187 -msgid "" -"This email template is used when the reset password button is pressed on the " -"NAE screen." -msgstr "" +#: routers/dashboard.router.php:271 +msgid "There was a problem uploading the module. Please try again or check the module package." +msgstr "Il y avait un problème téléchargeant le module. S'il vous plaît essayer de nouveau ou vérifier le paquet de module." -#: views/setting/templates.php:193 views/setting/templates.php:286 -#: views/setting/templates.php:307 -msgid "Room Request Text" -msgstr "" +#: routers/install.router.php:60 routers/install.router.php:87 +msgid "Unable to establish a database connection." +msgstr "Impossible d'établir une connexion de base de données." -#: views/setting/templates.php:194 -msgid "" -"This email template is used when the room request form is filled out and " -"submitted." -msgstr "" +#: routers/myet.router.php:590 +msgid "The system could not move the uploaded file. Please check with your system administrator." +msgstr "Le système n'a pas pu déplacer le fichier téléchargé. S'il vous plaît vérifier avec votre administrateur système." -#: views/setting/templates.php:200 -msgid "Room Request Confirmation" -msgstr "" +#: routers/myet.router.php:593 +msgid "Your image size is bigger than 4MB. Try to upload a smaller image." +msgstr "Votre taille de l'image est plus grande que 4Mo. Essayez de télécharger une image plus petite." -#: views/setting/templates.php:201 -msgid "This email template is used when room requests have been approved." -msgstr "" +#: routers/myet.router.php:596 +msgid "Invalid file format. You must upload a jpeg, gif, png or bmp file." +msgstr "Format de fichier non valide. Vous devez télécharger un fichier jpeg, gif, png ou bmp." -#: views/setting/templates.php:207 views/setting/templates.php:328 -msgid "Acceptance Letter" -msgstr "" +#: routers/myet.router.php:599 +msgid "You have to first select an image to upload." +msgstr "Vous devez d'abord sélectionner une image à télécharger." -#: views/setting/templates.php:208 -msgid "" -"This email template is used when applicant has been accepted and moved to " -"stu." -msgstr "" +#: routers/myet.router.php:641 routers/person.router.php:317 +#: routers/student.router.php:270 +msgid "myeduTrac :: " +msgstr "myeduTrac :: " -#: views/setting/templates.php:214 -msgid "Login Details" -msgstr "" +#: routers/myet.router.php:668 +msgid "Change of Address Request" +msgstr "De changement d'adresse" -#: views/setting/templates.php:215 -msgid "" -"This email template is used when a new person record is created and the " -"\"Send username & password to user\" is checked." -msgstr "" +#: routers/person.router.php:335 +msgid "myeduTrac Login Details" +msgstr "myeduTrac Détails Connexion" -#: views/setting/templates.php:221 views/setting/templates.php:370 -msgid "Update Username" -msgstr "" +#: routers/plugins.router.php:169 +msgid "Your plugin was uploaded and installed properly." +msgstr "Votre plugin a été téléchargé et installé correctement." -#: views/setting/templates.php:222 -msgid "" -"This email template is used when the username on the application form has " -"been updated." -msgstr "" +#: routers/plugins.router.php:171 +msgid "There was a problem uploading your plugin. Please try again or check the plugin package." +msgstr "Il y avait un problème de télécharger votre plugin. S'il vous plaît essayer de nouveau ou vérifier le paquet de plugin." -#: views/setting/templates.php:244 -msgid "Change of Address Email Template" -msgstr "" +#: routers/savedquery.router.php:249 +msgid "CSV to Email Attachment" +msgstr "CSV pour l'attachement d'email" -#: views/setting/templates.php:265 -msgid "Reset Password Email Template" -msgstr "" +#: routers/savedquery.router.php:249 +msgid "The attached report can be opened with OpenOffice.org Calc, Google Docs, Microsoft Excel, or Apple Numbers." +msgstr "Le rapport ci-joint peut être ouvert avec OpenOffice.org Calc, Google Docs, Microsoft Excel ou Numbers Apple." -#: views/setting/templates.php:349 -msgid "User Login Details" -msgstr "" +#: routers/student.router.php:293 +msgid "Student Acceptance Letter" +msgstr "Lettre d'Acceptation d'Etudiant" -#: views/sql/add-query.php:36 views/sql/add-query.php:65 -#: views/sql/csv-email.php:55 views/sql/index.php:92 -#: views/sql/saved-queries.php:28 views/sql/saved-queries.php:46 -#: views/sql/view-query.php:36 views/sql/view-query.php:65 -msgid "Saved Queries" -msgstr "" +#: src/Core/etsis_Email.php:447 views/section/register.php:59 +#: views/section/register.php:62 +msgid "Course Registration" +msgstr "Inscription aux cours" -#: views/sql/add-query.php:38 views/sql/add-query.php:41 -msgid "Create Save Query" -msgstr "" +#: src/Core/etsis_Email.php:503 src/Core/etsis_Email.php:548 +msgid "myeduTrac::" +msgstr "myeduTrac::" -#: views/sql/add-query.php:64 views/sql/csv-email.php:54 views/sql/index.php:91 -#: views/sql/saved-queries.php:45 views/sql/view-query.php:64 -msgid "Create Saved Query" -msgstr "" +#: src/Core/etsis_Email.php:527 +msgid " Account Login Details" +msgstr "Détails Connexion au Compte" -#: views/sql/add-query.php:66 views/sql/csv-email.php:56 views/sql/index.php:93 -#: views/sql/saved-queries.php:47 views/sql/view-query.php:66 -msgid "CSV to Email" -msgstr "" +#: src/Core/etsis_Email.php:573 +msgid "Application for Admissions" +msgstr "Demande d'admission" -#: views/sql/add-query.php:81 views/sql/view-query.php:82 -msgid "Save Query Name" -msgstr "" +#: src/Core/etsis_Messages.php:74 src/Messages.php:78 +msgid "200 - Success: Ok" +msgstr "200 - Succès: Ok" -#: views/sql/add-query.php:99 views/sql/add-query.php:153 -#: views/sql/view-query.php:100 views/sql/view-query.php:152 -msgid "Auto Purge" -msgstr "" +#: src/Core/etsis_Messages.php:75 src/Messages.php:79 +msgid "201 - Success: Created" +msgstr "201 - Succès: Créé" -#: views/sql/add-query.php:115 views/sql/add-query.php:172 -#: views/sql/view-query.php:116 -msgid "Share" -msgstr "" +#: src/Core/etsis_Messages.php:76 src/Messages.php:80 +msgid "204 - Error: No Content" +msgstr "204 - Erreur: Aucun Contenu" -#: views/sql/add-query.php:157 views/sql/view-query.php:156 -msgid "" -"If enabled, saved queries get purged every 30 days. If you use your saved " -"query on a regular basis, you should set this option to no." -msgstr "" -"Si elle est activée, les requêtes enregistrées sont purgés tous les 30 " -"jours. Si vous utilisez votre requête enregistrée sur une base régulière, " -"vous devez définir cette option pour aucune." +#: src/Core/etsis_Messages.php:77 src/Messages.php:81 +msgid "409 - Error: Conflict" +msgstr "409 - Erreur: Conflit" -#: views/sql/add-query.php:176 -msgid "" -"You can share your saved queries with other faculty and staff. On any screen " -"that has a dropdown list of saved queries, any shared queries will appear in " -"the list for that particular faculty or staff member. This setting does not " -"grant access to edit or delete your saved query." -msgstr "" +#: functions/student-function.php:569 views/dashboard/menu.php:169 +msgid "Switch To" +msgstr "Commuter A" -#: views/sql/csv-email.php:72 -msgid "Recipient" -msgstr "" +#: functions/student-function.php:591 views/hr/add.php:58 +#: views/hr/positions.php:59 views/hr/view-timesheet.php:58 +#: views/hr/view.php:59 views/staff/view.php:58 +msgid "Phone:" +msgstr "Téléphone" -#: views/sql/index.php:68 -msgid "Choose a saved query from the drop down list or enter a custom query." -msgstr "" +#: functions/student-function.php:597 views/hr/add.php:73 +#: views/hr/positions.php:74 views/hr/view-timesheet.php:73 +#: views/hr/view.php:74 views/staff/view.php:73 +msgid "Email:" +msgstr "Email:" -#: views/sql/index.php:169 -msgid "Successly Executed - " -msgstr "" +#: functions/student-function.php:598 +msgid "Birth Date:" +msgstr "Date d'Anniversaire:" -#: views/sql/index.php:174 -msgid "Query is : " -msgstr "" +#: functions/student-function.php:599 views/hr/add.php:74 +#: views/hr/positions.php:75 views/hr/view-timesheet.php:74 +#: views/hr/view.php:75 views/staff/view.php:74 +msgid "Status:" +msgstr "Statut:" -#: views/sql/saved-queries.php:60 -msgid "Saved Query Name" -msgstr "" +#: functions/student-function.php:605 +msgid "FERPA:" +msgstr "FERPA:" -#: views/sql/saved-queries.php:61 -msgid "Creation Date" -msgstr "" +#: functions/student-function.php:612 +msgid "Restriction(s):" +msgstr "Restriction(s):" -#: views/sql/saved-queries.php:62 -msgid "Shared" -msgstr "" +#: functions/student-function.php:614 +msgid " | Restricted from registering for courses." +msgstr " | Limite de l'inscription aux cours." -#: views/sql/saved-queries.php:90 -msgid "Are you sure you want to delete this saved query?" -msgstr "Etes-vous sûr de vouloir supprimer cette requête enregistrée?" +#: functions/student-function.php:617 +msgid "Entry Date:" +msgstr "Date d'entrée:" + +#: functions/student-function.php:635 views/financial/account-history.php:155 +#: views/financial/view-bill.php:338 views/financial/view-comments.php:154 +#: views/financial/view-payments.php:198 views/financial/view-refunds.php:189 +#: views/student/add-prog.php:209 views/student/sacd.php:262 +#: views/student/sacp.php:289 views/student/shis.php:282 +#: views/student/stac.php:161 views/student/strc.php:251 +#: views/student/sttr.php:116 views/student/view.php:178 +msgid "Family Educational Rights and Privacy Act (FERPA)" +msgstr "Famille des droits éducatifs et Loi sur la protection des renseignements personnels (FERPA)" -#: views/sql/view-query.php:38 views/sql/view-query.php:41 -msgid "View Saved Query" +#: functions/student-function.php:640 +msgid "" +"\"FERPA gives parents certain rights with respect to their children's education records. \n" +" These rights transfer to the student when he or she reaches the age of 18 or attends a school beyond \n" +" the high school level. Students to whom the rights have transferred are 'eligible students.'\"" msgstr "" +"\"FERPA donne aux parents certains droits à l'égard des dossiers scolaires de leurs enfants. \n" +" Ces droits transfèrent à l'étudiant quand il ou elle atteint l'âge de 18 ans ou fréquente une école au-delà \n" +" le niveau d'études secondaires. Les étudiants à qui les droits ont transférés sont «élèves admissibles.»\"" -#: views/staff/add.php:29 views/staff/add.php:32 -msgid "Add Staff" +#: functions/student-function.php:643 +msgid "" +"If the FERPA restriction states \"Yes\", then the student has requested that none of their \n" +" information be given out without their permission. To get a better understanding of FERPA, visit \n" +" the U.S. DOE's website @ " msgstr "" +"Si la restriction FERPA indique \"Oui\", puis l'étudiant a demandé que rien de leur \n" +" information soit donnée sans leur permission. Pour obtenir une meilleure compréhension de la FERPA, visite \n" +" le site de l'US DOE @ " -#: views/staff/index.php:108 -msgid "Staff Search" -msgstr "" +#: functions/student-function.php:651 views/application/index.php:121 +#: views/application/view.php:527 views/courses/index.php:148 +#: views/financial/account-history.php:171 views/financial/create-bill.php:209 +#: views/financial/index.php:127 views/financial/payment-plan.php:367 +#: views/financial/payment-plan.php:391 views/financial/payment-plan.php:415 +#: views/financial/payment-plan.php:441 views/financial/paypal.php:160 +#: views/financial/paypal.php:184 views/financial/view-bill.php:297 +#: views/financial/view-bill.php:323 views/financial/view-bill.php:354 +#: views/financial/view-comments.php:170 views/financial/view-payments.php:214 +#: views/financial/view-refunds.php:205 views/form/grade-scale.php:151 +#: views/form/view-grade-scale.php:152 views/person/index.php:138 +#: views/setting/registration.php:175 views/setting/registration.php:199 +#: views/setting/registration.php:223 views/setting/registration.php:247 +#: views/setting/registration.php:271 views/student/add-prog.php:225 +#: views/student/sacd.php:278 views/student/sacp.php:270 +#: views/student/sacp.php:305 views/student/shis.php:134 +#: views/student/shis.php:168 views/student/shis.php:298 +#: views/student/stac.php:177 views/student/strc.php:133 +#: views/student/strc.php:267 views/student/sttr.php:132 +#: views/student/view.php:194 +msgid "Close" +msgstr "Près" -#: views/staff/view.php:32 -msgid "View Staff" -msgstr "" +#: views/_layouts/myet/default.layout.php:104 views/application/add-inst.php:26 +#: views/application/add.php:21 views/application/index.php:20 +#: views/application/inst-attended.php:42 views/application/inst.php:26 +#: views/application/view-inst.php:26 views/application/view.php:29 +#: views/calendar/booking-form.php:60 views/calendar/events.php:26 +#: views/calendar/index.php:76 views/calendar/requests.php:27 +#: views/calendar/setting.php:26 views/calendar/view-event.php:27 +#: views/calendar/view-request.php:78 views/comm-mgmt/add.php:66 +#: views/comm-mgmt/index.php:20 views/comm-mgmt/mailmerge.php:20 +#: views/comm-mgmt/queue.php:26 views/comm-mgmt/schedule.php:26 +#: views/comm-mgmt/view.php:71 views/course/add.php:31 +#: views/course/addnl-info.php:29 views/course/atceq.php:57 +#: views/course/extr.php:28 views/course/index.php:19 views/course/tceq.php:20 +#: views/course/tcre.php:73 views/course/vextr.php:28 views/course/view.php:29 +#: views/course/vtceq.php:25 views/cron/index.php:26 views/cron/log.php:27 +#: views/cron/new.php:46 views/cron/setting.php:26 views/cron/view.php:44 +#: views/dashboard/core-admin-bar.php:27 views/dashboard/core-update.php:23 +#: views/dashboard/index.php:20 views/dashboard/index.php:26 +#: views/dashboard/install-module.php:25 views/dashboard/menu.php:40 +#: views/dashboard/menu.php:42 views/dashboard/modules.php:21 +#: views/dashboard/support.php:24 views/dashboard/update.php:20 +#: views/error/audit.php:20 views/error/logs.php:21 +#: views/financial/account-history.php:25 views/financial/add-jentry.php:94 +#: views/financial/add-payment.php:44 views/financial/batch.php:37 +#: views/financial/billing-table.php:26 views/financial/create-bill.php:44 +#: views/financial/gl-accounts.php:26 views/financial/gl-filter.php:20 +#: views/financial/index.php:26 views/financial/issue-refund.php:44 +#: views/financial/jentry-filter.php:20 views/financial/journal-entries.php:26 +#: views/financial/payment-plan.php:44 views/financial/paypal.php:20 +#: views/financial/view-bill.php:29 views/financial/view-comments.php:30 +#: views/financial/view-payments.php:30 views/financial/view-refunds.php:30 +#: views/form/acad-year.php:21 views/form/building.php:26 views/form/ccd.php:26 +#: views/form/cip.php:26 views/form/degree.php:21 views/form/department.php:21 +#: views/form/grade-scale.php:21 views/form/import.php:26 +#: views/form/location.php:26 views/form/major.php:26 views/form/minor.php:26 +#: views/form/room.php:26 views/form/rstr-code.php:26 views/form/school.php:26 +#: views/form/semester.php:26 views/form/specialization.php:26 +#: views/form/student-load-rule.php:20 views/form/subject.php:21 +#: views/form/term.php:21 views/form/view-acad-year.php:26 +#: views/form/view-building.php:26 views/form/view-ccd.php:26 +#: views/form/view-cip.php:26 views/form/view-degree.php:26 +#: views/form/view-department.php:26 views/form/view-grade-scale.php:26 +#: views/form/view-location.php:26 views/form/view-major.php:26 +#: views/form/view-minor.php:26 views/form/view-room.php:26 +#: views/form/view-rstr-code.php:26 views/form/view-school.php:26 +#: views/form/view-semester.php:26 views/form/view-specialization.php:26 +#: views/form/view-student-load-rule.php:26 views/form/view-subject.php:26 +#: views/form/view-term.php:26 views/hr/add.php:28 views/hr/grades.php:26 +#: views/hr/index.php:21 views/hr/jobs.php:26 views/hr/positions.php:29 +#: views/hr/timesheets.php:20 views/hr/view-timesheet.php:28 +#: views/hr/view.php:29 views/permission/add.php:27 +#: views/permission/index.php:27 views/permission/view.php:27 +#: views/person/add.php:60 views/person/addr-form.php:28 +#: views/person/addr.php:28 views/person/adsu.php:22 views/person/index.php:22 +#: views/person/perms.php:27 views/person/role.php:27 views/person/view.php:28 +#: views/plugins/index.php:21 views/plugins/install.php:25 +#: views/program/add.php:26 views/program/index.php:19 +#: views/program/view.php:26 views/role/add.php:26 views/role/index.php:21 +#: views/role/view.php:27 views/section/add-assignment.php:25 +#: views/section/add.php:47 views/section/addnl-info.php:25 +#: views/section/assignments.php:25 views/section/attendance.php:20 +#: views/section/attendance_report.php:20 views/section/batch-register.php:40 +#: views/section/billing-info.php:25 views/section/booking-info.php:59 +#: views/section/catalog.php:19 views/section/courses.php:19 +#: views/section/export-grades.php:19 views/section/final-grade.php:25 +#: views/section/gradebook.php:19 views/section/grading.php:25 +#: views/section/index.php:19 views/section/offering-info.php:25 +#: views/section/register.php:57 views/section/section-fgrade.php:26 +#: views/section/sros.php:41 views/section/students.php:69 +#: views/section/timetable.php:75 views/section/view-assignment.php:25 +#: views/section/view.php:46 views/setting/email.php:21 +#: views/setting/index.php:22 views/setting/registration.php:21 +#: views/setting/templates.php:137 views/sql/add-query.php:34 +#: views/sql/csv-email.php:26 views/sql/index.php:50 +#: views/sql/saved-queries.php:26 views/sql/view-query.php:34 +#: views/staff/add.php:25 views/staff/file-manager.php:35 +#: views/staff/index.php:20 views/staff/timesheets.php:26 +#: views/staff/view-timesheet.php:26 views/staff/view.php:28 +#: views/student/add-prog.php:43 views/student/add.php:42 +#: views/student/graduation.php:26 views/student/index.php:19 +#: views/student/sacd.php:26 views/student/sacp.php:29 +#: views/student/shis.php:32 views/student/stac.php:26 +#: views/student/strc.php:32 views/student/sttr.php:20 +#: views/student/tran.php:43 views/student/view.php:36 +msgid "Dashboard" +msgstr "Tableau de bord" -#: views/student/account-history.php:25 -msgid "Student Account History" -msgstr "" +#: routers/plugins.router.php:48 views/dashboard/core-admin-bar.php:29 +#: views/dashboard/core-admin-bar.php:32 views/plugins/index.php:23 +#: views/plugins/index.php:26 views/plugins/install.php:27 +msgid "Plugins" +msgstr "Plugins" -#: views/student/add-prog.php:46 views/student/add.php:44 -#: views/student/index.php:24 views/student/sacd.php:29 -#: views/student/sacp.php:32 views/student/shis.php:35 -#: views/student/stac.php:29 views/student/strc.php:35 -#: views/student/sttr.php:23 views/student/view.php:39 -msgid "Search Student" -msgstr "" +#: routers/plugins.router.php:177 views/dashboard/core-admin-bar.php:31 +msgid "Install Plugins" +msgstr "Installer Plugins" -#: views/student/add-prog.php:50 -msgid "Add Student Program" -msgstr "" +#: views/dashboard/core-admin-bar.php:46 +msgid "Screens" +msgstr "Ecran" -#: views/student/add-prog.php:112 views/student/add.php:180 -#: views/student/sacp.php:95 -msgid "Advisor" -msgstr "" +#: views/dashboard/core-admin-bar.php:52 +msgid "General Settings" +msgstr "Réglages Généraux" -#: views/student/add-prog.php:124 views/student/add.php:168 -#: views/student/sacp.php:116 -msgid "Catalog Year" -msgstr "" +#: views/dashboard/core-admin-bar.php:53 views/setting/registration.php:23 +#: views/setting/registration.php:26 +msgid "Registration Settings" +msgstr "Paramètres d'enregistrement" -#: views/student/add-prog.php:142 views/student/sacp.php:86 -msgid "Ant Grad Date" -msgstr "" +#: views/dashboard/core-admin-bar.php:54 views/setting/email.php:23 +#: views/setting/email.php:26 +msgid "Email Settings" +msgstr "Paramètres de messagerie" -#: views/student/add.php:46 views/student/add.php:49 -msgid "Add Student" -msgstr "" +#: views/comm-mgmt/add.php:68 views/comm-mgmt/index.php:22 +#: views/comm-mgmt/index.php:25 views/comm-mgmt/queue.php:28 +#: views/comm-mgmt/schedule.php:28 views/comm-mgmt/view.php:73 +#: views/dashboard/core-admin-bar.php:55 views/dashboard/core-admin-bar.php:195 +#: views/dashboard/menu.php:326 views/setting/email.php:49 +#: views/setting/index.php:50 views/setting/registration.php:49 +#: views/setting/templates.php:139 views/setting/templates.php:142 +#: views/setting/templates.php:156 +msgid "Email Templates" +msgstr "Modèle Email" -#: views/student/add.php:132 -msgid "Prog Start Date" -msgstr "" +#: views/dashboard/core-admin-bar.php:57 +msgid "Campuses" +msgstr "campus" -#: views/student/add.php:197 -msgid "H Hiatus" -msgstr "" +#: views/dashboard/core-admin-bar.php:59 views/dashboard/menu.php:59 +msgid "Importer" +msgstr "Importateur" -#: views/student/add.php:198 -msgid "L Leave of Absence" -msgstr "" +#: views/cron/index.php:28 views/cron/index.php:31 +#: views/dashboard/core-admin-bar.php:60 views/dashboard/menu.php:61 +msgid "Cronjob Handler" +msgstr "Cronjob Handler" -#: views/student/bill.php:38 -msgid "Bill ID" -msgstr "" +#: views/dashboard/core-admin-bar.php:61 +msgid "(MPRM) Manage Perm" +msgstr "(MPRM) Gérer Perm" -#: views/student/grades.php:25 -msgid "Grades for " -msgstr "" +#: views/dashboard/core-admin-bar.php:62 +msgid "(MRLE) Manage Role" +msgstr "(MRLE) Gérer Rôle" -#: views/student/graduation.php:80 views/student/sacp.php:157 -msgid "Graduation Date" -msgstr "" +#: views/dashboard/core-admin-bar.php:63 views/dashboard/menu.php:69 +#: views/error/logs.php:23 views/error/logs.php:26 +msgid "Error Log" +msgstr "Log d'Erreur" -#: views/student/index.php:81 -msgid "Academic Credits (STAC)" -msgstr "" +#: views/dashboard/core-admin-bar.php:64 views/dashboard/menu.php:72 +#: views/error/audit.php:22 views/error/audit.php:25 +msgid "Audit Trail" +msgstr "Piste Vérification" -#: views/student/index.php:82 -msgid "Restriction (RSTR)" -msgstr "" +#: views/dashboard/core-admin-bar.php:65 views/dashboard/menu.php:75 +#: views/dashboard/update.php:22 views/dashboard/update.php:25 +msgid "Automatic Update" +msgstr "Mise à jour automatique" -#: views/student/index.php:83 -msgid "Hiatus (SHIS)" -msgstr "" +#: views/dashboard/core-admin-bar.php:70 views/dashboard/install-module.php:27 +#: views/dashboard/menu.php:44 +msgid "System Modules" +msgstr "Les modules du système" -#: views/student/index.php:108 -msgid "Student Search" -msgstr "" +#: views/dashboard/core-admin-bar.php:72 views/dashboard/modules.php:23 +#: views/dashboard/modules.php:26 +msgid "Modules" +msgstr "Modules" -#: views/student/payment-cancel.php:26 -msgid "Cancelled Payment" -msgstr "Paiement Annulé" +#: views/dashboard/core-admin-bar.php:73 views/dashboard/install-module.php:29 +#: views/dashboard/install-module.php:32 +msgid "Install Modules" +msgstr "Installer des modules" -#: views/student/payment-cancel.php:28 -msgid "Your payment was cancelled and nothing was posted to your account." -msgstr "Votre paiement a été annulé et rien n'a été affecté à votre compte." +#: views/_layouts/myet/default.layout.php:172 +#: views/dashboard/core-admin-bar.php:78 views/dashboard/menu.php:81 +msgid "Forms" +msgstr "Formulaires" -#: views/student/payment-success.php:26 -msgid "Payment Success" -msgstr "" +#: views/dashboard/core-admin-bar.php:80 views/dashboard/menu.php:84 +msgid "(SEM) - Semester" +msgstr "(SEM) - Semestre" -#: views/student/payment-success.php:28 -msgid "Your payment went through successfully and was posted to your account." -msgstr "Votre paiement a traversé avec succès et a été affecté à votre compte." +#: views/dashboard/core-admin-bar.php:81 views/dashboard/menu.php:85 +msgid "(TERM) - Term" +msgstr "(TERM) - Condition" -#: views/student/sacd.php:31 -msgid "Academic Credits" -msgstr "" +#: views/dashboard/core-admin-bar.php:82 views/dashboard/menu.php:83 +msgid "(AYR) - Academic Year" +msgstr "(AYR) - Année Académique" -#: views/student/sacd.php:33 -msgid "View Academic Credits (SACD)" -msgstr "" +#: views/dashboard/core-admin-bar.php:83 views/dashboard/menu.php:86 +msgid "(DEPT) - Department" +msgstr "(DEPT) - Département" -#: views/student/sacd.php:59 -msgid "CRSE ID/Name/Sec" -msgstr "" +#: views/dashboard/core-admin-bar.php:84 views/dashboard/menu.php:87 +msgid "(SUBJ) - Subject" +msgstr "(SUBJ) - Sujet" -#: views/student/sacp.php:36 -msgid "Edit Student Program (SACP)" -msgstr "" +#: views/dashboard/core-admin-bar.php:85 +msgid "(SLR) - Student Load Rules" +msgstr "(SLR) - Règle de Chargement Etudiant" + +#: views/dashboard/core-admin-bar.php:86 views/dashboard/menu.php:89 +msgid "(DEG) - Degree" +msgstr "(DEG) - Degré" + +#: views/dashboard/core-admin-bar.php:87 views/dashboard/menu.php:90 +msgid "(MAJR) - Major" +msgstr "(MAJR) - Majeur" + +#: views/dashboard/core-admin-bar.php:88 views/dashboard/menu.php:91 +msgid "(MINR) - Minor" +msgstr "(MINR) - Mineur" + +#: views/dashboard/core-admin-bar.php:89 views/dashboard/menu.php:92 +msgid "(CCD) - CCD" +msgstr "(CCD) - CCD" + +#: views/dashboard/core-admin-bar.php:90 views/dashboard/menu.php:93 +msgid "(SPEC) - Specialization" +msgstr "(SPEC) - Spécialisation" -#: views/student/sacp.php:128 -msgid "Eligible to Grad?" -msgstr "" +#: views/dashboard/core-admin-bar.php:91 views/dashboard/menu.php:94 +msgid "(CIP) - CIP" +msgstr "(CIP) - CIP" -#: views/student/sacp.php:261 -msgid "Eligible to Graduate" -msgstr "" +#: views/dashboard/core-admin-bar.php:92 +msgid "(RSTR) - Restriction Codes" +msgstr "(RSTR) - Codes Restriction" -#: views/student/sacp.php:266 -msgid "" -"Select the checkbox if the student is eligible to graduate from this " -"particular program." -msgstr "" -"Cochez la case si l'étudiant est admissible à un diplôme de ce programme " -"particulier." +#: views/dashboard/core-admin-bar.php:93 views/dashboard/menu.php:96 +msgid "(LOC) - Location" +msgstr "(LOC) - Location" -#: views/student/schedule.php:25 views/student/terms.php:39 -msgid "Schedule" -msgstr "Calendrier" +#: views/dashboard/core-admin-bar.php:94 views/dashboard/menu.php:97 +msgid "(BLDG) - Building" +msgstr "(BLDG) - Bâtiment" -#: views/student/schedule.php:41 -msgid "Day(s) of the Week" -msgstr "" +#: views/dashboard/core-admin-bar.php:95 views/dashboard/menu.php:98 +msgid "(ROOM) - Room" +msgstr "(ROOM) - Salle" -#: views/student/shis.php:37 views/student/shis.php:55 -#: views/student/stac.php:52 views/student/strc.php:55 -#: views/student/sttr.php:46 views/student/view.php:65 -msgid "Student Hiatus (SHIS)" -msgstr "" +#: views/dashboard/core-admin-bar.php:96 views/dashboard/menu.php:99 +msgid "(SCH) - School" +msgstr "(SCH) - École" -#: views/student/shis.php:51 views/student/stac.php:48 -#: views/student/strc.php:51 views/student/sttr.php:42 -#: views/student/view.php:61 -msgid "Student Profile (SPRO)" -msgstr "" +#: views/dashboard/core-admin-bar.php:97 views/dashboard/menu.php:100 +msgid "(GRSC) - Grade Scale" +msgstr "(GRSC) - Echelle de grade" -#: views/student/shis.php:52 views/student/stac.php:31 -#: views/student/stac.php:49 views/student/strc.php:52 -#: views/student/sttr.php:43 views/student/view.php:62 -msgid "Student Academic Credits (STAC)" -msgstr "" +#: views/dashboard/core-admin-bar.php:101 +msgid "Online Documentation" +msgstr "Documentation en ligne" -#: views/student/shis.php:53 views/student/stac.php:50 -#: views/student/strc.php:53 views/student/sttr.php:44 -#: views/student/view.php:63 -msgid "Student Terms (STTR)" -msgstr "" +#: views/dashboard/core-admin-bar.php:103 views/dashboard/menu.php:367 +#: views/staff/file-manager.php:37 views/staff/file-manager.php:40 +msgid "File Manager" +msgstr "Gestionnaire de fichiers" -#: views/student/shis.php:54 views/student/stac.php:51 -#: views/student/strc.php:37 views/student/strc.php:54 -#: views/student/sttr.php:45 views/student/view.php:64 -msgid "Student Restriction (STRC)" -msgstr "" +#: views/calendar/booking-form.php:62 views/calendar/events.php:28 +#: views/calendar/index.php:78 views/calendar/index.php:81 +#: views/calendar/requests.php:29 views/calendar/setting.php:28 +#: views/calendar/view-event.php:29 views/calendar/view-request.php:80 +#: views/dashboard/core-admin-bar.php:106 views/dashboard/menu.php:105 +msgid "Events Calendar" +msgstr "Calendrier des événements" -#: views/student/shis.php:69 views/student/shis.php:215 -msgid "Hiatus" -msgstr "" +#: views/dashboard/core-admin-bar.php:108 views/dashboard/menu.php:107 +msgid "Calendar" +msgstr "Calendrier" -#: views/student/shis.php:86 views/student/shis.php:219 -msgid "Withdrawal" -msgstr "" +#: views/dashboard/core-admin-bar.php:109 views/dashboard/menu.php:109 +msgid "Room Booking Form" +msgstr "Formulaire de réservation de Salle " -#: views/student/shis.php:87 views/student/shis.php:220 -msgid "Leave of Absence" -msgstr "" +#: views/dashboard/core-admin-bar.php:110 views/dashboard/menu.php:110 +msgid "Manage Events" +msgstr "Gérer les événements" -#: views/student/shis.php:88 views/student/shis.php:221 -msgid "Study Abroad" -msgstr "" +#: views/calendar/requests.php:31 views/calendar/requests.php:34 +#: views/dashboard/core-admin-bar.php:111 views/dashboard/menu.php:111 +msgid "Pending Requests" +msgstr "Demandes en attente" -#: views/student/shis.php:89 views/student/shis.php:222 -msgid "Illness" -msgstr "" +#: views/cron/index.php:49 views/cron/log.php:51 views/cron/new.php:70 +#: views/cron/setting.php:50 views/cron/view.php:68 +#: views/dashboard/core-admin-bar.php:112 views/dashboard/menu.php:54 +#: views/dashboard/menu.php:114 +msgid "Settings" +msgstr "Paramètres" -#: views/student/shis.php:90 views/student/shis.php:223 -msgid "Dismissal" -msgstr "" +#: views/dashboard/core-admin-bar.php:117 views/dashboard/menu.php:120 +msgid "Human Resources" +msgstr "Ressources Humaines" -#: views/student/shis.php:160 -msgid "Are you sure you want to delete this student's hiatus status?" -msgstr "Êtes-vous sûr de vouloir supprimer le statut de hiatus de cet élève?" +#: views/dashboard/core-admin-bar.php:119 views/dashboard/menu.php:122 +msgid "Employees" +msgstr "Les employés" -#: views/student/stac.php:69 -msgid "CEU's" -msgstr "" +#: views/dashboard/core-admin-bar.php:120 views/dashboard/menu.php:123 +#: views/hr/grades.php:28 views/hr/grades.php:32 +msgid "Pay Grades" +msgstr "Grades de rémunération" -#: views/student/stac.php:96 -msgid "View (SACD)" -msgstr "" +#: views/dashboard/core-admin-bar.php:121 views/dashboard/menu.php:124 +#: views/hr/jobs.php:28 views/hr/jobs.php:32 +msgid "Job Titles" +msgstr "Titres de poste" -#: views/student/stac.php:138 -msgid "" -"Are you sure you want to delete this student academic credit? There is no " -"undoing this." -msgstr "" -"Êtes-vous sûr de vouloir supprimer ce crédit scolaire des élèves? Il n'y a " -"pas défaire ce." +#: views/dashboard/core-admin-bar.php:122 +#: views/dashboard/core-admin-bar.php:126 views/dashboard/menu.php:126 +#: views/dashboard/menu.php:132 views/dashboard/menu.php:134 +#: views/hr/timesheets.php:22 views/hr/timesheets.php:25 +#: views/hr/view-timesheet.php:30 views/staff/timesheets.php:28 +#: views/staff/timesheets.php:32 views/staff/view-timesheet.php:28 +msgid "Timesheets" +msgstr "Feuille de présence" -#: views/student/strc.php:69 views/student/strc.php:181 -msgid "Restriction" -msgstr "" +#: views/dashboard/core-admin-bar.php:131 views/dashboard/menu.php:139 +msgid "SQL" +msgstr "SQL" -#: views/student/strc.php:70 views/student/strc.php:191 -msgid "Severity" -msgstr "" +#: views/dashboard/core-admin-bar.php:133 views/dashboard/menu.php:142 +#: views/sql/add-query.php:63 views/sql/csv-email.php:53 views/sql/index.php:52 +#: views/sql/index.php:55 views/sql/index.php:90 views/sql/saved-queries.php:44 +#: views/sql/view-query.php:63 +msgid "SQL Interface" +msgstr "Interface SQL" -#: views/student/sttr.php:25 -msgid "Student Profile" -msgstr "" +#: views/dashboard/core-admin-bar.php:134 views/dashboard/menu.php:146 +msgid "Create Query" +msgstr "Créer une requête" -#: views/student/sttr.php:27 -msgid "Student Terms Summary (STRS)" -msgstr "" +#: views/dashboard/core-admin-bar.php:135 views/dashboard/menu.php:147 +msgid "Queries" +msgstr "Requêtes" -#: views/student/sttr.php:59 -msgid "Terms" -msgstr "" +#: views/dashboard/core-admin-bar.php:136 views/dashboard/menu.php:148 +#: views/sql/csv-email.php:28 views/sql/csv-email.php:31 +msgid "CSV to Email Report" +msgstr "CSV pour Envoyer Rapport" -#: views/student/sttr.php:60 -msgid "Att Creds" -msgstr "" +#: views/dashboard/core-admin-bar.php:141 +msgid "Academics" +msgstr "Academiques" -#: views/student/sttr.php:61 -msgid "Cmpl Creds" -msgstr "" +#: views/application/add.php:174 views/application/appls.php:33 +#: views/application/appls.php:69 views/application/view.php:197 +#: views/dashboard/core-admin-bar.php:144 views/dashboard/menu.php:221 +#: views/financial/batch.php:99 views/form/import.php:100 +#: views/index/apply.php:172 views/student/view.php:83 +msgid "Academic Program" +msgstr "Programme Académique" -#: views/student/sttr.php:62 -msgid "Grade Pts" -msgstr "" +#: views/dashboard/core-admin-bar.php:146 +msgid "(PROG) - Program" +msgstr "(PROG) - Programme" -#: views/student/sttr.php:63 -msgid "Acad Load" -msgstr "" +#: views/dashboard/core-admin-bar.php:147 +msgid "(APRG) - New Program" +msgstr "(APRG) - Nouveau Programme" -#: views/student/templates/transcript/default.template.php:67 -msgid "Student ID: " -msgstr "" +#: views/dashboard/core-admin-bar.php:152 views/dashboard/menu.php:232 +#: views/form/import.php:98 +#: views/student/templates/transcript/default.template.php:86 +msgid "Course" +msgstr "Cours" -#: views/student/templates/transcript/default.template.php:69 -#: views/student/templates/transcript/default.template.php:71 -msgid "Social Security #: " -msgstr "" +#: views/dashboard/core-admin-bar.php:154 +msgid "(CRSE) - Course" +msgstr "(CRSE) - Cours" -#: views/student/templates/transcript/default.template.php:74 -#: views/student/templates/transcript/default.template.php:76 -msgid "Graduation Date: " -msgstr "" +#: views/dashboard/core-admin-bar.php:155 +msgid "(ACRS) - New Course" +msgstr "(ACRS) - Nouveau Cours" -#: views/student/templates/transcript/default.template.php:87 -msgid "Course Title" -msgstr "" +#: views/courses/cart.php:42 views/courses/index.php:78 +#: views/dashboard/core-admin-bar.php:160 views/form/import.php:99 +#: views/section/attendance_report.php:43 views/section/batch-register.php:96 +#: views/section/booking-info.php:278 views/section/catalog-pdf.php:49 +#: views/section/final-grade.php:53 views/section/register.php:121 +#: views/section/section-fgrade.php:56 views/student/fgrades.php:37 +msgid "Course Section" +msgstr "Sélectionner un Cours" -#: views/student/templates/transcript/default.template.php:89 -msgid "Attempted Credits" -msgstr "" +#: views/dashboard/core-admin-bar.php:162 +msgid "(SECT) - Section" +msgstr "(SECT) - Section" -#: views/student/templates/transcript/default.template.php:90 -msgid "Completed Credits" -msgstr "" +#: views/dashboard/core-admin-bar.php:163 views/dashboard/menu.php:271 +msgid "(RGN) - Register" +msgstr "(RGN) - Registre" -#: views/student/templates/transcript/default.template.php:112 -msgid "Transfer Cum. Totals" -msgstr "" +#: views/dashboard/core-admin-bar.php:164 +msgid "(BRGN) - Batch Register" +msgstr "(BRGN) - Lot de Registre " -#: views/student/templates/transcript/default.template.php:148 -msgid "Cum. Totals" -msgstr "" +#: views/dashboard/core-admin-bar.php:165 +msgid "(SROS) - Student Roster" +msgstr "(SROS) - Liste d'Etudiant" -#: views/student/templates/transcript/default.template.php:206 -msgid "Transfer Credits" -msgstr "" +#: views/_layouts/myet/default.layout.php:153 +#: views/dashboard/core-admin-bar.php:166 views/dashboard/menu.php:278 +#: views/section/timetable.php:77 views/section/timetable.php:80 +#: views/student/timetable.php:79 +msgid "Timetable" +msgstr "Calendrier" -#: views/student/terms.php:25 -msgid "Registered Terms" -msgstr "" +#: views/dashboard/core-admin-bar.php:167 views/dashboard/menu.php:280 +#: views/section/catalog.php:21 views/section/catalog.php:24 +msgid "Course Catalogs" +msgstr "Catalogue de cours" -#: views/student/tran.php:45 views/student/tran.php:48 -msgid "Transcript" -msgstr "" +#: views/dashboard/core-admin-bar.php:168 views/dashboard/menu.php:285 +#: views/section/attendance.php:22 views/section/attendance_report.php:22 +#: views/section/courses.php:24 +msgid "My Course Sections" +msgstr "Mes Sections cours" -#: views/student/tran.php:92 -msgid "Tran Type" -msgstr "" +#: views/dashboard/core-admin-bar.php:173 +msgid "Transfers" +msgstr "Transferts" -#: views/student/vbill.php:62 -msgid "Billing Date" -msgstr "" +#: views/dashboard/core-admin-bar.php:175 +msgid "(EXTR) - External Course" +msgstr "(EXTR) - Cours Externe" -#: views/student/view.php:41 -msgid "(SPRO)" -msgstr "" +#: views/dashboard/core-admin-bar.php:176 +msgid "(ATCEQ) - New Transfer Eq." +msgstr "(ATCEQ) - Nouveau Transfert Eq." -#: views/student/view.php:125 views/student/view.php:209 -msgid "Tags" -msgstr "" +#: views/dashboard/core-admin-bar.php:177 +msgid "(TCEQ) - Transfer Course Eq." +msgstr "(TCEQ) - Transfert Cours Eq." -#: views/student/view.php:213 -msgid "" -"Tags are only for internal use, but they let staff members identify students " -"based on unique or particular characteristics. Tags are like 'metadata' or " -"'keywords' attached to students in the system to make them easier to find or " -"communicate with. Nevertheless, feel free to use them in a way that is most " -"beneficial for your institution." -msgstr "" +#: views/dashboard/core-admin-bar.php:178 +msgid "(TCRE) - Transfer Credit" +msgstr "(TCRE) - Transfert de Crédit" -#~ msgid "" -#~ "Static screens that don't really change often can be cached to reduce " -#~ "page loading time. However, if you decide to disable this option, make " -#~ "sure to clear the screen cache." -#~ msgstr "" -#~ "Écrans statiques qui ne changent pas vraiment souvent peuvent être mis en " -#~ "cache pour réduire le temps de chargement. Cependant, si vous décidez de " -#~ "désactiver cette option, assurez-vous de vider le cache de l'écran." - -#~ msgid "" -#~ "Along with screen caching, database caching helps with scalability, " -#~ "performance and greatly reduces overhead. However, if you decide to " -#~ "disable this option, make sure to clear the database cache." -#~ msgstr "" -#~ "Avec la mise en cache de l'écran, la base de données mise en cache aide à " -#~ "l'évolutivité, les performances et réduit les frais généraux " -#~ "considérablement. Cependant, si vous décidez de désactiver cette option, " -#~ "assurez-vous de vider le cache de base de données." - -#~ msgid "Current Version:" -#~ msgstr "Version Actuelle:" - -#~ msgid "Checking for updates... " -#~ msgstr "Vérification des mises à jour..." - -#~ msgid "All files are writable." -#~ msgstr "Tous les fichiers sont accessibles en écriture." - -#~ msgid "Some files are not writable." -#~ msgstr "Certains fichiers ne sont pas accessibles en écriture." - -#~ msgid "Starting to update files... " -#~ msgstr "À partir de mettre à jour les fichiers..." - -#~ msgid "All the files where succesfuly updated. " -#~ msgstr "Tous les fichiers ont été mis à jour avec succès." - -#~ msgid "" -#~ "Some errors ocured while updating the files. Please inform your IT " -#~ "department." -#~ msgstr "" -#~ "Quelques erreurs se sont produites alors que la mise à jour des fichiers. " -#~ "S'il vous plaît informer votre département IT." - -#~ msgid "You are using the latest release of eduTrac SIS." -#~ msgstr "Vous utilisez la dernière version de eduTrac SIS." +#: views/application/inst-attended.php:88 views/application/inst.php:28 +#: views/application/inst.php:31 views/application/view.php:381 +#: views/course/extr.php:69 views/course/extr.php:136 views/course/vextr.php:63 +#: views/dashboard/core-admin-bar.php:185 views/dashboard/menu.php:314 +#: views/financial/account-history.php:63 views/financial/ah-pdf.php:75 +#: views/form/import.php:106 views/student/account-history.php:51 +msgid "Institution" +msgstr "Etablissement" \ No newline at end of file diff --git a/app/languages/edutrac-sis-pt_BR.mo b/app/languages/edutrac-sis-pt_BR.mo index 41ebc2b6..6526fa19 100644 Binary files a/app/languages/edutrac-sis-pt_BR.mo and b/app/languages/edutrac-sis-pt_BR.mo differ diff --git a/app/languages/edutrac-sis-pt_BR.po b/app/languages/edutrac-sis-pt_BR.po index 1542ce88..8a74ec17 100644 --- a/app/languages/edutrac-sis-pt_BR.po +++ b/app/languages/edutrac-sis-pt_BR.po @@ -2,21 +2,50 @@ # This file is distributed under the same license as the eduTrac SIS package. msgid "" msgstr "" -"Project-Id-Version: eduTrac SIS\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-14 13:45-0500\n" -"PO-Revision-Date: 2016-02-25 02:11-0300\n" -"Last-Translator: Fábio Assunção da SilvaNew Release: r%s
" +msgstr "Nova Release: r%s
" + +#: src/Core/etsis_Updater.php:146 +msgid "An unexpected error occurred. Something may be wrong with edutracsis.com or this server’s configuration. If you continue to have problems, please try the support forums." +msgstr "Um erro inesperado ocorreu. Algo pode estar errado com edutracsis.com ou configuração deste servidor. Se você continuar a ter problemas, tente o fórum de suporte." + +#: views/dashboard/core-update.php:25 views/dashboard/core-update.php:28 +msgid "eduTrac SIS Update" +msgstr "eduTrac SIS atualização" + +#: src/Core/etsis_Updater.php:205 +msgid "Last checked on %s @ %s" +msgstr "" + +#: src/Core/etsis_Updater.php:212 +msgid "Installing Updates: " +msgstr "Instalando atualizações" + +#: src/Core/etsis_Updater.php:234 +msgid "Update successful!" +msgstr "Atualizado com sucesso!" + +#: src/Core/etsis_Updater.php:236 +msgid "Update failed: %s!" +msgstr "Atualização falhou: %s!" + +#: src/Core/etsis_Updater.php:245 +msgid "You currently have the latest release of eduTrac SIS installed: r%s
" +msgstr "Você está atualmente com a última versão do eduTrac SIS instalado: r%s
" + +#: src/Core/etsis_Updater.php:248 +msgid "Could not check for updates! See log file for details." +msgstr "Não foi possível verificar se há atualizações! Veja o arquivo de log para obter detalhes." + +#: views/dashboard/menu.php:212 +msgid "Graduate Students" +msgstr "Alunos Graduados" + +#: views/dashboard/menu.php:215 +msgid "(TRAN) - Transcript" +msgstr "(TRAN) - Histórico" + +#: views/dashboard/menu.php:318 +msgid "(AINST) - Add Institution" +msgstr "(AINST) - Adicionar Instituição" + +#: views/dashboard/menu.php:337 +msgid "(APPL) - Application" +msgstr "(APPL) - Inscrições" + +#: views/plugins/index.php:64 +msgid "Visit plugin site" +msgstr "Visitar site do plugin" #: functions/core-function.php:55 -#, php-format msgid "The following directory could not be created: %s" msgstr "O diretório a seguir não pôde ser criado: %s" +#: functions/student-function.php:28 +msgid "Invalid student ID: Empty ID given." +msgstr "ID aluno inválido: ID informado está vazio." + +#: functions/student-function.php:34 functions/student-function.php:94 +#: functions/student-function.php:208 +msgid "Invalid student ID: student id must be numeric." +msgstr "ID aluno inválido: ID aluno deve ser numérico." + +#: functions/person-function.php:28 functions/person-function.php:189 +#: functions/person-function.php:219 functions/student-function.php:60 +msgid "Invalid person ID: empty ID given." +msgstr "ID pessoa inválido: ID informado está vazio." + +#: functions/person-function.php:34 functions/person-function.php:195 +#: functions/person-function.php:225 functions/student-function.php:66 +msgid "Invalid person ID: person id must be numeric." +msgstr "ID pessoa inválido: ID pessoa deve ser numérico." + +#: functions/student-function.php:88 functions/student-function.php:202 +msgid "Invalid student ID: empty ID given." +msgstr "ID aluno inválido: ID informado está vazio." + #: functions/core-function.php:479 msgid "Invalid password: empty password given." msgstr "Senha inválida: a senha informada está vazia." @@ -68,23 +291,16 @@ msgid "Invalid file name: empty file name given." msgstr "Nome de arquivo inválido: o nome informado está vazio." #: functions/core-function.php:1079 -#, php-format -msgid "" -"The following function is already defined elsewhere: %s" -msgstr "" -"A função a seguir já está definido em outro lugar: %s" +msgid "The following function is already defined elsewhere: %s" +msgstr "A função a seguir já está definido em outro lugar: %s" #: functions/core-function.php:1156 msgid "Cannot read file " msgstr "Não é possível ler o arquivo " #: functions/core-function.php:1210 -msgid "" -"Plugin could not be activated because it triggered a fatal error" -"strong>.New Release: r%s
" -msgstr "Nova Release: r%s
" +#: views/section/index.php:57 +msgid "Section Code" +msgstr "Código" -#: src/Core/etsis_Updater.php:212 -msgid "Installing Updates: " -msgstr "Instalando atualizações" +#: views/form/view-subject.php:30 +msgid "View Subject" +msgstr "Visualizar disciplina" -#: src/Core/etsis_Updater.php:221 -msgid "Database Check . . ." -msgstr "Checando banco de dados . . ." +#: views/section/offering-info.php:88 +msgid "Class Room" +msgstr "Sala de aula" -#: src/Core/etsis_Updater.php:225 -msgid "Directory Check . . ." -msgstr "Checando diretório . . ." +#: views/form/view-term.php:30 views/form/view-term.php:33 +msgid "View Term" +msgstr "" -#: src/Core/etsis_Updater.php:229 -msgid "File Check . . ." -msgstr "Checando arquivo . . ." +#: views/section/section-fgrade.php:32 +msgid "Course Section Final Grades" +msgstr "Seção / Parte de Curso Notas Finais" -#: src/Core/etsis_Updater.php:234 -msgid "Update successful!" -msgstr "Atualizado com sucesso!" +#: views/hr/add.php:30 views/hr/index.php:26 views/hr/positions.php:31 +#: views/hr/view.php:31 +msgid "Search Employee" +msgstr "Pesquisar funcionário" -#: src/Core/etsis_Updater.php:236 -#, php-format -msgid "Update failed: %s!" -msgstr "Atualização falhou: %s!" +#: views/section/section-fgrade.php:35 +msgid "Final Grades for " +msgstr "Notas finais para" -#: src/Core/etsis_Updater.php:245 -#, php-format -msgid "" -"You currently have the latest release of eduTrac SIS installed: r%s
" +#: views/hr/add.php:32 views/hr/add.php:109 views/hr/index.php:88 +#: views/hr/jobs.php:91 views/hr/jobs.php:163 views/hr/positions.php:101 +#: views/hr/view.php:110 views/staff/view.php:109 +msgid "Add Position" msgstr "" -"Você está atualmente com a última versão do eduTrac SIS instalado: r%s
" -#: src/Core/etsis_Updater.php:248 -msgid "Could not check for updates! See log file for details." -msgstr "" -"Não foi possível verificar se há atualizações! Veja o arquivo de log para " -"obter detalhes." +#: views/section/sros.php:43 views/section/sros.php:46 +msgid "Student Roster" +msgstr "Lista de alunos" -#: src/CoreUpdate.php:81 -msgid "API server is currently unavailable." -msgstr "API Servidor está indisponível no momento." +#: views/hr/add.php:64 views/hr/positions.php:65 views/hr/view-timesheet.php:64 +#: views/hr/view.php:65 views/staff/view.php:64 +msgid "Title:" +msgstr "Título:" -#: src/CoreUpdate.php:113 -msgid "" -"The PHP zip extention is not loaded. You must enable the zip extention " -"before continuing." +#: views/section/students.php:77 views/section/students.php:220 +msgid "Email Students in" msgstr "" -"A extensão PHP zip não está carregado. Você deve ativar a extensão zip antes " -"de continuar." - -#: src/CoreUpdate.php:188 -#, php-format -msgid "Current Release: r%s" -msgstr "Release atual: r%s" -#: src/CoreUpdate.php:189 -msgid "Reading Current Releases List" -msgstr "Lendo lista de releases atuais" +#: views/hr/add.php:65 views/hr/positions.php:66 views/hr/view-timesheet.php:65 +#: views/hr/view.php:66 views/staff/view.php:65 +msgid "Dept:" +msgstr "Débito:" -#: src/CoreUpdate.php:192 -#, php-format -msgid "New Update Found: r%s" -msgstr "Nova atualização encontrada: r%s" +#: views/section/students.php:99 +msgid "Send Email" +msgstr "Enviar e-mail" -#: src/CoreUpdate.php:197 -msgid "Downloading New Update " -msgstr "Baixando nova atualização" +#: views/hr/add.php:66 views/hr/positions.php:67 views/hr/view-timesheet.php:66 +#: views/hr/view.php:67 views/staff/view.php:66 +msgid "Office:" +msgstr "Escritório:" -#: src/CoreUpdate.php:205 -msgid "Could not save new update. Operation aborted." -msgstr "Não foi possível salvar a nova atualização. Operação abortada." +#: views/section/students.php:141 +msgid "Student Email" +msgstr "Email do aluno" -#: src/CoreUpdate.php:209 -msgid "Update Downloaded and Saved" -msgstr "Atualização baixada e salva" +#: views/hr/add.php:72 views/hr/positions.php:73 views/hr/view-timesheet.php:72 +#: views/hr/view.php:73 views/staff/view.php:72 +msgid "Office Phone:" +msgstr "" -#: src/CoreUpdate.php:211 -msgid "Update already downloaded." -msgstr "Atualização já baixou." +#: views/section/students.php:159 views/section/students.php:238 +msgid "Message" +msgstr "Mensagem" -#: src/CoreUpdate.php:229 -#, php-format -msgid "Created Directory %s" -msgstr "Diretório criado %s" +#: views/hr/add.php:107 views/hr/positions.php:99 views/hr/view.php:108 +#: views/staff/view.php:107 +msgid "Staff Record" +msgstr "Registro de funcionário" -#: src/CoreUpdate.php:245 src/vendor/CoreUpdate/src/AutoUpdate.php:715 -msgid "UPDATED" -msgstr "ATUALIZADO" +#: views/section/students.php:168 views/section/students.php:247 +msgid "File Upload" +msgstr "Upload de arquivo" -#: src/CoreUpdate.php:252 -msgid "Update ready." -msgstr "Atualização pronta." +#: views/hr/add.php:108 views/hr/index.php:90 views/hr/positions.php:100 +#: views/hr/view.php:109 views/staff/view.php:108 +msgid "View Positions" +msgstr "" -#: src/CoreUpdate.php:252 -msgid "Install Now?" -msgstr "Instalar agora?" +#: views/section/templates/roster/default.template.php:83 +#: views/student/sttr.php:63 +msgid "Acad Level" +msgstr "Nível acadêmico" -#: src/CoreUpdate.php:258 -#, php-format -msgid "eduTrac SIS updated to r%s" -msgstr "eduTrac SIS atualizado para r%s" +#: views/hr/add.php:123 views/hr/positions.php:181 views/hr/view.php:124 +#: views/staff/add.php:67 +msgid "Employment Type" +msgstr "Tipo de funcionário" -#: src/CoreUpdate.php:260 -msgid "No update is available." -msgstr "Nenhuma atualização disponível." +#: views/section/templates/roster/default.template.php:84 +msgid "Acad Program" +msgstr "Programa acadêmico" -#: src/CoreUpdate.php:264 -msgid "Could not find latest releases." -msgstr "Não foi possível encontrar releases mais recentes." +#: views/hr/add.php:135 views/hr/positions.php:193 views/hr/view.php:136 +#: views/staff/add.php:79 +msgid "Staff Type" +msgstr "Tipo de funcionário" -#: src/Hooks.php:246 -#, php-format -msgid "" -"The plugin %s has been deactivated because your changes " -"resulted in a fatal error. element, surround
- // it with a pre element. Please note that we explicitly used str_replace
- // and not preg_replace to gain performance
- if (strpos($result, '') !== false) {
- $result = str_replace(
- array('', "\r\n", "\n", "\r", '
'),
- array('', '', '', '', '
'),
- $result
- );
- }
-
- if (class_exists('Parsedown')) {
- $markdown = \Parsedown::instance();
- $result = $markdown->parse($result);
- } elseif (class_exists('dflydev\markdown\MarkdownExtraParser')) {
- $markdown = new \dflydev\markdown\MarkdownExtraParser();
- $result = $markdown->transformMarkdown($result);
- }
-
- return trim($result);
- }
-
- /**
- * Gets the docblock this tag belongs to.
- *
- * @return DocBlock The docblock this description belongs to.
- */
- public function getDocBlock()
- {
- return $this->docblock;
- }
-
- /**
- * Sets the docblock this tag belongs to.
- *
- * @param DocBlock $docblock The new docblock this description belongs to.
- * Setting NULL removes any association.
- *
- * @return $this
- */
- public function setDocBlock(DocBlock $docblock = null)
- {
- $this->docblock = $docblock;
-
- return $this;
- }
-
- /**
- * Builds a string representation of this object.
- *
- * @todo determine the exact format as used by PHP Reflection
- * and implement it.
- *
- * @return void
- * @codeCoverageIgnore Not yet implemented
- */
- public static function export()
- {
- throw new \Exception('Not yet implemented');
- }
-
- /**
- * Returns the long description as a string.
- *
- * @return string
- */
- public function __toString()
- {
- return $this->getContents();
- }
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Location.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Location.php
deleted file mode 100644
index 966ed44d..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Location.php
+++ /dev/null
@@ -1,76 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock;
-
-/**
- * The location a DocBlock occurs within a file.
- *
- * @author Vasil Rangelov
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class Location
-{
- /** @var int Line where the DocBlock text starts. */
- protected $lineNumber = 0;
-
- /** @var int Column where the DocBlock text starts. */
- protected $columnNumber = 0;
-
- public function __construct(
- $lineNumber = 0,
- $columnNumber = 0
- ) {
- $this->setLineNumber($lineNumber)->setColumnNumber($columnNumber);
- }
-
- /**
- * @return int Line where the DocBlock text starts.
- */
- public function getLineNumber()
- {
- return $this->lineNumber;
- }
-
- /**
- *
- * @param type $lineNumber
- * @return $this
- */
- public function setLineNumber($lineNumber)
- {
- $this->lineNumber = (int)$lineNumber;
-
- return $this;
- }
-
- /**
- * @return int Column where the DocBlock text starts.
- */
- public function getColumnNumber()
- {
- return $this->columnNumber;
- }
-
- /**
- *
- * @param int $columnNumber
- * @return $this
- */
- public function setColumnNumber($columnNumber)
- {
- $this->columnNumber = (int)$columnNumber;
-
- return $this;
- }
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Serializer.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Serializer.php
deleted file mode 100644
index c1617850..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Serializer.php
+++ /dev/null
@@ -1,198 +0,0 @@
-
- * @copyright 2013 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock;
-
-use phpDocumentor\Reflection\DocBlock;
-
-/**
- * Serializes a DocBlock instance.
- *
- * @author Barry vd. Heuvel
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class Serializer
-{
-
- /** @var string The string to indent the comment with. */
- protected $indentString = ' ';
-
- /** @var int The number of times the indent string is repeated. */
- protected $indent = 0;
-
- /** @var bool Whether to indent the first line. */
- protected $isFirstLineIndented = true;
-
- /** @var int|null The max length of a line. */
- protected $lineLength = null;
-
- /**
- * Create a Serializer instance.
- *
- * @param int $indent The number of times the indent string is
- * repeated.
- * @param string $indentString The string to indent the comment with.
- * @param bool $indentFirstLine Whether to indent the first line.
- * @param int|null $lineLength The max length of a line or NULL to
- * disable line wrapping.
- */
- public function __construct(
- $indent = 0,
- $indentString = ' ',
- $indentFirstLine = true,
- $lineLength = null
- ) {
- $this->setIndentationString($indentString);
- $this->setIndent($indent);
- $this->setIsFirstLineIndented($indentFirstLine);
- $this->setLineLength($lineLength);
- }
-
- /**
- * Sets the string to indent comments with.
- *
- * @param string $indentationString The string to indent comments with.
- *
- * @return $this This serializer object.
- */
- public function setIndentationString($indentString)
- {
- $this->indentString = (string)$indentString;
- return $this;
- }
-
- /**
- * Gets the string to indent comments with.
- *
- * @return string The indent string.
- */
- public function getIndentationString()
- {
- return $this->indentString;
- }
-
- /**
- * Sets the number of indents.
- *
- * @param int $indent The number of times the indent string is repeated.
- *
- * @return $this This serializer object.
- */
- public function setIndent($indent)
- {
- $this->indent = (int)$indent;
- return $this;
- }
-
- /**
- * Gets the number of indents.
- *
- * @return int The number of times the indent string is repeated.
- */
- public function getIndent()
- {
- return $this->indent;
- }
-
- /**
- * Sets whether or not the first line should be indented.
- *
- * Sets whether or not the first line (the one with the "/**") should be
- * indented.
- *
- * @param bool $indentFirstLine The new value for this setting.
- *
- * @return $this This serializer object.
- */
- public function setIsFirstLineIndented($indentFirstLine)
- {
- $this->isFirstLineIndented = (bool)$indentFirstLine;
- return $this;
- }
-
- /**
- * Gets whether or not the first line should be indented.
- *
- * @return bool Whether or not the first line should be indented.
- */
- public function isFirstLineIndented()
- {
- return $this->isFirstLineIndented;
- }
-
- /**
- * Sets the line length.
- *
- * Sets the length of each line in the serialization. Content will be
- * wrapped within this limit.
- *
- * @param int|null $lineLength The length of each line. NULL to disable line
- * wrapping altogether.
- *
- * @return $this This serializer object.
- */
- public function setLineLength($lineLength)
- {
- $this->lineLength = null === $lineLength ? null : (int)$lineLength;
- return $this;
- }
-
- /**
- * Gets the line length.
- *
- * @return int|null The length of each line or NULL if line wrapping is
- * disabled.
- */
- public function getLineLength()
- {
- return $this->lineLength;
- }
-
- /**
- * Generate a DocBlock comment.
- *
- * @param DocBlock The DocBlock to serialize.
- *
- * @return string The serialized doc block.
- */
- public function getDocComment(DocBlock $docblock)
- {
- $indent = str_repeat($this->indentString, $this->indent);
- $firstIndent = $this->isFirstLineIndented ? $indent : '';
-
- $text = $docblock->getText();
- if ($this->lineLength) {
- //3 === strlen(' * ')
- $wrapLength = $this->lineLength - strlen($indent) - 3;
- $text = wordwrap($text, $wrapLength);
- }
- $text = str_replace("\n", "\n{$indent} * ", $text);
-
- $comment = "{$firstIndent}/**\n{$indent} * {$text}\n{$indent} *\n";
-
- /** @var Tag $tag */
- foreach ($docblock->getTags() as $tag) {
- $tagText = (string) $tag;
- if ($this->lineLength) {
- $tagText = wordwrap($tagText, $wrapLength);
- }
- $tagText = str_replace("\n", "\n{$indent} * ", $tagText);
-
- $comment .= "{$indent} * {$tagText}\n";
- }
-
- $comment .= $indent . ' */';
-
- return $comment;
- }
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag.php
deleted file mode 100644
index a96db095..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag.php
+++ /dev/null
@@ -1,377 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock;
-
-use phpDocumentor\Reflection\DocBlock;
-
-/**
- * Parses a tag definition for a DocBlock.
- *
- * @author Mike van Riel
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class Tag implements \Reflector
-{
- /**
- * PCRE regular expression matching a tag name.
- */
- const REGEX_TAGNAME = '[\w\-\_\\\\]+';
-
- /** @var string Name of the tag */
- protected $tag = '';
-
- /**
- * @var string|null Content of the tag.
- * When set to NULL, it means it needs to be regenerated.
- */
- protected $content = '';
-
- /** @var string Description of the content of this tag */
- protected $description = '';
-
- /**
- * @var array|null The description, as an array of strings and Tag objects.
- * When set to NULL, it means it needs to be regenerated.
- */
- protected $parsedDescription = null;
-
- /** @var Location Location of the tag. */
- protected $location = null;
-
- /** @var DocBlock The DocBlock which this tag belongs to. */
- protected $docblock = null;
-
- /**
- * @var array An array with a tag as a key, and an FQCN to a class that
- * handles it as an array value. The class is expected to inherit this
- * class.
- */
- private static $tagHandlerMappings = array(
- 'author'
- => '\phpDocumentor\Reflection\DocBlock\Tag\AuthorTag',
- 'covers'
- => '\phpDocumentor\Reflection\DocBlock\Tag\CoversTag',
- 'deprecated'
- => '\phpDocumentor\Reflection\DocBlock\Tag\DeprecatedTag',
- 'example'
- => '\phpDocumentor\Reflection\DocBlock\Tag\ExampleTag',
- 'link'
- => '\phpDocumentor\Reflection\DocBlock\Tag\LinkTag',
- 'method'
- => '\phpDocumentor\Reflection\DocBlock\Tag\MethodTag',
- 'param'
- => '\phpDocumentor\Reflection\DocBlock\Tag\ParamTag',
- 'property-read'
- => '\phpDocumentor\Reflection\DocBlock\Tag\PropertyReadTag',
- 'property'
- => '\phpDocumentor\Reflection\DocBlock\Tag\PropertyTag',
- 'property-write'
- => '\phpDocumentor\Reflection\DocBlock\Tag\PropertyWriteTag',
- 'return'
- => '\phpDocumentor\Reflection\DocBlock\Tag\ReturnTag',
- 'see'
- => '\phpDocumentor\Reflection\DocBlock\Tag\SeeTag',
- 'since'
- => '\phpDocumentor\Reflection\DocBlock\Tag\SinceTag',
- 'source'
- => '\phpDocumentor\Reflection\DocBlock\Tag\SourceTag',
- 'throw'
- => '\phpDocumentor\Reflection\DocBlock\Tag\ThrowsTag',
- 'throws'
- => '\phpDocumentor\Reflection\DocBlock\Tag\ThrowsTag',
- 'uses'
- => '\phpDocumentor\Reflection\DocBlock\Tag\UsesTag',
- 'var'
- => '\phpDocumentor\Reflection\DocBlock\Tag\VarTag',
- 'version'
- => '\phpDocumentor\Reflection\DocBlock\Tag\VersionTag'
- );
-
- /**
- * Factory method responsible for instantiating the correct sub type.
- *
- * @param string $tag_line The text for this tag, including description.
- * @param DocBlock $docblock The DocBlock which this tag belongs to.
- * @param Location $location Location of the tag.
- *
- * @throws \InvalidArgumentException if an invalid tag line was presented.
- *
- * @return static A new tag object.
- */
- final public static function createInstance(
- $tag_line,
- DocBlock $docblock = null,
- Location $location = null
- ) {
- if (!preg_match(
- '/^@(' . self::REGEX_TAGNAME . ')(?:\s*([^\s].*)|$)?/us',
- $tag_line,
- $matches
- )) {
- throw new \InvalidArgumentException(
- 'Invalid tag_line detected: ' . $tag_line
- );
- }
-
- $handler = __CLASS__;
- if (isset(self::$tagHandlerMappings[$matches[1]])) {
- $handler = self::$tagHandlerMappings[$matches[1]];
- } elseif (isset($docblock)) {
- $tagName = (string)new Type\Collection(
- array($matches[1]),
- $docblock->getContext()
- );
-
- if (isset(self::$tagHandlerMappings[$tagName])) {
- $handler = self::$tagHandlerMappings[$tagName];
- }
- }
-
- return new $handler(
- $matches[1],
- isset($matches[2]) ? $matches[2] : '',
- $docblock,
- $location
- );
- }
-
- /**
- * Registers a handler for tags.
- *
- * Registers a handler for tags. The class specified is autoloaded if it's
- * not available. It must inherit from this class.
- *
- * @param string $tag Name of tag to regiser a handler for. When
- * registering a namespaced tag, the full name, along with a prefixing
- * slash MUST be provided.
- * @param string|null $handler FQCN of handler. Specifing NULL removes the
- * handler for the specified tag, if any.
- *
- * @return bool TRUE on success, FALSE on failure.
- */
- final public static function registerTagHandler($tag, $handler)
- {
- $tag = trim((string)$tag);
-
- if (null === $handler) {
- unset(self::$tagHandlerMappings[$tag]);
- return true;
- }
-
- if ('' !== $tag
- && class_exists($handler, true)
- && is_subclass_of($handler, __CLASS__)
- && !strpos($tag, '\\') //Accept no slash, and 1st slash at offset 0.
- ) {
- self::$tagHandlerMappings[$tag] = $handler;
- return true;
- }
-
- return false;
- }
-
- /**
- * Parses a tag and populates the member variables.
- *
- * @param string $name Name of the tag.
- * @param string $content The contents of the given tag.
- * @param DocBlock $docblock The DocBlock which this tag belongs to.
- * @param Location $location Location of the tag.
- */
- public function __construct(
- $name,
- $content,
- DocBlock $docblock = null,
- Location $location = null
- ) {
- $this
- ->setName($name)
- ->setContent($content)
- ->setDocBlock($docblock)
- ->setLocation($location);
- }
-
- /**
- * Gets the name of this tag.
- *
- * @return string The name of this tag.
- */
- public function getName()
- {
- return $this->tag;
- }
-
- /**
- * Sets the name of this tag.
- *
- * @param string $name The new name of this tag.
- *
- * @return $this
- * @throws \InvalidArgumentException When an invalid tag name is provided.
- */
- public function setName($name)
- {
- if (!preg_match('/^' . self::REGEX_TAGNAME . '$/u', $name)) {
- throw new \InvalidArgumentException(
- 'Invalid tag name supplied: ' . $name
- );
- }
-
- $this->tag = $name;
-
- return $this;
- }
-
- /**
- * Gets the content of this tag.
- *
- * @return string
- */
- public function getContent()
- {
- if (null === $this->content) {
- $this->content = $this->description;
- }
-
- return $this->content;
- }
-
- /**
- * Sets the content of this tag.
- *
- * @param string $content The new content of this tag.
- *
- * @return $this
- */
- public function setContent($content)
- {
- $this->setDescription($content);
- $this->content = $content;
-
- return $this;
- }
-
- /**
- * Gets the description component of this tag.
- *
- * @return string
- */
- public function getDescription()
- {
- return $this->description;
- }
-
- /**
- * Sets the description component of this tag.
- *
- * @param string $description The new description component of this tag.
- *
- * @return $this
- */
- public function setDescription($description)
- {
- $this->content = null;
- $this->parsedDescription = null;
- $this->description = trim($description);
-
- return $this;
- }
-
- /**
- * Gets the parsed text of this description.
- *
- * @return array An array of strings and tag objects, in the order they
- * occur within the description.
- */
- public function getParsedDescription()
- {
- if (null === $this->parsedDescription) {
- $description = new Description($this->description, $this->docblock);
- $this->parsedDescription = $description->getParsedContents();
- }
- return $this->parsedDescription;
- }
-
- /**
- * Gets the docblock this tag belongs to.
- *
- * @return DocBlock The docblock this tag belongs to.
- */
- public function getDocBlock()
- {
- return $this->docblock;
- }
-
- /**
- * Sets the docblock this tag belongs to.
- *
- * @param DocBlock $docblock The new docblock this tag belongs to. Setting
- * NULL removes any association.
- *
- * @return $this
- */
- public function setDocBlock(DocBlock $docblock = null)
- {
- $this->docblock = $docblock;
-
- return $this;
- }
-
- /**
- * Gets the location of the tag.
- *
- * @return Location The tag's location.
- */
- public function getLocation()
- {
- return $this->location;
- }
-
- /**
- * Sets the location of the tag.
- *
- * @param Location $location The new location of the tag.
- *
- * @return $this
- */
- public function setLocation(Location $location = null)
- {
- $this->location = $location;
-
- return $this;
- }
-
- /**
- * Builds a string representation of this object.
- *
- * @todo determine the exact format as used by PHP Reflection and implement it.
- *
- * @return void
- * @codeCoverageIgnore Not yet implemented
- */
- public static function export()
- {
- throw new \Exception('Not yet implemented');
- }
-
- /**
- * Returns the tag as a serialized string
- *
- * @return string
- */
- public function __toString()
- {
- return "@{$this->getName()} {$this->getContent()}";
- }
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/AuthorTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/AuthorTag.php
deleted file mode 100644
index bacf52eb..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/AuthorTag.php
+++ /dev/null
@@ -1,131 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-use phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Reflection class for an @author tag in a Docblock.
- *
- * @author Mike van Riel
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class AuthorTag extends Tag
-{
- /**
- * PCRE regular expression matching any valid value for the name component.
- */
- const REGEX_AUTHOR_NAME = '[^\<]*';
-
- /**
- * PCRE regular expression matching any valid value for the email component.
- */
- const REGEX_AUTHOR_EMAIL = '[^\>]*';
-
- /** @var string The name of the author */
- protected $authorName = '';
-
- /** @var string The email of the author */
- protected $authorEmail = '';
-
- public function getContent()
- {
- if (null === $this->content) {
- $this->content = $this->authorName;
- if ('' != $this->authorEmail) {
- $this->content .= "<{$this->authorEmail}>";
- }
- }
-
- return $this->content;
- }
-
- /**
- * {@inheritdoc}
- */
- public function setContent($content)
- {
- parent::setContent($content);
- if (preg_match(
- '/^(' . self::REGEX_AUTHOR_NAME .
- ')(\<(' . self::REGEX_AUTHOR_EMAIL .
- ')\>)?$/u',
- $this->description,
- $matches
- )) {
- $this->authorName = trim($matches[1]);
- if (isset($matches[3])) {
- $this->authorEmail = trim($matches[3]);
- }
- }
-
- return $this;
- }
-
- /**
- * Gets the author's name.
- *
- * @return string The author's name.
- */
- public function getAuthorName()
- {
- return $this->authorName;
- }
-
- /**
- * Sets the author's name.
- *
- * @param string $authorName The new author name.
- * An invalid value will set an empty string.
- *
- * @return $this
- */
- public function setAuthorName($authorName)
- {
- $this->content = null;
- $this->authorName
- = preg_match('/^' . self::REGEX_AUTHOR_NAME . '$/u', $authorName)
- ? $authorName : '';
-
- return $this;
- }
-
- /**
- * Gets the author's email.
- *
- * @return string The author's email.
- */
- public function getAuthorEmail()
- {
- return $this->authorEmail;
- }
-
- /**
- * Sets the author's email.
- *
- * @param string $authorEmail The new author email.
- * An invalid value will set an empty string.
- *
- * @return $this
- */
- public function setAuthorEmail($authorEmail)
- {
- $this->authorEmail
- = preg_match('/^' . self::REGEX_AUTHOR_EMAIL . '$/u', $authorEmail)
- ? $authorEmail : '';
-
- $this->content = null;
- return $this;
- }
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/CoversTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/CoversTag.php
deleted file mode 100644
index bd31b56b..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/CoversTag.php
+++ /dev/null
@@ -1,24 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Reflection class for a @covers tag in a Docblock.
- *
- * @author Mike van Riel
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class CoversTag extends SeeTag
-{
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/DeprecatedTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/DeprecatedTag.php
deleted file mode 100644
index 7226316b..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/DeprecatedTag.php
+++ /dev/null
@@ -1,26 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-use phpDocumentor\Reflection\DocBlock\Tag\VersionTag;
-
-/**
- * Reflection class for a @deprecated tag in a Docblock.
- *
- * @author Vasil Rangelov
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class DeprecatedTag extends VersionTag
-{
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/ExampleTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/ExampleTag.php
deleted file mode 100644
index 0e163ea0..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/ExampleTag.php
+++ /dev/null
@@ -1,156 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-use phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Reflection class for a @example tag in a Docblock.
- *
- * @author Vasil Rangelov
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class ExampleTag extends SourceTag
-{
- /**
- * @var string Path to a file to use as an example.
- * May also be an absolute URI.
- */
- protected $filePath = '';
-
- /**
- * @var bool Whether the file path component represents an URI.
- * This determines how the file portion appears at {@link getContent()}.
- */
- protected $isURI = false;
-
- /**
- * {@inheritdoc}
- */
- public function getContent()
- {
- if (null === $this->content) {
- $filePath = '';
- if ($this->isURI) {
- if (false === strpos($this->filePath, ':')) {
- $filePath = str_replace(
- '%2F',
- '/',
- rawurlencode($this->filePath)
- );
- } else {
- $filePath = $this->filePath;
- }
- } else {
- $filePath = '"' . $this->filePath . '"';
- }
-
- $this->content = $filePath . ' ' . parent::getContent();
- }
-
- return $this->content;
- }
- /**
- * {@inheritdoc}
- */
- public function setContent($content)
- {
- Tag::setContent($content);
- if (preg_match(
- '/^
- # File component
- (?:
- # File path in quotes
- \"([^\"]+)\"
- |
- # File URI
- (\S+)
- )
- # Remaining content (parsed by SourceTag)
- (?:\s+(.*))?
- $/sux',
- $this->description,
- $matches
- )) {
- if ('' !== $matches[1]) {
- $this->setFilePath($matches[1]);
- } else {
- $this->setFileURI($matches[2]);
- }
-
- if (isset($matches[3])) {
- parent::setContent($matches[3]);
- } else {
- $this->setDescription('');
- }
- $this->content = $content;
- }
-
- return $this;
- }
-
- /**
- * Returns the file path.
- *
- * @return string Path to a file to use as an example.
- * May also be an absolute URI.
- */
- public function getFilePath()
- {
- return $this->filePath;
- }
-
- /**
- * Sets the file path.
- *
- * @param string $filePath The new file path to use for the example.
- *
- * @return $this
- */
- public function setFilePath($filePath)
- {
- $this->isURI = false;
- $this->filePath = trim($filePath);
-
- $this->content = null;
- return $this;
- }
-
- /**
- * Sets the file path as an URI.
- *
- * This function is equivalent to {@link setFilePath()}, except that it
- * convers an URI to a file path before that.
- *
- * There is no getFileURI(), as {@link getFilePath()} is compatible.
- *
- * @param type $uri The new file URI to use as an example.
- */
- public function setFileURI($uri)
- {
- $this->isURI = true;
- if (false === strpos($uri, ':')) {
- //Relative URL
- $this->filePath = rawurldecode(
- str_replace(array('/', '\\'), '%2F', $uri)
- );
- } else {
- //Absolute URL or URI.
- $this->filePath = $uri;
- }
-
- $this->content = null;
- return $this;
- }
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/LinkTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/LinkTag.php
deleted file mode 100644
index f79f25dd..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/LinkTag.php
+++ /dev/null
@@ -1,81 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-use phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Reflection class for a @link tag in a Docblock.
- *
- * @author Ben Selby
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class LinkTag extends Tag
-{
- /** @var string */
- protected $link = '';
-
- /**
- * {@inheritdoc}
- */
- public function getContent()
- {
- if (null === $this->content) {
- $this->content = "{$this->link} {$this->description}";
- }
-
- return $this->content;
- }
-
- /**
- * {@inheritdoc}
- */
- public function setContent($content)
- {
- parent::setContent($content);
- $parts = preg_split('/\s+/Su', $this->description, 2);
-
- $this->link = $parts[0];
-
- $this->setDescription(isset($parts[1]) ? $parts[1] : $parts[0]);
-
- $this->content = $content;
- return $this;
- }
-
- /**
- * Gets the link
- *
- * @return string
- */
- public function getLink()
- {
- return $this->link;
- }
-
- /**
- * Sets the link
- *
- * @param string $link The link
- *
- * @return $this
- */
- public function setLink($link)
- {
- $this->link = $link;
-
- $this->content = null;
- return $this;
- }
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/MethodTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/MethodTag.php
deleted file mode 100644
index 7a5ce790..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/MethodTag.php
+++ /dev/null
@@ -1,209 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-use phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Reflection class for a @method in a Docblock.
- *
- * @author Mike van Riel
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class MethodTag extends ReturnTag
-{
-
- /** @var string */
- protected $method_name = '';
-
- /** @var string */
- protected $arguments = '';
-
- /** @var bool */
- protected $isStatic = false;
-
- /**
- * {@inheritdoc}
- */
- public function getContent()
- {
- if (null === $this->content) {
- $this->content = '';
- if ($this->isStatic) {
- $this->content .= 'static ';
- }
- $this->content .= $this->type .
- " {$this->method_name}({$this->arguments}) " .
- $this->description;
- }
-
- return $this->content;
- }
-
- /**
- * {@inheritdoc}
- */
- public function setContent($content)
- {
- Tag::setContent($content);
- // 1. none or more whitespace
- // 2. optionally the keyword "static" followed by whitespace
- // 3. optionally a word with underscores followed by whitespace : as
- // type for the return value
- // 4. then optionally a word with underscores followed by () and
- // whitespace : as method name as used by phpDocumentor
- // 5. then a word with underscores, followed by ( and any character
- // until a ) and whitespace : as method name with signature
- // 6. any remaining text : as description
- if (preg_match(
- '/^
- # Static keyword
- # Declates a static method ONLY if type is also present
- (?:
- (static)
- \s+
- )?
- # Return type
- (?:
- ([\w\|_\\\\]+)
- \s+
- )?
- # Legacy method name (not captured)
- (?:
- [\w_]+\(\)\s+
- )?
- # Method name
- ([\w\|_\\\\]+)
- # Arguments
- \(([^\)]*)\)
- \s*
- # Description
- (.*)
- $/sux',
- $this->description,
- $matches
- )) {
- list(
- ,
- $static,
- $this->type,
- $this->method_name,
- $this->arguments,
- $this->description
- ) = $matches;
- if ($static) {
- if (!$this->type) {
- $this->type = 'static';
- } else {
- $this->isStatic = true;
- }
- } else {
- if (!$this->type) {
- $this->type = 'void';
- }
- }
- $this->parsedDescription = null;
- }
-
- return $this;
- }
-
- /**
- * Sets the name of this method.
- *
- * @param string $method_name The name of the method.
- *
- * @return $this
- */
- public function setMethodName($method_name)
- {
- $this->method_name = $method_name;
-
- $this->content = null;
- return $this;
- }
-
- /**
- * Retrieves the method name.
- *
- * @return string
- */
- public function getMethodName()
- {
- return $this->method_name;
- }
-
- /**
- * Sets the arguments for this method.
- *
- * @param string $arguments A comma-separated arguments line.
- *
- * @return void
- */
- public function setArguments($arguments)
- {
- $this->arguments = $arguments;
-
- $this->content = null;
- return $this;
- }
-
- /**
- * Returns an array containing each argument as array of type and name.
- *
- * Please note that the argument sub-array may only contain 1 element if no
- * type was specified.
- *
- * @return string[]
- */
- public function getArguments()
- {
- if (empty($this->arguments)) {
- return array();
- }
-
- $arguments = explode(',', $this->arguments);
- foreach ($arguments as $key => $value) {
- $arguments[$key] = explode(' ', trim($value));
- }
-
- return $arguments;
- }
-
- /**
- * Checks whether the method tag describes a static method or not.
- *
- * @return bool TRUE if the method declaration is for a static method, FALSE
- * otherwise.
- */
- public function isStatic()
- {
- return $this->isStatic;
- }
-
- /**
- * Sets a new value for whether the method is static or not.
- *
- * @param bool $isStatic The new value to set.
- *
- * @return $this
- */
- public function setIsStatic($isStatic)
- {
- $this->isStatic = $isStatic;
-
- $this->content = null;
- return $this;
- }
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/ParamTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/ParamTag.php
deleted file mode 100644
index 9bc0270d..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/ParamTag.php
+++ /dev/null
@@ -1,119 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-use phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Reflection class for a @param tag in a Docblock.
- *
- * @author Mike van Riel
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class ParamTag extends ReturnTag
-{
- /** @var string */
- protected $variableName = '';
-
- /** @var bool determines whether this is a variadic argument */
- protected $isVariadic = false;
-
- /**
- * {@inheritdoc}
- */
- public function getContent()
- {
- if (null === $this->content) {
- $this->content
- = "{$this->type} {$this->variableName} {$this->description}";
- }
- return $this->content;
- }
- /**
- * {@inheritdoc}
- */
- public function setContent($content)
- {
- Tag::setContent($content);
- $parts = preg_split(
- '/(\s+)/Su',
- $this->description,
- 3,
- PREG_SPLIT_DELIM_CAPTURE
- );
-
- // if the first item that is encountered is not a variable; it is a type
- if (isset($parts[0])
- && (strlen($parts[0]) > 0)
- && ($parts[0][0] !== '$')
- ) {
- $this->type = array_shift($parts);
- array_shift($parts);
- }
-
- // if the next item starts with a $ or ...$ it must be the variable name
- if (isset($parts[0])
- && (strlen($parts[0]) > 0)
- && ($parts[0][0] == '$' || substr($parts[0], 0, 4) === '...$')
- ) {
- $this->variableName = array_shift($parts);
- array_shift($parts);
-
- if (substr($this->variableName, 0, 3) === '...') {
- $this->isVariadic = true;
- $this->variableName = substr($this->variableName, 3);
- }
- }
-
- $this->setDescription(implode('', $parts));
-
- $this->content = $content;
- return $this;
- }
-
- /**
- * Returns the variable's name.
- *
- * @return string
- */
- public function getVariableName()
- {
- return $this->variableName;
- }
-
- /**
- * Sets the variable's name.
- *
- * @param string $name The new name for this variable.
- *
- * @return $this
- */
- public function setVariableName($name)
- {
- $this->variableName = $name;
-
- $this->content = null;
- return $this;
- }
-
- /**
- * Returns whether this tag is variadic.
- *
- * @return boolean
- */
- public function isVariadic()
- {
- return $this->isVariadic;
- }
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/PropertyReadTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/PropertyReadTag.php
deleted file mode 100644
index 33406026..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/PropertyReadTag.php
+++ /dev/null
@@ -1,24 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Reflection class for a @property-read tag in a Docblock.
- *
- * @author Mike van Riel
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class PropertyReadTag extends PropertyTag
-{
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/PropertyTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/PropertyTag.php
deleted file mode 100644
index 288ecff8..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/PropertyTag.php
+++ /dev/null
@@ -1,24 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Reflection class for a @property tag in a Docblock.
- *
- * @author Mike van Riel
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class PropertyTag extends ParamTag
-{
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/PropertyWriteTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/PropertyWriteTag.php
deleted file mode 100644
index ec4e866d..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/PropertyWriteTag.php
+++ /dev/null
@@ -1,24 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Reflection class for a @property-write tag in a Docblock.
- *
- * @author Mike van Riel
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class PropertyWriteTag extends PropertyTag
-{
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/ReturnTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/ReturnTag.php
deleted file mode 100644
index 9293db92..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/ReturnTag.php
+++ /dev/null
@@ -1,99 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-use phpDocumentor\Reflection\DocBlock\Tag;
-use phpDocumentor\Reflection\DocBlock\Type\Collection;
-
-/**
- * Reflection class for a @return tag in a Docblock.
- *
- * @author Mike van Riel
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class ReturnTag extends Tag
-{
- /** @var string The raw type component. */
- protected $type = '';
-
- /** @var Collection The parsed type component. */
- protected $types = null;
-
- /**
- * {@inheritdoc}
- */
- public function getContent()
- {
- if (null === $this->content) {
- $this->content = "{$this->type} {$this->description}";
- }
-
- return $this->content;
- }
-
- /**
- * {@inheritdoc}
- */
- public function setContent($content)
- {
- parent::setContent($content);
-
- $parts = preg_split('/\s+/Su', $this->description, 2);
-
- // any output is considered a type
- $this->type = $parts[0];
- $this->types = null;
-
- $this->setDescription(isset($parts[1]) ? $parts[1] : '');
-
- $this->content = $content;
- return $this;
- }
-
- /**
- * Returns the unique types of the variable.
- *
- * @return string[]
- */
- public function getTypes()
- {
- return $this->getTypesCollection()->getArrayCopy();
- }
-
- /**
- * Returns the type section of the variable.
- *
- * @return string
- */
- public function getType()
- {
- return (string) $this->getTypesCollection();
- }
-
- /**
- * Returns the type collection.
- *
- * @return void
- */
- protected function getTypesCollection()
- {
- if (null === $this->types) {
- $this->types = new Collection(
- array($this->type),
- $this->docblock ? $this->docblock->getContext() : null
- );
- }
- return $this->types;
- }
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/SeeTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/SeeTag.php
deleted file mode 100644
index 4f5f22ce..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/SeeTag.php
+++ /dev/null
@@ -1,81 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-use phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Reflection class for a @see tag in a Docblock.
- *
- * @author Mike van Riel
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class SeeTag extends Tag
-{
- /** @var string */
- protected $refers = null;
-
- /**
- * {@inheritdoc}
- */
- public function getContent()
- {
- if (null === $this->content) {
- $this->content = "{$this->refers} {$this->description}";
- }
- return $this->content;
- }
-
- /**
- * {@inheritdoc}
- */
- public function setContent($content)
- {
- parent::setContent($content);
- $parts = preg_split('/\s+/Su', $this->description, 2);
-
- // any output is considered a type
- $this->refers = $parts[0];
-
- $this->setDescription(isset($parts[1]) ? $parts[1] : '');
-
- $this->content = $content;
- return $this;
- }
-
- /**
- * Gets the structural element this tag refers to.
- *
- * @return string
- */
- public function getReference()
- {
- return $this->refers;
- }
-
- /**
- * Sets the structural element this tag refers to.
- *
- * @param string $refers The new type this tag refers to.
- *
- * @return $this
- */
- public function setReference($refers)
- {
- $this->refers = $refers;
-
- $this->content = null;
- return $this;
- }
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/SinceTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/SinceTag.php
deleted file mode 100644
index ba009c44..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/SinceTag.php
+++ /dev/null
@@ -1,26 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-use phpDocumentor\Reflection\DocBlock\Tag\VersionTag;
-
-/**
- * Reflection class for a @since tag in a Docblock.
- *
- * @author Vasil Rangelov
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class SinceTag extends VersionTag
-{
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/SourceTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/SourceTag.php
deleted file mode 100644
index 3400220e..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/SourceTag.php
+++ /dev/null
@@ -1,137 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-use phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Reflection class for a @source tag in a Docblock.
- *
- * @author Vasil Rangelov
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class SourceTag extends Tag
-{
- /**
- * @var int The starting line, relative to the structural element's
- * location.
- */
- protected $startingLine = 1;
-
- /**
- * @var int|null The number of lines, relative to the starting line. NULL
- * means "to the end".
- */
- protected $lineCount = null;
-
- /**
- * {@inheritdoc}
- */
- public function getContent()
- {
- if (null === $this->content) {
- $this->content
- = "{$this->startingLine} {$this->lineCount} {$this->description}";
- }
-
- return $this->content;
- }
-
- /**
- * {@inheritdoc}
- */
- public function setContent($content)
- {
- parent::setContent($content);
- if (preg_match(
- '/^
- # Starting line
- ([1-9]\d*)
- \s*
- # Number of lines
- (?:
- ((?1))
- \s+
- )?
- # Description
- (.*)
- $/sux',
- $this->description,
- $matches
- )) {
- $this->startingLine = (int)$matches[1];
- if (isset($matches[2]) && '' !== $matches[2]) {
- $this->lineCount = (int)$matches[2];
- }
- $this->setDescription($matches[3]);
- $this->content = $content;
- }
-
- return $this;
- }
-
- /**
- * Gets the starting line.
- *
- * @return int The starting line, relative to the structural element's
- * location.
- */
- public function getStartingLine()
- {
- return $this->startingLine;
- }
-
- /**
- * Sets the starting line.
- *
- * @param int $startingLine The new starting line, relative to the
- * structural element's location.
- *
- * @return $this
- */
- public function setStartingLine($startingLine)
- {
- $this->startingLine = $startingLine;
-
- $this->content = null;
- return $this;
- }
-
- /**
- * Returns the number of lines.
- *
- * @return int|null The number of lines, relative to the starting line. NULL
- * means "to the end".
- */
- public function getLineCount()
- {
- return $this->lineCount;
- }
-
- /**
- * Sets the number of lines.
- *
- * @param int|null $lineCount The new number of lines, relative to the
- * starting line. NULL means "to the end".
- *
- * @return $this
- */
- public function setLineCount($lineCount)
- {
- $this->lineCount = $lineCount;
-
- $this->content = null;
- return $this;
- }
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/ThrowsTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/ThrowsTag.php
deleted file mode 100644
index 58ee44a4..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/ThrowsTag.php
+++ /dev/null
@@ -1,24 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Reflection class for a @throws tag in a Docblock.
- *
- * @author Mike van Riel
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class ThrowsTag extends ReturnTag
-{
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/UsesTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/UsesTag.php
deleted file mode 100644
index da0d6638..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/UsesTag.php
+++ /dev/null
@@ -1,24 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Reflection class for a @uses tag in a Docblock.
- *
- * @author Mike van Riel
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class UsesTag extends SeeTag
-{
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/VarTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/VarTag.php
deleted file mode 100644
index 236b2c8b..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/VarTag.php
+++ /dev/null
@@ -1,24 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Reflection class for a @var tag in a Docblock.
- *
- * @author Mike van Riel
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class VarTag extends ParamTag
-{
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/VersionTag.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/VersionTag.php
deleted file mode 100644
index 260f6984..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Tag/VersionTag.php
+++ /dev/null
@@ -1,108 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Tag;
-
-use phpDocumentor\Reflection\DocBlock\Tag;
-
-/**
- * Reflection class for a @version tag in a Docblock.
- *
- * @author Vasil Rangelov
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class VersionTag extends Tag
-{
- /**
- * PCRE regular expression matching a version vector.
- * Assumes the "x" modifier.
- */
- const REGEX_VECTOR = '(?:
- # Normal release vectors.
- \d\S*
- |
- # VCS version vectors. Per PHPCS, they are expected to
- # follow the form of the VCS name, followed by ":", followed
- # by the version vector itself.
- # By convention, popular VCSes like CVS, SVN and GIT use "$"
- # around the actual version vector.
- [^\s\:]+\:\s*\$[^\$]+\$
- )';
-
- /** @var string The version vector. */
- protected $version = '';
-
- public function getContent()
- {
- if (null === $this->content) {
- $this->content = "{$this->version} {$this->description}";
- }
-
- return $this->content;
- }
-
- /**
- * {@inheritdoc}
- */
- public function setContent($content)
- {
- parent::setContent($content);
-
- if (preg_match(
- '/^
- # The version vector
- (' . self::REGEX_VECTOR . ')
- \s*
- # The description
- (.+)?
- $/sux',
- $this->description,
- $matches
- )) {
- $this->version = $matches[1];
- $this->setDescription(isset($matches[2]) ? $matches[2] : '');
- $this->content = $content;
- }
-
- return $this;
- }
-
- /**
- * Gets the version section of the tag.
- *
- * @return string The version section of the tag.
- */
- public function getVersion()
- {
- return $this->version;
- }
-
- /**
- * Sets the version section of the tag.
- *
- * @param string $version The new version section of the tag.
- * An invalid value will set an empty string.
- *
- * @return $this
- */
- public function setVersion($version)
- {
- $this->version
- = preg_match('/^' . self::REGEX_VECTOR . '$/ux', $version)
- ? $version
- : '';
-
- $this->content = null;
- return $this;
- }
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Type/Collection.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Type/Collection.php
deleted file mode 100644
index 90ead3ff..00000000
--- a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/reflection-docblock/src/phpDocumentor/Reflection/DocBlock/Type/Collection.php
+++ /dev/null
@@ -1,221 +0,0 @@
-
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-
-namespace phpDocumentor\Reflection\DocBlock\Type;
-
-use phpDocumentor\Reflection\DocBlock\Context;
-
-/**
- * Collection
- *
- * @author Mike van Riel
- * @copyright 2010-2011 Mike van Riel / Naenius (http://www.naenius.com)
- * @license http://www.opensource.org/licenses/mit-license.php MIT
- * @link http://phpdoc.org
- */
-class Collection extends \ArrayObject
-{
- /** @var string Definition of the OR operator for types */
- const OPERATOR_OR = '|';
-
- /** @var string Definition of the ARRAY operator for types */
- const OPERATOR_ARRAY = '[]';
-
- /** @var string Definition of the NAMESPACE operator in PHP */
- const OPERATOR_NAMESPACE = '\\';
-
- /** @var string[] List of recognized keywords */
- protected static $keywords = array(
- 'string', 'int', 'integer', 'bool', 'boolean', 'float', 'double',
- 'object', 'mixed', 'array', 'resource', 'void', 'null', 'scalar',
- 'callback', 'callable', 'false', 'true', 'self', '$this', 'static'
- );
-
- /**
- * Current invoking location.
- *
- * This is used to prepend to type with a relative location.
- * May also be 'default' or 'global', in which case they are ignored.
- *
- * @var Context
- */
- protected $context = null;
-
- /**
- * Registers the namespace and aliases; uses that to add and expand the
- * given types.
- *
- * @param string[] $types Array containing a list of types to add to this
- * container.
- * @param Context $location The current invoking location.
- */
- public function __construct(
- array $types = array(),
- Context $context = null
- ) {
- $this->context = null === $context ? new Context() : $context;
-
- foreach ($types as $type) {
- $this->add($type);
- }
- }
-
- /**
- * Returns the current invoking location.
- *
- * @return Context
- */
- public function getContext()
- {
- return $this->context;
- }
-
- /**
- * Adds a new type to the collection and expands it if it contains a
- * relative namespace.
- *
- * If a class in the type contains a relative namespace than this collection
- * will try to expand that into a FQCN.
- *
- * @param string $type A 'Type' as defined in the phpDocumentor
- * documentation.
- *
- * @throws \InvalidArgumentException if a non-string argument is passed.
- *
- * @see http://phpdoc.org/docs/latest/for-users/types.html for the
- * definition of a type.
- *
- * @return void
- */
- public function add($type)
- {
- if (!is_string($type)) {
- throw new \InvalidArgumentException(
- 'A type should be represented by a string, received: '
- .var_export($type, true)
- );
- }
-
- // separate the type by the OR operator
- $type_parts = explode(self::OPERATOR_OR, $type);
- foreach ($type_parts as $part) {
- $expanded_type = $this->expand($part);
- if ($expanded_type) {
- $this[] = $expanded_type;
- }
- }
- }
-
- /**
- * Returns a string representation of the collection.
- *
- * @return string The resolved types across the collection, separated with
- * {@link self::OPERATOR_OR}.
- */
- public function __toString()
- {
- return implode(self::OPERATOR_OR, $this->getArrayCopy());
- }
-
- /**
- * Analyzes the given type and returns the FQCN variant.
- *
- * When a type is provided this method checks whether it is not a keyword or
- * Fully Qualified Class Name. If so it will use the given namespace and
- * aliases to expand the type to a FQCN representation.
- *
- * This method only works as expected if the namespace and aliases are set;
- * no dynamic reflection is being performed here.
- *
- * @param string $type The relative or absolute type.
- *
- * @uses getNamespace to determine with what to prefix the type name.
- * @uses getNamespaceAliases to check whether the first part of the relative
- * type name should not be replaced with another namespace.
- *
- * @return string
- */
- protected function expand($type)
- {
- $type = trim($type);
- if (!$type) {
- return '';
- }
-
- if ($this->isTypeAnArray($type)) {
- return $this->expand(substr($type, 0, -2)) . self::OPERATOR_ARRAY;
- }
-
- if ($this->isRelativeType($type) && !$this->isTypeAKeyword($type)) {
- $type_parts = explode(self::OPERATOR_NAMESPACE, $type, 2);
-
- $namespace_aliases = $this->context->getNamespaceAliases();
- // if the first segment is not an alias; prepend namespace name and
- // return
- if (!isset($namespace_aliases[$type_parts[0]])) {
- $namespace = $this->context->getNamespace();
- if ('' !== $namespace) {
- $namespace .= self::OPERATOR_NAMESPACE;
- }
- return self::OPERATOR_NAMESPACE . $namespace . $type;
- }
-
- $type_parts[0] = $namespace_aliases[$type_parts[0]];
- $type = implode(self::OPERATOR_NAMESPACE, $type_parts);
- }
-
- return $type;
- }
-
- /**
- * Detects whether the given type represents an array.
- *
- * @param string $type A relative or absolute type as defined in the
- * phpDocumentor documentation.
- *
- * @return bool
- */
- protected function isTypeAnArray($type)
- {
- return substr($type, -2) === self::OPERATOR_ARRAY;
- }
-
- /**
- * Detects whether the given type represents a PHPDoc keyword.
- *
- * @param string $type A relative or absolute type as defined in the
- * phpDocumentor documentation.
- *
- * @return bool
- */
- protected function isTypeAKeyword($type)
- {
- return in_array(strtolower($type), static::$keywords, true);
- }
-
- /**
- * Detects whether the given type represents a relative or absolute path.
- *
- * This method will detect keywords as being absolute; even though they are
- * not preceeded by a namespace separator.
- *
- * @param string $type A relative or absolute type as defined in the
- * phpDocumentor documentation.
- *
- * @return bool
- */
- protected function isRelativeType($type)
- {
- return ($type[0] !== self::OPERATOR_NAMESPACE)
- || $this->isTypeAKeyword($type);
- }
-}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/.gitignore b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/.gitignore
new file mode 100644
index 00000000..82cfc4e9
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/.gitignore
@@ -0,0 +1,3 @@
+.idea
+composer.lock
+vendor
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/.scrutinizer.yml b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/.scrutinizer.yml
new file mode 100644
index 00000000..7d7372a8
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/.scrutinizer.yml
@@ -0,0 +1,31 @@
+before_commands:
+ - "composer install --no-dev --prefer-source"
+
+tools:
+ external_code_coverage: true
+ php_code_sniffer:
+ config:
+ standard: PSR2
+ filter:
+ paths: ["src/*", "tests/*"]
+ php_cpd:
+ enabled: true
+ excluded_dirs: ["tests", "vendor"]
+ php_loc:
+ enabled: true
+ excluded_dirs: ["tests", "vendor"]
+ php_mess_detector:
+ enabled: true
+ config:
+ ruleset: phpmd.xml.dist
+ design_rules: { eval_expression: false }
+ filter:
+ paths: ["src/*"]
+ php_pdepend:
+ enabled: true
+ excluded_dirs: ["tests", "vendor"]
+ php_analyzer:
+ enabled: true
+ filter:
+ paths: ["src/*", "tests/*"]
+ sensiolabs_security_checker: true
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/.travis.yml b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/.travis.yml
new file mode 100644
index 00000000..c882b141
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/.travis.yml
@@ -0,0 +1,34 @@
+language: php
+php:
+ - 5.5
+ - 5.6
+ - 7.0
+ - hhvm
+ - nightly
+
+matrix:
+ allow_failures:
+ - php:
+ - hhvm
+ - nightly
+
+cache:
+ directories:
+ - $HOME/.composer/cache
+
+script:
+ - vendor/bin/phpunit --coverage-clover=coverage.clover -v
+ - composer update --no-interaction --prefer-source
+ - vendor/bin/phpunit -v
+
+before_script:
+ - composer install --no-interaction
+
+after_script:
+ - if [ $TRAVIS_PHP_VERSION = '5.6' ]; then wget https://scrutinizer-ci.com/ocular.phar; php ocular.phar code-coverage:upload --format=php-clover coverage.clover; fi
+
+notifications:
+ irc: "irc.freenode.org#phpdocumentor"
+ email:
+ - me@mikevanriel.com
+ - ashnazg@php.net
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/LICENSE b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/LICENSE
new file mode 100644
index 00000000..792e4040
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2010 Mike van Riel
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/README.md b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/README.md
new file mode 100644
index 00000000..ca8147bc
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/README.md
@@ -0,0 +1,169 @@
+TypeResolver and FqsenResolver
+==============================
+
+The specification on types in DocBlocks (PSR-5) describes various keywords and special constructs
+but also how to statically resolve the partial name of a Class into a Fully Qualified Class Name (FQCN).
+
+PSR-5 also introduces an additional way to describe deeper elements than Classes, Interfaces and Traits
+called the Fully Qualified Structural Element Name (FQSEN). Using this it is possible to refer to methods,
+properties and class constants but also functions and global constants.
+
+This package provides two Resolvers that are capable of
+
+1. Returning a series of Value Object for given expression while resolving any partial class names, and
+2. Returning an FQSEN object after resolving any partial Structural Element Names into Fully Qualified Structural
+ Element names.
+
+## Installing
+
+The easiest way to install this library is with [Composer](https://getcomposer.org) using the following command:
+
+ $ composer require phpdocumentor/type-resolver
+
+## Examples
+
+Ready to dive in and don't want to read through all that text below? Just consult the [examples](examples) folder and
+check which type of action that your want to accomplish.
+
+## On Types and Element Names
+
+This component can be used in one of two ways
+
+1. To resolve a Type or
+2. To resolve a Fully Qualified Structural Element Name
+
+The big difference between these two is in the number of things it can resolve.
+
+The TypeResolver can resolve:
+
+- a php primitive or pseudo-primitive such as a string or void (`@var string` or `@return void`).
+- a composite such as an array of string (`@var string[]`).
+- a compound such as a string or integer (`@var string|integer`).
+- an object or interface such as the TypeResolver class (`@var TypeResolver`
+ or `@var \phpDocumentor\Reflection\TypeResolver`)
+
+ > please note that if you want to pass partial class names that additional steps are necessary, see the
+ > chapter `Resolving partial classes and FQSENs` for more information.
+
+Where the FqsenResolver can resolve:
+
+- Constant expressions (i.e. `@see \MyNamespace\MY_CONSTANT`)
+- Function expressions (i.e. `@see \MyNamespace\myFunction()`)
+- Class expressions (i.e. `@see \MyNamespace\MyClass`)
+- Interface expressions (i.e. `@see \MyNamespace\MyInterface`)
+- Trait expressions (i.e. `@see \MyNamespace\MyTrait`)
+- Class constant expressions (i.e. `@see \MyNamespace\MyClass::MY_CONSTANT`)
+- Property expressions (i.e. `@see \MyNamespace\MyClass::$myProperty`)
+- Method expressions (i.e. `@see \MyNamespace\MyClass::myMethod()`)
+
+## Resolving a type
+
+In order to resolve a type you will have to instantiate the class `\phpDocumentor\Reflection\TypeResolver`
+and call its `resolve` method like this:
+
+ $typeResolver = new \phpDocumentor\Reflection\TypeResolver();
+ $type = $typeResolver->resolve('string|integer');
+
+In this example you will receive a Value Object of class `\phpDocumentor\Reflection\Types\Compound` that has two
+elements, one of type `\phpDocumentor\Reflection\Types\String_` and one of type
+`\phpDocumentor\Reflection\Types\Integer`.
+
+The real power of this resolver is in its capability to expand partial class names into fully qualified class names; but
+in order to do that we need an additional `\phpDocumentor\Reflection\Types\Context` class that will inform the resolver
+in which namespace the given expression occurs and which namespace aliases (or imports) apply.
+
+## Resolving an FQSEN
+
+A Fully Qualified Structural Element Name is a reference to another element in your code bases and can be resolved using
+the `\phpDocumentor\Reflection\FqsenResolver` class' `resolve` method, like this:
+
+ $fqsenResolver = new \phpDocumentor\Reflection\FqsenResolver();
+ $fqsen = $fqsenResolver->resolve('\phpDocumentor\Reflection\FqsenResolver::resolve()');
+
+In this example we resolve a Fully Qualified Structural Element Name (meaning that it includes the full namespace, class
+name and element name) and receive a Value Object of type `\phpDocumentor\Reflection\Fqsen`.
+
+The real power of this resolver is in its capability to expand partial element names into Fully Qualified Structural
+Element Names; but in order to do that we need an additional `\phpDocumentor\Reflection\Types\Context` class that will
+inform the resolver in which namespace the given expression occurs and which namespace aliases (or imports) apply.
+
+## Resolving partial Classes and Structural Element Names
+
+Perhaps the best feature of this library is that it knows how to resolve partial class names into fully qualified class
+names.
+
+For example, you have this file:
+
+```php
+ '\phpDocumentor\Reflection\Types']
+ );
+
+Or by using the `\phpDocumentor\Reflection\Types\ContextFactory` to instantiate a new context based on a Reflector
+object or by providing the namespace that you'd like to extract and the source code of the file in which the given
+type expression occurs.
+
+ $contextFactory = new \phpDocumentor\Reflection\Types\ContextFactory();
+ $context = $contextFactory->createFromReflector(new ReflectionMethod('\My\Example\Classy', '__construct'));
+
+or
+
+ $contextFactory = new \phpDocumentor\Reflection\Types\ContextFactory();
+ $context = $contextFactory->createForNamespace('\My\Example', file_get_contents('My/Example/Classy.php'));
+
+### Using the Context
+
+After you have obtained a Context it is just a matter of passing it along with the `resolve` method of either Resolver
+class as second argument and the Resolvers will take this into account when resolving partial names.
+
+To obtain the resolved class name for the `@var` tag in the example above you can do:
+
+ $typeResolver = new \phpDocumentor\Reflection\TypeResolver();
+ $type = $typeResolver->resolve('Types\Context', $context);
+
+When you do this you will receive an object of class `\phpDocumentor\Reflection\Types\Object_` for which you can call
+the `getFqsen` method to receive a Value Object that represents the complete FQSEN. So that would be
+`phpDocumentor\Reflection\Types\Context`.
+
+> Why is the FQSEN wrapped in another object `Object_`?
+>
+> The resolve method of the TypeResolver only returns object with the interface `Type` and the FQSEN is a common
+> type that does not represent a Type. Also: in some cases a type can represent an "Untyped Object", meaning that it
+> is an object (signified by the `object` keyword) but does not refer to a specific element using an FQSEN.
+
+Another example is on how to resolve the FQSEN of a method as can be seen with the `@see` tag in the example above. To
+resolve that you can do the following:
+
+ $fqsenResolver = new \phpDocumentor\Reflection\FqsenResolver();
+ $type = $fqsenResolver->resolve('Classy::otherFunction()', $context);
+
+Because Classy is a Class in the current namespace its FQSEN will have the `My\Example` namespace and by calling the
+`resolve` method of the FQSEN Resolver you will receive an `Fqsen` object that refers to
+`\My\Example\Classy::otherFunction()`.
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/01-resolving-simple-types.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/01-resolving-simple-types.php
new file mode 100644
index 00000000..682b1d3d
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/01-resolving-simple-types.php
@@ -0,0 +1,13 @@
+resolve('string|integer'));
+
+// Will return the string "string|int"
+var_dump((string)$typeResolver->resolve('string|integer'));
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/02-resolving-classes.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/02-resolving-classes.php
new file mode 100644
index 00000000..70aa5e42
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/02-resolving-classes.php
@@ -0,0 +1,12 @@
+ 'Mockery' ]);
+var_dump((string)$typeResolver->resolve('Types\Resolver|m\MockInterface', $context));
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/03-resolving-all-elements.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/03-resolving-all-elements.php
new file mode 100644
index 00000000..4f4282eb
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/03-resolving-all-elements.php
@@ -0,0 +1,17 @@
+resolve('Types\Resolver::resolveFqsen()', $context));
+
+// Property named: \phpDocumentor\Types\Types\Resolver::$keyWords
+var_dump((string)$fqsenResolver->resolve('Types\Resolver::$keyWords', $context));
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/04-discovering-the-context-using-class-reflection.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/04-discovering-the-context-using-class-reflection.php
new file mode 100644
index 00000000..957c97dd
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/04-discovering-the-context-using-class-reflection.php
@@ -0,0 +1,30 @@
+createFromReflector(new ReflectionClass('My\\Example\\Classy'));
+
+// Class named: \phpDocumentor\Reflection\Types\Resolver
+var_dump((string)$typeResolver->resolve('Types\Resolver', $context));
+
+// String
+var_dump((string)$typeResolver->resolve('string', $context));
+
+// Property named: \phpDocumentor\Reflection\Types\Resolver::$keyWords
+var_dump((string)$fqsenResolver->resolve('Types\Resolver::$keyWords', $context));
+
+// Class named: \My\Example\string
+// - Shows the difference between the FqsenResolver and TypeResolver; the FqsenResolver will assume
+// that the given value is not a type but most definitely a reference to another element. This is
+// because conflicts between type keywords and class names can exist and if you know a reference
+// is not a type but an element you can force that keywords are resolved.
+var_dump((string)$fqsenResolver->resolve('string', $context));
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/05-discovering-the-context-using-method-reflection.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/05-discovering-the-context-using-method-reflection.php
new file mode 100644
index 00000000..10c0c883
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/05-discovering-the-context-using-method-reflection.php
@@ -0,0 +1,30 @@
+createFromReflector(new ReflectionMethod('My\\Example\\Classy', '__construct'));
+
+// Class named: \phpDocumentor\Reflection\Types\Resolver
+var_dump((string)$typeResolver->resolve('Types\Resolver', $context));
+
+// String
+var_dump((string)$typeResolver->resolve('string', $context));
+
+// Property named: \phpDocumentor\Reflection\Types\Resolver::$keyWords
+var_dump((string)$fqsenResolver->resolve('Types\Resolver::$keyWords', $context));
+
+// Class named: \My\Example\string
+// - Shows the difference between the FqsenResolver and TypeResolver; the FqsenResolver will assume
+// that the given value is not a type but most definitely a reference to another element. This is
+// because conflicts between type keywords and class names can exist and if you know a reference
+// is not a type but an element you can force that keywords are resolved.
+var_dump((string)$fqsenResolver->resolve('string', $context));
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/06-discovering-the-context-using-file-contents.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/06-discovering-the-context-using-file-contents.php
new file mode 100644
index 00000000..a93728c8
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/06-discovering-the-context-using-file-contents.php
@@ -0,0 +1,22 @@
+createForNamespace('My\Example', file_get_contents('Classy.php'));
+
+// Class named: \phpDocumentor\Reflection\Types\Resolver
+var_dump((string)$typeResolver->resolve('Types\Resolver', $context));
+
+// String
+var_dump((string)$typeResolver->resolve('string', $context));
+
+// Property named: \phpDocumentor\Reflection\Types\Resolver::$keyWords
+var_dump((string)$fqsenResolver->resolve('Types\Resolver::$keyWords', $context));
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/Classy.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/Classy.php
new file mode 100644
index 00000000..0705266f
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/examples/Classy.php
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 40
+
+
+
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/phpunit.xml.dist b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/phpunit.xml.dist
new file mode 100644
index 00000000..3246bef4
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/phpunit.xml.dist
@@ -0,0 +1,31 @@
+
+
+
+
+
+ ./tests/unit
+
+
+
+
+ ./src/
+
+
+ ./examples/
+ ./vendor/
+
+
+
+
+
+
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/FqsenResolver.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/FqsenResolver.php
new file mode 100644
index 00000000..a0e0041c
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/FqsenResolver.php
@@ -0,0 +1,76 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection;
+
+use phpDocumentor\Reflection\Types\Context;
+
+class FqsenResolver
+{
+ /** @var string Definition of the NAMESPACE operator in PHP */
+ const OPERATOR_NAMESPACE = '\\';
+
+ public function resolve($fqsen, Context $context = null)
+ {
+ if ($context === null) {
+ $context = new Context('');
+ }
+
+ if ($this->isFqsen($fqsen)) {
+ return new Fqsen($fqsen);
+ }
+
+ return $this->resolvePartialStructuralElementName($fqsen, $context);
+ }
+
+ /**
+ * Tests whether the given type is a Fully Qualified Structural Element Name.
+ *
+ * @param string $type
+ *
+ * @return bool
+ */
+ private function isFqsen($type)
+ {
+ return strpos($type, self::OPERATOR_NAMESPACE) === 0;
+ }
+
+ /**
+ * Resolves a partial Structural Element Name (i.e. `Reflection\DocBlock`) to its FQSEN representation
+ * (i.e. `\phpDocumentor\Reflection\DocBlock`) based on the Namespace and aliases mentioned in the Context.
+ *
+ * @param string $type
+ * @param Context $context
+ *
+ * @return Fqsen
+ */
+ private function resolvePartialStructuralElementName($type, Context $context)
+ {
+ $typeParts = explode(self::OPERATOR_NAMESPACE, $type, 2);
+
+ $namespaceAliases = $context->getNamespaceAliases();
+
+ // if the first segment is not an alias; prepend namespace name and return
+ if (!isset($namespaceAliases[$typeParts[0]])) {
+ $namespace = $context->getNamespace();
+ if ('' !== $namespace) {
+ $namespace .= self::OPERATOR_NAMESPACE;
+ }
+
+ return new Fqsen(self::OPERATOR_NAMESPACE . $namespace . $type);
+ }
+
+ $typeParts[0] = $namespaceAliases[$typeParts[0]];
+
+ return new Fqsen(self::OPERATOR_NAMESPACE . implode(self::OPERATOR_NAMESPACE, $typeParts));
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Type.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Type.php
new file mode 100644
index 00000000..33ca5595
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Type.php
@@ -0,0 +1,18 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection;
+
+interface Type
+{
+ public function __toString();
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/TypeResolver.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/TypeResolver.php
new file mode 100644
index 00000000..3a68a4d3
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/TypeResolver.php
@@ -0,0 +1,266 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection;
+
+use phpDocumentor\Reflection\Types\Array_;
+use phpDocumentor\Reflection\Types\Compound;
+use phpDocumentor\Reflection\Types\Context;
+use phpDocumentor\Reflection\Types\Object_;
+
+final class TypeResolver
+{
+ /** @var string Definition of the ARRAY operator for types */
+ const OPERATOR_ARRAY = '[]';
+
+ /** @var string Definition of the NAMESPACE operator in PHP */
+ const OPERATOR_NAMESPACE = '\\';
+
+ /** @var string[] List of recognized keywords and unto which Value Object they map */
+ private $keywords = array(
+ 'string' => 'phpDocumentor\Reflection\Types\String_',
+ 'int' => 'phpDocumentor\Reflection\Types\Integer',
+ 'integer' => 'phpDocumentor\Reflection\Types\Integer',
+ 'bool' => 'phpDocumentor\Reflection\Types\Boolean',
+ 'boolean' => 'phpDocumentor\Reflection\Types\Boolean',
+ 'float' => 'phpDocumentor\Reflection\Types\Float_',
+ 'double' => 'phpDocumentor\Reflection\Types\Float_',
+ 'object' => 'phpDocumentor\Reflection\Types\Object_',
+ 'mixed' => 'phpDocumentor\Reflection\Types\Mixed',
+ 'array' => 'phpDocumentor\Reflection\Types\Array_',
+ 'resource' => 'phpDocumentor\Reflection\Types\Resource',
+ 'void' => 'phpDocumentor\Reflection\Types\Void_',
+ 'null' => 'phpDocumentor\Reflection\Types\Null_',
+ 'scalar' => 'phpDocumentor\Reflection\Types\Scalar',
+ 'callback' => 'phpDocumentor\Reflection\Types\Callable_',
+ 'callable' => 'phpDocumentor\Reflection\Types\Callable_',
+ 'false' => 'phpDocumentor\Reflection\Types\Boolean',
+ 'true' => 'phpDocumentor\Reflection\Types\Boolean',
+ 'self' => 'phpDocumentor\Reflection\Types\Self_',
+ '$this' => 'phpDocumentor\Reflection\Types\This',
+ 'static' => 'phpDocumentor\Reflection\Types\Static_'
+ );
+
+ /** @var FqsenResolver */
+ private $fqsenResolver;
+
+ /**
+ * Initializes this TypeResolver with the means to create and resolve Fqsen objects.
+ *
+ * @param FqsenResolver $fqsenResolver
+ */
+ public function __construct(FqsenResolver $fqsenResolver = null)
+ {
+ $this->fqsenResolver = $fqsenResolver ?: new FqsenResolver();
+ }
+
+ /**
+ * Analyzes the given type and returns the FQCN variant.
+ *
+ * When a type is provided this method checks whether it is not a keyword or
+ * Fully Qualified Class Name. If so it will use the given namespace and
+ * aliases to expand the type to a FQCN representation.
+ *
+ * This method only works as expected if the namespace and aliases are set;
+ * no dynamic reflection is being performed here.
+ *
+ * @param string $type The relative or absolute type.
+ * @param Context $context
+ *
+ * @uses Context::getNamespace() to determine with what to prefix the type name.
+ * @uses Context::getNamespaceAliases() to check whether the first part of the relative type name should not be
+ * replaced with another namespace.
+ *
+ * @return Type|null
+ */
+ public function resolve($type, Context $context = null)
+ {
+ if (!is_string($type)) {
+ throw new \InvalidArgumentException(
+ 'Attempted to resolve type but it appeared not to be a string, received: ' . var_export($type, true)
+ );
+ }
+
+ $type = trim($type);
+ if (!$type) {
+ throw new \InvalidArgumentException('Attempted to resolve "' . $type . '" but it appears to be empty');
+ }
+
+ if ($context === null) {
+ $context = new Context('');
+ }
+
+ switch (true) {
+ case $this->isKeyword($type):
+ return $this->resolveKeyword($type);
+ case ($this->isCompoundType($type)):
+ return $this->resolveCompoundType($type, $context);
+ case $this->isTypedArray($type):
+ return $this->resolveTypedArray($type, $context);
+ case $this->isFqsen($type):
+ return $this->resolveTypedObject($type);
+ case $this->isPartialStructuralElementName($type):
+ return $this->resolveTypedObject($type, $context);
+ // @codeCoverageIgnoreStart
+ default:
+ // I haven't got the foggiest how the logic would come here but added this as a defense.
+ throw new \RuntimeException(
+ 'Unable to resolve type "' . $type . '", there is no known method to resolve it'
+ );
+ }
+ // @codeCoverageIgnoreEnd
+ }
+
+ /**
+ * Adds a keyword to the list of Keywords and associates it with a specific Value Object.
+ *
+ * @param string $keyword
+ * @param string $typeClassName
+ *
+ * @return void
+ */
+ public function addKeyword($keyword, $typeClassName)
+ {
+ if (!class_exists($typeClassName)) {
+ throw new \InvalidArgumentException(
+ 'The Value Object that needs to be created with a keyword "' . $keyword . '" must be an existing class'
+ . ' but we could not find the class ' . $typeClassName
+ );
+ }
+
+ if (!in_array(Type::class, class_implements($typeClassName))) {
+ throw new \InvalidArgumentException(
+ 'The class "' . $typeClassName . '" must implement the interface "phpDocumentor\Reflection\Type"'
+ );
+ }
+
+ $this->keywords[$keyword] = $typeClassName;
+ }
+
+ /**
+ * Detects whether the given type represents an array.
+ *
+ * @param string $type A relative or absolute type as defined in the phpDocumentor documentation.
+ *
+ * @return bool
+ */
+ private function isTypedArray($type)
+ {
+ return substr($type, -2) === self::OPERATOR_ARRAY;
+ }
+
+ /**
+ * Detects whether the given type represents a PHPDoc keyword.
+ *
+ * @param string $type A relative or absolute type as defined in the phpDocumentor documentation.
+ *
+ * @return bool
+ */
+ private function isKeyword($type)
+ {
+ return in_array(strtolower($type), array_keys($this->keywords), true);
+ }
+
+ /**
+ * Detects whether the given type represents a relative structural element name.
+ *
+ * @param string $type A relative or absolute type as defined in the phpDocumentor documentation.
+ *
+ * @return bool
+ */
+ private function isPartialStructuralElementName($type)
+ {
+ return ($type[0] !== self::OPERATOR_NAMESPACE) && !$this->isKeyword($type);
+ }
+
+ /**
+ * Tests whether the given type is a Fully Qualified Structural Element Name.
+ *
+ * @param string $type
+ *
+ * @return bool
+ */
+ private function isFqsen($type)
+ {
+ return strpos($type, self::OPERATOR_NAMESPACE) === 0;
+ }
+
+ /**
+ * Tests whether the given type is a compound type (i.e. `string|int`).
+ *
+ * @param string $type
+ *
+ * @return bool
+ */
+ private function isCompoundType($type)
+ {
+ return strpos($type, '|') !== false;
+ }
+
+ /**
+ * Resolves the given typed array string (i.e. `string[]`) into an Array object with the right types set.
+ *
+ * @param string $type
+ * @param Context $context
+ *
+ * @return Array_
+ */
+ private function resolveTypedArray($type, Context $context)
+ {
+ return new Array_($this->resolve(substr($type, 0, -2), $context));
+ }
+
+ /**
+ * Resolves the given keyword (such as `string`) into a Type object representing that keyword.
+ *
+ * @param string $type
+ *
+ * @return Type
+ */
+ private function resolveKeyword($type)
+ {
+ $className = $this->keywords[strtolower($type)];
+
+ return new $className();
+ }
+
+ /**
+ * Resolves the given FQSEN string into an FQSEN object.
+ *
+ * @param string $type
+ *
+ * @return Object_
+ */
+ private function resolveTypedObject($type, Context $context = null)
+ {
+ return new Object_($this->fqsenResolver->resolve($type, $context));
+ }
+
+ /**
+ * Resolves a compound type (i.e. `string|int`) into the appropriate Type objects or FQSEN.
+ *
+ * @param string $type
+ * @param Context $context
+ *
+ * @return Compound
+ */
+ private function resolveCompoundType($type, Context $context)
+ {
+ $types = [];
+
+ foreach (explode('|', $type) as $part) {
+ $types[] = $this->resolve($part, $context);
+ }
+
+ return new Compound($types);
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Array_.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Array_.php
new file mode 100644
index 00000000..45276c6b
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Array_.php
@@ -0,0 +1,87 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+use phpDocumentor\Reflection\Fqsen;
+use phpDocumentor\Reflection\Type;
+
+/**
+ * Represents an array type as described in the PSR-5, the PHPDoc Standard.
+ *
+ * An array can be represented in two forms:
+ *
+ * 1. Untyped (`array`), where the key and value type is unknown and hence classified as 'Mixed'.
+ * 2. Types (`string[]`), where the value type is provided by preceding an opening and closing square bracket with a
+ * type name.
+ */
+final class Array_ implements Type
+{
+ /** @var Type */
+ private $valueType;
+
+ /** @var Type */
+ private $keyType;
+
+ /**
+ * Initializes this representation of an array with the given Type or Fqsen.
+ *
+ * @param Type $valueType
+ * @param Type $keyType
+ */
+ public function __construct(Type $valueType = null, Type $keyType = null)
+ {
+ if ($keyType === null) {
+ $keyType = new Compound([ new String_(), new Integer() ]);
+ }
+ if ($valueType === null) {
+ $valueType = new Mixed();
+ }
+
+ $this->valueType = $valueType;
+ $this->keyType = $keyType;
+ }
+
+ /**
+ * Returns the type for the keys of this array.
+ *
+ * @return Type
+ */
+ public function getKeyType()
+ {
+ return $this->keyType;
+ }
+
+ /**
+ * Returns the value for the keys of this array.
+ *
+ * @return Type
+ */
+ public function getValueType()
+ {
+ return $this->valueType;
+ }
+
+ /**
+ * Returns a rendered output of the Type as it would be used in a DocBlock.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ if ($this->valueType instanceof Mixed) {
+ return 'array';
+ }
+
+ return $this->valueType . '[]';
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Boolean.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Boolean.php
new file mode 100644
index 00000000..f82b19e5
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Boolean.php
@@ -0,0 +1,31 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+use phpDocumentor\Reflection\Type;
+
+/**
+ * Value Object representing a Boolean type.
+ */
+final class Boolean implements Type
+{
+ /**
+ * Returns a rendered output of the Type as it would be used in a DocBlock.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return 'bool';
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Callable_.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Callable_.php
new file mode 100644
index 00000000..68ebfbd0
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Callable_.php
@@ -0,0 +1,31 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+use phpDocumentor\Reflection\Type;
+
+/**
+ * Value Object representing a Callable type.
+ */
+final class Callable_ implements Type
+{
+ /**
+ * Returns a rendered output of the Type as it would be used in a DocBlock.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return 'callable';
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Compound.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Compound.php
new file mode 100644
index 00000000..3e5ebb5c
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Compound.php
@@ -0,0 +1,82 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+use phpDocumentor\Reflection\Type;
+
+/**
+ * Value Object representing a Compound Type.
+ *
+ * A Compound Type is not so much a special keyword or object reference but is a series of Types that are separated
+ * using an OR operator (`|`). This combination of types signifies that whatever is associated with this compound type
+ * may contain a value with any of the given types.
+ */
+final class Compound implements Type
+{
+ /** @var Type[] */
+ private $types = [];
+
+ /**
+ * Initializes a compound type (i.e. `string|int`) and tests if the provided types all implement the Type interface.
+ *
+ * @param Type[] $types
+ */
+ public function __construct(array $types)
+ {
+ foreach ($types as $type) {
+ if (!$type instanceof Type) {
+ throw new \InvalidArgumentException('A compound type can only have other types as elements');
+ }
+ }
+
+ $this->types = $types;
+ }
+
+ /**
+ * Returns the type at the given index.
+ *
+ * @param integer $index
+ *
+ * @return Type|null
+ */
+ public function get($index)
+ {
+ if (!$this->has($index)) {
+ return null;
+ }
+
+ return $this->types[$index];
+ }
+
+ /**
+ * Tests if this compound type has a type with the given index.
+ *
+ * @param integer $index
+ *
+ * @return bool
+ */
+ public function has($index)
+ {
+ return isset($this->types[$index]);
+ }
+
+ /**
+ * Returns a rendered output of the Type as it would be used in a DocBlock.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return implode('|', $this->types);
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Context.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Context.php
new file mode 100644
index 00000000..b4aa8f21
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Context.php
@@ -0,0 +1,84 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+/**
+ * Provides information about the Context in which the DocBlock occurs that receives this context.
+ *
+ * A DocBlock does not know of its own accord in which namespace it occurs and which namespace aliases are applicable
+ * for the block of code in which it is in. This information is however necessary to resolve Class names in tags since
+ * you can provide a short form or make use of namespace aliases.
+ *
+ * The phpDocumentor Reflection component knows how to create this class but if you use the DocBlock parser from your
+ * own application it is possible to generate a Context class using the ContextFactory; this will analyze the file in
+ * which an associated class resides for its namespace and imports.
+ *
+ * @see ContextFactory::createFromClassReflector()
+ * @see ContextFactory::createForNamespace()
+ */
+final class Context
+{
+ /** @var string The current namespace. */
+ private $namespace = '';
+
+ /** @var array List of namespace aliases => Fully Qualified Namespace. */
+ private $namespaceAliases = [];
+
+ /**
+ * Initializes the new context and normalizes all passed namespaces to be in Qualified Namespace Name (QNN)
+ * format (without a preceding `\`).
+ *
+ * @param string $namespace The namespace where this DocBlock resides in.
+ * @param array $namespaceAliases List of namespace aliases => Fully Qualified Namespace.
+ */
+ public function __construct($namespace, array $namespaceAliases = [])
+ {
+ $this->namespace = ('global' !== $namespace && 'default' !== $namespace)
+ ? trim((string)$namespace, '\\')
+ : '';
+
+ foreach ($namespaceAliases as $alias => $fqnn) {
+ if ($fqnn[0] === '\\') {
+ $fqnn = substr($fqnn, 1);
+ }
+ if ($fqnn[count($fqnn)-1] === '\\') {
+ $fqnn = substr($fqnn, 0, -1);
+ }
+
+ $namespaceAliases[$alias] = $fqnn;
+ }
+
+ $this->namespaceAliases = $namespaceAliases;
+ }
+
+ /**
+ * Returns the Qualified Namespace Name (thus without `\` in front) where the associated element is in.
+ *
+ * @return string
+ */
+ public function getNamespace()
+ {
+ return $this->namespace;
+ }
+
+ /**
+ * Returns a list of Qualified Namespace Names (thus without `\` in front) that are imported, the keys represent
+ * the alias for the imported Namespace.
+ *
+ * @return string[]
+ */
+ public function getNamespaceAliases()
+ {
+ return $this->namespaceAliases;
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/ContextFactory.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/ContextFactory.php
new file mode 100644
index 00000000..147df694
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/ContextFactory.php
@@ -0,0 +1,210 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+/**
+ * Convenience class to create a Context for DocBlocks when not using the Reflection Component of phpDocumentor.
+ *
+ * For a DocBlock to be able to resolve types that use partial namespace names or rely on namespace imports we need to
+ * provide a bit of context so that the DocBlock can read that and based on it decide how to resolve the types to
+ * Fully Qualified names.
+ *
+ * @see Context for more information.
+ */
+final class ContextFactory
+{
+ /** The literal used at the end of a use statement. */
+ const T_LITERAL_END_OF_USE = ';';
+
+ /** The literal used between sets of use statements */
+ const T_LITERAL_USE_SEPARATOR = ',';
+
+ /**
+ * Build a Context given a Class Reflection.
+ *
+ * @param \ReflectionClass $reflector
+ *
+ * @see Context for more information on Contexts.
+ *
+ * @return Context
+ */
+ public function createFromReflector(\Reflector $reflector)
+ {
+ if (method_exists($reflector, 'getDeclaringClass')) {
+ $reflector = $reflector->getDeclaringClass();
+ }
+
+ $fileName = $reflector->getFileName();
+ $namespace = $reflector->getNamespaceName();
+
+ if (file_exists($fileName)) {
+ return $this->createForNamespace($namespace, file_get_contents($fileName));
+ }
+
+ return new Context($namespace, []);
+ }
+
+ /**
+ * Build a Context for a namespace in the provided file contents.
+ *
+ * @param string $namespace It does not matter if a `\` precedes the namespace name, this method first normalizes.
+ * @param string $fileContents the file's contents to retrieve the aliases from with the given namespace.
+ *
+ * @see Context for more information on Contexts.
+ *
+ * @return Context
+ */
+ public function createForNamespace($namespace, $fileContents)
+ {
+ $namespace = trim($namespace, '\\');
+ $useStatements = [];
+ $currentNamespace = '';
+ $tokens = new \ArrayIterator(token_get_all($fileContents));
+
+ while ($tokens->valid()) {
+ switch ($tokens->current()[0]) {
+ case T_NAMESPACE:
+ $currentNamespace = $this->parseNamespace($tokens);
+ break;
+ case T_CLASS:
+ // Fast-forward the iterator through the class so that any
+ // T_USE tokens found within are skipped - these are not
+ // valid namespace use statements so should be ignored.
+ $braceLevel = 0;
+ $firstBraceFound = false;
+ while ($tokens->valid() && ($braceLevel > 0 || !$firstBraceFound)) {
+ if ($tokens->current() === '{'
+ || $tokens->current()[0] === T_CURLY_OPEN
+ || $tokens->current()[0] === T_DOLLAR_OPEN_CURLY_BRACES) {
+ if (!$firstBraceFound) {
+ $firstBraceFound = true;
+ }
+ $braceLevel++;
+ }
+
+ if ($tokens->current() === '}') {
+ $braceLevel--;
+ }
+ $tokens->next();
+ }
+ break;
+ case T_USE:
+ if ($currentNamespace === $namespace) {
+ $useStatements = array_merge($useStatements, $this->parseUseStatement($tokens));
+ }
+ break;
+ }
+ $tokens->next();
+ }
+
+ return new Context($namespace, $useStatements);
+ }
+
+ /**
+ * Deduce the name from tokens when we are at the T_NAMESPACE token.
+ *
+ * @param \ArrayIterator $tokens
+ *
+ * @return string
+ */
+ private function parseNamespace(\ArrayIterator $tokens)
+ {
+ // skip to the first string or namespace separator
+ $this->skipToNextStringOrNamespaceSeparator($tokens);
+
+ $name = '';
+ while ($tokens->valid() && ($tokens->current()[0] === T_STRING || $tokens->current()[0] === T_NS_SEPARATOR)
+ ) {
+ $name .= $tokens->current()[1];
+ $tokens->next();
+ }
+
+ return $name;
+ }
+
+ /**
+ * Deduce the names of all imports when we are at the T_USE token.
+ *
+ * @param \ArrayIterator $tokens
+ *
+ * @return string[]
+ */
+ private function parseUseStatement(\ArrayIterator $tokens)
+ {
+ $uses = [];
+ $continue = true;
+
+ while ($continue) {
+ $this->skipToNextStringOrNamespaceSeparator($tokens);
+
+ list($alias, $fqnn) = $this->extractUseStatement($tokens);
+ $uses[$alias] = $fqnn;
+ if ($tokens->current()[0] === self::T_LITERAL_END_OF_USE) {
+ $continue = false;
+ }
+ }
+
+ return $uses;
+ }
+
+ /**
+ * Fast-forwards the iterator as longs as we don't encounter a T_STRING or T_NS_SEPARATOR token.
+ *
+ * @param \ArrayIterator $tokens
+ *
+ * @return void
+ */
+ private function skipToNextStringOrNamespaceSeparator(\ArrayIterator $tokens)
+ {
+ while ($tokens->valid() && ($tokens->current()[0] !== T_STRING) && ($tokens->current()[0] !== T_NS_SEPARATOR)) {
+ $tokens->next();
+ }
+ }
+
+ /**
+ * Deduce the namespace name and alias of an import when we are at the T_USE token or have not reached the end of
+ * a USE statement yet.
+ *
+ * @param \ArrayIterator $tokens
+ *
+ * @return string
+ */
+ private function extractUseStatement(\ArrayIterator $tokens)
+ {
+ $result = [''];
+ while ($tokens->valid()
+ && ($tokens->current()[0] !== self::T_LITERAL_USE_SEPARATOR)
+ && ($tokens->current()[0] !== self::T_LITERAL_END_OF_USE)
+ ) {
+ if ($tokens->current()[0] === T_AS) {
+ $result[] = '';
+ }
+ if ($tokens->current()[0] === T_STRING || $tokens->current()[0] === T_NS_SEPARATOR) {
+ $result[count($result) - 1] .= $tokens->current()[1];
+ }
+ $tokens->next();
+ }
+
+ if (count($result) == 1) {
+ $backslashPos = strrpos($result[0], '\\');
+
+ if (false !== $backslashPos) {
+ $result[] = substr($result[0], $backslashPos + 1);
+ } else {
+ $result[] = $result[0];
+ }
+ }
+
+ return array_reverse($result);
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Float_.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Float_.php
new file mode 100644
index 00000000..e58d8966
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Float_.php
@@ -0,0 +1,31 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+use phpDocumentor\Reflection\Type;
+
+/**
+ * Value Object representing a Float.
+ */
+final class Float_ implements Type
+{
+ /**
+ * Returns a rendered output of the Type as it would be used in a DocBlock.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return 'float';
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Integer.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Integer.php
new file mode 100644
index 00000000..be4555ef
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Integer.php
@@ -0,0 +1,28 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+use phpDocumentor\Reflection\Type;
+
+final class Integer implements Type
+{
+ /**
+ * Returns a rendered output of the Type as it would be used in a DocBlock.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return 'int';
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Mixed.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Mixed.php
new file mode 100644
index 00000000..79695f45
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Mixed.php
@@ -0,0 +1,31 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+use phpDocumentor\Reflection\Type;
+
+/**
+ * Value Object representing an unknown, or mixed, type.
+ */
+final class Mixed implements Type
+{
+ /**
+ * Returns a rendered output of the Type as it would be used in a DocBlock.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return 'mixed';
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Null_.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Null_.php
new file mode 100644
index 00000000..203b4227
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Null_.php
@@ -0,0 +1,31 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+use phpDocumentor\Reflection\Type;
+
+/**
+ * Value Object representing a null value or type.
+ */
+final class Null_ implements Type
+{
+ /**
+ * Returns a rendered output of the Type as it would be used in a DocBlock.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return 'null';
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Object_.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Object_.php
new file mode 100644
index 00000000..b337c715
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Object_.php
@@ -0,0 +1,70 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+use phpDocumentor\Reflection\Fqsen;
+use phpDocumentor\Reflection\Type;
+
+/**
+ * Value Object representing an object.
+ *
+ * An object can be either typed or untyped. When an object is typed it means that it has an identifier, the FQSEN,
+ * pointing to an element in PHP. Object types that are untyped do not refer to a specific class but represent objects
+ * in general.
+ */
+final class Object_ implements Type
+{
+ /** @var Fqsen|null */
+ private $fqsen;
+
+ /**
+ * Initializes this object with an optional FQSEN, if not provided this object is considered 'untyped'.
+ *
+ * @param Fqsen $fqsen
+ */
+ public function __construct(Fqsen $fqsen = null)
+ {
+ if (strpos((string)$fqsen, '::') !== false || strpos((string)$fqsen, '()') !== false) {
+ throw new \InvalidArgumentException(
+ 'Object types can only refer to a class, interface or trait but a method, function, constant or '
+ . 'property was received: ' . (string)$fqsen
+ );
+ }
+
+ $this->fqsen = $fqsen;
+ }
+
+ /**
+ * Returns the FQSEN associated with this object.
+ *
+ * @return Fqsen|null
+ */
+ public function getFqsen()
+ {
+ return $this->fqsen;
+ }
+
+ /**
+ * Returns a rendered output of the Type as it would be used in a DocBlock.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ if ($this->fqsen) {
+ return (string)$this->fqsen;
+ }
+
+ return 'object';
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Resource.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Resource.php
new file mode 100644
index 00000000..2c2526b7
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Resource.php
@@ -0,0 +1,31 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+use phpDocumentor\Reflection\Type;
+
+/**
+ * Value Object representing the 'resource' Type.
+ */
+final class Resource implements Type
+{
+ /**
+ * Returns a rendered output of the Type as it would be used in a DocBlock.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return 'resource';
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Scalar.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Scalar.php
new file mode 100644
index 00000000..1e2a6602
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Scalar.php
@@ -0,0 +1,31 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+use phpDocumentor\Reflection\Type;
+
+/**
+ * Value Object representing the 'scalar' pseudo-type, which is either a string, integer, float or boolean.
+ */
+final class Scalar implements Type
+{
+ /**
+ * Returns a rendered output of the Type as it would be used in a DocBlock.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return 'scalar';
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Self_.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Self_.php
new file mode 100644
index 00000000..1ba3fc5a
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Self_.php
@@ -0,0 +1,33 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+use phpDocumentor\Reflection\Type;
+
+/**
+ * Value Object representing the 'self' type.
+ *
+ * Self, as a Type, represents the class in which the associated element was defined.
+ */
+final class Self_ implements Type
+{
+ /**
+ * Returns a rendered output of the Type as it would be used in a DocBlock.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return 'self';
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Static_.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Static_.php
new file mode 100644
index 00000000..9eb67299
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Static_.php
@@ -0,0 +1,38 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+use phpDocumentor\Reflection\Type;
+
+/**
+ * Value Object representing the 'static' type.
+ *
+ * Self, as a Type, represents the class in which the associated element was called. This differs from self as self does
+ * not take inheritance into account but static means that the return type is always that of the class of the called
+ * element.
+ *
+ * See the documentation on late static binding in the PHP Documentation for more information on the difference between
+ * static and self.
+ */
+final class Static_ implements Type
+{
+ /**
+ * Returns a rendered output of the Type as it would be used in a DocBlock.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return 'static';
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/String_.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/String_.php
new file mode 100644
index 00000000..8db59685
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/String_.php
@@ -0,0 +1,31 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+use phpDocumentor\Reflection\Type;
+
+/**
+ * Value Object representing the type 'string'.
+ */
+final class String_ implements Type
+{
+ /**
+ * Returns a rendered output of the Type as it would be used in a DocBlock.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return 'string';
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/This.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/This.php
new file mode 100644
index 00000000..c098a939
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/This.php
@@ -0,0 +1,34 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+use phpDocumentor\Reflection\Type;
+
+/**
+ * Value Object representing the '$this' pseudo-type.
+ *
+ * $this, as a Type, represents the instance of the class associated with the element as it was called. $this is
+ * commonly used when documenting fluent interfaces since it represents that the same object is returned.
+ */
+final class This implements Type
+{
+ /**
+ * Returns a rendered output of the Type as it would be used in a DocBlock.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return '$this';
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Void_.php b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Void_.php
new file mode 100644
index 00000000..3d1be272
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpdocumentor/type-resolver/src/Types/Void_.php
@@ -0,0 +1,34 @@
+
+ * @license http://www.opensource.org/licenses/mit-license.php MIT
+ * @link http://phpdoc.org
+ */
+
+namespace phpDocumentor\Reflection\Types;
+
+use phpDocumentor\Reflection\Type;
+
+/**
+ * Value Object representing the pseudo-type 'void'.
+ *
+ * Void is generally only used when working with return types as it signifies that the method intentionally does not
+ * return any value.
+ */
+final class Void_ implements Type
+{
+ /**
+ * Returns a rendered output of the Type as it would be used in a DocBlock.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return 'void';
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/.gitignore b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/.gitignore
index c50c8c4a..0c93fcf3 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/.gitignore
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/.gitignore
@@ -1,4 +1,4 @@
*.tgz
*.phar
-bin
-vendor
+/composer.lock
+/vendor
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/.travis.yml b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/.travis.yml
index 004e612a..e75c39ef 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/.travis.yml
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/.travis.yml
@@ -1,6 +1,6 @@
language: php
-php: [5.3, 5.4, 5.5, 5.6, 7, hhvm]
+php: [5.3, 5.4, 5.5, 5.6, 7.0, hhvm]
sudo: false
@@ -14,6 +14,16 @@ branches:
- /^feature\/.*$/
- /^optimization\/.*$/
-before_script: travis_retry composer install --no-interaction
+matrix:
+ fast_finish: true
+ include:
+ - php: '7.0'
+ env: PHPDOCUMENTOR_REFLECTION_DOCBLOCK="^2.0"
+
+before_script:
+ - if [ -n "$PHPDOCUMENTOR_REFLECTION_DOCBLOCK" ]; then
+ composer require "phpdocumentor/reflection-docblock:${PHPDOCUMENTOR_REFLECTION_DOCBLOCK}" --no-update;
+ fi;
+ - travis_retry composer update --no-interaction
script: vendor/bin/phpspec run -fpretty -v
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/CHANGES.md b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/CHANGES.md
index c293f0d4..444c1fa6 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/CHANGES.md
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/CHANGES.md
@@ -1,3 +1,28 @@
+1.6.1 / 2016-06-07
+==================
+
+ * Ignored empty method names in invalid `@method` phpdoc
+ * Fixed the mocking of SplFileObject
+ * Added compatibility with phpdocumentor/reflection-docblock 3
+
+1.6.0 / 2016-02-15
+==================
+
+ * Add Variadics support (thanks @pamil)
+ * Add ProphecyComparator for comparing objects that need revealing (thanks @jon-acker)
+ * Add ApproximateValueToken (thanks @dantleech)
+ * Add support for 'self' and 'parent' return type (thanks @bendavies)
+ * Add __invoke to allowed reflectable methods list (thanks @ftrrtf)
+ * Updated ExportUtil to reflect the latest changes by Sebastian (thanks @jakari)
+ * Specify the required php version for composer (thanks @jakzal)
+ * Exclude 'args' in the generated backtrace (thanks @oradwell)
+ * Fix code generation for scalar parameters (thanks @trowski)
+ * Fix missing sprintf in InvalidArgumentException __construct call (thanks @emmanuelballery)
+ * Fix phpdoc for magic methods (thanks @Tobion)
+ * Fix PhpDoc for interfaces usage (thanks @ImmRanneft)
+ * Prevent final methods from being manually extended (thanks @kamioftea)
+ * Enhance exception for invalid argument to ThrowPromise (thanks @Tobion)
+
1.5.0 / 2015-04-27
==================
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/CONTRIBUTING.md b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/CONTRIBUTING.md
index 3674aac4..72d8e933 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/CONTRIBUTING.md
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/CONTRIBUTING.md
@@ -2,7 +2,7 @@ Contributing
------------
Prophecy is an open source, community-driven project. If you'd like to contribute,
-feel free to do this, but remember to follow this few simple rules:
+feel free to do this, but remember to follow these few simple rules:
- Make your feature addition or bug fix,
- Add either specs or examples for any changes you're making (bugfixes or additions)
@@ -16,6 +16,6 @@ Running tests
Make sure that you don't break anything with your changes by running:
```bash
-$> composer install --dev --prefer-dist
+$> composer install --prefer-dist
$> vendor/bin/phpspec run
```
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/README.md b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/README.md
index 17e57c31..65ec16c4 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/README.md
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/README.md
@@ -1,5 +1,6 @@
# Prophecy
+[](https://packagist.org/packages/phpspec/prophecy)
[](https://travis-ci.org/phpspec/prophecy)
Prophecy is a highly opinionated yet very powerful and flexible PHP object mocking
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Argument/Token/ApproximateValueTokenSpec.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Argument/Token/ApproximateValueTokenSpec.php
new file mode 100644
index 00000000..8799d6d5
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Argument/Token/ApproximateValueTokenSpec.php
@@ -0,0 +1,55 @@
+beConstructedWith(10.12345678, 4);
+ }
+
+ function it_is_initializable()
+ {
+ $this->shouldHaveType('Prophecy\Argument\Token\ApproximateValueToken');
+ }
+
+ function it_implements_TokenInterface()
+ {
+ $this->shouldBeAnInstanceOf('Prophecy\Argument\Token\TokenInterface');
+ }
+
+ function it_is_not_last()
+ {
+ $this->shouldNotBeLast();
+ }
+
+ function it_scores_10_if_rounded_argument_matches_rounded_value()
+ {
+ $this->scoreArgument(10.12345)->shouldReturn(10);
+ }
+
+ function it_does_not_score_if_rounded_argument_does_not_match_rounded_value()
+ {
+ $this->scoreArgument(10.1234)->shouldReturn(false);
+ }
+
+ function it_uses_a_default_precision_of_zero()
+ {
+ $this->beConstructedWith(10.7);
+ $this->scoreArgument(11.4)->shouldReturn(10);
+ }
+
+ function it_does_not_score_if_rounded_argument_is_not_numeric()
+ {
+ $this->scoreArgument('hello')->shouldReturn(false);
+ }
+
+ function it_has_simple_string_representation()
+ {
+ $this->__toString()->shouldBe('≅10.1235');
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/ArgumentSpec.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/ArgumentSpec.php
index 990aa80a..64232a4d 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/ArgumentSpec.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/ArgumentSpec.php
@@ -98,4 +98,10 @@ function it_has_a_shortcut_for_string_contains_token()
$token = $this->containingString('string');
$token->shouldBeAnInstanceOf('Prophecy\Argument\Token\StringContainsToken');
}
+
+ function it_has_a_shortcut_for_approximate_token()
+ {
+ $token = $this->approximate(10);
+ $token->shouldBeAnInstanceOf('Prophecy\Argument\Token\ApproximateValueToken');
+ }
}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Comparator/ProphecyComparatorSpec.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Comparator/ProphecyComparatorSpec.php
new file mode 100644
index 00000000..06bf6f17
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Comparator/ProphecyComparatorSpec.php
@@ -0,0 +1,39 @@
+shouldHaveType('SebastianBergmann\Comparator\ObjectComparator');
+ }
+
+ function it_accepts_only_prophecy_objects()
+ {
+ $this->accepts(123, 321)->shouldReturn(false);
+ $this->accepts('string', 'string')->shouldReturn(false);
+ $this->accepts(false, true)->shouldReturn(false);
+ $this->accepts(true, false)->shouldReturn(false);
+ $this->accepts((object)array(), (object)array())->shouldReturn(false);
+ $this->accepts(function(){}, (object)array())->shouldReturn(false);
+ $this->accepts(function(){}, function(){})->shouldReturn(false);
+
+ $prophet = new Prophet();
+ $prophecy = $prophet->prophesize('Prophecy\Prophecy\ObjectProphecy');
+
+ $this->accepts($prophecy, $prophecy)->shouldReturn(true);
+ }
+
+ function it_asserts_that_an_object_is_equal_to_its_revealed_prophecy()
+ {
+ $prophet = new Prophet();
+ $prophecy = $prophet->prophesize('Prophecy\Prophecy\ObjectProphecy');
+
+ $this->shouldNotThrow()->duringAssertEquals($prophecy->reveal(), $prophecy);
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/ClassPatch/MagicCallPatchSpec.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/ClassPatch/MagicCallPatchSpec.php
index cb1d0f01..edd8b80d 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/ClassPatch/MagicCallPatchSpec.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/ClassPatch/MagicCallPatchSpec.php
@@ -46,6 +46,31 @@ function it_ignores_existing_methods($node)
$this->apply($node);
}
+ /**
+ * @param \Prophecy\Doubler\Generator\Node\ClassNode $node
+ */
+ function it_ignores_empty_methods_from_phpdoc($node)
+ {
+ $node->getParentClass()->willReturn('spec\Prophecy\Doubler\ClassPatch\MagicalApiInvalidMethodDefinition');
+
+ $node->addMethod(new MethodNode(''))->shouldNotBeCalled();
+
+ $this->apply($node);
+ }
+
+ /**
+ * @param \Prophecy\Doubler\Generator\Node\ClassNode $node
+ */
+ function it_discovers_api_using_phpdoc_from_interface($node)
+ {
+ $node->getParentClass()->willReturn('spec\Prophecy\Doubler\ClassPatch\MagicalApiImplemented');
+
+ $node->addMethod(new MethodNode('implementedMethod'))->shouldBeCalled();
+
+ $this->apply($node);
+ }
+
+
function it_has_50_priority()
{
$this->getPriority()->shouldReturn(50);
@@ -66,6 +91,15 @@ public function definedMethod()
}
}
+/**
+ * @method void invalidMethodDefinition
+ * @method void
+ * @method
+ */
+class MagicalApiInvalidMethodDefinition
+{
+}
+
/**
* @method void undefinedMethod()
* @method void definedMethod()
@@ -73,4 +107,19 @@ public function definedMethod()
class MagicalApiExtended extends MagicalApi
{
-}
\ No newline at end of file
+}
+
+/**
+ */
+class MagicalApiImplemented implements MagicalApiInterface
+{
+
+}
+
+/**
+ * @method void implementedMethod()
+ */
+interface MagicalApiInterface
+{
+
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/ClassPatch/SplFileInfoPatchSpec.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/ClassPatch/SplFileInfoPatchSpec.php
index 37fe82f6..42e854ac 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/ClassPatch/SplFileInfoPatchSpec.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/ClassPatch/SplFileInfoPatchSpec.php
@@ -88,4 +88,20 @@ function it_should_not_supply_a_file_for_a_directory_iterator($node, $method)
$this->apply($node);
}
+ /**
+ * @param \Prophecy\Doubler\Generator\Node\ClassNode $node
+ * @param \Prophecy\Doubler\Generator\Node\MethodNode $method
+ */
+ function it_should_supply_a_file_for_a_spl_file_object($node, $method)
+ {
+ $node->hasMethod('__construct')->willReturn(true);
+ $node->getMethod('__construct')->willReturn($method);
+ $node->getParentClass()->willReturn('SplFileObject');
+
+ $method->setCode(Argument::that(function($value) {
+ return strpos($value, '.php') !== false;
+ }))->shouldBeCalled();
+
+ $this->apply($node);
+ }
}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/ClassCodeGeneratorSpec.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/ClassCodeGeneratorSpec.php
index fa65bc15..b0830482 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/ClassCodeGeneratorSpec.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/ClassCodeGeneratorSpec.php
@@ -57,26 +57,32 @@ function it_generates_proper_php_code_for_specific_ClassNode(
$argument11->isOptional()->willReturn(true);
$argument11->getDefault()->willReturn(null);
$argument11->isPassedByReference()->willReturn(false);
+ $argument11->isVariadic()->willReturn(false);
$argument12->getName()->willReturn('class');
$argument12->getTypeHint()->willReturn('ReflectionClass');
$argument12->isOptional()->willReturn(false);
$argument12->isPassedByReference()->willReturn(false);
+ $argument12->isVariadic()->willReturn(false);
$argument21->getName()->willReturn('default');
- $argument21->getTypeHint()->willReturn(null);
+ $argument21->getTypeHint()->willReturn('string');
$argument21->isOptional()->willReturn(true);
$argument21->getDefault()->willReturn('ever.zet@gmail.com');
$argument21->isPassedByReference()->willReturn(false);
+ $argument21->isVariadic()->willReturn(false);
$argument31->getName()->willReturn('refValue');
$argument31->getTypeHint()->willReturn(null);
$argument31->isOptional()->willReturn(false);
$argument31->getDefault()->willReturn();
$argument31->isPassedByReference()->willReturn(false);
+ $argument31->isVariadic()->willReturn(false);
$code = $this->generate('CustomClass', $class);
- $expected = <<<'PHP'
+
+ if (version_compare(PHP_VERSION, '7.0', '>=')) {
+ $expected = <<<'PHP'
namespace {
class CustomClass extends \RuntimeException implements \Prophecy\Doubler\Generator\MirroredInterface, \ArrayAccess, \ArrayIterator {
public $name;
@@ -85,13 +91,138 @@ class CustomClass extends \RuntimeException implements \Prophecy\Doubler\Generat
public static function getName(array $fullname = NULL, \ReflectionClass $class): string {
return $this->name;
}
-protected function getEmail( $default = 'ever.zet@gmail.com') {
+protected function getEmail(string $default = 'ever.zet@gmail.com') {
+return $this->email;
+}
+public function &getRefValue( $refValue) {
+return $this->refValue;
+}
+
+}
+}
+PHP;
+ } else {
+ $expected = <<<'PHP'
+namespace {
+class CustomClass extends \RuntimeException implements \Prophecy\Doubler\Generator\MirroredInterface, \ArrayAccess, \ArrayIterator {
+public $name;
+private $email;
+
+public static function getName(array $fullname = NULL, \ReflectionClass $class) {
+return $this->name;
+}
+protected function getEmail(\string $default = 'ever.zet@gmail.com') {
return $this->email;
}
public function &getRefValue( $refValue) {
return $this->refValue;
}
+}
+}
+PHP;
+ }
+ $expected = strtr($expected, array("\r\n" => "\n", "\r" => "\n"));
+ $code->shouldBe($expected);
+ }
+
+ /**
+ * @param \Prophecy\Doubler\Generator\Node\ClassNode $class
+ * @param \Prophecy\Doubler\Generator\Node\MethodNode $method1
+ * @param \Prophecy\Doubler\Generator\Node\MethodNode $method2
+ * @param \Prophecy\Doubler\Generator\Node\MethodNode $method3
+ * @param \Prophecy\Doubler\Generator\Node\MethodNode $method4
+ * @param \Prophecy\Doubler\Generator\Node\ArgumentNode $argument1
+ * @param \Prophecy\Doubler\Generator\Node\ArgumentNode $argument2
+ * @param \Prophecy\Doubler\Generator\Node\ArgumentNode $argument3
+ * @param \Prophecy\Doubler\Generator\Node\ArgumentNode $argument4
+ */
+ function it_generates_proper_php_code_for_variadics(
+ $class, $method1, $method2, $method3, $method4, $argument1, $argument2,
+ $argument3, $argument4
+ )
+ {
+ $class->getParentClass()->willReturn('stdClass');
+ $class->getInterfaces()->willReturn(array('Prophecy\Doubler\Generator\MirroredInterface'));
+ $class->getProperties()->willReturn(array());
+ $class->getMethods()->willReturn(array(
+ $method1, $method2, $method3, $method4
+ ));
+
+ $method1->getName()->willReturn('variadic');
+ $method1->getVisibility()->willReturn('public');
+ $method1->returnsReference()->willReturn(false);
+ $method1->isStatic()->willReturn(false);
+ $method1->getArguments()->willReturn(array($argument1));
+ $method1->hasReturnType()->willReturn(false);
+ $method1->getCode()->willReturn('');
+
+ $method2->getName()->willReturn('variadicByRef');
+ $method2->getVisibility()->willReturn('public');
+ $method2->returnsReference()->willReturn(false);
+ $method2->isStatic()->willReturn(false);
+ $method2->getArguments()->willReturn(array($argument2));
+ $method2->hasReturnType()->willReturn(false);
+ $method2->getCode()->willReturn('');
+
+ $method3->getName()->willReturn('variadicWithType');
+ $method3->getVisibility()->willReturn('public');
+ $method3->returnsReference()->willReturn(false);
+ $method3->isStatic()->willReturn(false);
+ $method3->getArguments()->willReturn(array($argument3));
+ $method3->hasReturnType()->willReturn(false);
+ $method3->getCode()->willReturn('');
+
+ $method4->getName()->willReturn('variadicWithTypeByRef');
+ $method4->getVisibility()->willReturn('public');
+ $method4->returnsReference()->willReturn(false);
+ $method4->isStatic()->willReturn(false);
+ $method4->getArguments()->willReturn(array($argument4));
+ $method4->hasReturnType()->willReturn(false);
+ $method4->getCode()->willReturn('');
+
+ $argument1->getName()->willReturn('args');
+ $argument1->getTypeHint()->willReturn(null);
+ $argument1->isOptional()->willReturn(false);
+ $argument1->isPassedByReference()->willReturn(false);
+ $argument1->isVariadic()->willReturn(true);
+
+ $argument2->getName()->willReturn('args');
+ $argument2->getTypeHint()->willReturn(null);
+ $argument2->isOptional()->willReturn(false);
+ $argument2->isPassedByReference()->willReturn(true);
+ $argument2->isVariadic()->willReturn(true);
+
+ $argument3->getName()->willReturn('args');
+ $argument3->getTypeHint()->willReturn('\ReflectionClass');
+ $argument3->isOptional()->willReturn(false);
+ $argument3->isPassedByReference()->willReturn(false);
+ $argument3->isVariadic()->willReturn(true);
+
+ $argument4->getName()->willReturn('args');
+ $argument4->getTypeHint()->willReturn('\ReflectionClass');
+ $argument4->isOptional()->willReturn(false);
+ $argument4->isPassedByReference()->willReturn(true);
+ $argument4->isVariadic()->willReturn(true);
+
+ $code = $this->generate('CustomClass', $class);
+ $expected = <<<'PHP'
+namespace {
+class CustomClass extends \stdClass implements \Prophecy\Doubler\Generator\MirroredInterface {
+
+public function variadic( ...$args) {
+
+}
+public function variadicByRef( &...$args) {
+
+}
+public function variadicWithType(\\ReflectionClass ...$args) {
+
+}
+public function variadicWithTypeByRef(\\ReflectionClass &...$args) {
+
+}
+
}
}
PHP;
@@ -126,6 +257,7 @@ function it_overrides_properly_methods_with_args_passed_by_reference(
$argument->isOptional()->willReturn(true);
$argument->getDefault()->willReturn(null);
$argument->isPassedByReference()->willReturn(true);
+ $argument->isVariadic()->willReturn(false);
$code = $this->generate('CustomClass', $class);
$expected =<<<'PHP'
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/ClassMirrorSpec.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/ClassMirrorSpec.php
index 161f8509..de804480 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/ClassMirrorSpec.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/ClassMirrorSpec.php
@@ -2,9 +2,8 @@
namespace spec\Prophecy\Doubler\Generator;
-use PhpSpec\ObjectBehavior;
use I\Simply;
-
+use PhpSpec\ObjectBehavior;
use ReflectionClass;
use ReflectionMethod;
use ReflectionParameter;
@@ -13,15 +12,17 @@ class ClassMirrorSpec extends ObjectBehavior
{
/**
* @param ReflectionClass $class
+ * @param ReflectionClass $parent
* @param ReflectionMethod $method1
* @param ReflectionMethod $method2
* @param ReflectionMethod $method3
*/
function it_reflects_a_class_by_mirroring_all_its_public_methods(
- $class, $method1, $method2, $method3
+ $class, $parent, $method1, $method2, $method3
)
{
$class->getName()->willReturn('Custom\ClassName');
+ $class->getParentClass()->willReturn($parent);
$class->isInterface()->willReturn(false);
$class->isFinal()->willReturn(false);
$class->getMethods(ReflectionMethod::IS_ABSTRACT)->willReturn(array());
@@ -29,9 +30,15 @@ function it_reflects_a_class_by_mirroring_all_its_public_methods(
$method1, $method2, $method3
));
+ $parent->getName()->willReturn('Custom\ParentClassName');
+
+ $method1->getDeclaringClass()->willReturn($class);
+ $method2->getDeclaringClass()->willReturn($class);
+ $method3->getDeclaringClass()->willReturn($class);
+
$method1->getName()->willReturn('getName');
- $method2->getName()->willReturn('isPublic');
- $method3->getName()->willReturn('isAbstract');
+ $method2->getName()->willReturn('getSelf');
+ $method3->getName()->willReturn('getParent');
$method1->isFinal()->willReturn(false);
$method2->isFinal()->willReturn(false);
@@ -54,9 +61,12 @@ function it_reflects_a_class_by_mirroring_all_its_public_methods(
$method3->getParameters()->willReturn(array());
if (version_compare(PHP_VERSION, '7.0', '>=')) {
- $method1->hasReturnType()->willReturn(false);
- $method2->hasReturnType()->willReturn(false);
- $method3->hasReturnType()->willReturn(false);
+ $method1->hasReturnType()->willReturn(true);
+ $method1->getReturnType()->willReturn('string');
+ $method2->hasReturnType()->willReturn(true);
+ $method2->getReturnType()->willReturn('self');
+ $method3->hasReturnType()->willReturn(true);
+ $method3->getReturnType()->willReturn('parent');
}
$classNode = $this->reflect($class, array());
@@ -67,8 +77,14 @@ function it_reflects_a_class_by_mirroring_all_its_public_methods(
$methodNodes->shouldHaveCount(3);
$classNode->hasMethod('getName')->shouldReturn(true);
- $classNode->hasMethod('isPublic')->shouldReturn(true);
- $classNode->hasMethod('isAbstract')->shouldReturn(true);
+ $classNode->hasMethod('getSelf')->shouldReturn(true);
+ $classNode->hasMethod('getParent')->shouldReturn(true);
+
+ if (version_compare(PHP_VERSION, '7.0', '>=')) {
+ $classNode->getMethod('getName')->getReturnType()->shouldReturn('string');
+ $classNode->getMethod('getSelf')->getReturnType()->shouldReturn('\Custom\ClassName');
+ $classNode->getMethod('getParent')->getReturnType()->shouldReturn('\Custom\ParentClassName');
+ }
}
/**
@@ -101,6 +117,9 @@ function it_changes_argument_names_if_they_are_varying($class, $method, $paramet
$parameter->getDefaultValue()->willReturn(null);
$parameter->isPassedByReference()->willReturn(false);
$parameter->getClass()->willReturn($class);
+ if (version_compare(PHP_VERSION, '5.6', '>=')) {
+ $parameter->isVariadic()->willReturn(false);
+ }
$classNode = $this->reflect($class, array());
@@ -177,6 +196,92 @@ function it_reflects_public_static_methods($class, $method)
$methodNodes['innerDetail']->isStatic()->shouldReturn(true);
}
+ /**
+ * @param ReflectionClass $class
+ * @param ReflectionMethod $constructMethod
+ * @param ReflectionMethod $destructMethod
+ * @param ReflectionMethod $sleepMethod
+ * @param ReflectionMethod $wakeupMethod
+ * @param ReflectionMethod $toStringMethod
+ * @param ReflectionMethod $callMethod
+ * @param ReflectionMethod $invokeMethod
+ */
+ function it_reflects_allowed_magic_methods($class, $constructMethod, $destructMethod, $sleepMethod, $wakeupMethod, $toStringMethod, $callMethod, $invokeMethod)
+ {
+ $class->getName()->willReturn('Custom\ClassName');
+ $class->isInterface()->willReturn(false);
+ $class->isFinal()->willReturn(false);
+ $class->getMethods(ReflectionMethod::IS_ABSTRACT)->willReturn(array());
+ $class->getMethods(ReflectionMethod::IS_PUBLIC)->willReturn(array(
+ $constructMethod, $destructMethod, $sleepMethod, $wakeupMethod, $toStringMethod, $callMethod, $invokeMethod
+ ));
+
+ $constructMethod->getName()->willReturn('__construct');
+ $destructMethod->getName()->willReturn('__destruct');
+ $sleepMethod->getName()->willReturn('__sleep');
+ $wakeupMethod->getName()->willReturn('__wakeup');
+ $toStringMethod->getName()->willReturn('__toString');
+ $callMethod->getName()->willReturn('__call');
+ $invokeMethod->getName()->willReturn('__invoke');
+
+ $constructMethod->isFinal()->willReturn(false);
+ $destructMethod->isFinal()->willReturn(false);
+ $sleepMethod->isFinal()->willReturn(false);
+ $wakeupMethod->isFinal()->willReturn(false);
+ $toStringMethod->isFinal()->willReturn(false);
+ $callMethod->isFinal()->willReturn(false);
+ $invokeMethod->isFinal()->willReturn(false);
+
+ $constructMethod->isProtected()->willReturn(false);
+ $destructMethod->isProtected()->willReturn(false);
+ $sleepMethod->isProtected()->willReturn(false);
+ $wakeupMethod->isProtected()->willReturn(false);
+ $toStringMethod->isProtected()->willReturn(false);
+ $callMethod->isProtected()->willReturn(false);
+ $invokeMethod->isProtected()->willReturn(false);
+
+ $constructMethod->isStatic()->willReturn(false);
+ $destructMethod->isStatic()->willReturn(false);
+ $sleepMethod->isStatic()->willReturn(false);
+ $wakeupMethod->isStatic()->willReturn(false);
+ $toStringMethod->isStatic()->willReturn(false);
+ $callMethod->isStatic()->willReturn(false);
+ $invokeMethod->isStatic()->willReturn(false);
+
+ $constructMethod->returnsReference()->willReturn(false);
+ $destructMethod->returnsReference()->willReturn(false);
+ $sleepMethod->returnsReference()->willReturn(false);
+ $wakeupMethod->returnsReference()->willReturn(false);
+ $toStringMethod->returnsReference()->willReturn(false);
+ $callMethod->returnsReference()->willReturn(false);
+ $invokeMethod->returnsReference()->willReturn(false);
+
+ $constructMethod->getParameters()->willReturn(array());
+ $destructMethod->getParameters()->willReturn(array());
+ $sleepMethod->getParameters()->willReturn(array());
+ $wakeupMethod->getParameters()->willReturn(array());
+ $toStringMethod->getParameters()->willReturn(array());
+ $callMethod->getParameters()->willReturn(array());
+ $invokeMethod->getParameters()->willReturn(array());
+
+ if (version_compare(PHP_VERSION, '7.0', '>=')) {
+ $constructMethod->hasReturnType()->willReturn(false);
+ $destructMethod->hasReturnType()->willReturn(false);
+ $sleepMethod->hasReturnType()->willReturn(false);
+ $wakeupMethod->hasReturnType()->willReturn(false);
+ $toStringMethod->hasReturnType()->willReturn(false);
+ $callMethod->hasReturnType()->willReturn(false);
+ $invokeMethod->hasReturnType()->willReturn(false);
+ }
+
+ $classNode = $this->reflect($class, array());
+ $classNode->shouldBeAnInstanceOf('Prophecy\Doubler\Generator\Node\ClassNode');
+ $classNode->getParentClass()->shouldReturn('Custom\ClassName');
+
+ $methodNodes = $classNode->getMethods();
+ $methodNodes->shouldHaveCount(7);
+ }
+
/**
* @param ReflectionClass $class
* @param ReflectionMethod $method
@@ -184,9 +289,10 @@ function it_reflects_public_static_methods($class, $method)
* @param ReflectionParameter $param2
* @param ReflectionClass $typeHint
* @param ReflectionParameter $param3
+ * @param ReflectionParameter $param4
*/
function it_properly_reads_methods_arguments_with_types(
- $class, $method, $param1, $param2, $typeHint, $param3
+ $class, $method, $param1, $param2, $typeHint, $param3, $param4
)
{
$class->getName()->willReturn('Custom\ClassName');
@@ -200,7 +306,7 @@ function it_properly_reads_methods_arguments_with_types(
$method->isProtected()->willReturn(true);
$method->isStatic()->willReturn(false);
$method->returnsReference()->willReturn(false);
- $method->getParameters()->willReturn(array($param1, $param2, $param3));
+ $method->getParameters()->willReturn(array($param1, $param2, $param3, $param4));
if (version_compare(PHP_VERSION, '7.0', '>=')) {
$method->hasReturnType()->willReturn(false);
@@ -234,6 +340,22 @@ function it_properly_reads_methods_arguments_with_types(
$param3->isPassedByReference()->willReturn(false);
$param3->allowsNull()->willReturn(true);
+ $param4->getName()->willReturn('arg_4');
+ $param4->isArray()->willReturn(false);
+ $param4->getClass()->willReturn($typeHint);
+ $param4->isPassedByReference()->willReturn(false);
+ $param4->allowsNull()->willReturn(true);
+
+ if (version_compare(PHP_VERSION, '5.6', '>=')) {
+ $param1->isVariadic()->willReturn(false);
+ $param2->isVariadic()->willReturn(false);
+ $param3->isVariadic()->willReturn(false);
+ $param4->isVariadic()->willReturn(true);
+ } else {
+ $param4->isOptional()->willReturn(true);
+ $param4->isDefaultValueAvailable()->willReturn(false);
+ }
+
$classNode = $this->reflect($class, array());
$methodNodes = $classNode->getMethods();
$argNodes = $methodNodes['methodWithArgs']->getArguments();
@@ -255,6 +377,15 @@ function it_properly_reads_methods_arguments_with_types(
} else {
$argNodes[2]->isOptional()->shouldReturn(false);
}
+
+ $argNodes[3]->getName()->shouldReturn('arg_4');
+ $argNodes[3]->getTypeHint()->shouldReturn('ArrayAccess');
+ if (version_compare(PHP_VERSION, '5.6', '>=')) {
+ $argNodes[3]->isVariadic()->shouldReturn(true);
+ } else {
+ $argNodes[3]->isOptional()->shouldReturn(true);
+ $argNodes[3]->getDefault()->shouldReturn(null);
+ }
}
/**
@@ -294,6 +425,9 @@ function it_marks_required_args_without_types_as_not_optional(
$param1->hasType()->willReturn(false);
}
+ if (version_compare(PHP_VERSION, '5.6', '>=')) {
+ $param1->isVariadic()->willReturn(false);
+ }
$param1->isDefaultValueAvailable()->willReturn(false);
$param1->isOptional()->willReturn(false);
$param1->isPassedByReference()->willReturn(false);
@@ -314,10 +448,11 @@ function it_marks_required_args_without_types_as_not_optional(
* @param ReflectionMethod $method
* @param ReflectionParameter $param1
* @param ReflectionParameter $param2
+ * @param ReflectionParameter $param3
* @param ReflectionClass $typeHint
*/
function it_marks_passed_by_reference_args_as_passed_by_reference(
- $class, $method, $param1, $param2, $typeHint
+ $class, $method, $param1, $param2, $param3, $typeHint
)
{
$class->getName()->willReturn('Custom\ClassName');
@@ -331,7 +466,7 @@ function it_marks_passed_by_reference_args_as_passed_by_reference(
$method->isProtected()->willReturn(false);
$method->isStatic()->willReturn(false);
$method->returnsReference()->willReturn(false);
- $method->getParameters()->willReturn(array($param1, $param2));
+ $method->getParameters()->willReturn(array($param1, $param2, $param3));
if (version_compare(PHP_VERSION, '7.0', '>=')) {
$method->hasReturnType()->willReturn(false);
@@ -343,6 +478,9 @@ function it_marks_passed_by_reference_args_as_passed_by_reference(
$param1->isCallable()->willReturn(false);
}
$param1->getClass()->willReturn(null);
+ if (version_compare(PHP_VERSION, '5.6', '>=')) {
+ $param1->isVariadic()->willReturn(false);
+ }
$param1->isDefaultValueAvailable()->willReturn(false);
$param1->isOptional()->willReturn(true);
$param1->isPassedByReference()->willReturn(true);
@@ -359,6 +497,9 @@ function it_marks_passed_by_reference_args_as_passed_by_reference(
$param2->getName()->willReturn('arg2');
$param2->isArray()->willReturn(false);
$param2->getClass()->willReturn($typeHint);
+ if (version_compare(PHP_VERSION, '5.6', '>=')) {
+ $param2->isVariadic()->willReturn(false);
+ }
$param2->isDefaultValueAvailable()->willReturn(false);
$param2->isOptional()->willReturn(false);
$param2->isPassedByReference()->willReturn(false);
@@ -370,12 +511,25 @@ function it_marks_passed_by_reference_args_as_passed_by_reference(
$param2->allowsNull()->willReturn(false);
$typeHint->getName()->willReturn('ArrayAccess');
+ $param3->getName()->willReturn('arg2');
+ $param3->isArray()->willReturn(false);
+ $param3->getClass()->willReturn($typeHint);
+ if (version_compare(PHP_VERSION, '5.6', '>=')) {
+ $param3->isVariadic()->willReturn(true);
+ } else {
+ $param3->isOptional()->willReturn(true);
+ $param3->isDefaultValueAvailable()->willReturn(false);
+ }
+ $param3->isPassedByReference()->willReturn(true);
+ $param3->allowsNull()->willReturn(true);
+
$classNode = $this->reflect($class, array());
$methodNodes = $classNode->getMethods();
$argNodes = $methodNodes['methodWithArgs']->getArguments();
$argNodes[0]->isPassedByReference()->shouldReturn(true);
$argNodes[1]->isPassedByReference()->shouldReturn(false);
+ $argNodes[2]->isPassedByReference()->shouldReturn(true);
}
/**
@@ -410,6 +564,26 @@ function it_ignores_final_methods($class, $method)
$classNode->getMethods()->shouldHaveCount(0);
}
+ /**
+ * @param ReflectionClass $class
+ * @param ReflectionMethod $method
+ */
+ function it_marks_final_methods_as_unextendable($class, $method)
+ {
+ $class->getName()->willReturn('Custom\ClassName');
+ $class->isInterface()->willReturn(false);
+ $class->isFinal()->willReturn(false);
+ $class->getMethods(ReflectionMethod::IS_ABSTRACT)->willReturn(array());
+ $class->getMethods(ReflectionMethod::IS_PUBLIC)->willReturn(array($method));
+
+ $method->isFinal()->willReturn(true);
+ $method->getName()->willReturn('finalImplementation');
+
+ $classNode = $this->reflect($class, array());
+ $classNode->getUnextendableMethods()->shouldHaveCount(1);
+ $classNode->isExtendable('finalImplementation')->shouldReturn(false);
+ }
+
/**
* @param ReflectionClass $interface
*/
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/Node/ArgumentNodeSpec.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/Node/ArgumentNodeSpec.php
index cea578fa..2c8d1886 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/Node/ArgumentNodeSpec.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/Node/ArgumentNodeSpec.php
@@ -22,6 +22,36 @@ function it_is_passed_by_reference_if_marked()
$this->shouldBePassedByReference();
}
+ function it_is_not_variadic_by_default()
+ {
+ $this->shouldNotBeVariadic();
+ }
+
+ function it_is_variadic_if_marked()
+ {
+ $this->setAsVariadic();
+ $this->shouldBeVariadic();
+ }
+
+ function it_does_not_have_default_by_default()
+ {
+ $this->shouldNotHaveDefault();
+ }
+
+ function it_does_not_have_default_if_variadic()
+ {
+ $this->setDefault(null);
+ $this->setAsVariadic();
+ $this->shouldNotHaveDefault();
+ }
+
+ function it_does_have_default_if_not_variadic()
+ {
+ $this->setDefault(null);
+ $this->setAsVariadic(false);
+ $this->hasDefault()->shouldReturn(true);
+ }
+
function it_has_name_with_which_it_was_been_constructed()
{
$this->getName()->shouldReturn('name');
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/Node/ClassNodeSpec.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/Node/ClassNodeSpec.php
index 18f0e1cc..be7e1026 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/Node/ClassNodeSpec.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/Node/ClassNodeSpec.php
@@ -3,6 +3,7 @@
namespace spec\Prophecy\Doubler\Generator\Node;
use PhpSpec\ObjectBehavior;
+use Prophecy\Exception\Doubler\MethodNotExtendableException;
class ClassNodeSpec extends ObjectBehavior
{
@@ -151,4 +152,49 @@ function its_addProperty_lowercases_visibility_before_setting()
$this->addProperty('text', 'PRIVATE');
$this->getProperties()->shouldReturn(array('text' => 'private'));
}
+
+ function its_has_no_unextendable_methods_by_default()
+ {
+ $this->getUnextendableMethods()->shouldHaveCount(0);
+ }
+
+ function its_addUnextendableMethods_adds_an_unextendable_method()
+ {
+ $this->addUnextendableMethod('testMethod');
+ $this->getUnextendableMethods()->shouldHaveCount(1);
+ }
+
+ function its_methods_are_extendable_by_default()
+ {
+ $this->isExtendable('testMethod')->shouldReturn(true);
+ }
+
+ function its_unextendable_methods_are_not_extendable()
+ {
+ $this->addUnextendableMethod('testMethod');
+ $this->isExtendable('testMethod')->shouldReturn(false);
+ }
+
+ function its_addUnextendableMethods_doesnt_create_duplicates()
+ {
+ $this->addUnextendableMethod('testMethod');
+ $this->addUnextendableMethod('testMethod');
+ $this->getUnextendableMethods()->shouldHaveCount(1);
+ }
+
+ /**
+ * @param \Prophecy\Doubler\Generator\Node\MethodNode $method
+ */
+ function it_throws_an_exception_when_adding_a_method_that_isnt_extendable($method)
+ {
+ $this->addUnextendableMethod('testMethod');
+ $method->getName()->willReturn('testMethod');
+
+ $expectedException = new MethodNotExtendableException(
+ "Method `testMethod` is not extendable, so can not be added.",
+ "stdClass",
+ "testMethod"
+ );
+ $this->shouldThrow($expectedException)->duringAddMethod($method);
+ }
}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/Node/MethodNodeSpec.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/Node/MethodNodeSpec.php
index d67646da..49bd9f59 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/Node/MethodNodeSpec.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/Node/MethodNodeSpec.php
@@ -69,13 +69,16 @@ function its_useParentCode_causes_method_to_call_parent($argument1, $argument2)
$argument1->getName()->willReturn('objectName');
$argument2->getName()->willReturn('default');
+ $argument1->isVariadic()->willReturn(false);
+ $argument2->isVariadic()->willReturn(true);
+
$this->addArgument($argument1);
$this->addArgument($argument2);
$this->useParentCode();
$this->getCode()->shouldReturn(
- 'return parent::getTitle($objectName, $default);'
+ 'return parent::getTitle($objectName, ...$default);'
);
}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Exception/Doubler/MethodNotExtendableExceptionSpec.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Exception/Doubler/MethodNotExtendableExceptionSpec.php
new file mode 100644
index 00000000..5028b026
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/spec/Prophecy/Exception/Doubler/MethodNotExtendableExceptionSpec.php
@@ -0,0 +1,29 @@
+beConstructedWith('', 'User', 'getName');
+ }
+
+ function it_is_DoubleException()
+ {
+ $this->shouldHaveType('Prophecy\Exception\Doubler\DoubleException');
+ }
+
+ function it_has_MethodName()
+ {
+ $this->getMethodName()->shouldReturn('getName');
+ }
+
+ function it_has_classname()
+ {
+ $this->getClassName()->shouldReturn('User');
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Argument.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Argument.php
index f2b33648..fde6aa90 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Argument.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Argument.php
@@ -195,4 +195,18 @@ public static function is($value)
{
return new Token\IdenticalValueToken($value);
}
+
+ /**
+ * Check that argument is same value when rounding to the
+ * given precision.
+ *
+ * @param float $value
+ * @param float $precision
+ *
+ * @return Token\ApproximateValueToken
+ */
+ public static function approximate($value, $precision = 0)
+ {
+ return new Token\ApproximateValueToken($value, $precision);
+ }
}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Argument/Token/ApproximateValueToken.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Argument/Token/ApproximateValueToken.php
new file mode 100644
index 00000000..d4918b1a
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Argument/Token/ApproximateValueToken.php
@@ -0,0 +1,55 @@
+
+ * Marcello Duarte
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Prophecy\Argument\Token;
+
+/**
+ * Approximate value token
+ *
+ * @author Daniel Leech
+ */
+class ApproximateValueToken implements TokenInterface
+{
+ private $value;
+ private $precision;
+
+ public function __construct($value, $precision = 0)
+ {
+ $this->value = $value;
+ $this->precision = $precision;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function scoreArgument($argument)
+ {
+ return round($argument, $this->precision) === round($this->value, $this->precision) ? 10 : false;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function isLast()
+ {
+ return false;
+ }
+
+ /**
+ * Returns string representation for token.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return sprintf('≅%s', round($this->value, $this->precision));
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Call/CallCenter.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Call/CallCenter.php
index 74958551..a1f8c618 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Call/CallCenter.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Call/CallCenter.php
@@ -54,7 +54,17 @@ public function __construct(StringUtil $util = null)
*/
public function makeCall(ObjectProphecy $prophecy, $methodName, array $arguments)
{
- $backtrace = debug_backtrace();
+ // For efficiency exclude 'args' from the generated backtrace
+ if (PHP_VERSION_ID >= 50400) {
+ // Limit backtrace to last 3 calls as we don't use the rest
+ // Limit argument was introduced in PHP 5.4.0
+ $backtrace = debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 3);
+ } elseif (defined('DEBUG_BACKTRACE_IGNORE_ARGS')) {
+ // DEBUG_BACKTRACE_IGNORE_ARGS was introduced in PHP 5.3.6
+ $backtrace = debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS);
+ } else {
+ $backtrace = debug_backtrace();
+ }
$file = $line = null;
if (isset($backtrace[2]) && isset($backtrace[2]['file'])) {
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Comparator/Factory.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Comparator/Factory.php
index a7a12001..2070db14 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Comparator/Factory.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Comparator/Factory.php
@@ -30,6 +30,7 @@ public function __construct()
parent::__construct();
$this->register(new ClosureComparator());
+ $this->register(new ProphecyComparator());
}
/**
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Comparator/ProphecyComparator.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Comparator/ProphecyComparator.php
new file mode 100644
index 00000000..298a8e35
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Comparator/ProphecyComparator.php
@@ -0,0 +1,28 @@
+
+ * Marcello Duarte
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Prophecy\Comparator;
+
+use Prophecy\Prophecy\ProphecyInterface;
+use SebastianBergmann\Comparator\ObjectComparator;
+
+class ProphecyComparator extends ObjectComparator
+{
+ public function accepts($expected, $actual)
+ {
+ return is_object($expected) && is_object($actual) && $actual instanceof ProphecyInterface;
+ }
+
+ public function assertEquals($expected, $actual, $delta = 0.0, $canonicalize = false, $ignoreCase = false, array &$processed = array())
+ {
+ parent::assertEquals($expected, $actual->reveal(), $delta, $canonicalize, $ignoreCase, $processed);
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/ClassPatch/MagicCallPatch.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/ClassPatch/MagicCallPatch.php
index da454501..23891c09 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/ClassPatch/MagicCallPatch.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/ClassPatch/MagicCallPatch.php
@@ -11,17 +11,27 @@
namespace Prophecy\Doubler\ClassPatch;
-use phpDocumentor\Reflection\DocBlock;
use Prophecy\Doubler\Generator\Node\ClassNode;
use Prophecy\Doubler\Generator\Node\MethodNode;
+use Prophecy\PhpDocumentor\ClassAndInterfaceTagRetriever;
+use Prophecy\PhpDocumentor\MethodTagRetrieverInterface;
/**
* Discover Magical API using "@method" PHPDoc format.
*
* @author Thomas Tourlourat
+ * @author Kévin Dunglas
+ * @author Théo FIDRY
*/
class MagicCallPatch implements ClassPatchInterface
{
+ private $tagRetriever;
+
+ public function __construct(MethodTagRetrieverInterface $tagRetriever = null)
+ {
+ $this->tagRetriever = null === $tagRetriever ? new ClassAndInterfaceTagRetriever() : $tagRetriever;
+ }
+
/**
* Support any class
*
@@ -44,15 +54,17 @@ public function apply(ClassNode $node)
$parentClass = $node->getParentClass();
$reflectionClass = new \ReflectionClass($parentClass);
- $phpdoc = new DocBlock($reflectionClass->getDocComment());
-
- $tagList = $phpdoc->getTagsByName('method');
+ $tagList = $this->tagRetriever->getTagList($reflectionClass);
foreach($tagList as $tag) {
$methodName = $tag->getMethodName();
+ if (empty($methodName)) {
+ continue;
+ }
+
if (!$reflectionClass->hasMethod($methodName)) {
- $methodNode = new MethodNode($tag->getMethodName());
+ $methodNode = new MethodNode($methodName);
$methodNode->setStatic($tag->isStatic());
$node->addMethod($methodNode);
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/ClassPatch/SplFileInfoPatch.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/ClassPatch/SplFileInfoPatch.php
index 84011598..eba82980 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/ClassPatch/SplFileInfoPatch.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/ClassPatch/SplFileInfoPatch.php
@@ -56,6 +56,13 @@ public function apply(ClassNode $node)
if ($this->nodeIsDirectoryIterator($node)) {
$constructor->setCode('return parent::__construct("' . __DIR__ . '");');
+
+ return;
+ }
+
+ if ($this->nodeIsSplFileObject($node)) {
+ $constructor->setCode('return parent::__construct("' . __FILE__ .'");');
+
return;
}
@@ -79,7 +86,20 @@ public function getPriority()
private function nodeIsDirectoryIterator(ClassNode $node)
{
$parent = $node->getParentClass();
+
return 'DirectoryIterator' === $parent
|| is_subclass_of($parent, 'DirectoryIterator');
}
+
+ /**
+ * @param ClassNode $node
+ * @return boolean
+ */
+ private function nodeIsSplFileObject(ClassNode $node)
+ {
+ $parent = $node->getParentClass();
+
+ return 'SplFileObject' === $parent
+ || is_subclass_of($parent, 'SplFileObject');
+ }
}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/ClassCodeGenerator.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/ClassCodeGenerator.php
index 4d474e5b..dc03f429 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/ClassCodeGenerator.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/ClassCodeGenerator.php
@@ -60,7 +60,9 @@ private function generateMethod(Node\MethodNode $method)
$method->returnsReference() ? '&':'',
$method->getName(),
implode(', ', $this->generateArguments($method->getArguments())),
- $method->hasReturnType() ? sprintf(': %s', $method->getReturnType()) : ''
+ version_compare(PHP_VERSION, '7.0', '>=') && $method->hasReturnType()
+ ? sprintf(': %s', $method->getReturnType())
+ : ''
);
$php .= $method->getCode()."\n";
@@ -73,16 +75,34 @@ private function generateArguments(array $arguments)
$php = '';
if ($hint = $argument->getTypeHint()) {
- if ('array' === $hint || 'callable' === $hint) {
- $php .= $hint;
- } else {
- $php .= '\\'.$hint;
+ switch ($hint) {
+ case 'array':
+ case 'callable':
+ $php .= $hint;
+ break;
+
+ case 'string':
+ case 'int':
+ case 'float':
+ case 'bool':
+ if (version_compare(PHP_VERSION, '7.0', '>=')) {
+ $php .= $hint;
+ break;
+ }
+ // Fall-through to default case for PHP 5.x
+
+ default:
+ $php .= '\\'.$hint;
}
}
- $php .= ' '.($argument->isPassedByReference() ? '&' : '').'$'.$argument->getName();
+ $php .= ' '.($argument->isPassedByReference() ? '&' : '');
+
+ $php .= $argument->isVariadic() ? '...' : '';
+
+ $php .= '$'.$argument->getName();
- if ($argument->isOptional()) {
+ if ($argument->isOptional() && !$argument->isVariadic()) {
$php .= ' = '.var_export($argument->getDefault(), true);
}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/ClassMirror.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/ClassMirror.php
index 6a4ebde5..acdb2c15 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/ClassMirror.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/ClassMirror.php
@@ -32,6 +32,7 @@ class ClassMirror
'__wakeup',
'__toString',
'__call',
+ '__invoke'
);
/**
@@ -109,6 +110,7 @@ private function reflectClassToNode(ReflectionClass $class, Node\ClassNode $node
}
if (true === $method->isFinal()) {
+ $node->addUnextendableMethod($method->getName());
continue;
}
@@ -142,7 +144,17 @@ private function reflectMethodToNode(ReflectionMethod $method, Node\ClassNode $c
}
if (version_compare(PHP_VERSION, '7.0', '>=') && true === $method->hasReturnType()) {
- $node->setReturnType((string) $method->getReturnType());
+ $returnType = (string) $method->getReturnType();
+ $returnTypeLower = strtolower($returnType);
+
+ if ('self' === $returnTypeLower) {
+ $returnType = $method->getDeclaringClass()->getName();
+ }
+ if ('parent' === $returnTypeLower) {
+ $returnType = $method->getDeclaringClass()->getParentClass()->getName();
+ }
+
+ $node->setReturnType($returnType);
}
if (is_array($params = $method->getParameters()) && count($params)) {
@@ -159,23 +171,45 @@ private function reflectArgumentToNode(ReflectionParameter $parameter, Node\Meth
$name = $parameter->getName() == '...' ? '__dot_dot_dot__' : $parameter->getName();
$node = new Node\ArgumentNode($name);
- $typeHint = $this->getTypeHint($parameter);
- $node->setTypeHint($typeHint);
+ $node->setTypeHint($this->getTypeHint($parameter));
+
+ if ($this->isVariadic($parameter)) {
+ $node->setAsVariadic();
+ }
- if (true === $parameter->isDefaultValueAvailable()) {
- $node->setDefault($parameter->getDefaultValue());
- } elseif (true === $parameter->isOptional()
- || (true === $parameter->allowsNull() && $typeHint)) {
- $node->setDefault(null);
+ if ($this->hasDefaultValue($parameter)) {
+ $node->setDefault($this->getDefaultValue($parameter));
}
- if (true === $parameter->isPassedByReference()) {
+ if ($parameter->isPassedByReference()) {
$node->setAsPassedByReference();
}
$methodNode->addArgument($node);
}
+ private function hasDefaultValue(ReflectionParameter $parameter)
+ {
+ if ($this->isVariadic($parameter)) {
+ return false;
+ }
+
+ if ($parameter->isDefaultValueAvailable()) {
+ return true;
+ }
+
+ return $parameter->isOptional() || $this->isNullable($parameter);
+ }
+
+ private function getDefaultValue(ReflectionParameter $parameter)
+ {
+ if (!$parameter->isDefaultValueAvailable()) {
+ return null;
+ }
+
+ return $parameter->getDefaultValue();
+ }
+
private function getTypeHint(ReflectionParameter $parameter)
{
if (null !== $className = $this->getParameterClassName($parameter)) {
@@ -197,6 +231,16 @@ private function getTypeHint(ReflectionParameter $parameter)
return null;
}
+ private function isVariadic(ReflectionParameter $parameter)
+ {
+ return PHP_VERSION_ID >= 50600 && $parameter->isVariadic();
+ }
+
+ private function isNullable(ReflectionParameter $parameter)
+ {
+ return $parameter->allowsNull() && null !== $this->getTypeHint($parameter);
+ }
+
private function getParameterClassName(ReflectionParameter $parameter)
{
try {
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/Node/ArgumentNode.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/Node/ArgumentNode.php
index a6c42a38..cf6fd735 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/Node/ArgumentNode.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/Node/ArgumentNode.php
@@ -23,6 +23,7 @@ class ArgumentNode
private $default;
private $optional = false;
private $byReference = false;
+ private $isVariadic = false;
/**
* @param string $name
@@ -47,6 +48,11 @@ public function setTypeHint($typeHint = null)
$this->typeHint = $typeHint;
}
+ public function hasDefault()
+ {
+ return $this->isOptional() && !$this->isVariadic();
+ }
+
public function getDefault()
{
return $this->default;
@@ -72,4 +78,14 @@ public function isPassedByReference()
{
return $this->byReference;
}
+
+ public function setAsVariadic($isVariadic = true)
+ {
+ $this->isVariadic = $isVariadic;
+ }
+
+ public function isVariadic()
+ {
+ return $this->isVariadic;
+ }
}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/Node/ClassNode.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/Node/ClassNode.php
index b38cb4ea..1499a1d3 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/Node/ClassNode.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/Node/ClassNode.php
@@ -11,6 +11,7 @@
namespace Prophecy\Doubler\Generator\Node;
+use Prophecy\Exception\Doubler\MethodNotExtendableException;
use Prophecy\Exception\InvalidArgumentException;
/**
@@ -23,6 +24,7 @@ class ClassNode
private $parentClass = 'stdClass';
private $interfaces = array();
private $properties = array();
+ private $unextendableMethods = array();
/**
* @var MethodNode[]
@@ -100,6 +102,12 @@ public function getMethods()
public function addMethod(MethodNode $method)
{
+ if (!$this->isExtendable($method->getName())){
+ $message = sprintf(
+ 'Method `%s` is not extendable, so can not be added.', $method->getName()
+ );
+ throw new MethodNotExtendableException($message, $this->getParentClass(), $method->getName());
+ }
$this->methods[$method->getName()] = $method;
}
@@ -127,4 +135,32 @@ public function hasMethod($name)
{
return isset($this->methods[$name]);
}
+
+ /**
+ * @return string[]
+ */
+ public function getUnextendableMethods()
+ {
+ return $this->unextendableMethods;
+ }
+
+ /**
+ * @param string $unextendableMethod
+ */
+ public function addUnextendableMethod($unextendableMethod)
+ {
+ if (!$this->isExtendable($unextendableMethod)){
+ return;
+ }
+ $this->unextendableMethods[] = $unextendableMethod;
+ }
+
+ /**
+ * @param string $method
+ * @return bool
+ */
+ public function isExtendable($method)
+ {
+ return !in_array($method, $this->unextendableMethods);
+ }
}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/Node/MethodNode.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/Node/MethodNode.php
index eb953524..8402ab8f 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/Node/MethodNode.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Doubler/Generator/Node/MethodNode.php
@@ -170,8 +170,19 @@ public function useParentCode()
{
$this->code = sprintf(
'return parent::%s(%s);', $this->getName(), implode(', ',
- array_map(function (ArgumentNode $arg) { return '$'.$arg->getName(); }, $this->arguments)
+ array_map(array($this, 'generateArgument'), $this->arguments)
)
);
}
+
+ private function generateArgument(ArgumentNode $arg)
+ {
+ $argument = '$'.$arg->getName();
+
+ if ($arg->isVariadic()) {
+ $argument = '...'.$argument;
+ }
+
+ return $argument;
+ }
}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Exception/Doubler/MethodNotExtendableException.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Exception/Doubler/MethodNotExtendableException.php
new file mode 100644
index 00000000..56f47b11
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Exception/Doubler/MethodNotExtendableException.php
@@ -0,0 +1,41 @@
+methodName = $methodName;
+ $this->className = $className;
+ }
+
+
+ /**
+ * @return string
+ */
+ public function getMethodName()
+ {
+ return $this->methodName;
+ }
+
+ /**
+ * @return string
+ */
+ public function getClassName()
+ {
+ return $this->className;
+ }
+
+ }
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/PhpDocumentor/ClassAndInterfaceTagRetriever.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/PhpDocumentor/ClassAndInterfaceTagRetriever.php
new file mode 100644
index 00000000..209821ce
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/PhpDocumentor/ClassAndInterfaceTagRetriever.php
@@ -0,0 +1,69 @@
+
+ * Marcello Duarte
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Prophecy\PhpDocumentor;
+
+use phpDocumentor\Reflection\DocBlock\Tag\MethodTag as LegacyMethodTag;
+use phpDocumentor\Reflection\DocBlock\Tags\Method;
+
+/**
+ * @author Théo FIDRY
+ *
+ * @internal
+ */
+final class ClassAndInterfaceTagRetriever implements MethodTagRetrieverInterface
+{
+ private $classRetriever;
+
+ public function __construct(MethodTagRetrieverInterface $classRetriever = null)
+ {
+ if (null !== $classRetriever) {
+ $this->classRetriever = $classRetriever;
+
+ return;
+ }
+
+ $this->classRetriever = class_exists('phpDocumentor\Reflection\DocBlockFactory') && class_exists('phpDocumentor\Reflection\Types\ContextFactory')
+ ? new ClassTagRetriever()
+ : new LegacyClassTagRetriever()
+ ;
+ }
+
+ /**
+ * @param \ReflectionClass $reflectionClass
+ *
+ * @return LegacyMethodTag[]|Method[]
+ */
+ public function getTagList(\ReflectionClass $reflectionClass)
+ {
+ return array_merge(
+ $this->classRetriever->getTagList($reflectionClass),
+ $this->getInterfacesTagList($reflectionClass)
+ );
+ }
+
+ /**
+ * @param \ReflectionClass $reflectionClass
+ *
+ * @return LegacyMethodTag[]|Method[]
+ */
+ private function getInterfacesTagList(\ReflectionClass $reflectionClass)
+ {
+ $interfaces = $reflectionClass->getInterfaces();
+ $tagList = array();
+
+ foreach($interfaces as $interface) {
+ $tagList = array_merge($tagList, $this->classRetriever->getTagList($interface));
+ }
+
+ return $tagList;
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/PhpDocumentor/ClassTagRetriever.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/PhpDocumentor/ClassTagRetriever.php
new file mode 100644
index 00000000..1d2da8f0
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/PhpDocumentor/ClassTagRetriever.php
@@ -0,0 +1,52 @@
+
+ * Marcello Duarte
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Prophecy\PhpDocumentor;
+
+use phpDocumentor\Reflection\DocBlock\Tags\Method;
+use phpDocumentor\Reflection\DocBlockFactory;
+use phpDocumentor\Reflection\Types\ContextFactory;
+
+/**
+ * @author Théo FIDRY
+ *
+ * @internal
+ */
+final class ClassTagRetriever implements MethodTagRetrieverInterface
+{
+ private $docBlockFactory;
+ private $contextFactory;
+
+ public function __construct()
+ {
+ $this->docBlockFactory = DocBlockFactory::createInstance();
+ $this->contextFactory = new ContextFactory();
+ }
+
+ /**
+ * @param \ReflectionClass $reflectionClass
+ *
+ * @return Method[]
+ */
+ public function getTagList(\ReflectionClass $reflectionClass)
+ {
+ try {
+ $phpdoc = $this->docBlockFactory->create(
+ $reflectionClass,
+ $this->contextFactory->createFromReflector($reflectionClass)
+ );
+
+ return $phpdoc->getTagsByName('method');
+ } catch (\InvalidArgumentException $e) {
+ return array();
+ }
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/PhpDocumentor/LegacyClassTagRetriever.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/PhpDocumentor/LegacyClassTagRetriever.php
new file mode 100644
index 00000000..c0dec3de
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/PhpDocumentor/LegacyClassTagRetriever.php
@@ -0,0 +1,35 @@
+
+ * Marcello Duarte
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Prophecy\PhpDocumentor;
+
+use phpDocumentor\Reflection\DocBlock;
+use phpDocumentor\Reflection\DocBlock\Tag\MethodTag as LegacyMethodTag;
+
+/**
+ * @author Théo FIDRY
+ *
+ * @internal
+ */
+final class LegacyClassTagRetriever implements MethodTagRetrieverInterface
+{
+ /**
+ * @param \ReflectionClass $reflectionClass
+ *
+ * @return LegacyMethodTag[]
+ */
+ public function getTagList(\ReflectionClass $reflectionClass)
+ {
+ $phpdoc = new DocBlock($reflectionClass->getDocComment());
+
+ return $phpdoc->getTagsByName('method');
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/PhpDocumentor/MethodTagRetrieverInterface.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/PhpDocumentor/MethodTagRetrieverInterface.php
new file mode 100644
index 00000000..d3989dad
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/PhpDocumentor/MethodTagRetrieverInterface.php
@@ -0,0 +1,30 @@
+
+ * Marcello Duarte
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Prophecy\PhpDocumentor;
+
+use phpDocumentor\Reflection\DocBlock\Tag\MethodTag as LegacyMethodTag;
+use phpDocumentor\Reflection\DocBlock\Tags\Method;
+
+/**
+ * @author Théo FIDRY
+ *
+ * @internal
+ */
+interface MethodTagRetrieverInterface
+{
+ /**
+ * @param \ReflectionClass $reflectionClass
+ *
+ * @return LegacyMethodTag[]|Method[]
+ */
+ public function getTagList(\ReflectionClass $reflectionClass);
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Promise/ReturnArgumentPromise.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Promise/ReturnArgumentPromise.php
index a06724bc..39bfeea0 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Promise/ReturnArgumentPromise.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Promise/ReturnArgumentPromise.php
@@ -37,10 +37,10 @@ class ReturnArgumentPromise implements PromiseInterface
public function __construct($index = 0)
{
if (!is_int($index) || $index < 0) {
- throw new InvalidArgumentException(
+ throw new InvalidArgumentException(sprintf(
'Zero-based index expected as argument to ReturnArgumentPromise, but got %s.',
$index
- );
+ ));
}
$this->index = $index;
}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Promise/ThrowPromise.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Promise/ThrowPromise.php
index 8007330a..68a8b471 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Promise/ThrowPromise.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Promise/ThrowPromise.php
@@ -46,13 +46,13 @@ public function __construct($exception)
&& !is_subclass_of($exception, 'Exception')) {
throw new InvalidArgumentException(sprintf(
'Exception class or instance expected as argument to ThrowPromise, but got %s.',
- gettype($exception)
+ $exception
));
}
} elseif (!$exception instanceof \Exception) {
throw new InvalidArgumentException(sprintf(
'Exception class or instance expected as argument to ThrowPromise, but got %s.',
- gettype($exception)
+ is_object($exception) ? get_class($exception) : gettype($exception)
));
}
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Prophecy/MethodProphecy.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Prophecy/MethodProphecy.php
index 426df322..27e80f5b 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Prophecy/MethodProphecy.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Prophecy/MethodProphecy.php
@@ -86,6 +86,7 @@ public function __construct(ObjectProphecy $objectProphecy, $methodName, $argume
case 'Traversable':
case 'Generator':
// Remove eval() when minimum version >=5.5
+ /** @var callable $generator */
$generator = eval('return function () { yield; };');
return $generator();
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Prophecy/ObjectProphecy.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Prophecy/ObjectProphecy.php
index 43dba46d..8d8f8a1b 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Prophecy/ObjectProphecy.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Prophecy/ObjectProphecy.php
@@ -260,6 +260,8 @@ public function __call($methodName, array $arguments)
* Tries to get property value from double.
*
* @param string $name
+ *
+ * @return mixed
*/
public function __get($name)
{
@@ -270,7 +272,7 @@ public function __get($name)
* Tries to set property value to double.
*
* @param string $name
- * @param string $value
+ * @param mixed $value
*/
public function __set($name, $value)
{
diff --git a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Util/ExportUtil.php b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Util/ExportUtil.php
index 54d38321..49ed6a3f 100644
--- a/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Util/ExportUtil.php
+++ b/app/src/vendor/CoreUpdate/vendor/phpspec/prophecy/src/Prophecy/Util/ExportUtil.php
@@ -3,7 +3,7 @@
namespace Prophecy\Util;
use Prophecy\Prophecy\ProphecyInterface;
-use SplObjectStorage;
+use SebastianBergmann\RecursionContext\Context;
/*
* This file is part of the Prophecy.
@@ -15,73 +15,85 @@
*/
/**
- * Exporting utility.
- *
- * This class is derived from the PHPUnit testing framework.
- *
- * @author Sebastiaan Stok
- * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License>
+ * This class is a modification from sebastianbergmann/exporter
+ * @see https://github.com/sebastianbergmann/exporter
*/
class ExportUtil
{
/**
- * Exports a value into a string.
+ * Exports a value as a string
*
* The output of this method is similar to the output of print_r(), but
* improved in various aspects:
*
* - NULL is rendered as "null" (instead of "")
- * - true is rendered as "true" (instead of "1")
+ * - TRUE is rendered as "true" (instead of "1")
* - FALSE is rendered as "false" (instead of "")
* - Strings are always quoted with single quotes
* - Carriage returns and newlines are normalized to \n
* - Recursion and repeated rendering is treated properly
*
- * @param mixed $value The value to export
- * @param integer $indentation The indentation level of the 2nd+ line
- *
+ * @param mixed $value
+ * @param int $indentation The indentation level of the 2nd+ line
* @return string
*/
public static function export($value, $indentation = 0)
{
- return static::recursiveExport($value, $indentation);
+ return self::recursiveExport($value, $indentation);
}
/**
* Converts an object to an array containing all of its private, protected
* and public properties.
*
- * @param object $object
- *
+ * @param mixed $value
* @return array
*/
- public static function toArray($object)
+ public static function toArray($value)
{
+ if (!is_object($value)) {
+ return (array) $value;
+ }
+
$array = array();
- foreach ((array) $object as $key => $value) {
+ foreach ((array) $value as $key => $val) {
// properties are transformed to keys in the following way:
-
// private $property => "\0Classname\0property"
// protected $property => "\0*\0property"
// public $property => "property"
-
if (preg_match('/^\0.+\0(.+)$/', $key, $matches)) {
$key = $matches[1];
}
- $array[$key] = $value;
+ // See https://github.com/php/php-src/commit/5721132
+ if ($key === "\0gcdata") {
+ continue;
+ }
+
+ $array[$key] = $val;
}
// Some internal classes like SplObjectStorage don't work with the
- // above (fast) mechanism nor with reflection
+ // above (fast) mechanism nor with reflection in Zend.
// Format the output similarly to print_r() in this case
- if ($object instanceof SplObjectStorage) {
- foreach ($object as $key => $value) {
- $array[spl_object_hash($value)] = array(
- 'obj' => $value,
- 'inf' => $object->getInfo(),
+ if ($value instanceof \SplObjectStorage) {
+ // However, the fast method does work in HHVM, and exposes the
+ // internal implementation. Hide it again.
+ if (property_exists('\SplObjectStorage', '__storage')) {
+ unset($array['__storage']);
+ } elseif (property_exists('\SplObjectStorage', 'storage')) {
+ unset($array['storage']);
+ }
+
+ if (property_exists('\SplObjectStorage', '__key')) {
+ unset($array['__key']);
+ }
+
+ foreach ($value as $key => $val) {
+ $array[spl_object_hash($val)] = array(
+ 'obj' => $val,
+ 'inf' => $value->getInfo(),
);
}
}
@@ -90,16 +102,15 @@ public static function toArray($object)
}
/**
- * Recursive implementation of export.
- *
- * @param mixed $value The value to export
- * @param integer $indentation The indentation level of the 2nd+ line
- * @param array $processedObjects Contains all objects that were already
- * rendered
+ * Recursive implementation of export
*
+ * @param mixed $value The value to export
+ * @param int $indentation The indentation level of the 2nd+ line
+ * @param \SebastianBergmann\RecursionContext\Context $processed Previously processed objects
* @return string
+ * @see SebastianBergmann\Exporter\Exporter::export
*/
- protected static function recursiveExport($value, $indentation, &$processedObjects = array())
+ protected static function recursiveExport(&$value, $indentation, $processed = null)
{
if ($value === null) {
return 'null';
@@ -113,73 +124,88 @@ protected static function recursiveExport($value, $indentation, &$processedObjec
return 'false';
}
+ if (is_float($value) && floatval(intval($value)) === $value) {
+ return "$value.0";
+ }
+
+ if (is_resource($value)) {
+ return sprintf(
+ 'resource(%d) of type (%s)',
+ $value,
+ get_resource_type($value)
+ );
+ }
+
if (is_string($value)) {
// Match for most non printable chars somewhat taking multibyte chars into account
if (preg_match('/[^\x09-\x0d\x20-\xff]/', $value)) {
return 'Binary String: 0x' . bin2hex($value);
}
- return "'" . str_replace(array("\r\n", "\n\r", "\r"), array("\n", "\n", "\n"), $value) . "'";
+ return "'" .
+ str_replace(array("\r\n", "\n\r", "\r"), array("\n", "\n", "\n"), $value) .
+ "'";
}
- $origValue = $value;
-
- if (is_object($value)) {
- if ($value instanceof ProphecyInterface) {
- return sprintf('%s Object (*Prophecy*)', get_class($value));
- } elseif (in_array($value, $processedObjects, true)) {
- return sprintf('%s Object (*RECURSION*)', get_class($value));
- }
-
- $processedObjects[] = $value;
+ $whitespace = str_repeat(' ', 4 * $indentation);
- // Convert object to array
- $value = self::toArray($value);
+ if (!$processed) {
+ $processed = new Context;
}
if (is_array($value)) {
- $whitespace = str_repeat(' ', $indentation);
-
- // There seems to be no other way to check arrays for recursion
- // http://www.php.net/manual/en/language.types.array.php#73936
- preg_match_all('/\n \[(\w+)\] => Array\s+\*RECURSION\*/', print_r($value, true), $matches);
- $recursiveKeys = array_unique($matches[1]);
-
- // Convert to valid array keys
- // Numeric integer strings are automatically converted to integers
- // by PHP
- foreach ($recursiveKeys as $key => $recursiveKey) {
- if ((string) (integer) $recursiveKey === $recursiveKey) {
- $recursiveKeys[$key] = (integer) $recursiveKey;
- }
+ if (($key = $processed->contains($value)) !== false) {
+ return 'Array &' . $key;
}
- $content = '';
-
- foreach ($value as $key => $val) {
- if (in_array($key, $recursiveKeys, true)) {
- $val = 'Array (*RECURSION*)';
- } else {
- $val = self::recursiveExport($val, $indentation + 1, $processedObjects);
+ $key = $processed->add($value);
+ $values = '';
+
+ if (count($value) > 0) {
+ foreach ($value as $k => $v) {
+ $values .= sprintf(
+ '%s %s => %s' . "\n",
+ $whitespace,
+ self::recursiveExport($k, $indentation),
+ self::recursiveExport($value[$k], $indentation + 1, $processed)
+ );
}
- $content .= $whitespace . ' ' . self::export($key) . ' => ' . $val . "\n";
+ $values = "\n" . $values . $whitespace;
}
- if (strlen($content) > 0) {
- $content = "\n" . $content . $whitespace;
+ return sprintf('Array &%s (%s)', $key, $values);
+ }
+
+ if (is_object($value)) {
+ $class = get_class($value);
+
+ if ($value instanceof ProphecyInterface) {
+ return sprintf('%s Object (*Prophecy*)', $class);
+ } elseif ($hash = $processed->contains($value)) {
+ return sprintf('%s:%s Object', $class, $hash);
}
- return sprintf(
- "%s (%s)",
- is_object($origValue) ? sprintf('%s:%s', get_class($origValue), spl_object_hash($origValue)) . ' Object' : 'Array', $content
- );
- }
+ $hash = $processed->add($value);
+ $values = '';
+ $array = self::toArray($value);
+
+ if (count($array) > 0) {
+ foreach ($array as $k => $v) {
+ $values .= sprintf(
+ '%s %s => %s' . "\n",
+ $whitespace,
+ self::recursiveExport($k, $indentation),
+ self::recursiveExport($v, $indentation + 1, $processed)
+ );
+ }
+
+ $values = "\n" . $values . $whitespace;
+ }
- if (is_double($value) && (double)(integer) $value === $value) {
- return $value . '.0';
+ return sprintf('%s:%s Object (%s)', $class, $hash, $values);
}
- return (string) $value;
+ return var_export($value, true);
}
}
diff --git a/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/AbstractLogger.php b/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/AbstractLogger.php
index 00f90345..5a68a234 100644
--- a/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/AbstractLogger.php
+++ b/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/AbstractLogger.php
@@ -15,7 +15,8 @@ abstract class AbstractLogger implements LoggerInterface
* System is unusable.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function emergency($message, array $context = array())
@@ -30,7 +31,8 @@ public function emergency($message, array $context = array())
* trigger the SMS alerts and wake you up.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function alert($message, array $context = array())
@@ -44,7 +46,8 @@ public function alert($message, array $context = array())
* Example: Application component unavailable, unexpected exception.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function critical($message, array $context = array())
@@ -57,7 +60,8 @@ public function critical($message, array $context = array())
* be logged and monitored.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function error($message, array $context = array())
@@ -72,7 +76,8 @@ public function error($message, array $context = array())
* that are not necessarily wrong.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function warning($message, array $context = array())
@@ -84,7 +89,8 @@ public function warning($message, array $context = array())
* Normal but significant events.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function notice($message, array $context = array())
@@ -98,7 +104,8 @@ public function notice($message, array $context = array())
* Example: User logs in, SQL logs.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function info($message, array $context = array())
@@ -110,7 +117,8 @@ public function info($message, array $context = array())
* Detailed debug information.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function debug($message, array $context = array())
diff --git a/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LogLevel.php b/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LogLevel.php
index e32c151c..9cebcace 100644
--- a/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LogLevel.php
+++ b/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LogLevel.php
@@ -3,16 +3,16 @@
namespace Psr\Log;
/**
- * Describes log levels
+ * Describes log levels.
*/
class LogLevel
{
const EMERGENCY = 'emergency';
- const ALERT = 'alert';
- const CRITICAL = 'critical';
- const ERROR = 'error';
- const WARNING = 'warning';
- const NOTICE = 'notice';
- const INFO = 'info';
- const DEBUG = 'debug';
+ const ALERT = 'alert';
+ const CRITICAL = 'critical';
+ const ERROR = 'error';
+ const WARNING = 'warning';
+ const NOTICE = 'notice';
+ const INFO = 'info';
+ const DEBUG = 'debug';
}
diff --git a/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LoggerAwareInterface.php b/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LoggerAwareInterface.php
index 2eebc4eb..e84191ba 100644
--- a/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LoggerAwareInterface.php
+++ b/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LoggerAwareInterface.php
@@ -3,14 +3,15 @@
namespace Psr\Log;
/**
- * Describes a logger-aware instance
+ * Describes a logger-aware instance.
*/
interface LoggerAwareInterface
{
/**
- * Sets a logger instance on the object
+ * Sets a logger instance on the object.
*
* @param LoggerInterface $logger
+ *
* @return null
*/
public function setLogger(LoggerInterface $logger);
diff --git a/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LoggerAwareTrait.php b/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LoggerAwareTrait.php
index f087a3da..639f79bd 100644
--- a/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LoggerAwareTrait.php
+++ b/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LoggerAwareTrait.php
@@ -7,12 +7,16 @@
*/
trait LoggerAwareTrait
{
- /** @var LoggerInterface */
+ /**
+ * The logger instance.
+ *
+ * @var LoggerInterface
+ */
protected $logger;
/**
* Sets a logger.
- *
+ *
* @param LoggerInterface $logger
*/
public function setLogger(LoggerInterface $logger)
diff --git a/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LoggerInterface.php b/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LoggerInterface.php
index 476bb962..16c04ade 100644
--- a/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LoggerInterface.php
+++ b/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LoggerInterface.php
@@ -3,14 +3,14 @@
namespace Psr\Log;
/**
- * Describes a logger instance
+ * Describes a logger instance.
*
* The message MUST be a string or object implementing __toString().
*
* The message MAY contain placeholders in the form: {foo} where foo
* will be replaced by the context data in key "foo".
*
- * The context array can contain arbitrary data, the only assumption that
+ * The context array can contain arbitrary data. The only assumption that
* can be made by implementors is that if an Exception instance is given
* to produce a stack trace, it MUST be in a key named "exception".
*
@@ -23,7 +23,8 @@ interface LoggerInterface
* System is unusable.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function emergency($message, array $context = array());
@@ -35,7 +36,8 @@ public function emergency($message, array $context = array());
* trigger the SMS alerts and wake you up.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function alert($message, array $context = array());
@@ -46,7 +48,8 @@ public function alert($message, array $context = array());
* Example: Application component unavailable, unexpected exception.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function critical($message, array $context = array());
@@ -56,7 +59,8 @@ public function critical($message, array $context = array());
* be logged and monitored.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function error($message, array $context = array());
@@ -68,7 +72,8 @@ public function error($message, array $context = array());
* that are not necessarily wrong.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function warning($message, array $context = array());
@@ -77,7 +82,8 @@ public function warning($message, array $context = array());
* Normal but significant events.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function notice($message, array $context = array());
@@ -88,7 +94,8 @@ public function notice($message, array $context = array());
* Example: User logs in, SQL logs.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function info($message, array $context = array());
@@ -97,7 +104,8 @@ public function info($message, array $context = array());
* Detailed debug information.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function debug($message, array $context = array());
@@ -105,9 +113,10 @@ public function debug($message, array $context = array());
/**
* Logs with an arbitrary level.
*
- * @param mixed $level
+ * @param mixed $level
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function log($level, $message, array $context = array());
diff --git a/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LoggerTrait.php b/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LoggerTrait.php
index 59124960..d8c611b9 100644
--- a/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LoggerTrait.php
+++ b/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/LoggerTrait.php
@@ -6,8 +6,8 @@
* This is a simple Logger trait that classes unable to extend AbstractLogger
* (because they extend another class, etc) can include.
*
- * It simply delegates all log-level-specific methods to the `log` method to
- * reduce boilerplate code that a simple Logger that does the same thing with
+ * It simply delegates all log-level-specific methods to the `log` method to
+ * reduce boilerplate code that a simple Logger that does the same thing with
* messages regardless of the error level has to implement.
*/
trait LoggerTrait
@@ -16,7 +16,8 @@ trait LoggerTrait
* System is unusable.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function emergency($message, array $context = array())
@@ -31,7 +32,8 @@ public function emergency($message, array $context = array())
* trigger the SMS alerts and wake you up.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function alert($message, array $context = array())
@@ -45,7 +47,8 @@ public function alert($message, array $context = array())
* Example: Application component unavailable, unexpected exception.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function critical($message, array $context = array())
@@ -58,7 +61,8 @@ public function critical($message, array $context = array())
* be logged and monitored.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function error($message, array $context = array())
@@ -73,7 +77,8 @@ public function error($message, array $context = array())
* that are not necessarily wrong.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function warning($message, array $context = array())
@@ -85,7 +90,8 @@ public function warning($message, array $context = array())
* Normal but significant events.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function notice($message, array $context = array())
@@ -99,7 +105,8 @@ public function notice($message, array $context = array())
* Example: User logs in, SQL logs.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function info($message, array $context = array())
@@ -111,7 +118,8 @@ public function info($message, array $context = array())
* Detailed debug information.
*
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function debug($message, array $context = array())
@@ -122,9 +130,10 @@ public function debug($message, array $context = array())
/**
* Logs with an arbitrary level.
*
- * @param mixed $level
+ * @param mixed $level
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
abstract public function log($level, $message, array $context = array());
diff --git a/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/NullLogger.php b/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/NullLogger.php
index 553a3c59..3fc5100f 100644
--- a/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/NullLogger.php
+++ b/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/NullLogger.php
@@ -3,7 +3,7 @@
namespace Psr\Log;
/**
- * This Logger can be used to avoid conditional log calls
+ * This Logger can be used to avoid conditional log calls.
*
* Logging should always be optional, and if no logger is provided to your
* library creating a NullLogger instance to have something to throw logs at
@@ -15,9 +15,10 @@ class NullLogger extends AbstractLogger
/**
* Logs with an arbitrary level.
*
- * @param mixed $level
+ * @param mixed $level
* @param string $message
- * @param array $context
+ * @param array $context
+ *
* @return null
*/
public function log($level, $message, array $context = array())
diff --git a/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/Test/LoggerInterfaceTest.php b/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/Test/LoggerInterfaceTest.php
index a9328151..f66a2b02 100644
--- a/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/Test/LoggerInterfaceTest.php
+++ b/app/src/vendor/CoreUpdate/vendor/psr/log/Psr/Log/Test/LoggerInterfaceTest.php
@@ -2,28 +2,32 @@
namespace Psr\Log\Test;
+use Psr\Log\LoggerInterface;
use Psr\Log\LogLevel;
/**
- * Provides a base test class for ensuring compliance with the LoggerInterface
+ * Provides a base test class for ensuring compliance with the LoggerInterface.
*
- * Implementors can extend the class and implement abstract methods to run this as part of their test suite
+ * Implementors can extend the class and implement abstract methods to run this
+ * as part of their test suite.
*/
abstract class LoggerInterfaceTest extends \PHPUnit_Framework_TestCase
{
/**
* @return LoggerInterface
*/
- abstract function getLogger();
+ abstract public function getLogger();
/**
- * This must return the log messages in order with a simple formatting: " "
+ * This must return the log messages in order.
*
- * Example ->error('Foo') would yield "error Foo"
+ * The simple formatting of the messages is: " ".
+ *
+ * Example ->error('Foo') would yield "error Foo".
*
* @return string[]
*/
- abstract function getLogs();
+ abstract public function getLogs();
public function testImplements()
{
@@ -61,7 +65,7 @@ public function provideLevelsAndMessages()
}
/**
- * @expectedException Psr\Log\InvalidArgumentException
+ * @expectedException \Psr\Log\InvalidArgumentException
*/
public function testThrowsOnInvalidLevel()
{
@@ -80,12 +84,19 @@ public function testContextReplacement()
public function testObjectCastToString()
{
- $dummy = $this->getMock('Psr\Log\Test\DummyTest', array('__toString'));
+ if (method_exists($this, 'createMock')) {
+ $dummy = $this->createMock('Psr\Log\Test\DummyTest', array('__toString'));
+ } else {
+ $dummy = $this->getMock('Psr\Log\Test\DummyTest', array('__toString'));
+ }
$dummy->expects($this->once())
->method('__toString')
->will($this->returnValue('DUMMY'));
$this->getLogger()->warning($dummy);
+
+ $expected = array('warning DUMMY');
+ $this->assertEquals($expected, $this->getLogs());
}
public function testContextCanContainAnything()
@@ -102,15 +113,28 @@ public function testContextCanContainAnything()
);
$this->getLogger()->warning('Crazy context data', $context);
+
+ $expected = array('warning Crazy context data');
+ $this->assertEquals($expected, $this->getLogs());
}
public function testContextExceptionKeyCanBeExceptionOrOtherValues()
{
- $this->getLogger()->warning('Random message', array('exception' => 'oops'));
- $this->getLogger()->critical('Uncaught Exception!', array('exception' => new \LogicException('Fail')));
+ $logger = $this->getLogger();
+ $logger->warning('Random message', array('exception' => 'oops'));
+ $logger->critical('Uncaught Exception!', array('exception' => new \LogicException('Fail')));
+
+ $expected = array(
+ 'warning Random message',
+ 'critical Uncaught Exception!'
+ );
+ $this->assertEquals($expected, $this->getLogs());
}
}
class DummyTest
{
-}
\ No newline at end of file
+ public function __toString()
+ {
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/.gitignore b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/.gitignore
index 2c20551f..d571f240 100644
--- a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/.gitignore
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/.gitignore
@@ -2,6 +2,7 @@
phpunit.xml
composer.lock
composer.phar
+vendor/
cache.properties
build/SebastianBergmann
build/LICENSE
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/.php_cs b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/.php_cs
new file mode 100644
index 00000000..286a5d68
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/.php_cs
@@ -0,0 +1,66 @@
+files()
+ ->in('src')
+ ->in('tests')
+ ->name('*.php');
+
+return Symfony\CS\Config\Config::create()
+ ->level(\Symfony\CS\FixerInterface::NONE_LEVEL)
+ ->fixers(
+ array(
+ 'align_double_arrow',
+ 'align_equals',
+ 'braces',
+ 'concat_with_spaces',
+ 'duplicate_semicolon',
+ 'elseif',
+ 'empty_return',
+ 'encoding',
+ 'eof_ending',
+ 'extra_empty_lines',
+ 'function_call_space',
+ 'function_declaration',
+ 'indentation',
+ 'join_function',
+ 'line_after_namespace',
+ 'linefeed',
+ 'list_commas',
+ 'lowercase_constants',
+ 'lowercase_keywords',
+ 'method_argument_space',
+ 'multiple_use',
+ 'namespace_no_leading_whitespace',
+ 'no_blank_lines_after_class_opening',
+ 'no_empty_lines_after_phpdocs',
+ 'parenthesis',
+ 'php_closing_tag',
+ 'phpdoc_indent',
+ 'phpdoc_no_access',
+ 'phpdoc_no_empty_return',
+ 'phpdoc_no_package',
+ 'phpdoc_params',
+ 'phpdoc_scalar',
+ 'phpdoc_separation',
+ 'phpdoc_to_comment',
+ 'phpdoc_trim',
+ 'phpdoc_types',
+ 'phpdoc_var_without_name',
+ 'remove_lines_between_uses',
+ 'return',
+ 'self_accessor',
+ 'short_tag',
+ 'single_line_after_imports',
+ 'single_quote',
+ 'spaces_before_semicolon',
+ 'spaces_cast',
+ 'ternary_spaces',
+ 'trailing_spaces',
+ 'trim_array_spaces',
+ 'unused_use',
+ 'visibility',
+ 'whitespacy_lines'
+ )
+ )
+ ->finder($finder);
+
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Chunk.php b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Chunk.php
index 79d13fc8..eb081038 100644
--- a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Chunk.php
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Chunk.php
@@ -11,12 +11,6 @@
namespace SebastianBergmann\Diff;
/**
- * @package Diff
- * @author Sebastian Bergmann
- * @author Kore Nordmann
- * @copyright Sebastian Bergmann
- * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License
- * @link http://www.github.com/sebastianbergmann/diff
*/
class Chunk
{
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Diff.php b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Diff.php
index 45aaae6f..c4a08924 100644
--- a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Diff.php
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Diff.php
@@ -11,12 +11,6 @@
namespace SebastianBergmann\Diff;
/**
- * @package Diff
- * @author Sebastian Bergmann
- * @author Kore Nordmann
- * @copyright Sebastian Bergmann
- * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License
- * @link http://www.github.com/sebastianbergmann/diff
*/
class Diff
{
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Differ.php b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Differ.php
index 76630ed2..4960111e 100644
--- a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Differ.php
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Differ.php
@@ -16,13 +16,6 @@
/**
* Diff implementation.
- *
- * @package Diff
- * @author Sebastian Bergmann
- * @author Kore Nordmann
- * @copyright Sebastian Bergmann
- * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License
- * @link http://www.github.com/sebastianbergmann/diff
*/
class Differ
{
@@ -31,20 +24,27 @@ class Differ
*/
private $header;
+ /**
+ * @var bool
+ */
+ private $showNonDiffLines;
+
/**
* @param string $header
*/
- public function __construct($header = "--- Original\n+++ New\n")
+ public function __construct($header = "--- Original\n+++ New\n", $showNonDiffLines = true)
{
- $this->header = $header;
+ $this->header = $header;
+ $this->showNonDiffLines = $showNonDiffLines;
}
/**
* Returns the diff between two arrays or strings as string.
*
- * @param array|string $from
- * @param array|string $to
- * @param LongestCommonSubsequence $lcs
+ * @param array|string $from
+ * @param array|string $to
+ * @param LongestCommonSubsequence $lcs
+ *
* @return string
*/
public function diff($from, $to, LongestCommonSubsequence $lcs = null)
@@ -97,7 +97,9 @@ public function diff($from, $to, LongestCommonSubsequence $lcs = null)
}
if ($newChunk) {
- $buffer .= "@@ @@\n";
+ if ($this->showNonDiffLines === true) {
+ $buffer .= "@@ @@\n";
+ }
$newChunk = false;
}
@@ -105,7 +107,7 @@ public function diff($from, $to, LongestCommonSubsequence $lcs = null)
$buffer .= '+' . $diff[$i][0] . "\n";
} elseif ($diff[$i][1] === 2 /* REMOVED */) {
$buffer .= '-' . $diff[$i][0] . "\n";
- } else {
+ } elseif ($this->showNonDiffLines === true) {
$buffer .= ' ' . $diff[$i][0] . "\n";
}
}
@@ -124,9 +126,10 @@ public function diff($from, $to, LongestCommonSubsequence $lcs = null)
* - 1: ADDED: $token was added to $from
* - 0: OLD: $token is not changed in $to
*
- * @param array|string $from
- * @param array|string $to
- * @param LongestCommonSubsequence $lcs
+ * @param array|string $from
+ * @param array|string $to
+ * @param LongestCommonSubsequence $lcs
+ *
* @return array
*/
public function diffToArray($from, $to, LongestCommonSubsequence $lcs = null)
@@ -221,8 +224,9 @@ public function diffToArray($from, $to, LongestCommonSubsequence $lcs = null)
}
/**
- * @param array $from
- * @param array $to
+ * @param array $from
+ * @param array $to
+ *
* @return LongestCommonSubsequence
*/
private function selectLcsImplementation(array $from, array $to)
@@ -243,9 +247,10 @@ private function selectLcsImplementation(array $from, array $to)
/**
* Calculates the estimated memory footprint for the DP-based method.
*
- * @param array $from
- * @param array $to
- * @return integer
+ * @param array $from
+ * @param array $to
+ *
+ * @return int
*/
private function calculateEstimatedFootprint(array $from, array $to)
{
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/LCS/LongestCommonSubsequence.php b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/LCS/LongestCommonSubsequence.php
index 80364745..5ea9cf96 100644
--- a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/LCS/LongestCommonSubsequence.php
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/LCS/LongestCommonSubsequence.php
@@ -12,21 +12,15 @@
/**
* Interface for implementations of longest common subsequence calculation.
- *
- * @package Diff
- * @author Sebastian Bergmann
- * @author Kore Nordmann
- * @copyright Sebastian Bergmann
- * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License
- * @link http://www.github.com/sebastianbergmann/diff
*/
interface LongestCommonSubsequence
{
/**
* Calculates the longest common subsequence of two arrays.
*
- * @param array $from
- * @param array $to
+ * @param array $from
+ * @param array $to
+ *
* @return array
*/
public function calculate(array $from, array $to);
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/LCS/MemoryEfficientLongestCommonSubsequenceImplementation.php b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/LCS/MemoryEfficientLongestCommonSubsequenceImplementation.php
index 6213607a..b990dc03 100644
--- a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/LCS/MemoryEfficientLongestCommonSubsequenceImplementation.php
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/LCS/MemoryEfficientLongestCommonSubsequenceImplementation.php
@@ -12,21 +12,15 @@
/**
* Memory-efficient implementation of longest common subsequence calculation.
- *
- * @package Diff
- * @author Sebastian Bergmann
- * @author Denes Lados
- * @copyright Sebastian Bergmann
- * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License
- * @link http://www.github.com/sebastianbergmann/diff
*/
class MemoryEfficientImplementation implements LongestCommonSubsequence
{
/**
* Calculates the longest common subsequence of two arrays.
*
- * @param array $from
- * @param array $to
+ * @param array $from
+ * @param array $to
+ *
* @return array
*/
public function calculate(array $from, array $to)
@@ -73,6 +67,7 @@ public function calculate(array $from, array $to)
/**
* @param array $from
* @param array $to
+ *
* @return array
*/
private function length(array $from, array $to)
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/LCS/TimeEfficientLongestCommonSubsequenceImplementation.php b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/LCS/TimeEfficientLongestCommonSubsequenceImplementation.php
index b569586d..4fc9d3ec 100644
--- a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/LCS/TimeEfficientLongestCommonSubsequenceImplementation.php
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/LCS/TimeEfficientLongestCommonSubsequenceImplementation.php
@@ -12,21 +12,15 @@
/**
* Time-efficient implementation of longest common subsequence calculation.
- *
- * @package Diff
- * @author Sebastian Bergmann
- * @author Kore Nordmann
- * @copyright Sebastian Bergmann
- * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License
- * @link http://www.github.com/sebastianbergmann/diff
*/
class TimeEfficientImplementation implements LongestCommonSubsequence
{
/**
* Calculates the longest common subsequence of two arrays.
*
- * @param array $from
- * @param array $to
+ * @param array $from
+ * @param array $to
+ *
* @return array
*/
public function calculate(array $from, array $to)
@@ -47,7 +41,7 @@ public function calculate(array $from, array $to)
for ($i = 1; $i <= $fromLength; ++$i) {
for ($j = 1; $j <= $toLength; ++$j) {
- $o = ($j * $width) + $i;
+ $o = ($j * $width) + $i;
$matrix[$o] = max(
$matrix[$o - 1],
$matrix[$o - $width],
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Line.php b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Line.php
index 28c66aa2..e0a96b90 100644
--- a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Line.php
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Line.php
@@ -11,17 +11,11 @@
namespace SebastianBergmann\Diff;
/**
- * @package Diff
- * @author Sebastian Bergmann
- * @author Kore Nordmann
- * @copyright Sebastian Bergmann
- * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License
- * @link http://www.github.com/sebastianbergmann/diff
*/
class Line
{
- const ADDED = 1;
- const REMOVED = 2;
+ const ADDED = 1;
+ const REMOVED = 2;
const UNCHANGED = 3;
/**
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Parser.php b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Parser.php
index 79e2413e..b01511b4 100644
--- a/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Parser.php
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/diff/src/Parser.php
@@ -12,18 +12,12 @@
/**
* Unified diff parser.
- *
- * @package Diff
- * @author Sebastian Bergmann
- * @author Kore Nordmann
- * @copyright Sebastian Bergmann
- * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License
- * @link http://www.github.com/sebastianbergmann/diff
*/
class Parser
{
/**
- * @param string $string
+ * @param string $string
+ *
* @return Diff[]
*/
public function parse($string)
@@ -78,7 +72,7 @@ private function parseFileDiff(Diff $diff, array $lines)
isset($match['endrange']) ? max(1, $match['endrange']) : 1
);
- $chunks[] = $chunk;
+ $chunks[] = $chunk;
$diffLines = array();
continue;
}
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/environment/.gitignore b/app/src/vendor/CoreUpdate/vendor/sebastian/environment/.gitignore
index 57948548..441848b7 100644
--- a/app/src/vendor/CoreUpdate/vendor/sebastian/environment/.gitignore
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/environment/.gitignore
@@ -2,4 +2,3 @@
/vendor
/composer.lock
/composer.phar
-/phpunit.xml
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/environment/phpunit.xml b/app/src/vendor/CoreUpdate/vendor/sebastian/environment/phpunit.xml
new file mode 100644
index 00000000..f3b710c3
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/environment/phpunit.xml
@@ -0,0 +1,20 @@
+
+
+
+ tests
+
+
+
+
+ src
+
+
+
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/environment/phpunit.xml.dist b/app/src/vendor/CoreUpdate/vendor/sebastian/environment/phpunit.xml.dist
deleted file mode 100644
index 75148fde..00000000
--- a/app/src/vendor/CoreUpdate/vendor/sebastian/environment/phpunit.xml.dist
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
- tests
-
-
-
-
- src
-
-
-
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/environment/src/Console.php b/app/src/vendor/CoreUpdate/vendor/sebastian/environment/src/Console.php
index 9f15d547..2aff1d65 100644
--- a/app/src/vendor/CoreUpdate/vendor/sebastian/environment/src/Console.php
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/environment/src/Console.php
@@ -29,7 +29,7 @@ class Console
public function hasColorSupport()
{
if (DIRECTORY_SEPARATOR == '\\') {
- return false !== getenv('ANSICON') || 'ON' === getenv('ConEmuANSI');
+ return false !== getenv('ANSICON') || 'ON' === getenv('ConEmuANSI') || 'xterm' === getenv('TERM');
}
if (!defined('STDOUT')) {
@@ -46,22 +46,54 @@ public function hasColorSupport()
*/
public function getNumberOfColumns()
{
- // Windows terminals have a fixed size of 80
- // but one column is used for the cursor.
if (DIRECTORY_SEPARATOR == '\\') {
- return 79;
+ $columns = 80;
+
+ if (preg_match('/^(\d+)x\d+ \(\d+x(\d+)\)$/', trim(getenv('ANSICON')), $matches)) {
+ $columns = $matches[1];
+ } elseif (function_exists('proc_open')) {
+ $process = proc_open(
+ 'mode CON',
+ array(
+ 1 => array('pipe', 'w'),
+ 2 => array('pipe', 'w')
+ ),
+ $pipes,
+ null,
+ null,
+ array('suppress_errors' => true)
+ );
+
+ if (is_resource($process)) {
+ $info = stream_get_contents($pipes[1]);
+
+ fclose($pipes[1]);
+ fclose($pipes[2]);
+ proc_close($process);
+
+ if (preg_match('/--------+\r?\n.+?(\d+)\r?\n.+?(\d+)\r?\n/', $info, $matches)) {
+ $columns = $matches[2];
+ }
+ }
+ }
+
+ return $columns - 1;
}
if (!$this->isInteractive(self::STDIN)) {
return 80;
}
- if (preg_match('#\d+ (\d+)#', shell_exec('stty size'), $match) === 1) {
- return (int) $match[1];
+ if (function_exists('shell_exec') && preg_match('#\d+ (\d+)#', shell_exec('stty size'), $match) === 1) {
+ if ((int) $match[1] > 0) {
+ return (int) $match[1];
+ }
}
- if (preg_match('#columns = (\d+);#', shell_exec('stty'), $match) === 1) {
- return (int) $match[1];
+ if (function_exists('shell_exec') && preg_match('#columns = (\d+);#', shell_exec('stty'), $match) === 1) {
+ if ((int) $match[1] > 0) {
+ return (int) $match[1];
+ }
}
return 80;
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/environment/src/Runtime.php b/app/src/vendor/CoreUpdate/vendor/sebastian/environment/src/Runtime.php
index f12071a6..179473bf 100644
--- a/app/src/vendor/CoreUpdate/vendor/sebastian/environment/src/Runtime.php
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/environment/src/Runtime.php
@@ -50,7 +50,9 @@ public function getBinary()
// PHP >= 5.4.0
if (self::$binary === null && defined('PHP_BINARY')) {
- self::$binary = escapeshellarg(PHP_BINARY);
+ if (PHP_BINARY !== '') {
+ self::$binary = escapeshellarg(PHP_BINARY);
+ }
}
// PHP < 5.4.0
@@ -123,7 +125,7 @@ public function getVendorUrl()
if ($this->isHHVM()) {
return 'http://hhvm.com/';
} else {
- return 'http://php.net/';
+ return 'https://secure.php.net/';
}
}
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/exporter/src/Exporter.php b/app/src/vendor/CoreUpdate/vendor/sebastian/exporter/src/Exporter.php
index a9f5157c..5578aa8d 100644
--- a/app/src/vendor/CoreUpdate/vendor/sebastian/exporter/src/Exporter.php
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/exporter/src/Exporter.php
@@ -89,11 +89,10 @@ public function shortenedRecursiveExport(&$data, Context $context = null)
* Exports a value into a single-line string
*
* The output of this method is similar to the output of
- * SebastianBergmann\Exporter\Exporter::export. This method guarantees
- * thought that the result contains now newlines.
+ * SebastianBergmann\Exporter\Exporter::export().
*
- * Newlines are replaced by the visible string '\n'. Contents of arrays
- * and objects (if any) are replaced by '...'.
+ * Newlines are replaced by the visible string '\n'.
+ * Contents of arrays and objects (if any) are replaced by '...'.
*
* @param mixed $value
* @return string
@@ -104,8 +103,14 @@ public function shortenedExport($value)
if (is_string($value)) {
$string = $this->export($value);
- if (strlen($string) > 40) {
- $string = substr($string, 0, 30) . '...' . substr($string, -7);
+ if (function_exists('mb_strlen')) {
+ if (mb_strlen($string) > 40) {
+ $string = mb_substr($string, 0, 30) . '...' . mb_substr($string, -7);
+ }
+ } else {
+ if (strlen($string) > 40) {
+ $string = substr($string, 0, 30) . '...' . substr($string, -7);
+ }
}
return str_replace("\n", '\n', $string);
@@ -225,7 +230,7 @@ protected function recursiveExport(&$value, $indentation, $processed = null)
if (is_string($value)) {
// Match for most non printable chars somewhat taking multibyte chars into account
- if (preg_match('/[^\x09-\x0d\x20-\xff]/', $value)) {
+ if (preg_match('/[^\x09-\x0d\x1b\x20-\xff]/', $value)) {
return 'Binary String: 0x' . bin2hex($value);
}
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/recursion-context/.gitignore b/app/src/vendor/CoreUpdate/vendor/sebastian/recursion-context/.gitignore
index db2ceb75..3beb10f9 100644
--- a/app/src/vendor/CoreUpdate/vendor/sebastian/recursion-context/.gitignore
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/recursion-context/.gitignore
@@ -2,6 +2,7 @@
phpunit.xml
composer.lock
composer.phar
+vendor/
cache.properties
build/LICENSE
build/README.md
diff --git a/app/src/vendor/CoreUpdate/vendor/sebastian/recursion-context/src/Context.php b/app/src/vendor/CoreUpdate/vendor/sebastian/recursion-context/src/Context.php
index 06bf6ce8..b853d104 100644
--- a/app/src/vendor/CoreUpdate/vendor/sebastian/recursion-context/src/Context.php
+++ b/app/src/vendor/CoreUpdate/vendor/sebastian/recursion-context/src/Context.php
@@ -121,7 +121,7 @@ private function addObject($object)
private function containsArray(array &$array)
{
$keys = array_keys($this->arrays, $array, true);
- $hash = '_Key_' . hash('sha512', microtime(true));
+ $hash = '_Key_' . microtime(true);
foreach ($keys as $key) {
$this->arrays[$key][$hash] = $hash;
diff --git a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/.gitignore b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/.gitignore
index b6b16af6..c49a5d8d 100644
--- a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/.gitignore
+++ b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/.gitignore
@@ -1,2 +1,3 @@
+vendor/
composer.lock
phpunit.xml
diff --git a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Dumper.php b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Dumper.php
index 39cdcfc5..05817f5d 100644
--- a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Dumper.php
+++ b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Dumper.php
@@ -28,10 +28,14 @@ class Dumper
/**
* Sets the indentation.
*
- * @param int $num The amount of spaces to use for indentation of nested nodes.
+ * @param int $num The amount of spaces to use for indentation of nested nodes
*/
public function setIndentation($num)
{
+ if ($num < 1) {
+ throw new \InvalidArgumentException('The indentation must be greater than zero.');
+ }
+
$this->indentation = (int) $num;
}
@@ -54,7 +58,7 @@ public function dump($input, $inline = 0, $indent = 0, $exceptionOnInvalidType =
if ($inline <= 0 || !is_array($input) || empty($input)) {
$output .= $prefix.Inline::dump($input, $exceptionOnInvalidType, $objectSupport);
} else {
- $isAHash = array_keys($input) !== range(0, count($input) - 1);
+ $isAHash = Inline::isHash($input);
foreach ($input as $key => $value) {
$willBeInlined = $inline - 1 <= 0 || !is_array($value) || empty($value);
diff --git a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Escaper.php b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Escaper.php
index ac325a2c..a74f14dd 100644
--- a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Escaper.php
+++ b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Escaper.php
@@ -16,6 +16,8 @@
* YAML strings.
*
* @author Matthew Lewinski
+ *
+ * @internal
*/
class Escaper
{
@@ -31,20 +33,20 @@ class Escaper
"\x08", "\x09", "\x0a", "\x0b", "\x0c", "\x0d", "\x0e", "\x0f",
"\x10", "\x11", "\x12", "\x13", "\x14", "\x15", "\x16", "\x17",
"\x18", "\x19", "\x1a", "\x1b", "\x1c", "\x1d", "\x1e", "\x1f",
- "\xc2\x85", "\xc2\xa0", "\xe2\x80\xa8", "\xe2\x80\xa9",);
+ "\xc2\x85", "\xc2\xa0", "\xe2\x80\xa8", "\xe2\x80\xa9");
private static $escaped = array('\\\\', '\\"', '\\\\', '\\"',
'\\0', '\\x01', '\\x02', '\\x03', '\\x04', '\\x05', '\\x06', '\\a',
'\\b', '\\t', '\\n', '\\v', '\\f', '\\r', '\\x0e', '\\x0f',
'\\x10', '\\x11', '\\x12', '\\x13', '\\x14', '\\x15', '\\x16', '\\x17',
'\\x18', '\\x19', '\\x1a', '\\e', '\\x1c', '\\x1d', '\\x1e', '\\x1f',
- '\\N', '\\_', '\\L', '\\P',);
+ '\\N', '\\_', '\\L', '\\P');
/**
* Determines if a PHP value would require double quoting in YAML.
*
* @param string $value A PHP value
*
- * @return bool True if the value would require double quotes.
+ * @return bool True if the value would require double quotes
*/
public static function requiresDoubleQuoting($value)
{
@@ -68,7 +70,7 @@ public static function escapeWithDoubleQuotes($value)
*
* @param string $value A PHP value
*
- * @return bool True if the value would require single quotes.
+ * @return bool True if the value would require single quotes
*/
public static function requiresSingleQuoting($value)
{
diff --git a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Inline.php b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Inline.php
index a5b53bd9..717cbfd5 100644
--- a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Inline.php
+++ b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Inline.php
@@ -52,7 +52,7 @@ public static function parse($value, $exceptionOnInvalidType = false, $objectSup
return '';
}
- if (function_exists('mb_internal_encoding') && ((int) ini_get('mbstring.func_overload')) & 2) {
+ if (2 /* MB_OVERLOAD_STRING */ & (int) ini_get('mbstring.func_overload')) {
$mbEncoding = mb_internal_encoding();
mb_internal_encoding('ASCII');
}
@@ -105,7 +105,7 @@ public static function dump($value, $exceptionOnInvalidType = false, $objectSupp
return 'null';
case is_object($value):
if ($objectSupport) {
- return '!!php/object:'.serialize($value);
+ return '!php/object:'.serialize($value);
}
if ($exceptionOnInvalidType) {
@@ -157,6 +157,28 @@ public static function dump($value, $exceptionOnInvalidType = false, $objectSupp
}
}
+ /**
+ * Check if given array is hash or just normal indexed array.
+ *
+ * @internal
+ *
+ * @param array $value The PHP array to check
+ *
+ * @return bool true if value is hash array, false otherwise
+ */
+ public static function isHash(array $value)
+ {
+ $expectedKey = 0;
+
+ foreach ($value as $key => $val) {
+ if ($key !== $expectedKey++) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
/**
* Dumps a PHP array to a YAML string.
*
@@ -169,11 +191,7 @@ public static function dump($value, $exceptionOnInvalidType = false, $objectSupp
private static function dumpArray($value, $exceptionOnInvalidType, $objectSupport)
{
// array
- $keys = array_keys($value);
- $keysCount = count($keys);
- if ((1 === $keysCount && '0' == $keys[0])
- || ($keysCount > 1 && array_reduce($keys, function ($v, $w) { return (int) $v + $w; }, 0) === $keysCount * ($keysCount - 1) / 2)
- ) {
+ if ($value && !self::isHash($value)) {
$output = array();
foreach ($value as $val) {
$output[] = self::dump($val, $exceptionOnInvalidType, $objectSupport);
@@ -182,7 +200,7 @@ private static function dumpArray($value, $exceptionOnInvalidType, $objectSuppor
return sprintf('[%s]', implode(', ', $output));
}
- // mapping
+ // hash
$output = array();
foreach ($value as $key => $val) {
$output[] = sprintf('%s: %s', self::dump($key, $exceptionOnInvalidType, $objectSupport), self::dump($val, $exceptionOnInvalidType, $objectSupport));
@@ -204,6 +222,8 @@ private static function dumpArray($value, $exceptionOnInvalidType, $objectSuppor
* @return string A YAML string
*
* @throws ParseException When malformed inline YAML string is parsed
+ *
+ * @internal
*/
public static function parseScalar($scalar, $delimiters = null, $stringDelimiters = array('"', "'"), &$i = 0, $evaluate = true, $references = array())
{
@@ -234,6 +254,14 @@ public static function parseScalar($scalar, $delimiters = null, $stringDelimiter
throw new ParseException(sprintf('Malformed inline YAML string (%s).', $scalar));
}
+ // a non-quoted string cannot start with @ or ` (reserved) nor with a scalar indicator (| or >)
+ if ($output && ('@' === $output[0] || '`' === $output[0] || '|' === $output[0] || '>' === $output[0])) {
+ @trigger_error(sprintf('Not quoting the scalar "%s" starting with "%s" is deprecated since Symfony 2.8 and will throw a ParseException in 3.0.', $output, $output[0]), E_USER_DEPRECATED);
+
+ // to be thrown in 3.0
+ // throw new ParseException(sprintf('The reserved indicator "%s" cannot start a plain scalar; you need to quote the scalar.', $output[0]));
+ }
+
if ($evaluate) {
$output = self::evaluateScalar($output, $references);
}
@@ -469,6 +497,16 @@ private static function evaluateScalar($scalar, $references = array())
return (string) substr($scalar, 5);
case 0 === strpos($scalar, '! '):
return (int) self::parseScalar(substr($scalar, 2));
+ case 0 === strpos($scalar, '!php/object:'):
+ if (self::$objectSupport) {
+ return unserialize(substr($scalar, 12));
+ }
+
+ if (self::$exceptionOnInvalidType) {
+ throw new ParseException('Object support when parsing a YAML file has been disabled.');
+ }
+
+ return;
case 0 === strpos($scalar, '!!php/object:'):
if (self::$objectSupport) {
return unserialize(substr($scalar, 13));
@@ -502,7 +540,12 @@ private static function evaluateScalar($scalar, $references = array())
case preg_match('/^(-|\+)?[0-9,]+(\.[0-9]+)?$/', $scalar):
return (float) str_replace(',', '', $scalar);
case preg_match(self::getTimestampRegex(), $scalar):
- return strtotime($scalar);
+ $timeZone = date_default_timezone_get();
+ date_default_timezone_set('UTC');
+ $time = strtotime($scalar);
+ date_default_timezone_set($timeZone);
+
+ return $time;
}
default:
return (string) $scalar;
diff --git a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/LICENSE b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/LICENSE
index 43028bc6..12a74531 100644
--- a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/LICENSE
+++ b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/LICENSE
@@ -1,4 +1,4 @@
-Copyright (c) 2004-2015 Fabien Potencier
+Copyright (c) 2004-2016 Fabien Potencier
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Parser.php b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Parser.php
index 04f2237b..66b81c5f 100644
--- a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Parser.php
+++ b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Parser.php
@@ -25,19 +25,26 @@ class Parser
const FOLDED_SCALAR_PATTERN = self::BLOCK_SCALAR_HEADER_PATTERN;
private $offset = 0;
+ private $totalNumberOfLines;
private $lines = array();
private $currentLineNb = -1;
private $currentLine = '';
private $refs = array();
+ private $skippedLineNumbers = array();
+ private $locallySkippedLineNumbers = array();
/**
* Constructor.
*
- * @param int $offset The offset of YAML document (used for line numbers in error messages)
+ * @param int $offset The offset of YAML document (used for line numbers in error messages)
+ * @param int|null $totalNumberOfLines The overall number of lines being parsed
+ * @param int[] $skippedLineNumbers Number of comment lines that have been skipped by the parser
*/
- public function __construct($offset = 0)
+ public function __construct($offset = 0, $totalNumberOfLines = null, array $skippedLineNumbers = array())
{
$this->offset = $offset;
+ $this->totalNumberOfLines = $totalNumberOfLines;
+ $this->skippedLineNumbers = $skippedLineNumbers;
}
/**
@@ -62,7 +69,11 @@ public function parse($value, $exceptionOnInvalidType = false, $objectSupport =
$value = $this->cleanup($value);
$this->lines = explode("\n", $value);
- if (function_exists('mb_internal_encoding') && ((int) ini_get('mbstring.func_overload')) & 2) {
+ if (null === $this->totalNumberOfLines) {
+ $this->totalNumberOfLines = count($this->lines);
+ }
+
+ if (2 /* MB_OVERLOAD_STRING */ & (int) ini_get('mbstring.func_overload')) {
$mbEncoding = mb_internal_encoding();
mb_internal_encoding('UTF-8');
}
@@ -83,7 +94,7 @@ public function parse($value, $exceptionOnInvalidType = false, $objectSupport =
$isRef = $mergeNode = false;
if (preg_match('#^\-((?P\s+)(?P.+?))?\s*$#u', $this->currentLine, $values)) {
if ($context && 'mapping' == $context) {
- throw new ParseException('You cannot define a sequence item when in a mapping');
+ throw new ParseException('You cannot define a sequence item when in a mapping', $this->getRealCurrentLineNb() + 1, $this->currentLine);
}
$context = 'sequence';
@@ -94,27 +105,20 @@ public function parse($value, $exceptionOnInvalidType = false, $objectSupport =
// array
if (!isset($values['value']) || '' == trim($values['value'], ' ') || 0 === strpos(ltrim($values['value'], ' '), '#')) {
- $c = $this->getRealCurrentLineNb() + 1;
- $parser = new self($c);
- $parser->refs = &$this->refs;
- $data[] = $parser->parse($this->getNextEmbedBlock(null, true), $exceptionOnInvalidType, $objectSupport, $objectForMap);
+ $data[] = $this->parseBlock($this->getRealCurrentLineNb() + 1, $this->getNextEmbedBlock(null, true), $exceptionOnInvalidType, $objectSupport, $objectForMap);
} else {
if (isset($values['leadspaces'])
&& preg_match('#^(?P'.Inline::REGEX_QUOTED_STRING.'|[^ \'"\{\[].*?) *\:(\s+(?P.+?))?\s*$#u', $values['value'], $matches)
) {
// this is a compact notation element, add to next block and parse
- $c = $this->getRealCurrentLineNb();
- $parser = new self($c);
- $parser->refs = &$this->refs;
-
$block = $values['value'];
if ($this->isNextLineIndented()) {
$block .= "\n".$this->getNextEmbedBlock($this->getCurrentLineIndentation() + strlen($values['leadspaces']) + 1);
}
- $data[] = $parser->parse($block, $exceptionOnInvalidType, $objectSupport, $objectForMap);
+ $data[] = $this->parseBlock($this->getRealCurrentLineNb(), $block, $exceptionOnInvalidType, $objectSupport, $objectForMap);
} else {
- $data[] = $this->parseValue($values['value'], $exceptionOnInvalidType, $objectSupport, $objectForMap);
+ $data[] = $this->parseValue($values['value'], $exceptionOnInvalidType, $objectSupport, $objectForMap, $context);
}
}
if ($isRef) {
@@ -122,7 +126,7 @@ public function parse($value, $exceptionOnInvalidType = false, $objectSupport =
}
} elseif (preg_match('#^(?P'.Inline::REGEX_QUOTED_STRING.'|[^ \'"\[\{].*?) *\:(\s+(?P.+?))?\s*$#u', $this->currentLine, $values) && (false === strpos($values['key'], ' #') || in_array($values['key'][0], array('"', "'")))) {
if ($context && 'sequence' == $context) {
- throw new ParseException('You cannot define a mapping item when in a sequence');
+ throw new ParseException('You cannot define a mapping item when in a sequence', $this->currentLineNb + 1, $this->currentLine);
}
$context = 'mapping';
@@ -168,10 +172,7 @@ public function parse($value, $exceptionOnInvalidType = false, $objectSupport =
} else {
$value = $this->getNextEmbedBlock();
}
- $c = $this->getRealCurrentLineNb() + 1;
- $parser = new self($c);
- $parser->refs = &$this->refs;
- $parsed = $parser->parse($value, $exceptionOnInvalidType, $objectSupport, $objectForMap);
+ $parsed = $this->parseBlock($this->getRealCurrentLineNb() + 1, $value, $exceptionOnInvalidType, $objectSupport, $objectForMap);
if (!is_array($parsed)) {
throw new ParseException('YAML merge keys used with a scalar value instead of an array.', $this->getRealCurrentLineNb() + 1, $this->currentLine);
@@ -219,10 +220,7 @@ public function parse($value, $exceptionOnInvalidType = false, $objectSupport =
$data[$key] = null;
}
} else {
- $c = $this->getRealCurrentLineNb() + 1;
- $parser = new self($c);
- $parser->refs = &$this->refs;
- $value = $parser->parse($this->getNextEmbedBlock(), $exceptionOnInvalidType, $objectSupport, $objectForMap);
+ $value = $this->parseBlock($this->getRealCurrentLineNb() + 1, $this->getNextEmbedBlock(), $exceptionOnInvalidType, $objectSupport, $objectForMap);
// Spec: Keys MUST be unique; first one wins.
// But overwriting is allowed when a merge node is used in current block.
if ($allowOverwrite || !isset($data[$key])) {
@@ -230,7 +228,7 @@ public function parse($value, $exceptionOnInvalidType = false, $objectSupport =
}
}
} else {
- $value = $this->parseValue($values['value'], $exceptionOnInvalidType, $objectSupport, $objectForMap);
+ $value = $this->parseValue($values['value'], $exceptionOnInvalidType, $objectSupport, $objectForMap, $context);
// Spec: Keys MUST be unique; first one wins.
// But overwriting is allowed when a merge node is used in current block.
if ($allowOverwrite || !isset($data[$key])) {
@@ -243,7 +241,7 @@ public function parse($value, $exceptionOnInvalidType = false, $objectSupport =
} else {
// multiple documents are not supported
if ('---' === $this->currentLine) {
- throw new ParseException('Multiple documents are not supported.');
+ throw new ParseException('Multiple documents are not supported.', $this->currentLineNb + 1, $this->currentLine);
}
// 1-liner optionally followed by newline(s)
@@ -257,17 +255,6 @@ public function parse($value, $exceptionOnInvalidType = false, $objectSupport =
throw $e;
}
- if (is_array($value)) {
- $first = reset($value);
- if (is_string($first) && 0 === strpos($first, '*')) {
- $data = array();
- foreach ($value as $alias) {
- $data[] = $this->refs[substr($alias, 1)];
- }
- $value = $data;
- }
- }
-
if (isset($mbEncoding)) {
mb_internal_encoding($mbEncoding);
}
@@ -303,9 +290,37 @@ public function parse($value, $exceptionOnInvalidType = false, $objectSupport =
mb_internal_encoding($mbEncoding);
}
+ if ($objectForMap && !is_object($data) && 'mapping' === $context) {
+ $object = new \stdClass();
+
+ foreach ($data as $key => $value) {
+ $object->$key = $value;
+ }
+
+ $data = $object;
+ }
+
return empty($data) ? null : $data;
}
+ private function parseBlock($offset, $yaml, $exceptionOnInvalidType, $objectSupport, $objectForMap)
+ {
+ $skippedLineNumbers = $this->skippedLineNumbers;
+
+ foreach ($this->locallySkippedLineNumbers as $lineNumber) {
+ if ($lineNumber < $offset) {
+ continue;
+ }
+
+ $skippedLineNumbers[] = $lineNumber;
+ }
+
+ $parser = new self($offset, $this->totalNumberOfLines, $skippedLineNumbers);
+ $parser->refs = &$this->refs;
+
+ return $parser->parse($yaml, $exceptionOnInvalidType, $objectSupport, $objectForMap);
+ }
+
/**
* Returns the current line number (takes the offset into account).
*
@@ -313,7 +328,17 @@ public function parse($value, $exceptionOnInvalidType = false, $objectSupport =
*/
private function getRealCurrentLineNb()
{
- return $this->currentLineNb + $this->offset;
+ $realCurrentLineNumber = $this->currentLineNb + $this->offset;
+
+ foreach ($this->skippedLineNumbers as $skippedLineNumber) {
+ if ($skippedLineNumber > $realCurrentLineNumber) {
+ break;
+ }
+
+ ++$realCurrentLineNumber;
+ }
+
+ return $realCurrentLineNumber;
}
/**
@@ -339,6 +364,11 @@ private function getCurrentLineIndentation()
private function getNextEmbedBlock($indentation = null, $inSequence = false)
{
$oldLineIndentation = $this->getCurrentLineIndentation();
+ $blockScalarIndentations = array();
+
+ if ($this->isBlockScalarHeader()) {
+ $blockScalarIndentations[] = $this->getCurrentLineIndentation();
+ }
if (!$this->moveToNextLine()) {
return;
@@ -347,7 +377,7 @@ private function getNextEmbedBlock($indentation = null, $inSequence = false)
if (null === $indentation) {
$newIndent = $this->getCurrentLineIndentation();
- $unindentedEmbedBlock = $this->isStringUnIndentedCollectionItem($this->currentLine);
+ $unindentedEmbedBlock = $this->isStringUnIndentedCollectionItem();
if (!$this->isCurrentLineEmpty() && 0 === $newIndent && !$unindentedEmbedBlock) {
throw new ParseException('Indentation problem.', $this->getRealCurrentLineNb() + 1, $this->currentLine);
@@ -373,20 +403,33 @@ private function getNextEmbedBlock($indentation = null, $inSequence = false)
return;
}
- $isItUnindentedCollection = $this->isStringUnIndentedCollectionItem($this->currentLine);
+ $isItUnindentedCollection = $this->isStringUnIndentedCollectionItem();
+
+ if (empty($blockScalarIndentations) && $this->isBlockScalarHeader()) {
+ $blockScalarIndentations[] = $this->getCurrentLineIndentation();
+ }
- // Comments must not be removed inside a block scalar
- $removeCommentsPattern = '~'.self::BLOCK_SCALAR_HEADER_PATTERN.'$~';
- $removeComments = !preg_match($removeCommentsPattern, $this->currentLine);
+ $previousLineIndentation = $this->getCurrentLineIndentation();
while ($this->moveToNextLine()) {
$indent = $this->getCurrentLineIndentation();
- if ($indent === $newIndent) {
- $removeComments = !preg_match($removeCommentsPattern, $this->currentLine);
+ // terminate all block scalars that are more indented than the current line
+ if (!empty($blockScalarIndentations) && $indent < $previousLineIndentation && trim($this->currentLine) !== '') {
+ foreach ($blockScalarIndentations as $key => $blockScalarIndentation) {
+ if ($blockScalarIndentation >= $this->getCurrentLineIndentation()) {
+ unset($blockScalarIndentations[$key]);
+ }
+ }
+ }
+
+ if (empty($blockScalarIndentations) && !$this->isCurrentLineComment() && $this->isBlockScalarHeader()) {
+ $blockScalarIndentations[] = $this->getCurrentLineIndentation();
}
- if ($isItUnindentedCollection && !$this->isStringUnIndentedCollectionItem($this->currentLine) && $newIndent === $indent) {
+ $previousLineIndentation = $indent;
+
+ if ($isItUnindentedCollection && !$this->isStringUnIndentedCollectionItem() && $newIndent === $indent) {
$this->moveToPreviousLine();
break;
}
@@ -396,7 +439,16 @@ private function getNextEmbedBlock($indentation = null, $inSequence = false)
continue;
}
- if ($removeComments && $this->isCurrentLineComment()) {
+ // we ignore "comment" lines only when we are not inside a scalar block
+ if (empty($blockScalarIndentations) && $this->isCurrentLineComment()) {
+ // remember ignored comment lines (they are used later in nested
+ // parser calls to determine real line numbers)
+ //
+ // CAUTION: beware to not populate the global property here as it
+ // will otherwise influence the getRealCurrentLineNb() call here
+ // for consecutive comment lines and subsequent embedded blocks
+ $this->locallySkippedLineNumbers[] = $this->getRealCurrentLineNb();
+
continue;
}
@@ -432,10 +484,18 @@ private function moveToNextLine()
/**
* Moves the parser to the previous line.
+ *
+ * @return bool
*/
private function moveToPreviousLine()
{
+ if ($this->currentLineNb < 1) {
+ return false;
+ }
+
$this->currentLine = $this->lines[--$this->currentLineNb];
+
+ return true;
}
/**
@@ -445,12 +505,13 @@ private function moveToPreviousLine()
* @param bool $exceptionOnInvalidType True if an exception must be thrown on invalid types false otherwise
* @param bool $objectSupport True if object support is enabled, false otherwise
* @param bool $objectForMap true if maps should return a stdClass instead of array()
+ * @param string $context The parser context (either sequence or mapping)
*
* @return mixed A PHP value
*
* @throws ParseException When reference does not exist
*/
- private function parseValue($value, $exceptionOnInvalidType, $objectSupport, $objectForMap)
+ private function parseValue($value, $exceptionOnInvalidType, $objectSupport, $objectForMap, $context)
{
if (0 === strpos($value, '*')) {
if (false !== $pos = strpos($value, '#')) {
@@ -460,7 +521,7 @@ private function parseValue($value, $exceptionOnInvalidType, $objectSupport, $ob
}
if (!array_key_exists($value, $this->refs)) {
- throw new ParseException(sprintf('Reference "%s" does not exist.', $value), $this->currentLine);
+ throw new ParseException(sprintf('Reference "%s" does not exist.', $value), $this->currentLineNb + 1, $this->currentLine);
}
return $this->refs[$value];
@@ -473,7 +534,16 @@ private function parseValue($value, $exceptionOnInvalidType, $objectSupport, $ob
}
try {
- return Inline::parse($value, $exceptionOnInvalidType, $objectSupport, $objectForMap, $this->refs);
+ $parsedValue = Inline::parse($value, $exceptionOnInvalidType, $objectSupport, $objectForMap, $this->refs);
+
+ if ('mapping' === $context && '"' !== $value[0] && "'" !== $value[0] && '[' !== $value[0] && '{' !== $value[0] && '!' !== $value[0] && false !== strpos($parsedValue, ': ')) {
+ @trigger_error(sprintf('Using a colon in the unquoted mapping value "%s" in line %d is deprecated since Symfony 2.8 and will throw a ParseException in 3.0.', $value, $this->getRealCurrentLineNb() + 1), E_USER_DEPRECATED);
+
+ // to be thrown in 3.0
+ // throw new ParseException('A colon cannot be used in an unquoted mapping value.');
+ }
+
+ return $parsedValue;
} catch (ParseException $e) {
$e->setParsedLine($this->getRealCurrentLineNb() + 1);
$e->setSnippet($this->currentLine);
@@ -499,13 +569,13 @@ private function parseBlockScalar($style, $chomping = '', $indentation = 0)
}
$isCurrentLineBlank = $this->isCurrentLineBlank();
- $text = '';
+ $blockLines = array();
// leading blank lines are consumed before determining indentation
while ($notEOF && $isCurrentLineBlank) {
// newline only if not EOF
if ($notEOF = $this->moveToNextLine()) {
- $text .= "\n";
+ $blockLines[] = '';
$isCurrentLineBlank = $this->isCurrentLineBlank();
}
}
@@ -526,37 +596,61 @@ private function parseBlockScalar($style, $chomping = '', $indentation = 0)
preg_match($pattern, $this->currentLine, $matches)
)
) {
- if ($isCurrentLineBlank) {
- $text .= substr($this->currentLine, $indentation);
+ if ($isCurrentLineBlank && strlen($this->currentLine) > $indentation) {
+ $blockLines[] = substr($this->currentLine, $indentation);
+ } elseif ($isCurrentLineBlank) {
+ $blockLines[] = '';
} else {
- $text .= $matches[1];
+ $blockLines[] = $matches[1];
}
// newline only if not EOF
if ($notEOF = $this->moveToNextLine()) {
- $text .= "\n";
$isCurrentLineBlank = $this->isCurrentLineBlank();
}
}
} elseif ($notEOF) {
- $text .= "\n";
+ $blockLines[] = '';
}
if ($notEOF) {
+ $blockLines[] = '';
$this->moveToPreviousLine();
+ } elseif (!$notEOF && !$this->isCurrentLineLastLineInDocument()) {
+ $blockLines[] = '';
}
// folded style
if ('>' === $style) {
- // folded lines
- // replace all non-leading/non-trailing single newlines with spaces
- preg_match('/(\n*)$/', $text, $matches);
- $text = preg_replace('/(?currentLine, ' ');
- return $ltrimmedLine[0] === '#';
+ return '' !== $ltrimmedLine && $ltrimmedLine[0] === '#';
+ }
+
+ private function isCurrentLineLastLineInDocument()
+ {
+ return ($this->offset + $this->currentLineNb) >= ($this->totalNumberOfLines - 1);
}
/**
@@ -690,7 +789,7 @@ private function isNextLineUnIndentedCollection()
if (
$this->getCurrentLineIndentation() == $currentIndentation
&&
- $this->isStringUnIndentedCollectionItem($this->currentLine)
+ $this->isStringUnIndentedCollectionItem()
) {
$ret = true;
}
@@ -707,6 +806,16 @@ private function isNextLineUnIndentedCollection()
*/
private function isStringUnIndentedCollectionItem()
{
- return (0 === strpos($this->currentLine, '- '));
+ return '-' === rtrim($this->currentLine) || 0 === strpos($this->currentLine, '- ');
+ }
+
+ /**
+ * Tests whether or not the current line is the header of a block scalar.
+ *
+ * @return bool
+ */
+ private function isBlockScalarHeader()
+ {
+ return (bool) preg_match('~'.self::BLOCK_SCALAR_HEADER_PATTERN.'$~', $this->currentLine);
}
}
diff --git a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/README.md b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/README.md
index 85a97867..0d324881 100644
--- a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/README.md
+++ b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/README.md
@@ -1,21 +1,13 @@
Yaml Component
==============
-YAML implements most of the YAML 1.2 specification.
-
-```php
-use Symfony\Component\Yaml\Yaml;
-
-$array = Yaml::parse(file_get_contents(filename));
-
-print Yaml::dump($array);
-```
+The Yaml component loads and dumps YAML files.
Resources
---------
-You can run the unit tests with the following command:
-
- $ cd path/to/Symfony/Component/Yaml/
- $ composer install
- $ phpunit
+ * [Documentation](https://symfony.com/doc/current/components/yaml/index.html)
+ * [Contributing](https://symfony.com/doc/current/contributing/index.html)
+ * [Report issues](https://github.com/symfony/symfony/issues) and
+ [send Pull Requests](https://github.com/symfony/symfony/pulls)
+ in the [main Symfony repository](https://github.com/symfony/symfony)
diff --git a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Unescaper.php b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Unescaper.php
index 1b5e5ec2..1e02cc9f 100644
--- a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Unescaper.php
+++ b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Unescaper.php
@@ -16,6 +16,8 @@
* YAML strings.
*
* @author Matthew Lewinski
+ *
+ * @internal
*/
class Unescaper
{
@@ -32,14 +34,14 @@ class Unescaper
/**
* Regex fragment that matches an escaped character in a double quoted string.
*/
- const REGEX_ESCAPED_CHARACTER = "\\\\([0abt\tnvfre \\\"\\/\\\\N_LP]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})";
+ const REGEX_ESCAPED_CHARACTER = '\\\\(x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8}|.)';
/**
* Unescapes a single quoted string.
*
- * @param string $value A single quoted string.
+ * @param string $value A single quoted string
*
- * @return string The unescaped string.
+ * @return string The unescaped string
*/
public function unescapeSingleQuotedString($value)
{
@@ -49,9 +51,9 @@ public function unescapeSingleQuotedString($value)
/**
* Unescapes a double quoted string.
*
- * @param string $value A double quoted string.
+ * @param string $value A double quoted string
*
- * @return string The unescaped string.
+ * @return string The unescaped string
*/
public function unescapeDoubleQuotedString($value)
{
@@ -70,10 +72,13 @@ public function unescapeDoubleQuotedString($value)
* @param string $value An escaped character
*
* @return string The unescaped character
+ *
+ * @internal This method is public to be usable as callback. It should not
+ * be used in user code. Should be changed in 3.0.
*/
public function unescapeCharacter($value)
{
- switch ($value{1}) {
+ switch ($value[1]) {
case '0':
return "\x0";
case 'a':
@@ -120,6 +125,10 @@ public function unescapeCharacter($value)
return self::utf8chr(hexdec(substr($value, 2, 4)));
case 'U':
return self::utf8chr(hexdec(substr($value, 2, 8)));
+ default:
+ @trigger_error('Not escaping a backslash in a double-quoted string is deprecated since Symfony 2.8 and will throw a ParseException in 3.0.', E_USER_DEPRECATED);
+
+ return $value;
}
}
diff --git a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Yaml.php b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Yaml.php
index 2d5f62c3..6fc4e927 100644
--- a/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Yaml.php
+++ b/app/src/vendor/CoreUpdate/vendor/symfony/yaml/Yaml.php
@@ -21,10 +21,7 @@
class Yaml
{
/**
- * Parses YAML into a PHP array.
- *
- * The parse method, when supplied with a YAML stream (string or file),
- * will do its best to convert YAML in a file into a PHP array.
+ * Parses YAML into a PHP value.
*
* Usage:
*
@@ -43,7 +40,7 @@ class Yaml
* @param bool $objectSupport True if object support is enabled, false otherwise
* @param bool $objectForMap True if maps should return a stdClass instead of array()
*
- * @return array The YAML converted to a PHP array
+ * @return mixed The YAML converted to a PHP value
*
* @throws ParseException If the YAML is not valid
*/
@@ -76,24 +73,28 @@ public static function parse($input, $exceptionOnInvalidType = false, $objectSup
}
/**
- * Dumps a PHP array to a YAML string.
+ * Dumps a PHP value to a YAML string.
*
* The dump method, when supplied with an array, will do its best
* to convert the array into friendly YAML.
*
- * @param array $array PHP array
+ * @param mixed $input The PHP value
* @param int $inline The level where you switch to inline YAML
- * @param int $indent The amount of spaces to use for indentation of nested nodes.
+ * @param int $indent The amount of spaces to use for indentation of nested nodes
* @param bool $exceptionOnInvalidType true if an exception must be thrown on invalid types (a PHP resource or object), false otherwise
* @param bool $objectSupport true if object support is enabled, false otherwise
*
- * @return string A YAML string representing the original PHP array
+ * @return string A YAML string representing the original PHP value
*/
- public static function dump($array, $inline = 2, $indent = 4, $exceptionOnInvalidType = false, $objectSupport = false)
+ public static function dump($input, $inline = 2, $indent = 4, $exceptionOnInvalidType = false, $objectSupport = false)
{
+ if ($indent < 1) {
+ throw new \InvalidArgumentException('The indentation must be greater than zero.');
+ }
+
$yaml = new Dumper();
$yaml->setIndentation($indent);
- return $yaml->dump($array, $inline, 0, $exceptionOnInvalidType, $objectSupport);
+ return $yaml->dump($input, $inline, 0, $exceptionOnInvalidType, $objectSupport);
}
}
diff --git a/app/src/vendor/CoreUpdate/vendor/webmozart/assert/.composer-auth.json b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/.composer-auth.json
new file mode 100644
index 00000000..eea80018
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/.composer-auth.json
@@ -0,0 +1,7 @@
+{
+ "github-oauth": {
+ "github.com": "PLEASE DO NOT USE THIS TOKEN IN YOUR OWN PROJECTS/FORKS",
+ "github.com": "This token is reserved for testing the webmozart/* repositories",
+ "github.com": "a9debbffdd953ee9b3b82dbc3b807cde2086bb86"
+ }
+}
diff --git a/app/src/vendor/CoreUpdate/vendor/webmozart/assert/.gitignore b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/.gitignore
new file mode 100644
index 00000000..3a9875b4
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/.gitignore
@@ -0,0 +1,2 @@
+/vendor/
+composer.lock
diff --git a/app/src/vendor/CoreUpdate/vendor/webmozart/assert/.styleci.yml b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/.styleci.yml
new file mode 100644
index 00000000..bb3a52d8
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/.styleci.yml
@@ -0,0 +1,7 @@
+preset: symfony
+
+enabled:
+ - ordered_use
+
+disabled:
+ - empty_return
diff --git a/app/src/vendor/CoreUpdate/vendor/webmozart/assert/.travis.yml b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/.travis.yml
new file mode 100644
index 00000000..bb2c1317
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/.travis.yml
@@ -0,0 +1,35 @@
+language: php
+
+sudo: false
+
+cache:
+ directories:
+ - $HOME/.composer/cache/files
+
+matrix:
+ include:
+ - php: 5.3
+ - php: 5.4
+ - php: 5.5
+ - php: 5.6
+ - php: hhvm
+ - php: nightly
+ - php: 7.0
+ env: COVERAGE=yes
+ - php: 7.0
+ env: COMPOSER_FLAGS='--prefer-lowest --prefer-stable'
+ allow_failures:
+ - php: hhvm
+ - php: nightly
+ fast_finish: true
+
+before_install:
+ - if [[ $TRAVIS_PHP_VERSION != hhvm && $COVERAGE != yes ]]; then phpenv config-rm xdebug.ini; fi;
+ - if [[ $TRAVIS_REPO_SLUG = webmozart/assert ]]; then cp .composer-auth.json ~/.composer/auth.json; fi;
+ - composer self-update
+
+install: composer update $COMPOSER_FLAGS --prefer-dist --no-interaction
+
+script: if [[ $COVERAGE = yes ]]; then vendor/bin/phpunit --verbose --coverage-clover=coverage.clover; else vendor/bin/phpunit --verbose; fi
+
+after_script: if [[ $COVERAGE = yes ]]; then wget https://scrutinizer-ci.com/ocular.phar && php ocular.phar code-coverage:upload --format=php-clover coverage.clover; fi
diff --git a/app/src/vendor/CoreUpdate/vendor/webmozart/assert/LICENSE b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/LICENSE
new file mode 100644
index 00000000..9e2e3075
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/LICENSE
@@ -0,0 +1,20 @@
+The MIT License (MIT)
+
+Copyright (c) 2014 Bernhard Schussek
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/app/src/vendor/CoreUpdate/vendor/webmozart/assert/README.md b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/README.md
new file mode 100644
index 00000000..f72fdc4c
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/README.md
@@ -0,0 +1,235 @@
+Webmozart Assert
+================
+
+[](https://travis-ci.org/webmozart/assert)
+[](https://ci.appveyor.com/project/webmozart/assert/branch/master)
+[](https://packagist.org/packages/webmozart/assert)
+[](https://packagist.org/packages/webmozart/assert)
+[](https://www.versioneye.com/php/webmozart:assert/1.1.0)
+
+Latest release: [1.1.0](https://packagist.org/packages/webmozart/assert#1.1.0)
+
+PHP >= 5.3.9
+
+This library contains efficient assertions to test the input and output of
+your methods. With these assertions, you can greatly reduce the amount of coding
+needed to write a safe implementation.
+
+All assertions in the [`Assert`] class throw an `\InvalidArgumentException` if
+they fail.
+
+FAQ
+---
+
+**What's the difference to [beberlei/assert]?**
+
+This library is heavily inspired by Benjamin Eberlei's wonderful [assert package],
+but fixes a usability issue with error messages that can't be fixed there without
+breaking backwards compatibility.
+
+This package features usable error messages by default. However, you can also
+easily write custom error messages:
+
+```
+Assert::string($path, 'The path is expected to be a string. Got: %s');
+```
+
+In [beberlei/assert], the ordering of the `%s` placeholders is different for
+every assertion. This package, on the contrary, provides consistent placeholder
+ordering for all assertions:
+
+* `%s`: The tested value as string, e.g. `"/foo/bar"`.
+* `%2$s`, `%3$s`, ...: Additional assertion-specific values, e.g. the
+ minimum/maximum length, allowed values, etc.
+
+Check the source code of the assertions to find out details about the additional
+available placeholders.
+
+Installation
+------------
+
+Use [Composer] to install the package:
+
+```
+$ composer require webmozart/assert
+```
+
+Example
+-------
+
+```php
+use Webmozart\Assert\Assert;
+
+class Employee
+{
+ public function __construct($id)
+ {
+ Assert::integer($id, 'The employee ID must be an integer. Got: %s');
+ Assert::greaterThan($id, 0, 'The employee ID must be a positive integer. Got: %s');
+ }
+}
+```
+
+If you create an employee with an invalid ID, an exception is thrown:
+
+```php
+new Employee('foobar');
+// => InvalidArgumentException:
+// The employee ID must be an integer. Got: string
+
+new Employee(-10);
+// => InvalidArgumentException:
+// The employee ID must be a positive integer. Got: -10
+```
+
+Assertions
+----------
+
+The [`Assert`] class provides the following assertions:
+
+### Type Assertions
+
+Method | Description
+----------------------------------------------- | --------------------------------------------------
+`string($value, $message = '')` | Check that a value is a string
+`stringNotEmpty($value, $message = '')` | Check that a value is a non-empty string
+`integer($value, $message = '')` | Check that a value is an integer
+`integerish($value, $message = '')` | Check that a value casts to an integer
+`float($value, $message = '')` | Check that a value is a float
+`numeric($value, $message = '')` | Check that a value is numeric
+`boolean($value, $message = '')` | Check that a value is a boolean
+`scalar($value, $message = '')` | Check that a value is a scalar
+`object($value, $message = '')` | Check that a value is an object
+`resource($value, $type = null, $message = '')` | Check that a value is a resource
+`isCallable($value, $message = '')` | Check that a value is a callable
+`isArray($value, $message = '')` | Check that a value is an array
+`isTraversable($value, $message = '')` | Check that a value is an array or a `\Traversable`
+`isInstanceOf($value, $class, $message = '')` | Check that a value is an `instanceof` a class
+`notInstanceOf($value, $class, $message = '')` | Check that a value is not an `instanceof` a class
+
+### Comparison Assertions
+
+Method | Description
+----------------------------------------------- | --------------------------------------------------
+`true($value, $message = '')` | Check that a value is `true`
+`false($value, $message = '')` | Check that a value is `false`
+`null($value, $message = '')` | Check that a value is `null`
+`notNull($value, $message = '')` | Check that a value is not `null`
+`isEmpty($value, $message = '')` | Check that a value is `empty()`
+`notEmpty($value, $message = '')` | Check that a value is not `empty()`
+`eq($value, $value2, $message = '')` | Check that a value equals another (`==`)
+`notEq($value, $value2, $message = '')` | Check that a value does not equal another (`!=`)
+`same($value, $value2, $message = '')` | Check that a value is identical to another (`===`)
+`notSame($value, $value2, $message = '')` | Check that a value is not identical to another (`!==`)
+`greaterThan($value, $value2, $message = '')` | Check that a value is greater than another
+`greaterThanEq($value, $value2, $message = '')` | Check that a value is greater than or equal to another
+`lessThan($value, $value2, $message = '')` | Check that a value is less than another
+`lessThanEq($value, $value2, $message = '')` | Check that a value is less than or equal to another
+`range($value, $min, $max, $message = '')` | Check that a value is within a range
+`oneOf($value, array $values, $message = '')` | Check that a value is one of a list of values
+
+### String Assertions
+
+You should check that a value is a string with `Assert::string()` before making
+any of the following assertions.
+
+Method | Description
+--------------------------------------------------- | --------------------------------------------------
+`contains($value, $subString, $message = '')` | Check that a string contains a substring
+`startsWith($value, $prefix, $message = '')` | Check that a string has a prefix
+`startsWithLetter($value, $message = '')` | Check that a string starts with a letter
+`endsWith($value, $suffix, $message = '')` | Check that a string has a suffix
+`regex($value, $pattern, $message = '')` | Check that a string matches a regular expression
+`alpha($value, $message = '')` | Check that a string contains letters only
+`digits($value, $message = '')` | Check that a string contains digits only
+`alnum($value, $message = '')` | Check that a string contains letters and digits only
+`lower($value, $message = '')` | Check that a string contains lowercase characters only
+`upper($value, $message = '')` | Check that a string contains uppercase characters only
+`length($value, $length, $message = '')` | Check that a string has a certain number of characters
+`minLength($value, $min, $message = '')` | Check that a string has at least a certain number of characters
+`maxLength($value, $max, $message = '')` | Check that a string has at most a certain number of characters
+`lengthBetween($value, $min, $max, $message = '')` | Check that a string has a length in the given range
+`uuid($value, $message = '')` | Check that a string is a valid UUID
+
+### File Assertions
+
+Method | Description
+----------------------------------- | --------------------------------------------------
+`fileExists($value, $message = '')` | Check that a value is an existing path
+`file($value, $message = '')` | Check that a value is an existing file
+`directory($value, $message = '')` | Check that a value is an existing directory
+`readable($value, $message = '')` | Check that a value is a readable path
+`writable($value, $message = '')` | Check that a value is a writable path
+
+### Object Assertions
+
+Method | Description
+----------------------------------------------------- | --------------------------------------------------
+`classExists($value, $message = '')` | Check that a value is an existing class name
+`subclassOf($value, $class, $message = '')` | Check that a class is a subclass of another
+`implementsInterface($value, $class, $message = '')` | Check that a class implements an interface
+`propertyExists($value, $property, $message = '')` | Check that a property exists in a class/object
+`propertyNotExists($value, $property, $message = '')` | Check that a property does not exist in a class/object
+`methodExists($value, $method, $message = '')` | Check that a method exists in a class/object
+`methodNotExists($value, $method, $message = '')` | Check that a method does not exist in a class/object
+
+### Array Assertions
+
+Method | Description
+------------------------------------------- | --------------------------------------------------
+`keyExists($array, $key, $message = '')` | Check that a key exists in an array
+`keyNotExists($array, $key, $message = '')` | Check that a key does not exist in an array
+
+### Collection Assertions
+
+All of the above assertions can be prefixed with `all*()` to test the contents
+of an array or a `\Traversable`:
+
+```php
+Assert::allIsInstanceOf('Acme\Employee', $employees);
+```
+
+### Nullable Assertions
+
+All of the above assertions can be prefixed with `nullOr*()` to run the
+assertion only if it the value is not `null`:
+
+```php
+Assert::nullOrString($middleName, 'The middle name must be a string or null. Got: %s');
+```
+
+Authors
+-------
+
+* [Bernhard Schussek] a.k.a. [@webmozart]
+* [The Community Contributors]
+
+Contribute
+----------
+
+Contributions to the package are always welcome!
+
+* Report any bugs or issues you find on the [issue tracker].
+* You can grab the source code at the package's [Git repository].
+
+Support
+-------
+
+If you are having problems, send a mail to bschussek@gmail.com or shout out to
+[@webmozart] on Twitter.
+
+License
+-------
+
+All contents of this package are licensed under the [MIT license].
+
+[beberlei/assert]: https://github.com/beberlei/assert
+[assert package]: https://github.com/beberlei/assert
+[Composer]: https://getcomposer.org
+[Bernhard Schussek]: http://webmozarts.com
+[The Community Contributors]: https://github.com/webmozart/assert/graphs/contributors
+[issue tracker]: https://github.com/webmozart/assert
+[Git repository]: https://github.com/webmozart/assert
+[@webmozart]: https://twitter.com/webmozart
+[MIT license]: LICENSE
+[`Assert`]: src/Assert.php
diff --git a/app/src/vendor/CoreUpdate/vendor/webmozart/assert/appveyor.yml b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/appveyor.yml
new file mode 100644
index 00000000..72e614de
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/appveyor.yml
@@ -0,0 +1,36 @@
+build: false
+platform: x86
+clone_folder: c:\projects\webmozart\assert
+
+cache:
+ - c:\php -> appveyor.yml
+
+init:
+ - SET PATH=c:\php;%PATH%
+ - SET COMPOSER_NO_INTERACTION=1
+ - SET PHP=1
+
+install:
+ - IF EXIST c:\php (SET PHP=0) ELSE (mkdir c:\php)
+ - cd c:\php
+ - IF %PHP%==1 appveyor DownloadFile http://windows.php.net/downloads/releases/archives/php-7.0.0-nts-Win32-VC14-x86.zip
+ - IF %PHP%==1 7z x php-7.0.0-nts-Win32-VC14-x86.zip -y >nul
+ - IF %PHP%==1 del /Q *.zip
+ - IF %PHP%==1 echo @php %%~dp0composer.phar %%* > composer.bat
+ - IF %PHP%==1 copy /Y php.ini-development php.ini
+ - IF %PHP%==1 echo max_execution_time=1200 >> php.ini
+ - IF %PHP%==1 echo date.timezone="UTC" >> php.ini
+ - IF %PHP%==1 echo extension_dir=ext >> php.ini
+ - IF %PHP%==1 echo extension=php_curl.dll >> php.ini
+ - IF %PHP%==1 echo extension=php_openssl.dll >> php.ini
+ - IF %PHP%==1 echo extension=php_mbstring.dll >> php.ini
+ - IF %PHP%==1 echo extension=php_fileinfo.dll >> php.ini
+ - appveyor DownloadFile https://getcomposer.org/composer.phar
+ - cd c:\projects\webmozart\assert
+ - mkdir %APPDATA%\Composer
+ - IF %APPVEYOR_REPO_NAME%==webmozart/assert copy /Y .composer-auth.json %APPDATA%\Composer\auth.json
+ - composer update --prefer-dist --no-progress --ansi
+
+test_script:
+ - cd c:\projects\webmozart\assert
+ - vendor\bin\phpunit.bat --verbose
diff --git a/app/src/vendor/CoreUpdate/vendor/webmozart/assert/phpunit.xml.dist b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/phpunit.xml.dist
new file mode 100644
index 00000000..db20e9b4
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/phpunit.xml.dist
@@ -0,0 +1,16 @@
+
+
+
+
+
+ ./tests/
+
+
+
+
+
+
+ ./src/
+
+
+
diff --git a/app/src/vendor/CoreUpdate/vendor/webmozart/assert/src/Assert.php b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/src/Assert.php
new file mode 100644
index 00000000..a5f09bba
--- /dev/null
+++ b/app/src/vendor/CoreUpdate/vendor/webmozart/assert/src/Assert.php
@@ -0,0 +1,903 @@
+
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Webmozart\Assert;
+
+use BadMethodCallException;
+use InvalidArgumentException;
+use Traversable;
+
+/**
+ * Efficient assertions to validate the input/output of your methods.
+ *
+ * @method static void nullOrString($value, $message = '')
+ * @method static void nullOrStringNotEmpty($value, $message = '')
+ * @method static void nullOrInteger($value, $message = '')
+ * @method static void nullOrIntegerish($value, $message = '')
+ * @method static void nullOrFloat($value, $message = '')
+ * @method static void nullOrNumeric($value, $message = '')
+ * @method static void nullOrBoolean($value, $message = '')
+ * @method static void nullOrScalar($value, $message = '')
+ * @method static void nullOrObject($value, $message = '')
+ * @method static void nullOrResource($value, $type = null, $message = '')
+ * @method static void nullOrIsCallable($value, $message = '')
+ * @method static void nullOrIsArray($value, $message = '')
+ * @method static void nullOrIsTraversable($value, $message = '')
+ * @method static void nullOrIsInstanceOf($value, $class, $message = '')
+ * @method static void nullOrNotInstanceOf($value, $class, $message = '')
+ * @method static void nullOrIsEmpty($value, $message = '')
+ * @method static void nullOrNotEmpty($value, $message = '')
+ * @method static void nullOrTrue($value, $message = '')
+ * @method static void nullOrFalse($value, $message = '')
+ * @method static void nullOrEq($value, $value2, $message = '')
+ * @method static void nullOrNotEq($value,$value2, $message = '')
+ * @method static void nullOrSame($value, $value2, $message = '')
+ * @method static void nullOrNotSame($value, $value2, $message = '')
+ * @method static void nullOrGreaterThan($value, $value2, $message = '')
+ * @method static void nullOrGreaterThanEq($value, $value2, $message = '')
+ * @method static void nullOrLessThan($value, $value2, $message = '')
+ * @method static void nullOrLessThanEq($value, $value2, $message = '')
+ * @method static void nullOrRange($value, $min, $max, $message = '')
+ * @method static void nullOrOneOf($value, $values, $message = '')
+ * @method static void nullOrContains($value, $subString, $message = '')
+ * @method static void nullOrStartsWith($value, $prefix, $message = '')
+ * @method static void nullOrStartsWithLetter($value, $message = '')
+ * @method static void nullOrEndsWith($value, $suffix, $message = '')
+ * @method static void nullOrRegex($value, $pattern, $message = '')
+ * @method static void nullOrAlpha($value, $message = '')
+ * @method static void nullOrDigits($value, $message = '')
+ * @method static void nullOrAlnum($value, $message = '')
+ * @method static void nullOrLower($value, $message = '')
+ * @method static void nullOrUpper($value, $message = '')
+ * @method static void nullOrLength($value, $length, $message = '')
+ * @method static void nullOrMinLength($value, $min, $message = '')
+ * @method static void nullOrMaxLength($value, $max, $message = '')
+ * @method static void nullOrLengthBetween($value, $min, $max, $message = '')
+ * @method static void nullOrFileExists($value, $message = '')
+ * @method static void nullOrFile($value, $message = '')
+ * @method static void nullOrDirectory($value, $message = '')
+ * @method static void nullOrReadable($value, $message = '')
+ * @method static void nullOrWritable($value, $message = '')
+ * @method static void nullOrClassExists($value, $message = '')
+ * @method static void nullOrSubclassOf($value, $class, $message = '')
+ * @method static void nullOrImplementsInterface($value, $interface, $message = '')
+ * @method static void nullOrPropertyExists($value, $property, $message = '')
+ * @method static void nullOrPropertyNotExists($value, $property, $message = '')
+ * @method static void nullOrMethodExists($value, $method, $message = '')
+ * @method static void nullOrMethodNotExists($value, $method, $message = '')
+ * @method static void nullOrKeyExists($value, $key, $message = '')
+ * @method static void nullOrKeyNotExists($value, $key, $message = '')
+ * @method static void nullOrUuid($values, $message = '')
+ * @method static void allString($values, $message = '')
+ * @method static void allStringNotEmpty($values, $message = '')
+ * @method static void allInteger($values, $message = '')
+ * @method static void allIntegerish($values, $message = '')
+ * @method static void allFloat($values, $message = '')
+ * @method static void allNumeric($values, $message = '')
+ * @method static void allBoolean($values, $message = '')
+ * @method static void allScalar($values, $message = '')
+ * @method static void allObject($values, $message = '')
+ * @method static void allResource($values, $type = null, $message = '')
+ * @method static void allIsCallable($values, $message = '')
+ * @method static void allIsArray($values, $message = '')
+ * @method static void allIsTraversable($values, $message = '')
+ * @method static void allIsInstanceOf($values, $class, $message = '')
+ * @method static void allNotInstanceOf($values, $class, $message = '')
+ * @method static void allNull($values, $message = '')
+ * @method static void allNotNull($values, $message = '')
+ * @method static void allIsEmpty($values, $message = '')
+ * @method static void allNotEmpty($values, $message = '')
+ * @method static void allTrue($values, $message = '')
+ * @method static void allFalse($values, $message = '')
+ * @method static void allEq($values, $value2, $message = '')
+ * @method static void allNotEq($values,$value2, $message = '')
+ * @method static void allSame($values, $value2, $message = '')
+ * @method static void allNotSame($values, $value2, $message = '')
+ * @method static void allGreaterThan($values, $value2, $message = '')
+ * @method static void allGreaterThanEq($values, $value2, $message = '')
+ * @method static void allLessThan($values, $value2, $message = '')
+ * @method static void allLessThanEq($values, $value2, $message = '')
+ * @method static void allRange($values, $min, $max, $message = '')
+ * @method static void allOneOf($values, $values, $message = '')
+ * @method static void allContains($values, $subString, $message = '')
+ * @method static void allStartsWith($values, $prefix, $message = '')
+ * @method static void allStartsWithLetter($values, $message = '')
+ * @method static void allEndsWith($values, $suffix, $message = '')
+ * @method static void allRegex($values, $pattern, $message = '')
+ * @method static void allAlpha($values, $message = '')
+ * @method static void allDigits($values, $message = '')
+ * @method static void allAlnum($values, $message = '')
+ * @method static void allLower($values, $message = '')
+ * @method static void allUpper($values, $message = '')
+ * @method static void allLength($values, $length, $message = '')
+ * @method static void allMinLength($values, $min, $message = '')
+ * @method static void allMaxLength($values, $max, $message = '')
+ * @method static void allLengthBetween($values, $min, $max, $message = '')
+ * @method static void allFileExists($values, $message = '')
+ * @method static void allFile($values, $message = '')
+ * @method static void allDirectory($values, $message = '')
+ * @method static void allReadable($values, $message = '')
+ * @method static void allWritable($values, $message = '')
+ * @method static void allClassExists($values, $message = '')
+ * @method static void allSubclassOf($values, $class, $message = '')
+ * @method static void allImplementsInterface($values, $interface, $message = '')
+ * @method static void allPropertyExists($values, $property, $message = '')
+ * @method static void allPropertyNotExists($values, $property, $message = '')
+ * @method static void allMethodExists($values, $method, $message = '')
+ * @method static void allMethodNotExists($values, $method, $message = '')
+ * @method static void allKeyExists($values, $key, $message = '')
+ * @method static void allKeyNotExists($values, $key, $message = '')
+ * @method static void allUuid($values, $message = '')
+ *
+ * @since 1.0
+ *
+ * @author Bernhard Schussek
+ */
+class Assert
+{
+ public static function string($value, $message = '')
+ {
+ if (!is_string($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a string. Got: %s',
+ self::typeToString($value)
+ ));
+ }
+ }
+
+ public static function stringNotEmpty($value, $message = '')
+ {
+ self::string($value, $message);
+ self::notEmpty($value, $message);
+ }
+
+ public static function integer($value, $message = '')
+ {
+ if (!is_int($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected an integer. Got: %s',
+ self::typeToString($value)
+ ));
+ }
+ }
+
+ public static function integerish($value, $message = '')
+ {
+ if (!is_numeric($value) || $value != (int) $value) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected an integerish value. Got: %s',
+ self::typeToString($value)
+ ));
+ }
+ }
+
+ public static function float($value, $message = '')
+ {
+ if (!is_float($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a float. Got: %s',
+ self::typeToString($value)
+ ));
+ }
+ }
+
+ public static function numeric($value, $message = '')
+ {
+ if (!is_numeric($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a numeric. Got: %s',
+ self::typeToString($value)
+ ));
+ }
+ }
+
+ public static function boolean($value, $message = '')
+ {
+ if (!is_bool($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a boolean. Got: %s',
+ self::typeToString($value)
+ ));
+ }
+ }
+
+ public static function scalar($value, $message = '')
+ {
+ if (!is_scalar($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a scalar. Got: %s',
+ self::typeToString($value)
+ ));
+ }
+ }
+
+ public static function object($value, $message = '')
+ {
+ if (!is_object($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected an object. Got: %s',
+ self::typeToString($value)
+ ));
+ }
+ }
+
+ public static function resource($value, $type = null, $message = '')
+ {
+ if (!is_resource($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a resource. Got: %s',
+ self::typeToString($value)
+ ));
+ }
+
+ if ($type && $type !== get_resource_type($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a resource of type %2$s. Got: %s',
+ self::typeToString($value),
+ $type
+ ));
+ }
+ }
+
+ public static function isCallable($value, $message = '')
+ {
+ if (!is_callable($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a callable. Got: %s',
+ self::typeToString($value)
+ ));
+ }
+ }
+
+ public static function isArray($value, $message = '')
+ {
+ if (!is_array($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected an array. Got: %s',
+ self::typeToString($value)
+ ));
+ }
+ }
+
+ public static function isTraversable($value, $message = '')
+ {
+ if (!is_array($value) && !($value instanceof Traversable)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a traversable. Got: %s',
+ self::typeToString($value)
+ ));
+ }
+ }
+
+ public static function isInstanceOf($value, $class, $message = '')
+ {
+ if (!($value instanceof $class)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected an instance of %2$s. Got: %s',
+ self::typeToString($value),
+ $class
+ ));
+ }
+ }
+
+ public static function notInstanceOf($value, $class, $message = '')
+ {
+ if ($value instanceof $class) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected an instance other than %2$s. Got: %s',
+ self::typeToString($value),
+ $class
+ ));
+ }
+ }
+
+ public static function isEmpty($value, $message = '')
+ {
+ if (!empty($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected an empty value. Got: %s',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function notEmpty($value, $message = '')
+ {
+ if (empty($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a non-empty value. Got: %s',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function null($value, $message = '')
+ {
+ if (null !== $value) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected null. Got: %s',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function notNull($value, $message = '')
+ {
+ if (null === $value) {
+ throw new InvalidArgumentException(
+ $message ?: 'Expected a value other than null.'
+ );
+ }
+ }
+
+ public static function true($value, $message = '')
+ {
+ if (true !== $value) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value to be true. Got: %s',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function false($value, $message = '')
+ {
+ if (false !== $value) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value to be false. Got: %s',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function eq($value, $value2, $message = '')
+ {
+ if ($value2 != $value) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value equal to %2$s. Got: %s',
+ self::valueToString($value),
+ self::valueToString($value2)
+ ));
+ }
+ }
+
+ public static function notEq($value, $value2, $message = '')
+ {
+ if ($value2 == $value) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a different value than %s.',
+ self::valueToString($value2)
+ ));
+ }
+ }
+
+ public static function same($value, $value2, $message = '')
+ {
+ if ($value2 !== $value) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value identical to %2$s. Got: %s',
+ self::valueToString($value),
+ self::valueToString($value2)
+ ));
+ }
+ }
+
+ public static function notSame($value, $value2, $message = '')
+ {
+ if ($value2 === $value) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value not identical to %s.',
+ self::valueToString($value2)
+ ));
+ }
+ }
+
+ public static function greaterThan($value, $limit, $message = '')
+ {
+ if ($value <= $limit) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value greater than %2$s. Got: %s',
+ self::valueToString($value),
+ self::valueToString($limit)
+ ));
+ }
+ }
+
+ public static function greaterThanEq($value, $limit, $message = '')
+ {
+ if ($value < $limit) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value greater than or equal to %2$s. Got: %s',
+ self::valueToString($value),
+ self::valueToString($limit)
+ ));
+ }
+ }
+
+ public static function lessThan($value, $limit, $message = '')
+ {
+ if ($value >= $limit) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value less than %2$s. Got: %s',
+ self::valueToString($value),
+ self::valueToString($limit)
+ ));
+ }
+ }
+
+ public static function lessThanEq($value, $limit, $message = '')
+ {
+ if ($value > $limit) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value less than or equal to %2$s. Got: %s',
+ self::valueToString($value),
+ self::valueToString($limit)
+ ));
+ }
+ }
+
+ public static function range($value, $min, $max, $message = '')
+ {
+ if ($value < $min || $value > $max) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value between %2$s and %3$s. Got: %s',
+ self::valueToString($value),
+ self::valueToString($min),
+ self::valueToString($max)
+ ));
+ }
+ }
+
+ public static function oneOf($value, array $values, $message = '')
+ {
+ if (!in_array($value, $values, true)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected one of: %2$s. Got: %s',
+ self::valueToString($value),
+ implode(', ', array_map(array(__CLASS__, 'valueToString'), $values))
+ ));
+ }
+ }
+
+ public static function contains($value, $subString, $message = '')
+ {
+ if (false === strpos($value, $subString)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value to contain %2$s. Got: %s',
+ self::valueToString($value),
+ self::valueToString($subString)
+ ));
+ }
+ }
+
+ public static function startsWith($value, $prefix, $message = '')
+ {
+ if (0 !== strpos($value, $prefix)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value to start with %2$s. Got: %s',
+ self::valueToString($value),
+ self::valueToString($prefix)
+ ));
+ }
+ }
+
+ public static function startsWithLetter($value, $message = '')
+ {
+ $valid = isset($value[0]);
+
+ if ($valid) {
+ $locale = setlocale(LC_CTYPE, 0);
+ setlocale(LC_CTYPE, 'C');
+ $valid = ctype_alpha($value[0]);
+ setlocale(LC_CTYPE, $locale);
+ }
+
+ if (!$valid) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value to start with a letter. Got: %s',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function endsWith($value, $suffix, $message = '')
+ {
+ if ($suffix !== substr($value, -self::strlen($suffix))) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value to end with %2$s. Got: %s',
+ self::valueToString($value),
+ self::valueToString($suffix)
+ ));
+ }
+ }
+
+ public static function regex($value, $pattern, $message = '')
+ {
+ if (!preg_match($pattern, $value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'The value %s does not match the expected pattern.',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function alpha($value, $message = '')
+ {
+ $locale = setlocale(LC_CTYPE, 0);
+ setlocale(LC_CTYPE, 'C');
+ $valid = !ctype_alpha($value);
+ setlocale(LC_CTYPE, $locale);
+
+ if ($valid) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value to contain only letters. Got: %s',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function digits($value, $message = '')
+ {
+ $locale = setlocale(LC_CTYPE, 0);
+ setlocale(LC_CTYPE, 'C');
+ $valid = !ctype_digit($value);
+ setlocale(LC_CTYPE, $locale);
+
+ if ($valid) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value to contain digits only. Got: %s',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function alnum($value, $message = '')
+ {
+ $locale = setlocale(LC_CTYPE, 0);
+ setlocale(LC_CTYPE, 'C');
+ $valid = !ctype_alnum($value);
+ setlocale(LC_CTYPE, $locale);
+
+ if ($valid) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value to contain letters and digits only. Got: %s',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function lower($value, $message = '')
+ {
+ $locale = setlocale(LC_CTYPE, 0);
+ setlocale(LC_CTYPE, 'C');
+ $valid = !ctype_lower($value);
+ setlocale(LC_CTYPE, $locale);
+
+ if ($valid) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value to contain lowercase characters only. Got: %s',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function upper($value, $message = '')
+ {
+ $locale = setlocale(LC_CTYPE, 0);
+ setlocale(LC_CTYPE, 'C');
+ $valid = !ctype_upper($value);
+ setlocale(LC_CTYPE, $locale);
+
+ if ($valid) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value to contain uppercase characters only. Got: %s',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function length($value, $length, $message = '')
+ {
+ if ($length !== self::strlen($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value to contain %2$s characters. Got: %s',
+ self::valueToString($value),
+ $length
+ ));
+ }
+ }
+
+ public static function minLength($value, $min, $message = '')
+ {
+ if (self::strlen($value) < $min) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value to contain at least %2$s characters. Got: %s',
+ self::valueToString($value),
+ $min
+ ));
+ }
+ }
+
+ public static function maxLength($value, $max, $message = '')
+ {
+ if (self::strlen($value) > $max) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value to contain at most %2$s characters. Got: %s',
+ self::valueToString($value),
+ $max
+ ));
+ }
+ }
+
+ public static function lengthBetween($value, $min, $max, $message = '')
+ {
+ $length = self::strlen($value);
+
+ if ($length < $min || $length > $max) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a value to contain between %2$s and %3$s characters. Got: %s',
+ self::valueToString($value),
+ $min,
+ $max
+ ));
+ }
+ }
+
+ public static function fileExists($value, $message = '')
+ {
+ self::string($value);
+
+ if (!file_exists($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'The file %s does not exist.',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function file($value, $message = '')
+ {
+ self::fileExists($value, $message);
+
+ if (!is_file($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'The path %s is not a file.',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function directory($value, $message = '')
+ {
+ self::fileExists($value, $message);
+
+ if (!is_dir($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'The path %s is no directory.',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function readable($value, $message = '')
+ {
+ if (!is_readable($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'The path %s is not readable.',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function writable($value, $message = '')
+ {
+ if (!is_writable($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'The path %s is not writable.',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function classExists($value, $message = '')
+ {
+ if (!class_exists($value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected an existing class name. Got: %s',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function subclassOf($value, $class, $message = '')
+ {
+ if (!is_subclass_of($value, $class)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected a sub-class of %2$s. Got: %s',
+ self::valueToString($value),
+ self::valueToString($class)
+ ));
+ }
+ }
+
+ public static function implementsInterface($value, $interface, $message = '')
+ {
+ if (!in_array($interface, class_implements($value))) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected an implementation of %2$s. Got: %s',
+ self::valueToString($value),
+ self::valueToString($interface)
+ ));
+ }
+ }
+
+ public static function propertyExists($classOrObject, $property, $message = '')
+ {
+ if (!property_exists($classOrObject, $property)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected the property %s to exist.',
+ self::valueToString($property)
+ ));
+ }
+ }
+
+ public static function propertyNotExists($classOrObject, $property, $message = '')
+ {
+ if (property_exists($classOrObject, $property)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected the property %s to not exist.',
+ self::valueToString($property)
+ ));
+ }
+ }
+
+ public static function methodExists($classOrObject, $method, $message = '')
+ {
+ if (!method_exists($classOrObject, $method)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected the method %s to exist.',
+ self::valueToString($method)
+ ));
+ }
+ }
+
+ public static function methodNotExists($classOrObject, $method, $message = '')
+ {
+ if (method_exists($classOrObject, $method)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected the method %s to not exist.',
+ self::valueToString($method)
+ ));
+ }
+ }
+
+ public static function keyExists($array, $key, $message = '')
+ {
+ if (!array_key_exists($key, $array)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected the key %s to exist.',
+ self::valueToString($key)
+ ));
+ }
+ }
+
+ public static function keyNotExists($array, $key, $message = '')
+ {
+ if (array_key_exists($key, $array)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Expected the key %s to not exist.',
+ self::valueToString($key)
+ ));
+ }
+ }
+
+ public static function uuid($value, $message = '')
+ {
+ $value = str_replace(array('urn:', 'uuid:', '{', '}'), '', $value);
+
+ // The nil UUID is special form of UUID that is specified to have all
+ // 128 bits set to zero.
+ if ('00000000-0000-0000-0000-000000000000' === $value) {
+ return;
+ }
+
+ if (!preg_match('/^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/', $value)) {
+ throw new InvalidArgumentException(sprintf(
+ $message ?: 'Value "%s" is not a valid UUID.',
+ self::valueToString($value)
+ ));
+ }
+ }
+
+ public static function __callStatic($name, $arguments)
+ {
+ if ('nullOr' === substr($name, 0, 6)) {
+ if (null !== $arguments[0]) {
+ $method = lcfirst(substr($name, 6));
+ call_user_func_array(array('static', $method), $arguments);
+ }
+
+ return;
+ }
+
+ if ('all' === substr($name, 0, 3)) {
+ self::isTraversable($arguments[0]);
+
+ $method = lcfirst(substr($name, 3));
+ $args = $arguments;
+
+ foreach ($arguments[0] as $entry) {
+ $args[0] = $entry;
+
+ call_user_func_array(array('static', $method), $args);
+ }
+
+ return;
+ }
+
+ throw new BadMethodCallException('No such method: '.$name);
+ }
+
+ protected static function valueToString($value)
+ {
+ if (null === $value) {
+ return 'null';
+ }
+
+ if (true === $value) {
+ return 'true';
+ }
+
+ if (false === $value) {
+ return 'false';
+ }
+
+ if (is_array($value)) {
+ return 'array';
+ }
+
+ if (is_object($value)) {
+ return get_class($value);
+ }
+
+ if (is_resource($value)) {
+ return 'resource';
+ }
+
+ if (is_string($value)) {
+ return '"'.$value.'"';
+ }
+
+ return (string) $value;
+ }
+
+ protected static function typeToString($value)
+ {
+ return is_object($value) ? get_class($value) : gettype($value);
+ }
+
+ protected static function strlen($value)
+ {
+ if (!function_exists('mb_detect_encoding')) {
+ return strlen($value);
+ }
+
+ if (false === $encoding = mb_detect_encoding($value)) {
+ return strlen($value);
+ }
+
+ return mb_strwidth($value, $encoding);
+ }
+
+ private function __construct()
+ {
+ }
+}
diff --git a/app/src/vendor/PHP-Benchmark/vendor/composer/installed.json b/app/src/vendor/PHP-Benchmark/vendor/composer/installed.json
index 4abb381a..9e9dfcd8 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/composer/installed.json
+++ b/app/src/vendor/PHP-Benchmark/vendor/composer/installed.json
@@ -1,55 +1,4 @@
[
- {
- "name": "symfony/yaml",
- "version": "v2.8.3",
- "version_normalized": "2.8.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/yaml.git",
- "reference": "2a4ee40acb880c56f29fb1b8886e7ffe94f3b995"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/2a4ee40acb880c56f29fb1b8886e7ffe94f3b995",
- "reference": "2a4ee40acb880c56f29fb1b8886e7ffe94f3b995",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.9"
- },
- "time": "2016-02-23 07:41:20",
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.8-dev"
- }
- },
- "installation-source": "dist",
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Yaml\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Yaml Component",
- "homepage": "https://symfony.com"
- },
{
"name": "phpunit/php-text-template",
"version": "1.2.1",
@@ -144,49 +93,6 @@
"xunit"
]
},
- {
- "name": "phpunit/php-timer",
- "version": "1.0.7",
- "version_normalized": "1.0.7.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
- "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "time": "2015-06-21 08:01:12",
- "type": "library",
- "installation-source": "dist",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Utility class for timing",
- "homepage": "https://github.com/sebastianbergmann/php-timer/",
- "keywords": [
- "timer"
- ]
- },
{
"name": "phpunit/php-token-stream",
"version": "1.2.2",
@@ -479,19 +385,62 @@
"listener"
]
},
+ {
+ "name": "victorjonsson/markdowndocs",
+ "version": "1.3.5",
+ "version_normalized": "1.3.5.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/victorjonsson/PHP-Markdown-Documentation-Generator.git",
+ "reference": "4814be1e08d80b64f0ffcb5fbbb84a47dd0992f7"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/victorjonsson/PHP-Markdown-Documentation-Generator/zipball/4814be1e08d80b64f0ffcb5fbbb84a47dd0992f7",
+ "reference": "4814be1e08d80b64f0ffcb5fbbb84a47dd0992f7",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.5.0",
+ "symfony/console": ">=2.6"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "3.7.23"
+ },
+ "time": "2016-02-12 13:19:04",
+ "type": "library",
+ "installation-source": "dist",
+ "autoload": {
+ "psr-0": {
+ "PHPDocsMD": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Victor Jonsson",
+ "email": "kontakt@victorjonsson.se"
+ }
+ ],
+ "description": "Command line tool for generating markdown-formatted class documentation",
+ "homepage": "https://github.com/victorjonsson/PHP-Markdown-Documentation-Generator"
+ },
{
"name": "symfony/polyfill-mbstring",
- "version": "v1.1.1",
- "version_normalized": "1.1.1.0",
+ "version": "v1.2.0",
+ "version_normalized": "1.2.0.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "1289d16209491b584839022f29257ad859b8532d"
+ "reference": "dff51f72b0706335131b00a7f49606168c582594"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/1289d16209491b584839022f29257ad859b8532d",
- "reference": "1289d16209491b584839022f29257ad859b8532d",
+ "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/dff51f72b0706335131b00a7f49606168c582594",
+ "reference": "dff51f72b0706335131b00a7f49606168c582594",
"shasum": ""
},
"require": {
@@ -500,11 +449,11 @@
"suggest": {
"ext-mbstring": "For best performance"
},
- "time": "2016-01-20 09:13:37",
+ "time": "2016-05-18 14:26:46",
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.1-dev"
+ "dev-master": "1.2-dev"
}
},
"installation-source": "dist",
@@ -542,17 +491,17 @@
},
{
"name": "symfony/console",
- "version": "v3.0.3",
- "version_normalized": "3.0.3.0",
+ "version": "v3.1.4",
+ "version_normalized": "3.1.4.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "2ed5e2706ce92313d120b8fe50d1063bcfd12e04"
+ "reference": "8ea494c34f0f772c3954b5fbe00bffc5a435e563"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/2ed5e2706ce92313d120b8fe50d1063bcfd12e04",
- "reference": "2ed5e2706ce92313d120b8fe50d1063bcfd12e04",
+ "url": "https://api.github.com/repos/symfony/console/zipball/8ea494c34f0f772c3954b5fbe00bffc5a435e563",
+ "reference": "8ea494c34f0f772c3954b5fbe00bffc5a435e563",
"shasum": ""
},
"require": {
@@ -569,11 +518,11 @@
"symfony/event-dispatcher": "",
"symfony/process": ""
},
- "time": "2016-02-28 16:24:34",
+ "time": "2016-08-19 06:48:39",
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0-dev"
+ "dev-master": "3.1-dev"
}
},
"installation-source": "dist",
@@ -603,46 +552,100 @@
"homepage": "https://symfony.com"
},
{
- "name": "victorjonsson/markdowndocs",
- "version": "1.3.5",
- "version_normalized": "1.3.5.0",
+ "name": "phpunit/php-timer",
+ "version": "1.0.8",
+ "version_normalized": "1.0.8.0",
"source": {
"type": "git",
- "url": "https://github.com/victorjonsson/PHP-Markdown-Documentation-Generator.git",
- "reference": "4814be1e08d80b64f0ffcb5fbbb84a47dd0992f7"
+ "url": "https://github.com/sebastianbergmann/php-timer.git",
+ "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/victorjonsson/PHP-Markdown-Documentation-Generator/zipball/4814be1e08d80b64f0ffcb5fbbb84a47dd0992f7",
- "reference": "4814be1e08d80b64f0ffcb5fbbb84a47dd0992f7",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260",
+ "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
"shasum": ""
},
"require": {
- "php": ">=5.5.0",
- "symfony/console": ">=2.6"
+ "php": ">=5.3.3"
},
"require-dev": {
- "phpunit/phpunit": "3.7.23"
+ "phpunit/phpunit": "~4|~5"
},
- "time": "2016-02-12 13:19:04",
+ "time": "2016-05-12 18:03:57",
"type": "library",
"installation-source": "dist",
"autoload": {
- "psr-0": {
- "PHPDocsMD": "src/"
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sb@sebastian-bergmann.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Utility class for timing",
+ "homepage": "https://github.com/sebastianbergmann/php-timer/",
+ "keywords": [
+ "timer"
+ ]
+ },
+ {
+ "name": "symfony/yaml",
+ "version": "v2.8.11",
+ "version_normalized": "2.8.11.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/yaml.git",
+ "reference": "e7540734bad981fe59f8ef14b6fc194ae9df8d9c"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/yaml/zipball/e7540734bad981fe59f8ef14b6fc194ae9df8d9c",
+ "reference": "e7540734bad981fe59f8ef14b6fc194ae9df8d9c",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.9"
+ },
+ "time": "2016-09-02 01:57:56",
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.8-dev"
}
},
+ "installation-source": "dist",
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Component\\Yaml\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
- "name": "Victor Jonsson",
- "email": "kontakt@victorjonsson.se"
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
}
],
- "description": "Command line tool for generating markdown-formatted class documentation",
- "homepage": "https://github.com/victorjonsson/PHP-Markdown-Documentation-Generator"
+ "description": "Symfony Yaml Component",
+ "homepage": "https://symfony.com"
}
]
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Application.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Application.php
index a01d6695..6434ef71 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Application.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Application.php
@@ -210,7 +210,7 @@ public function getHelperSet()
}
/**
- * Set an input definition set to be used with this application.
+ * Set an input definition to be used with this application.
*
* @param InputDefinition $definition The input definition
*/
@@ -232,13 +232,23 @@ public function getDefinition()
/**
* Gets the help message.
*
- * @return string A help message.
+ * @return string A help message
*/
public function getHelp()
{
return $this->getLongVersion();
}
+ /**
+ * Gets whether to catch exceptions or not during commands execution.
+ *
+ * @return bool Whether to catch exceptions or not during commands execution
+ */
+ public function areExceptionsCaught()
+ {
+ return $this->catchExceptions;
+ }
+
/**
* Sets whether to catch exceptions or not during commands execution.
*
@@ -249,6 +259,16 @@ public function setCatchExceptions($boolean)
$this->catchExceptions = (bool) $boolean;
}
+ /**
+ * Gets whether to automatically exit after a command execution or not.
+ *
+ * @return bool Whether to automatically exit after a command execution or not
+ */
+ public function isAutoExitEnabled()
+ {
+ return $this->autoExit;
+ }
+
/**
* Sets whether to automatically exit after a command execution or not.
*
@@ -332,6 +352,8 @@ public function register($name)
/**
* Adds an array of command objects.
*
+ * If a Command is not enabled it will not be added.
+ *
* @param Command[] $commands An array of commands
*/
public function addCommands(array $commands)
@@ -345,10 +367,11 @@ public function addCommands(array $commands)
* Adds a command object.
*
* If a command with the same name already exists, it will be overridden.
+ * If the command is not enabled it will not be added.
*
* @param Command $command A Command object
*
- * @return Command The registered command
+ * @return Command|null The registered command if enabled or null
*/
public function add(Command $command)
{
@@ -417,9 +440,9 @@ public function has($name)
/**
* Returns an array of all unique namespaces used by currently registered commands.
*
- * It does not returns the global namespace which always exists.
+ * It does not return the global namespace which always exists.
*
- * @return array An array of namespaces
+ * @return string[] An array of namespaces
*/
public function getNamespaces()
{
@@ -588,7 +611,11 @@ public function renderException(\Exception $e, OutputInterface $output)
$output->writeln('', OutputInterface::VERBOSITY_QUIET);
do {
- $title = sprintf(' [%s] ', get_class($e));
+ $title = sprintf(
+ ' [%s%s] ',
+ get_class($e),
+ $output->isVerbose() && 0 !== ($code = $e->getCode()) ? ' ('.$code.')' : ''
+ );
$len = $this->stringWidth($title);
@@ -909,7 +936,7 @@ private function getSttyColumns()
/**
* Runs and parses mode CON if it's available, suppressing any error output.
*
- * @return string x or null if it could not be parsed
+ * @return string|null x or null if it could not be parsed
*/
private function getConsoleMode()
{
@@ -968,7 +995,7 @@ public function extractNamespace($name, $limit = null)
* @param string $name The string
* @param array|\Traversable $collection The collection
*
- * @return array A sorted array of similar string
+ * @return string[] A sorted array of similar string
*/
private function findAlternatives($name, $collection)
{
@@ -1067,7 +1094,7 @@ private function splitStringByWidth($string, $width)
*
* @param string $name The full name of the command
*
- * @return array The namespaces of the command
+ * @return string[] The namespaces of the command
*/
private function extractAllNamespaces($name)
{
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Command/Command.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Command/Command.php
index c8429845..d212a325 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Command/Command.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Command/Command.php
@@ -300,14 +300,14 @@ public function mergeApplicationDefinition($mergeArgs = true)
return;
}
+ $this->definition->addOptions($this->application->getDefinition()->getOptions());
+
if ($mergeArgs) {
$currentArguments = $this->definition->getArguments();
$this->definition->setArguments($this->application->getDefinition()->getArguments());
$this->definition->addArguments($currentArguments);
}
- $this->definition->addOptions($this->application->getDefinition()->getOptions());
-
$this->applicationDefinitionMerged = true;
if ($mergeArgs) {
$this->applicationDefinitionMergedWithArgs = true;
@@ -601,10 +601,15 @@ public function getUsages()
*
* @return mixed The helper value
*
+ * @throws LogicException if no HelperSet is defined
* @throws InvalidArgumentException if the helper is not defined
*/
public function getHelper($name)
{
+ if (null === $this->helperSet) {
+ throw new LogicException(sprintf('Cannot retrieve helper "%s" because there is no HelperSet defined. Did you forget to add your command to the application or to set the application on the command using the setApplication() method? You can also set the HelperSet directly using the setHelperSet() method.', $name));
+ }
+
return $this->helperSet->get($name);
}
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/ConsoleEvents.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/ConsoleEvents.php
index 1ed41b7d..b3571e9a 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/ConsoleEvents.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/ConsoleEvents.php
@@ -23,10 +23,7 @@ final class ConsoleEvents
* executed by the console. It also allows you to modify the command, input and output
* before they are handled to the command.
*
- * The event listener method receives a Symfony\Component\Console\Event\ConsoleCommandEvent
- * instance.
- *
- * @Event
+ * @Event("Symfony\Component\Console\Event\ConsoleCommandEvent")
*
* @var string
*/
@@ -36,10 +33,7 @@ final class ConsoleEvents
* The TERMINATE event allows you to attach listeners after a command is
* executed by the console.
*
- * The event listener method receives a Symfony\Component\Console\Event\ConsoleTerminateEvent
- * instance.
- *
- * @Event
+ * @Event("Symfony\Component\Console\Event\ConsoleTerminateEvent")
*
* @var string
*/
@@ -49,11 +43,9 @@ final class ConsoleEvents
* The EXCEPTION event occurs when an uncaught exception appears.
*
* This event allows you to deal with the exception or
- * to modify the thrown exception. The event listener method receives
- * a Symfony\Component\Console\Event\ConsoleExceptionEvent
- * instance.
+ * to modify the thrown exception.
*
- * @Event
+ * @Event("Symfony\Component\Console\Event\ConsoleExceptionEvent")
*
* @var string
*/
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Descriptor/TextDescriptor.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Descriptor/TextDescriptor.php
index 560ce150..f7446eb0 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Descriptor/TextDescriptor.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Descriptor/TextDescriptor.php
@@ -156,7 +156,7 @@ protected function describeCommand(Command $command, array $options = array())
$this->writeText("\n");
$this->writeText('Help: ', $options);
$this->writeText("\n");
- $this->writeText(' '.str_replace("\n", "\n ", $help), $options);
+ $this->writeText(' '.str_replace("\n", "\n ", $help), $options);
$this->writeText("\n");
}
}
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Exception/CommandNotFoundException.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Exception/CommandNotFoundException.php
index ce6fefe3..54f1a5b0 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Exception/CommandNotFoundException.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Exception/CommandNotFoundException.php
@@ -21,10 +21,10 @@ class CommandNotFoundException extends \InvalidArgumentException implements Exce
private $alternatives;
/**
- * @param string $message Exception message to throw.
- * @param array $alternatives List of similar defined names.
- * @param int $code Exception code.
- * @param Exception $previous previous exception used for the exception chaining.
+ * @param string $message Exception message to throw
+ * @param array $alternatives List of similar defined names
+ * @param int $code Exception code
+ * @param Exception $previous previous exception used for the exception chaining
*/
public function __construct($message, array $alternatives = array(), $code = 0, \Exception $previous = null)
{
@@ -34,7 +34,7 @@ public function __construct($message, array $alternatives = array(), $code = 0,
}
/**
- * @return array A list of similar defined names.
+ * @return array A list of similar defined names
*/
public function getAlternatives()
{
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/FormatterHelper.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/FormatterHelper.php
index ac736f98..6a48a77f 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/FormatterHelper.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/FormatterHelper.php
@@ -72,6 +72,30 @@ public function formatBlock($messages, $style, $large = false)
return implode("\n", $messages);
}
+ /**
+ * Truncates a message to the given length.
+ *
+ * @param string $message
+ * @param int $length
+ * @param string $suffix
+ *
+ * @return string
+ */
+ public function truncate($message, $length, $suffix = '...')
+ {
+ $computedLength = $length - $this->strlen($suffix);
+
+ if ($computedLength > $this->strlen($message)) {
+ return $message;
+ }
+
+ if (false === $encoding = mb_detect_encoding($message, null, true)) {
+ return substr($message, 0, $length).$suffix;
+ }
+
+ return mb_substr($message, 0, $length, $encoding).$suffix;
+ }
+
/**
* {@inheritdoc}
*/
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/Helper.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/Helper.php
index b542be3a..43f9a169 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/Helper.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/Helper.php
@@ -62,26 +62,28 @@ public static function formatTime($secs)
{
static $timeFormats = array(
array(0, '< 1 sec'),
- array(2, '1 sec'),
- array(59, 'secs', 1),
+ array(1, '1 sec'),
+ array(2, 'secs', 1),
array(60, '1 min'),
- array(3600, 'mins', 60),
- array(5400, '1 hr'),
- array(86400, 'hrs', 3600),
- array(129600, '1 day'),
- array(604800, 'days', 86400),
+ array(120, 'mins', 60),
+ array(3600, '1 hr'),
+ array(7200, 'hrs', 3600),
+ array(86400, '1 day'),
+ array(172800, 'days', 86400),
);
- foreach ($timeFormats as $format) {
+ foreach ($timeFormats as $index => $format) {
if ($secs >= $format[0]) {
- continue;
+ if ((isset($timeFormats[$index + 1]) && $secs < $timeFormats[$index + 1][0])
+ || $index == count($timeFormats) - 1
+ ) {
+ if (2 == count($format)) {
+ return $format[1];
+ }
+
+ return floor($secs / $format[2]).' '.$format[1];
+ }
}
-
- if (2 == count($format)) {
- return $format[1];
- }
-
- return ceil($secs / $format[2]).' '.$format[1];
}
}
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/HelperSet.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/HelperSet.php
index f7d703ab..6f12b39d 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/HelperSet.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/HelperSet.php
@@ -21,13 +21,16 @@
*/
class HelperSet implements \IteratorAggregate
{
+ /**
+ * @var Helper[]
+ */
private $helpers = array();
private $command;
/**
* Constructor.
*
- * @param Helper[] $helpers An array of helper.
+ * @param Helper[] $helpers An array of helper
*/
public function __construct(array $helpers = array())
{
@@ -102,6 +105,9 @@ public function getCommand()
return $this->command;
}
+ /**
+ * @return Helper[]
+ */
public function getIterator()
{
return new \ArrayIterator($this->helpers);
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/ProgressBar.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/ProgressBar.php
index 51083aa5..6aea12ea 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/ProgressBar.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/ProgressBar.php
@@ -41,10 +41,10 @@ class ProgressBar
private $startTime;
private $stepWidth;
private $percent = 0.0;
- private $lastMessagesLength = 0;
private $formatLineCount;
- private $messages;
+ private $messages = array();
private $overwrite = true;
+ private $firstRun = true;
private static $formatters;
private static $formats;
@@ -141,6 +141,16 @@ public static function getFormatDefinition($name)
return isset(self::$formats[$name]) ? self::$formats[$name] : null;
}
+ /**
+ * Associates a text with a named placeholder.
+ *
+ * The text is displayed when the progress bar is rendered but only
+ * when the corresponding placeholder is part of the custom format line
+ * (by wrapping the name with %).
+ *
+ * @param string $message The text to associate with the placeholder
+ * @param string $name The name of the placeholder
+ */
public function setMessage($message, $name = 'message')
{
$this->messages[$name] = $message;
@@ -437,7 +447,7 @@ public function clear()
$this->setRealFormat($this->internalFormat ?: $this->determineBestFormat());
}
- $this->overwrite(str_repeat("\n", $this->formatLineCount));
+ $this->overwrite('');
}
/**
@@ -477,37 +487,26 @@ private function setMaxSteps($max)
*/
private function overwrite($message)
{
- $lines = explode("\n", $message);
+ if ($this->overwrite) {
+ if (!$this->firstRun) {
+ // Move the cursor to the beginning of the line
+ $this->output->write("\x0D");
+
+ // Erase the line
+ $this->output->write("\x1B[2K");
- // append whitespace to match the line's length
- if (null !== $this->lastMessagesLength) {
- foreach ($lines as $i => $line) {
- if ($this->lastMessagesLength > Helper::strlenWithoutDecoration($this->output->getFormatter(), $line)) {
- $lines[$i] = str_pad($line, $this->lastMessagesLength, "\x20", STR_PAD_RIGHT);
+ // Erase previous lines
+ if ($this->formatLineCount > 0) {
+ $this->output->write(str_repeat("\x1B[1A\x1B[2K", $this->formatLineCount));
}
}
- }
-
- if ($this->overwrite) {
- // move back to the beginning of the progress bar before redrawing it
- $this->output->write("\x0D");
} elseif ($this->step > 0) {
- // move to new line
$this->output->writeln('');
}
- if ($this->formatLineCount) {
- $this->output->write(sprintf("\033[%dA", $this->formatLineCount));
- }
- $this->output->write(implode("\n", $lines));
+ $this->firstRun = false;
- $this->lastMessagesLength = 0;
- foreach ($lines as $line) {
- $len = Helper::strlenWithoutDecoration($this->output->getFormatter(), $line);
- if ($len > $this->lastMessagesLength) {
- $this->lastMessagesLength = $len;
- }
- }
+ $this->output->write($message);
}
private function determineBestFormat()
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/ProgressIndicator.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/ProgressIndicator.php
index 8c8a49c4..f90a85c2 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/ProgressIndicator.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/ProgressIndicator.php
@@ -11,6 +11,8 @@
namespace Symfony\Component\Console\Helper;
+use Symfony\Component\Console\Exception\InvalidArgumentException;
+use Symfony\Component\Console\Exception\LogicException;
use Symfony\Component\Console\Output\OutputInterface;
/**
@@ -53,7 +55,7 @@ public function __construct(OutputInterface $output, $format = null, $indicatorC
$indicatorValues = array_values($indicatorValues);
if (2 > count($indicatorValues)) {
- throw new \InvalidArgumentException('Must have at least 2 indicator value characters.');
+ throw new InvalidArgumentException('Must have at least 2 indicator value characters.');
}
$this->format = self::getFormatDefinition($format);
@@ -74,42 +76,6 @@ public function setMessage($message)
$this->display();
}
- /**
- * Gets the current indicator message.
- *
- * @return string|null
- *
- * @internal for PHP 5.3 compatibility
- */
- public function getMessage()
- {
- return $this->message;
- }
-
- /**
- * Gets the progress bar start time.
- *
- * @return int The progress bar start time
- *
- * @internal for PHP 5.3 compatibility
- */
- public function getStartTime()
- {
- return $this->startTime;
- }
-
- /**
- * Gets the current animated indicator character.
- *
- * @return string
- *
- * @internal for PHP 5.3 compatibility
- */
- public function getCurrentValue()
- {
- return $this->indicatorValues[$this->indicatorCurrent % count($this->indicatorValues)];
- }
-
/**
* Starts the indicator output.
*
@@ -118,7 +84,7 @@ public function getCurrentValue()
public function start($message)
{
if ($this->started) {
- throw new \LogicException('Progress indicator already started.');
+ throw new LogicException('Progress indicator already started.');
}
$this->message = $message;
@@ -137,7 +103,7 @@ public function start($message)
public function advance()
{
if (!$this->started) {
- throw new \LogicException('Progress indicator has not yet been started.');
+ throw new LogicException('Progress indicator has not yet been started.');
}
if (!$this->output->isDecorated()) {
@@ -164,7 +130,7 @@ public function advance()
public function finish($message)
{
if (!$this->started) {
- throw new \LogicException('Progress indicator has not yet been started.');
+ throw new LogicException('Progress indicator has not yet been started.');
}
$this->message = $message;
@@ -292,13 +258,13 @@ private static function initPlaceholderFormatters()
{
return array(
'indicator' => function (ProgressIndicator $indicator) {
- return $indicator->getCurrentValue();
+ return $indicator->indicatorValues[$indicator->indicatorCurrent % count($indicator->indicatorValues)];
},
'message' => function (ProgressIndicator $indicator) {
- return $indicator->getMessage();
+ return $indicator->message;
},
'elapsed' => function (ProgressIndicator $indicator) {
- return Helper::formatTime(time() - $indicator->getStartTime());
+ return Helper::formatTime(time() - $indicator->startTime);
},
'memory' => function () {
return Helper::formatMemory(memory_get_usage(true));
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/SymfonyQuestionHelper.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/SymfonyQuestionHelper.php
index 942278bd..aeddb760 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/SymfonyQuestionHelper.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/SymfonyQuestionHelper.php
@@ -67,6 +67,18 @@ protected function writePrompt(OutputInterface $output, Question $question)
break;
+ case $question instanceof ChoiceQuestion && $question->isMultiselect():
+ $choices = $question->getChoices();
+ $default = explode(',', $default);
+
+ foreach ($default as $key => $value) {
+ $default[$key] = $choices[trim($value)];
+ }
+
+ $text = sprintf(' %s [%s ]:', $text, implode(', ', $default));
+
+ break;
+
case $question instanceof ChoiceQuestion:
$choices = $question->getChoices();
$text = sprintf(' %s [%s ]:', $text, $choices[$default]);
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/Table.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/Table.php
index 1f103ad1..1434562d 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/Table.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/Table.php
@@ -43,7 +43,7 @@ class Table
*
* @var array
*/
- private $columnWidths = array();
+ private $effectiveColumnWidths = array();
/**
* Number of columns cache.
@@ -67,6 +67,13 @@ class Table
*/
private $columnStyles = array();
+ /**
+ * User set column widths.
+ *
+ * @var array
+ */
+ private $columnWidths = array();
+
private static $styles;
public function __construct(OutputInterface $output)
@@ -108,11 +115,11 @@ public static function getStyleDefinition($name)
self::$styles = self::initStyles();
}
- if (!self::$styles[$name]) {
- throw new InvalidArgumentException(sprintf('Style "%s" is not defined.', $name));
+ if (isset(self::$styles[$name])) {
+ return self::$styles[$name];
}
- return self::$styles[$name];
+ throw new InvalidArgumentException(sprintf('Style "%s" is not defined.', $name));
}
/**
@@ -124,13 +131,7 @@ public static function getStyleDefinition($name)
*/
public function setStyle($name)
{
- if ($name instanceof TableStyle) {
- $this->style = $name;
- } elseif (isset(self::$styles[$name])) {
- $this->style = self::$styles[$name];
- } else {
- throw new InvalidArgumentException(sprintf('Style "%s" is not defined.', $name));
- }
+ $this->style = $this->resolveStyle($name);
return $this;
}
@@ -157,13 +158,7 @@ public function setColumnStyle($columnIndex, $name)
{
$columnIndex = intval($columnIndex);
- if ($name instanceof TableStyle) {
- $this->columnStyles[$columnIndex] = $name;
- } elseif (isset(self::$styles[$name])) {
- $this->columnStyles[$columnIndex] = self::$styles[$name];
- } else {
- throw new \InvalidArgumentException(sprintf('Style "%s" is not defined.', $name));
- }
+ $this->columnStyles[$columnIndex] = $this->resolveStyle($name);
return $this;
}
@@ -186,6 +181,38 @@ public function getColumnStyle($columnIndex)
return $this->getStyle();
}
+ /**
+ * Sets the minimum width of a column.
+ *
+ * @param int $columnIndex Column index
+ * @param int $width Minimum column width in characters
+ *
+ * @return Table
+ */
+ public function setColumnWidth($columnIndex, $width)
+ {
+ $this->columnWidths[intval($columnIndex)] = intval($width);
+
+ return $this;
+ }
+
+ /**
+ * Sets the minimum width of all columns.
+ *
+ * @param array $widths
+ *
+ * @return Table
+ */
+ public function setColumnWidths(array $widths)
+ {
+ $this->columnWidths = array();
+ foreach ($widths as $index => $width) {
+ $this->setColumnWidth($index, $width);
+ }
+
+ return $this;
+ }
+
public function setHeaders(array $headers)
{
$headers = array_values($headers);
@@ -296,7 +323,7 @@ private function renderRowSeparator()
$markup = $this->style->getCrossingChar();
for ($column = 0; $column < $count; ++$column) {
- $markup .= str_repeat($this->style->getHorizontalBorderChar(), $this->columnWidths[$column]).$this->style->getCrossingChar();
+ $markup .= str_repeat($this->style->getHorizontalBorderChar(), $this->effectiveColumnWidths[$column]).$this->style->getCrossingChar();
}
$this->output->writeln(sprintf($this->style->getBorderFormat(), $markup));
@@ -307,7 +334,7 @@ private function renderRowSeparator()
*/
private function renderColumnSeparator()
{
- $this->output->write(sprintf($this->style->getBorderFormat(), $this->style->getVerticalBorderChar()));
+ return sprintf($this->style->getBorderFormat(), $this->style->getVerticalBorderChar());
}
/**
@@ -324,12 +351,12 @@ private function renderRow(array $row, $cellFormat)
return;
}
- $this->renderColumnSeparator();
+ $rowContent = $this->renderColumnSeparator();
foreach ($this->getRowColumns($row) as $column) {
- $this->renderCell($row, $column, $cellFormat);
- $this->renderColumnSeparator();
+ $rowContent .= $this->renderCell($row, $column, $cellFormat);
+ $rowContent .= $this->renderColumnSeparator();
}
- $this->output->writeln('');
+ $this->output->writeln($rowContent);
}
/**
@@ -342,11 +369,11 @@ private function renderRow(array $row, $cellFormat)
private function renderCell(array $row, $column, $cellFormat)
{
$cell = isset($row[$column]) ? $row[$column] : '';
- $width = $this->columnWidths[$column];
+ $width = $this->effectiveColumnWidths[$column];
if ($cell instanceof TableCell && $cell->getColspan() > 1) {
// add the width of the following columns(numbers of colspan).
foreach (range($column + 1, $column + $cell->getColspan() - 1) as $nextColumn) {
- $width += $this->getColumnSeparatorWidth() + $this->columnWidths[$nextColumn];
+ $width += $this->getColumnSeparatorWidth() + $this->effectiveColumnWidths[$nextColumn];
}
}
@@ -358,12 +385,13 @@ private function renderCell(array $row, $column, $cellFormat)
$style = $this->getColumnStyle($column);
if ($cell instanceof TableSeparator) {
- $this->output->write(sprintf($style->getBorderFormat(), str_repeat($style->getHorizontalBorderChar(), $width)));
- } else {
- $width += Helper::strlen($cell) - Helper::strlenWithoutDecoration($this->output->getFormatter(), $cell);
- $content = sprintf($style->getCellRowContentFormat(), $cell);
- $this->output->write(sprintf($cellFormat, str_pad($content, $width, $style->getPaddingChar(), $style->getPadType())));
+ return sprintf($style->getBorderFormat(), str_repeat($style->getHorizontalBorderChar(), $width));
}
+
+ $width += Helper::strlen($cell) - Helper::strlenWithoutDecoration($this->output->getFormatter(), $cell);
+ $content = sprintf($style->getCellRowContentFormat(), $cell);
+
+ return sprintf($cellFormat, str_pad($content, $width, $style->getPaddingChar(), $style->getPadType()));
}
/**
@@ -447,7 +475,7 @@ private function fillNextRows($rows, $line)
}
// create a two dimensional array (rowspan x colspan)
- $unmergedRows = array_replace_recursive(array_fill($line + 1, $nbLines, ''), $unmergedRows);
+ $unmergedRows = array_replace_recursive(array_fill($line + 1, $nbLines, array()), $unmergedRows);
foreach ($unmergedRows as $unmergedRowKey => $unmergedRow) {
$value = isset($lines[$unmergedRowKey - $line]) ? $lines[$unmergedRowKey - $line] : '';
$unmergedRows[$unmergedRowKey][$column] = new TableCell($value, array('colspan' => $cell->getColspan()));
@@ -569,10 +597,22 @@ private function calculateColumnsWidth($rows)
continue;
}
+ foreach ($row as $i => $cell) {
+ if ($cell instanceof TableCell) {
+ $textLength = strlen($cell);
+ if ($textLength > 0) {
+ $contentColumns = str_split($cell, ceil($textLength / $cell->getColspan()));
+ foreach ($contentColumns as $position => $content) {
+ $row[$i + $position] = $content;
+ }
+ }
+ }
+ }
+
$lengths[] = $this->getCellWidth($row, $column);
}
- $this->columnWidths[$column] = max($lengths) + strlen($this->style->getCellRowContentFormat()) - 2;
+ $this->effectiveColumnWidths[$column] = max($lengths) + strlen($this->style->getCellRowContentFormat()) - 2;
}
}
@@ -596,18 +636,16 @@ private function getColumnSeparatorWidth()
*/
private function getCellWidth(array $row, $column)
{
+ $cellWidth = 0;
+
if (isset($row[$column])) {
$cell = $row[$column];
$cellWidth = Helper::strlenWithoutDecoration($this->output->getFormatter(), $cell);
- if ($cell instanceof TableCell && $cell->getColspan() > 1) {
- // we assume that cell value will be across more than one column.
- $cellWidth = $cellWidth / $cell->getColspan();
- }
-
- return $cellWidth;
}
- return 0;
+ $columnWidth = isset($this->columnWidths[$column]) ? $this->columnWidths[$column] : 0;
+
+ return max($cellWidth, $columnWidth);
}
/**
@@ -615,7 +653,7 @@ private function getCellWidth(array $row, $column)
*/
private function cleanup()
{
- $this->columnWidths = array();
+ $this->effectiveColumnWidths = array();
$this->numberOfColumns = null;
}
@@ -651,4 +689,17 @@ private static function initStyles()
'symfony-style-guide' => $styleGuide,
);
}
+
+ private function resolveStyle($name)
+ {
+ if ($name instanceof TableStyle) {
+ return $name;
+ }
+
+ if (isset(self::$styles[$name])) {
+ return self::$styles[$name];
+ }
+
+ throw new InvalidArgumentException(sprintf('Style "%s" is not defined.', $name));
+ }
}
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/TableSeparator.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/TableSeparator.php
index 8cbbc661..8cc73e69 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/TableSeparator.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Helper/TableSeparator.php
@@ -19,8 +19,7 @@
class TableSeparator extends TableCell
{
/**
- * @param string $value
- * @param array $options
+ * @param array $options
*/
public function __construct(array $options = array())
{
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Input/ArgvInput.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Input/ArgvInput.php
index fec04e21..cb0a8aa5 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Input/ArgvInput.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Input/ArgvInput.php
@@ -46,8 +46,8 @@ class ArgvInput extends Input
/**
* Constructor.
*
- * @param array $argv An array of parameters from the CLI (in the argv format)
- * @param InputDefinition $definition A InputDefinition instance
+ * @param array|null $argv An array of parameters from the CLI (in the argv format)
+ * @param InputDefinition|null $definition A InputDefinition instance
*/
public function __construct(array $argv = null, InputDefinition $definition = null)
{
@@ -69,7 +69,7 @@ protected function setTokens(array $tokens)
}
/**
- * Processes command line arguments.
+ * {@inheritdoc}
*/
protected function parse()
{
@@ -93,7 +93,7 @@ protected function parse()
/**
* Parses a short option.
*
- * @param string $token The current token.
+ * @param string $token The current token
*/
private function parseShortOption($token)
{
@@ -176,7 +176,12 @@ private function parseArgument($token)
// unexpected argument
} else {
- throw new RuntimeException('Too many arguments.');
+ $all = $this->definition->getArguments();
+ if (count($all)) {
+ throw new RuntimeException(sprintf('Too many arguments, expected arguments "%s".', implode('" "', array_keys($all))));
+ }
+
+ throw new RuntimeException(sprintf('No arguments expected, got "%s".', $token));
}
}
@@ -253,9 +258,7 @@ private function addLongOption($name, $value)
}
/**
- * Returns the first argument from the raw parameters (not parsed).
- *
- * @return string The value of the first argument or null otherwise
+ * {@inheritdoc}
*/
public function getFirstArgument()
{
@@ -269,15 +272,7 @@ public function getFirstArgument()
}
/**
- * Returns true if the raw parameters (not parsed) contain a value.
- *
- * This method is to be used to introspect the input parameters
- * before they have been validated. It must be used carefully.
- *
- * @param string|array $values The value(s) to look for in the raw parameters (can be an array)
- * @param bool $onlyParams Only check real parameters, skip those following an end of options (--) signal
- *
- * @return bool true if the value is contained in the raw parameters
+ * {@inheritdoc}
*/
public function hasParameterOption($values, $onlyParams = false)
{
@@ -298,16 +293,7 @@ public function hasParameterOption($values, $onlyParams = false)
}
/**
- * Returns the value of a raw option (not parsed).
- *
- * This method is to be used to introspect the input parameters
- * before they have been validated. It must be used carefully.
- *
- * @param string|array $values The value(s) to look for in the raw parameters (can be an array)
- * @param mixed $default The default value to return if no result is found
- * @param bool $onlyParams Only check real parameters, skip those following an end of options (--) signal
- *
- * @return mixed The option value
+ * {@inheritdoc}
*/
public function getParameterOption($values, $default = false, $onlyParams = false)
{
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Input/ArrayInput.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Input/ArrayInput.php
index 6705d4bb..a44b6b28 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Input/ArrayInput.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Input/ArrayInput.php
@@ -30,8 +30,8 @@ class ArrayInput extends Input
/**
* Constructor.
*
- * @param array $parameters An array of parameters
- * @param InputDefinition $definition A InputDefinition instance
+ * @param array $parameters An array of parameters
+ * @param InputDefinition|null $definition A InputDefinition instance
*/
public function __construct(array $parameters, InputDefinition $definition = null)
{
@@ -41,9 +41,7 @@ public function __construct(array $parameters, InputDefinition $definition = nul
}
/**
- * Returns the first argument from the raw parameters (not parsed).
- *
- * @return string The value of the first argument or null otherwise
+ * {@inheritdoc}
*/
public function getFirstArgument()
{
@@ -57,15 +55,7 @@ public function getFirstArgument()
}
/**
- * Returns true if the raw parameters (not parsed) contain a value.
- *
- * This method is to be used to introspect the input parameters
- * before they have been validated. It must be used carefully.
- *
- * @param string|array $values The values to look for in the raw parameters (can be an array)
- * @param bool $onlyParams Only check real parameters, skip those following an end of options (--) signal
- *
- * @return bool true if the value is contained in the raw parameters
+ * {@inheritdoc}
*/
public function hasParameterOption($values, $onlyParams = false)
{
@@ -89,16 +79,7 @@ public function hasParameterOption($values, $onlyParams = false)
}
/**
- * Returns the value of a raw option (not parsed).
- *
- * This method is to be used to introspect the input parameters
- * before they have been validated. It must be used carefully.
- *
- * @param string|array $values The value(s) to look for in the raw parameters (can be an array)
- * @param mixed $default The default value to return if no result is found
- * @param bool $onlyParams Only check real parameters, skip those following an end of options (--) signal
- *
- * @return mixed The option value
+ * {@inheritdoc}
*/
public function getParameterOption($values, $default = false, $onlyParams = false)
{
@@ -141,7 +122,7 @@ public function __toString()
}
/**
- * Processes command line arguments.
+ * {@inheritdoc}
*/
protected function parse()
{
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Input/Input.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Input/Input.php
index 85499fc4..817292ed 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Input/Input.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Input/Input.php
@@ -38,7 +38,7 @@ abstract class Input implements InputInterface
/**
* Constructor.
*
- * @param InputDefinition $definition A InputDefinition instance
+ * @param InputDefinition|null $definition A InputDefinition instance
*/
public function __construct(InputDefinition $definition = null)
{
@@ -51,9 +51,7 @@ public function __construct(InputDefinition $definition = null)
}
/**
- * Binds the current Input instance with the given arguments and options.
- *
- * @param InputDefinition $definition A InputDefinition instance
+ * {@inheritdoc}
*/
public function bind(InputDefinition $definition)
{
@@ -70,9 +68,7 @@ public function bind(InputDefinition $definition)
abstract protected function parse();
/**
- * Validates the input.
- *
- * @throws RuntimeException When not enough arguments are given
+ * {@inheritdoc}
*/
public function validate()
{
@@ -89,9 +85,7 @@ public function validate()
}
/**
- * Checks if the input is interactive.
- *
- * @return bool Returns true if the input is interactive
+ * {@inheritdoc}
*/
public function isInteractive()
{
@@ -99,9 +93,7 @@ public function isInteractive()
}
/**
- * Sets the input interactivity.
- *
- * @param bool $interactive If the input should be interactive
+ * {@inheritdoc}
*/
public function setInteractive($interactive)
{
@@ -109,9 +101,7 @@ public function setInteractive($interactive)
}
/**
- * Returns the argument values.
- *
- * @return array An array of argument values
+ * {@inheritdoc}
*/
public function getArguments()
{
@@ -119,13 +109,7 @@ public function getArguments()
}
/**
- * Returns the argument value for a given argument name.
- *
- * @param string $name The argument name
- *
- * @return mixed The argument value
- *
- * @throws InvalidArgumentException When argument given doesn't exist
+ * {@inheritdoc}
*/
public function getArgument($name)
{
@@ -137,12 +121,7 @@ public function getArgument($name)
}
/**
- * Sets an argument value by name.
- *
- * @param string $name The argument name
- * @param string $value The argument value
- *
- * @throws InvalidArgumentException When argument given doesn't exist
+ * {@inheritdoc}
*/
public function setArgument($name, $value)
{
@@ -154,11 +133,7 @@ public function setArgument($name, $value)
}
/**
- * Returns true if an InputArgument object exists by name or position.
- *
- * @param string|int $name The InputArgument name or position
- *
- * @return bool true if the InputArgument object exists, false otherwise
+ * {@inheritdoc}
*/
public function hasArgument($name)
{
@@ -166,9 +141,7 @@ public function hasArgument($name)
}
/**
- * Returns the options values.
- *
- * @return array An array of option values
+ * {@inheritdoc}
*/
public function getOptions()
{
@@ -176,13 +149,7 @@ public function getOptions()
}
/**
- * Returns the option value for a given option name.
- *
- * @param string $name The option name
- *
- * @return mixed The option value
- *
- * @throws InvalidArgumentException When option given doesn't exist
+ * {@inheritdoc}
*/
public function getOption($name)
{
@@ -194,12 +161,7 @@ public function getOption($name)
}
/**
- * Sets an option value by name.
- *
- * @param string $name The option name
- * @param string|bool $value The option value
- *
- * @throws InvalidArgumentException When option given doesn't exist
+ * {@inheritdoc}
*/
public function setOption($name, $value)
{
@@ -211,11 +173,7 @@ public function setOption($name, $value)
}
/**
- * Returns true if an InputOption object exists by name.
- *
- * @param string $name The InputOption name
- *
- * @return bool true if the InputOption object exists, false otherwise
+ * {@inheritdoc}
*/
public function hasOption($name)
{
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Input/InputInterface.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Input/InputInterface.php
index 2e1fb9fe..bc664664 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Input/InputInterface.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Input/InputInterface.php
@@ -11,6 +11,9 @@
namespace Symfony\Component\Console\Input;
+use Symfony\Component\Console\Exception\InvalidArgumentException;
+use Symfony\Component\Console\Exception\RuntimeException;
+
/**
* InputInterface is the interface implemented by all input classes.
*
@@ -60,11 +63,9 @@ public function getParameterOption($values, $default = false, $onlyParams = fals
public function bind(InputDefinition $definition);
/**
- * Validates if arguments given are correct.
- *
- * Throws an exception when not enough arguments are given.
+ * Validates the input.
*
- * @throws \RuntimeException
+ * @throws RuntimeException When not enough arguments are given
*/
public function validate();
@@ -76,11 +77,13 @@ public function validate();
public function getArguments();
/**
- * Gets argument by name.
+ * Returns the argument value for a given argument name.
*
- * @param string $name The name of the argument
+ * @param string $name The argument name
*
- * @return mixed
+ * @return mixed The argument value
+ *
+ * @throws InvalidArgumentException When argument given doesn't exist
*/
public function getArgument($name);
@@ -111,11 +114,13 @@ public function hasArgument($name);
public function getOptions();
/**
- * Gets an option by name.
+ * Returns the option value for a given option name.
*
- * @param string $name The name of the option
+ * @param string $name The option name
*
- * @return mixed
+ * @return mixed The option value
+ *
+ * @throws InvalidArgumentException When option given doesn't exist
*/
public function getOption($name);
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Output/ConsoleOutput.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Output/ConsoleOutput.php
index f666c793..007f3f01 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Output/ConsoleOutput.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Output/ConsoleOutput.php
@@ -14,15 +14,16 @@
use Symfony\Component\Console\Formatter\OutputFormatterInterface;
/**
- * ConsoleOutput is the default class for all CLI output. It uses STDOUT.
+ * ConsoleOutput is the default class for all CLI output. It uses STDOUT and STDERR.
*
- * This class is a convenient wrapper around `StreamOutput`.
+ * This class is a convenient wrapper around `StreamOutput` for both STDOUT and STDERR.
*
* $output = new ConsoleOutput();
*
* This is equivalent to:
*
* $output = new StreamOutput(fopen('php://stdout', 'w'));
+ * $stdErr = new StreamOutput(fopen('php://stderr', 'w'));
*
* @author Fabien Potencier
*/
@@ -139,9 +140,11 @@ function_exists('php_uname') ? php_uname('s') : '',
*/
private function openOutputStream()
{
- $outputStream = $this->hasStdoutSupport() ? 'php://stdout' : 'php://output';
+ if (!$this->hasStdoutSupport()) {
+ return fopen('php://output', 'w');
+ }
- return @fopen($outputStream, 'w') ?: fopen('php://output', 'w');
+ return @fopen('php://stdout', 'w') ?: fopen('php://output', 'w');
}
/**
@@ -149,8 +152,6 @@ private function openOutputStream()
*/
private function openErrorStream()
{
- $errorStream = $this->hasStderrSupport() ? 'php://stderr' : 'php://output';
-
- return fopen($errorStream, 'w');
+ return fopen($this->hasStderrSupport() ? 'php://stderr' : 'php://output', 'w');
}
}
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Output/NullOutput.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Output/NullOutput.php
index 682f9a4d..218f285b 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Output/NullOutput.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Output/NullOutput.php
@@ -73,21 +73,33 @@ public function getVerbosity()
return self::VERBOSITY_QUIET;
}
+ /**
+ * {@inheritdoc}
+ */
public function isQuiet()
{
return true;
}
+ /**
+ * {@inheritdoc}
+ */
public function isVerbose()
{
return false;
}
+ /**
+ * {@inheritdoc}
+ */
public function isVeryVerbose()
{
return false;
}
+ /**
+ * {@inheritdoc}
+ */
public function isDebug()
{
return false;
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Output/Output.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Output/Output.php
index 4476ffb5..c12015cc 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Output/Output.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Output/Output.php
@@ -94,21 +94,33 @@ public function getVerbosity()
return $this->verbosity;
}
+ /**
+ * {@inheritdoc}
+ */
public function isQuiet()
{
return self::VERBOSITY_QUIET === $this->verbosity;
}
+ /**
+ * {@inheritdoc}
+ */
public function isVerbose()
{
return self::VERBOSITY_VERBOSE <= $this->verbosity;
}
+ /**
+ * {@inheritdoc}
+ */
public function isVeryVerbose()
{
return self::VERBOSITY_VERY_VERBOSE <= $this->verbosity;
}
+ /**
+ * {@inheritdoc}
+ */
public function isDebug()
{
return self::VERBOSITY_DEBUG <= $this->verbosity;
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Output/StreamOutput.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Output/StreamOutput.php
index 62d04c0e..22b29aa1 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Output/StreamOutput.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Output/StreamOutput.php
@@ -72,7 +72,7 @@ public function getStream()
*/
protected function doWrite($message, $newline)
{
- if (false === @fwrite($this->stream, $message.($newline ? PHP_EOL : ''))) {
+ if (false === @fwrite($this->stream, $message) || ($newline && (false === @fwrite($this->stream, PHP_EOL)))) {
// should never happen
throw new RuntimeException('Unable to write output.');
}
@@ -85,7 +85,7 @@ protected function doWrite($message, $newline)
*
* Colorization is disabled if not supported by the stream:
*
- * - Windows without Ansicon, ConEmu or Mintty
+ * - Windows != 10.0.10586 without Ansicon, ConEmu or Mintty
* - non tty consoles
*
* @return bool true if the stream supports colorization, false otherwise
@@ -93,7 +93,11 @@ protected function doWrite($message, $newline)
protected function hasColorSupport()
{
if (DIRECTORY_SEPARATOR === '\\') {
- return false !== getenv('ANSICON') || 'ON' === getenv('ConEmuANSI') || 'xterm' === getenv('TERM');
+ return
+ '10.0.10586' === PHP_WINDOWS_VERSION_MAJOR.'.'.PHP_WINDOWS_VERSION_MINOR.'.'.PHP_WINDOWS_VERSION_BUILD
+ || false !== getenv('ANSICON')
+ || 'ON' === getenv('ConEmuANSI')
+ || 'xterm' === getenv('TERM');
}
return function_exists('posix_isatty') && @posix_isatty($this->stream);
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Question/ChoiceQuestion.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Question/ChoiceQuestion.php
index 2c40638d..39c4a852 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Question/ChoiceQuestion.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Question/ChoiceQuestion.php
@@ -68,6 +68,16 @@ public function setMultiselect($multiselect)
return $this;
}
+ /**
+ * Returns whether the choices are multiselect.
+ *
+ * @return bool
+ */
+ public function isMultiselect()
+ {
+ return $this->multiselect;
+ }
+
/**
* Gets the prompt for choices.
*
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Question/Question.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Question/Question.php
index 310a2bfe..7a69279f 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Question/Question.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Question/Question.php
@@ -138,8 +138,8 @@ public function getAutocompleterValues()
*/
public function setAutocompleterValues($values)
{
- if (is_array($values) && $this->isAssoc($values)) {
- $values = array_merge(array_keys($values), array_values($values));
+ if (is_array($values)) {
+ $values = $this->isAssoc($values) ? array_merge(array_keys($values), array_values($values)) : array_values($values);
}
if (null !== $values && !is_array($values)) {
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/README.md b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/README.md
index 25f700c8..664a37c0 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/README.md
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/README.md
@@ -1,67 +1,20 @@
Console Component
=================
-Console eases the creation of beautiful and testable command line interfaces.
+The Console component eases the creation of beautiful and testable command line
+interfaces.
-The Application object manages the CLI application:
-
-```php
-use Symfony\Component\Console\Application;
-
-$console = new Application();
-$console->run();
-```
-
-The ``run()`` method parses the arguments and options passed on the command
-line and executes the right command.
-
-Registering a new command can easily be done via the ``register()`` method,
-which returns a ``Command`` instance:
-
-```php
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Input\InputArgument;
-use Symfony\Component\Console\Input\InputOption;
-use Symfony\Component\Console\Output\OutputInterface;
-
-$console
- ->register('ls')
- ->setDefinition(array(
- new InputArgument('dir', InputArgument::REQUIRED, 'Directory name'),
- ))
- ->setDescription('Displays the files in the given directory')
- ->setCode(function (InputInterface $input, OutputInterface $output) {
- $dir = $input->getArgument('dir');
-
- $output->writeln(sprintf('Dir listing for %s ', $dir));
- })
-;
-```
-
-You can also register new commands via classes.
-
-The component provides a lot of features like output coloring, input and
-output abstractions (so that you can easily unit-test your commands),
-validation, automatic help messages, ...
-
-Tests
------
-
-You can run the unit tests with the following command:
+Resources
+---------
- $ cd path/to/Symfony/Component/Console/
- $ composer install
- $ phpunit
+ * [Documentation](https://symfony.com/doc/current/components/console/index.html)
+ * [Contributing](https://symfony.com/doc/current/contributing/index.html)
+ * [Report issues](https://github.com/symfony/symfony/issues) and
+ [send Pull Requests](https://github.com/symfony/symfony/pulls)
+ in the [main Symfony repository](https://github.com/symfony/symfony)
-Third Party
------------
+Credits
+-------
`Resources/bin/hiddeninput.exe` is a third party binary provided within this
component. Find sources and license at https://github.com/Seldaek/hidden-input.
-
-Resources
----------
-
-[The Console Component](https://symfony.com/doc/current/components/console.html)
-
-[How to create a Console Command](https://symfony.com/doc/current/cookbook/console/console_command.html)
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Style/SymfonyStyle.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Style/SymfonyStyle.php
index 47d7d124..a9c57443 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Style/SymfonyStyle.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Style/SymfonyStyle.php
@@ -65,40 +65,10 @@ public function __construct(InputInterface $input, OutputInterface $output)
*/
public function block($messages, $type = null, $style = null, $prefix = ' ', $padding = false)
{
- $this->autoPrependBlock();
$messages = is_array($messages) ? array_values($messages) : array($messages);
- $lines = array();
-
- // add type
- if (null !== $type) {
- $messages[0] = sprintf('[%s] %s', $type, $messages[0]);
- }
-
- // wrap and add newlines for each element
- foreach ($messages as $key => $message) {
- $message = OutputFormatter::escape($message);
- $lines = array_merge($lines, explode(PHP_EOL, wordwrap($message, $this->lineLength - Helper::strlen($prefix), PHP_EOL, true)));
-
- if (count($messages) > 1 && $key < count($messages) - 1) {
- $lines[] = '';
- }
- }
-
- if ($padding && $this->isDecorated()) {
- array_unshift($lines, '');
- $lines[] = '';
- }
-
- foreach ($lines as &$line) {
- $line = sprintf('%s%s', $prefix, $line);
- $line .= str_repeat(' ', $this->lineLength - Helper::strlenWithoutDecoration($this->getFormatter(), $line));
- if ($style) {
- $line = sprintf('<%s>%s>', $style, $line);
- }
- }
-
- $this->writeln($lines);
+ $this->autoPrependBlock();
+ $this->writeln($this->createBlock($messages, $type, $style, $prefix, $padding, true));
$this->newLine();
}
@@ -156,16 +126,17 @@ public function text($message)
}
/**
- * {@inheritdoc}
+ * Formats a command comment.
+ *
+ * @param string|array $message
*/
public function comment($message)
{
- $this->autoPrependText();
-
$messages = is_array($message) ? array_values($message) : array($message);
- foreach ($messages as $message) {
- $this->writeln(sprintf(' // %s', $message));
- }
+
+ $this->autoPrependBlock();
+ $this->writeln($this->createBlock($messages, null, null, ' // >'));
+ $this->newLine();
}
/**
@@ -213,12 +184,13 @@ public function caution($message)
*/
public function table(array $headers, array $rows)
{
- $headers = array_map(function ($value) { return sprintf('%s>', $value); }, $headers);
+ $style = clone Table::getStyleDefinition('symfony-style-guide');
+ $style->setCellHeaderFormat('%s ');
$table = new Table($this);
$table->setHeaders($headers);
$table->setRows($rows);
- $table->setStyle('symfony-style-guide');
+ $table->setStyle($style);
$table->render();
$this->newLine();
@@ -412,4 +384,52 @@ private function reduceBuffer($messages)
return substr($value, -4);
}, array_merge(array($this->bufferedOutput->fetch()), (array) $messages));
}
+
+ private function createBlock($messages, $type = null, $style = null, $prefix = ' ', $padding = false, $escape = false)
+ {
+ $indentLength = 0;
+ $prefixLength = Helper::strlenWithoutDecoration($this->getFormatter(), $prefix);
+ $lines = array();
+
+ if (null !== $type) {
+ $type = sprintf('[%s] ', $type);
+ $indentLength = strlen($type);
+ $lineIndentation = str_repeat(' ', $indentLength);
+ }
+
+ // wrap and add newlines for each element
+ foreach ($messages as $key => $message) {
+ if ($escape) {
+ $message = OutputFormatter::escape($message);
+ }
+
+ $lines = array_merge($lines, explode(PHP_EOL, wordwrap($message, $this->lineLength - $prefixLength - $indentLength, PHP_EOL, true)));
+
+ if (count($messages) > 1 && $key < count($messages) - 1) {
+ $lines[] = '';
+ }
+ }
+
+ $firstLineIndex = 0;
+ if ($padding && $this->isDecorated()) {
+ $firstLineIndex = 1;
+ array_unshift($lines, '');
+ $lines[] = '';
+ }
+
+ foreach ($lines as $i => &$line) {
+ if (null !== $type) {
+ $line = $firstLineIndex === $i ? $type.$line : $lineIndentation.$line;
+ }
+
+ $line = $prefix.$line;
+ $line .= str_repeat(' ', $this->lineLength - Helper::strlenWithoutDecoration($this->getFormatter(), $line));
+
+ if ($style) {
+ $line = sprintf('<%s>%s>', $style, $line);
+ }
+ }
+
+ return $lines;
+ }
}
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Tester/ApplicationTester.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Tester/ApplicationTester.php
index da8a19ce..c0f8c720 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Tester/ApplicationTester.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Tester/ApplicationTester.php
@@ -14,6 +14,7 @@
use Symfony\Component\Console\Application;
use Symfony\Component\Console\Input\ArrayInput;
use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Output\ConsoleOutput;
use Symfony\Component\Console\Output\OutputInterface;
use Symfony\Component\Console\Output\StreamOutput;
@@ -31,14 +32,13 @@ class ApplicationTester
{
private $application;
private $input;
- private $output;
private $statusCode;
-
/**
- * Constructor.
- *
- * @param Application $application An Application instance to test.
+ * @var OutputInterface
*/
+ private $output;
+ private $captureStreamsIndependently = false;
+
public function __construct(Application $application)
{
$this->application = $application;
@@ -49,9 +49,10 @@ public function __construct(Application $application)
*
* Available options:
*
- * * interactive: Sets the input interactive flag
- * * decorated: Sets the output decorated flag
- * * verbosity: Sets the output verbosity flag
+ * * interactive: Sets the input interactive flag
+ * * decorated: Sets the output decorated flag
+ * * verbosity: Sets the output verbosity flag
+ * * capture_stderr_separately: Make output of stdOut and stdErr separately available
*
* @param array $input An array of arguments and options
* @param array $options An array of options
@@ -65,12 +66,35 @@ public function run(array $input, $options = array())
$this->input->setInteractive($options['interactive']);
}
- $this->output = new StreamOutput(fopen('php://memory', 'w', false));
- if (isset($options['decorated'])) {
- $this->output->setDecorated($options['decorated']);
- }
- if (isset($options['verbosity'])) {
- $this->output->setVerbosity($options['verbosity']);
+ $this->captureStreamsIndependently = array_key_exists('capture_stderr_separately', $options) && $options['capture_stderr_separately'];
+ if (!$this->captureStreamsIndependently) {
+ $this->output = new StreamOutput(fopen('php://memory', 'w', false));
+ if (isset($options['decorated'])) {
+ $this->output->setDecorated($options['decorated']);
+ }
+ if (isset($options['verbosity'])) {
+ $this->output->setVerbosity($options['verbosity']);
+ }
+ } else {
+ $this->output = new ConsoleOutput(
+ isset($options['verbosity']) ? $options['verbosity'] : ConsoleOutput::VERBOSITY_NORMAL,
+ isset($options['decorated']) ? $options['decorated'] : null
+ );
+
+ $errorOutput = new StreamOutput(fopen('php://memory', 'w', false));
+ $errorOutput->setFormatter($this->output->getFormatter());
+ $errorOutput->setVerbosity($this->output->getVerbosity());
+ $errorOutput->setDecorated($this->output->isDecorated());
+
+ $reflectedOutput = new \ReflectionObject($this->output);
+ $strErrProperty = $reflectedOutput->getProperty('stderr');
+ $strErrProperty->setAccessible(true);
+ $strErrProperty->setValue($this->output, $errorOutput);
+
+ $reflectedParent = $reflectedOutput->getParentClass();
+ $streamProperty = $reflectedParent->getProperty('stream');
+ $streamProperty->setAccessible(true);
+ $streamProperty->setValue($this->output, fopen('php://memory', 'w', false));
}
return $this->statusCode = $this->application->run($this->input, $this->output);
@@ -96,6 +120,30 @@ public function getDisplay($normalize = false)
return $display;
}
+ /**
+ * Gets the output written to STDERR by the application.
+ *
+ * @param bool $normalize Whether to normalize end of lines to \n or not
+ *
+ * @return string
+ */
+ public function getErrorOutput($normalize = false)
+ {
+ if (!$this->captureStreamsIndependently) {
+ throw new \LogicException('The error output is not available when the tester is run without "capture_stderr_separately" option set.');
+ }
+
+ rewind($this->output->getErrorOutput()->getStream());
+
+ $display = stream_get_contents($this->output->getErrorOutput()->getStream());
+
+ if ($normalize) {
+ $display = str_replace(PHP_EOL, "\n", $display);
+ }
+
+ return $display;
+ }
+
/**
* Gets the input instance used by the last execution of the application.
*
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Tester/CommandTester.php b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Tester/CommandTester.php
index 8d6486e1..f95298bc 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Tester/CommandTester.php
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/Tester/CommandTester.php
@@ -32,7 +32,7 @@ class CommandTester
/**
* Constructor.
*
- * @param Command $command A Command instance to test.
+ * @param Command $command A Command instance to test
*/
public function __construct(Command $command)
{
diff --git a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/phpunit.xml.dist b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/phpunit.xml.dist
index ae0dcbea..8c09554f 100644
--- a/app/src/vendor/PHP-Benchmark/vendor/symfony/console/phpunit.xml.dist
+++ b/app/src/vendor/PHP-Benchmark/vendor/symfony/console/phpunit.xml.dist
@@ -26,4 +26,14 @@
+
+
+
+
+
+ Symfony\Component\Console
+
+
+
+
+ +This demonstrates sending multiple email messages with binary attachments +from a MySQL database using multipart/alternative messages.
+ +
+require 'PHPMailerAutoload.php'; + +$mail = new PHPMailer(); + +$mail->setFrom('list@example.com', 'List manager'); +$mail->Host = 'smtp1.example.com;smtp2.example.com'; +$mail->Mailer = 'smtp'; + +@mysqli_connect('localhost','root','password'); +@mysqli_select_db("my_company"); +$query = "SELECT full_name, email, photo FROM employee"; +$result = @mysqli_query($query); + +while ($row = mysqli_fetch_assoc($result)) +{ + // HTML body + $body = "Hello <font size=\"4\">" . $row['full_name'] . "</font>, <p>"; + $body .= "<i>Your</i> personal photograph to this message.<p>"; + $body .= "Sincerely, <br>"; + $body .= "phpmailer List manager"; + + // Plain text body (for mail clients that cannot read HTML) + $text_body = 'Hello ' . $row['full_name'] . ", \n\n"; + $text_body .= "Your personal photograph to this message.\n\n"; + $text_body .= "Sincerely, \n"; + $text_body .= 'phpmailer List manager'; + + $mail->Body = $body; + $mail->AltBody = $text_body; + $mail->addAddress($row['email'], $row['full_name']); + $mail->addStringAttachment($row['photo'], 'YourPhoto.jpg'); + + if(!$mail->send()) + echo "There has been a mail error sending to " . $row['email'] . "<br>"; + + // Clear all addresses and attachments for next loop + $mail->clearAddresses(); + $mail->clearAttachments(); +} ++
+ +
+ +Extending classes with inheritance is one of the most +powerful features of object-oriented programming. It allows you to make changes to the +original class for your own personal use without hacking the original +classes, and it's very easy to do: + +
+Here's a class that extends the phpmailer class and sets the defaults
+for the particular site:
+PHP include file: my_phpmailer.php
+
+ +
+require 'PHPMailerAutoload.php'; + +class my_phpmailer extends PHPMailer { + // Set default variables for all new objects + public $From = 'from@example.com'; + public $FromName = 'Mailer'; + public $Host = 'smtp1.example.com;smtp2.example.com'; + public $Mailer = 'smtp'; // Alternative to isSMTP() + public $WordWrap = 75; + + // Replace the default debug output function + protected function edebug($msg) { + print('My Site Error'); + print('Description:'); + printf('%s', $msg); + exit; + } + + //Extend the send function + public function send() { + $this->Subject = '[Yay for me!] '.$this->Subject; + return parent::send() + } + + // Create an additional function + public function do_something($something) { + // Place your new code here + } +} ++
+require 'my_phpmailer.php'; + +// Instantiate your new class +$mail = new my_phpmailer; + +// Now you only need to add the necessary stuff +$mail->addAddress('josh@example.com', 'Josh Adams'); +$mail->Subject = 'Here is the subject'; +$mail->Body = 'This is the message body'; +$mail->addAttachment('c:/temp/11-10-00.zip', 'new_name.zip'); // optional name + +if(!$mail->send()) +{ + echo 'There was an error sending the message'; + exit; +} + +echo 'Message was sent successfully'; ++ + diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/docs/faq.html b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/docs/faq.html new file mode 100644 index 00000000..7033a142 --- /dev/null +++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/docs/faq.html @@ -0,0 +1,28 @@ + + +
\n"; + echo $example_code; + echo "\n\n"; + echo "\n
This example uses HTML.
+Chinese text: 郵件內容為空
+Russian text: Пустое тело сообщения
+Armenian text: Հաղորդագրությունը դատարկ է
+Czech text: Prázdné tělo zprávy
+This folder contains a collection of examples of using PHPMailer.
+When working on email sending code you'll find yourself worrying about what might happen if all these test emails got sent to your mailing list. The solution is to use a fake mail server, one that acts just like the real thing, but just doesn't actually send anything out. Some offer web interfaces, feedback, logging, the ability to return specific error codes, all things that are useful for testing error handling, authentication etc. Here's a selection of mail testing tools you might like to try:
+Before running these examples you'll need to rename them with '.php' extensions. They are supplied as '.phps' files which will usually be displayed with syntax highlighting by PHP instead of running them. This prevents potential security issues with running potential spam-gateway code if you happen to deploy these code examples on a live site - please don't do that! Similarly, don't leave your passwords in these files as they will be visible to the world!
+This script is a simple code generator - fill in the form and hit submit, and it will use when you entered to email you a message, and will also generate PHP code using your settings that you can copy and paste to use in your own apps. If you need to get going quickly, this is probably the best place to start.
+This script is a basic example which creates an email message from an external HTML file, creates a plain text body, sets various addresses, adds an attachment and sends the message. It uses PHP's built-in mail() function which is the simplest to use, but relies on the presence of a local mail server, something which is not usually available on Windows. If you find yourself in that situation, either install a local mail server, or use a remote one and send using SMTP instead.
+The same as the mail example, but shows how to use PHPMailer's optional exceptions for error handling.
+A simple example sending using SMTP with authentication.
+A simple example sending using SMTP without authentication.
+A simple example using sendmail. Sendmail is a program (usually found on Linux/BSD, OS X and other UNIX-alikes) that can be used to submit messages to a local mail server without a lengthy SMTP conversation. It's probably the fastest sending mechanism, but lacks some error reporting features. There are sendmail emulators for most popular mail servers including postfix, qmail, exim etc.
+Submitting email via Google's Gmail service is a popular use of PHPMailer. It's much the same as normal SMTP sending, just with some specific settings, namely using TLS encryption, authentication is enabled, and it connects to the SMTP submission port 587 on the smtp.gmail.com host. This example does all that.
+Before effective SMTP authentication mechanisms were available, it was common for ISPs to use POP-before-SMTP authentication. As it implies, you authenticate using the POP3 protocol (an older protocol now mostly replaced by the far superior IMAP), and then the SMTP server will allow send access from your IP address for a short while, usually 5-15 minutes. PHPMailer includes a POP3 protocol client, so it can carry out this sequence - it's just like a normal SMTP conversation (without authentication), but connects via POP first.
+This is a somewhat naïve example of sending similar emails to a list of different addresses. It sets up a PHPMailer instance using SMTP, then connects to a MySQL database to retrieve a list of recipients. The code loops over this list, sending email to each person using their info and marks them as sent in the database. It makes use of SMTP keepalive which saves reconnecting and re-authenticating between each message.
+This is an example showing how to use the SMTP class by itself (without PHPMailer) to check an SMTP connection.
+Most of these examples use the 'example.com' domain. This domain is reserved by IANA for illustrative purposes, as documented in RFC 2606. Don't use made-up domains like 'mydomain.com' or 'somedomain.com' in examples as someone, somewhere, probably owns them!
+ + diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/mail.phps b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/mail.phps new file mode 100644 index 00000000..8e129f47 --- /dev/null +++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/mail.phps @@ -0,0 +1,31 @@ +setFrom('from@example.com', 'First Last'); +//Set an alternative reply-to address +$mail->addReplyTo('replyto@example.com', 'First Last'); +//Set who the message is to be sent to +$mail->addAddress('whoto@example.com', 'John Doe'); +//Set the subject line +$mail->Subject = 'PHPMailer mail() test'; +//Read an HTML message body from an external file, convert referenced images to embedded, +//convert HTML into a basic plain-text alternative body +$mail->msgHTML(file_get_contents('contents.html'), dirname(__FILE__)); +//Replace the plain text body with one created manually +$mail->AltBody = 'This is a plain-text message body'; +//Attach an image file +$mail->addAttachment('images/phpmailer_mini.png'); + +//send the message, check for errors +if (!$mail->send()) { + echo "Mailer Error: " . $mail->ErrorInfo; +} else { + echo "Message sent!"; +} diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/mailing_list.phps b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/mailing_list.phps new file mode 100644 index 00000000..8644bb59 --- /dev/null +++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/mailing_list.phps @@ -0,0 +1,59 @@ +isSMTP(); +$mail->Host = 'smtp.example.com'; +$mail->SMTPAuth = true; +$mail->SMTPKeepAlive = true; // SMTP connection will not close after each email sent, reduces SMTP overhead +$mail->Port = 25; +$mail->Username = 'yourname@example.com'; +$mail->Password = 'yourpassword'; +$mail->setFrom('list@example.com', 'List manager'); +$mail->addReplyTo('list@example.com', 'List manager'); + +$mail->Subject = "PHPMailer Simple database mailing list test"; + +//Same body for all messages, so set this before the sending loop +//If you generate a different body for each recipient (e.g. you're using a templating system), +//set it inside the loop +$mail->msgHTML($body); +//msgHTML also sets AltBody, but if you want a custom one, set it afterwards +$mail->AltBody = 'To view the message, please use an HTML compatible email viewer!'; + +//Connect to the database and select the recipients from your mailing list that have not yet been sent to +//You'll need to alter this to match your database +$mysql = mysqli_connect('localhost', 'username', 'password'); +mysqli_select_db($mysql, 'mydb'); +$result = mysqli_query($mysql, 'SELECT full_name, email, photo FROM mailinglist WHERE sent = false'); + +foreach ($result as $row) { //This iterator syntax only works in PHP 5.4+ + $mail->addAddress($row['email'], $row['full_name']); + if (!empty($row['photo'])) { + $mail->addStringAttachment($row['photo'], 'YourPhoto.jpg'); //Assumes the image data is stored in the DB + } + + if (!$mail->send()) { + echo "Mailer Error (" . str_replace("@", "@", $row["email"]) . ') ' . $mail->ErrorInfo . ''+this.getLineNumbersHtml(t)+" | ":"")+''+' '+n+" "+" | "+"
.*?)"+"(?"+t.end+")","sgi")}}},e}();typeof exports!="undefined"?exports.SyntaxHighlighter=SyntaxHighlighter:null
\ No newline at end of file
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/scripts/shLegacy.js b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/scripts/shLegacy.js
new file mode 100644
index 00000000..35c582c9
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/scripts/shLegacy.js
@@ -0,0 +1,141 @@
+var dp = {
+ SyntaxHighlighter : {}
+};
+
+dp.SyntaxHighlighter = {
+ parseParams: function(
+ input,
+ showGutter,
+ showControls,
+ collapseAll,
+ firstLine,
+ showColumns
+ )
+ {
+ function getValue(list, name)
+ {
+ var regex = new XRegExp('^' + name + '\\[(?\\w+)\\]$', 'gi'),
+ match = null
+ ;
+
+ for (var i = 0; i < list.length; i++)
+ if ((match = regex.exec(list[i])) != null)
+ return match.value;
+
+ return null;
+ };
+
+ function defaultValue(value, def)
+ {
+ return value != null ? value : def;
+ };
+
+ function asString(value)
+ {
+ return value != null ? value.toString() : null;
+ };
+
+ var parts = input.split(':'),
+ brushName = parts[0],
+ options = {},
+ straight = { 'true' : true }
+ reverse = { 'true' : false },
+ result = null,
+ defaults = SyntaxHighlighter.defaults
+ ;
+
+ for (var i in parts)
+ options[parts[i]] = 'true';
+
+ showGutter = asString(defaultValue(showGutter, defaults.gutter));
+ showControls = asString(defaultValue(showControls, defaults.toolbar));
+ collapseAll = asString(defaultValue(collapseAll, defaults.collapse));
+ showColumns = asString(defaultValue(showColumns, defaults.ruler));
+ firstLine = asString(defaultValue(firstLine, defaults['first-line']));
+
+ return {
+ brush : brushName,
+ gutter : defaultValue(reverse[options.nogutter], showGutter),
+ toolbar : defaultValue(reverse[options.nocontrols], showControls),
+ collapse : defaultValue(straight[options.collapse], collapseAll),
+ // ruler : defaultValue(straight[options.showcolumns], showColumns),
+ 'first-line' : defaultValue(getValue(parts, 'firstline'), firstLine)
+ };
+ },
+
+ HighlightAll: function(
+ name,
+ showGutter /* optional */,
+ showControls /* optional */,
+ collapseAll /* optional */,
+ firstLine /* optional */,
+ showColumns /* optional */
+ )
+ {
+ function findValue()
+ {
+ var a = arguments;
+
+ for (var i = 0; i < a.length; i++)
+ {
+ if (a[i] === null)
+ continue;
+
+ if (typeof(a[i]) == 'string' && a[i] != '')
+ return a[i] + '';
+
+ if (typeof(a[i]) == 'object' && a[i].value != '')
+ return a[i].value + '';
+ }
+
+ return null;
+ };
+
+ function findTagsByName(list, name, tagName)
+ {
+ var tags = document.getElementsByTagName(tagName);
+
+ for (var i = 0; i < tags.length; i++)
+ if (tags[i].getAttribute('name') == name)
+ list.push(tags[i]);
+ }
+
+ var elements = [],
+ highlighter = null,
+ registered = {},
+ propertyName = 'innerHTML'
+ ;
+
+ // for some reason IE doesn't find by name, however it does see them just fine by tag name...
+ findTagsByName(elements, name, 'pre');
+ findTagsByName(elements, name, 'textarea');
+
+ if (elements.length === 0)
+ return;
+
+ for (var i = 0; i < elements.length; i++)
+ {
+ var element = elements[i],
+ params = findValue(
+ element.attributes['class'], element.className,
+ element.attributes['language'], element.language
+ ),
+ language = ''
+ ;
+
+ if (params === null)
+ continue;
+
+ params = dp.SyntaxHighlighter.parseParams(
+ params,
+ showGutter,
+ showControls,
+ collapseAll,
+ firstLine,
+ showColumns
+ );
+
+ SyntaxHighlighter.highlight(params, element);
+ }
+ }
+};
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/send_file_upload.phps b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/send_file_upload.phps
new file mode 100644
index 00000000..3004c762
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/send_file_upload.phps
@@ -0,0 +1,49 @@
+setFrom('from@example.com', 'First Last');
+ $mail->addAddress('whoto@example.com', 'John Doe');
+ $mail->Subject = 'PHPMailer file sender';
+ $mail->msgHTML("My message body");
+ // Attach the uploaded file
+ $mail->addAttachment($uploadfile, 'My uploaded file');
+ if (!$mail->send()) {
+ $msg .= "Mailer Error: " . $mail->ErrorInfo;
+ } else {
+ $msg .= "Message sent!";
+ }
+ } else {
+ $msg .= 'Failed to move file to ' . $uploadfile;
+ }
+}
+?>
+
+
+
+
+ PHPMailer Upload
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/send_multiple_file_upload.phps b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/send_multiple_file_upload.phps
new file mode 100644
index 00000000..ddb76146
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/send_multiple_file_upload.phps
@@ -0,0 +1,51 @@
+setFrom('from@example.com', 'First Last');
+ $mail->addAddress('whoto@example.com', 'John Doe');
+ $mail->Subject = 'PHPMailer file sender';
+ $mail->msgHTML('My message body');
+ //Attach multiple files one by one
+ for ($ct = 0; $ct < count($_FILES['userfile']['tmp_name']); $ct++) {
+ $uploadfile = tempnam(sys_get_temp_dir(), sha1($_FILES['userfile']['name'][$ct]));
+ $filename = $_FILES['userfile']['name'][$ct];
+ if (move_uploaded_file($_FILES['userfile']['tmp_name'][$ct], $uploadfile)) {
+ $mail->addAttachment($uploadfile, $filename);
+ } else {
+ $msg .= 'Failed to move file to ' . $uploadfile;
+ }
+ }
+ if (!$mail->send()) {
+ $msg .= "Mailer Error: " . $mail->ErrorInfo;
+ } else {
+ $msg .= "Message sent!";
+ }
+}
+?>
+
+
+
+
+ PHPMailer Upload
+
+
+
+
+
+
+
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/sendmail.phps b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/sendmail.phps
new file mode 100644
index 00000000..a830e495
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/sendmail.phps
@@ -0,0 +1,33 @@
+isSendmail();
+//Set who the message is to be sent from
+$mail->setFrom('from@example.com', 'First Last');
+//Set an alternative reply-to address
+$mail->addReplyTo('replyto@example.com', 'First Last');
+//Set who the message is to be sent to
+$mail->addAddress('whoto@example.com', 'John Doe');
+//Set the subject line
+$mail->Subject = 'PHPMailer sendmail test';
+//Read an HTML message body from an external file, convert referenced images to embedded,
+//convert HTML into a basic plain-text alternative body
+$mail->msgHTML(file_get_contents('contents.html'), dirname(__FILE__));
+//Replace the plain text body with one created manually
+$mail->AltBody = 'This is a plain-text message body';
+//Attach an image file
+$mail->addAttachment('images/phpmailer_mini.png');
+
+//send the message, check for errors
+if (!$mail->send()) {
+ echo "Mailer Error: " . $mail->ErrorInfo;
+} else {
+ echo "Message sent!";
+}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/signed-mail.phps b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/signed-mail.phps
new file mode 100644
index 00000000..9d70d013
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/signed-mail.phps
@@ -0,0 +1,89 @@
+setFrom('from@example.com', 'First Last');
+//Set an alternative reply-to address
+$mail->addReplyTo('replyto@example.com', 'First Last');
+//Set who the message is to be sent to
+$mail->addAddress('whoto@example.com', 'John Doe');
+//Set the subject line
+$mail->Subject = 'PHPMailer mail() test';
+//Read an HTML message body from an external file, convert referenced images to embedded,
+//Convert HTML into a basic plain-text alternative body
+$mail->msgHTML(file_get_contents('contents.html'), dirname(__FILE__));
+//Replace the plain text body with one created manually
+$mail->AltBody = 'This is a plain-text message body';
+//Attach an image file
+$mail->addAttachment('images/phpmailer_mini.png');
+
+//Configure message signing (the actual signing does not occur until sending)
+$mail->sign(
+ '/path/to/cert.crt', //The location of your certificate file
+ '/path/to/cert.key', //The location of your private key file
+ 'yourSecretPrivateKeyPassword', //The password you protected your private key with (not the Import Password! may be empty but parameter must not be omitted!)
+ '/path/to/certchain.pem' //The location of your chain file
+);
+
+//Send the message, check for errors
+if (!$mail->send()) {
+ echo "Mailer Error: " . $mail->ErrorInfo;
+} else {
+ echo "Message sent!";
+}
+
+/**
+ * REMARKS:
+ * If your email client does not support S/MIME it will most likely just show an attachment smime.p7s which is the signature contained in the email.
+ * Other clients, such as Thunderbird support S/MIME natively and will validate the signature automatically and report the result in some way.
+ */
+?>
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/smtp.phps b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/smtp.phps
new file mode 100644
index 00000000..7c6b0239
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/smtp.phps
@@ -0,0 +1,54 @@
+isSMTP();
+//Enable SMTP debugging
+// 0 = off (for production use)
+// 1 = client messages
+// 2 = client and server messages
+$mail->SMTPDebug = 2;
+//Ask for HTML-friendly debug output
+$mail->Debugoutput = 'html';
+//Set the hostname of the mail server
+$mail->Host = "mail.example.com";
+//Set the SMTP port number - likely to be 25, 465 or 587
+$mail->Port = 25;
+//Whether to use SMTP authentication
+$mail->SMTPAuth = true;
+//Username to use for SMTP authentication
+$mail->Username = "yourname@example.com";
+//Password to use for SMTP authentication
+$mail->Password = "yourpassword";
+//Set who the message is to be sent from
+$mail->setFrom('from@example.com', 'First Last');
+//Set an alternative reply-to address
+$mail->addReplyTo('replyto@example.com', 'First Last');
+//Set who the message is to be sent to
+$mail->addAddress('whoto@example.com', 'John Doe');
+//Set the subject line
+$mail->Subject = 'PHPMailer SMTP test';
+//Read an HTML message body from an external file, convert referenced images to embedded,
+//convert HTML into a basic plain-text alternative body
+$mail->msgHTML(file_get_contents('contents.html'), dirname(__FILE__));
+//Replace the plain text body with one created manually
+$mail->AltBody = 'This is a plain-text message body';
+//Attach an image file
+$mail->addAttachment('images/phpmailer_mini.png');
+
+//send the message, check for errors
+if (!$mail->send()) {
+ echo "Mailer Error: " . $mail->ErrorInfo;
+} else {
+ echo "Message sent!";
+}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/smtp_check.phps b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/smtp_check.phps
new file mode 100644
index 00000000..a5ac2c57
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/smtp_check.phps
@@ -0,0 +1,55 @@
+do_debug = SMTP::DEBUG_CONNECTION;
+
+try {
+ //Connect to an SMTP server
+ if (!$smtp->connect('mail.example.com', 25)) {
+ throw new Exception('Connect failed');
+ }
+ //Say hello
+ if (!$smtp->hello(gethostname())) {
+ throw new Exception('EHLO failed: ' . $smtp->getError()['error']);
+ }
+ //Get the list of ESMTP services the server offers
+ $e = $smtp->getServerExtList();
+ //If server can do TLS encryption, use it
+ if (array_key_exists('STARTTLS', $e)) {
+ $tlsok = $smtp->startTLS();
+ if (!$tlsok) {
+ throw new Exception('Failed to start encryption: ' . $smtp->getError()['error']);
+ }
+ //Repeat EHLO after STARTTLS
+ if (!$smtp->hello(gethostname())) {
+ throw new Exception('EHLO (2) failed: ' . $smtp->getError()['error']);
+ }
+ //Get new capabilities list, which will usually now include AUTH if it didn't before
+ $e = $smtp->getServerExtList();
+ }
+ //If server supports authentication, do it (even if no encryption)
+ if (array_key_exists('AUTH', $e)) {
+ if ($smtp->authenticate('username', 'password')) {
+ echo "Connected ok!";
+ } else {
+ throw new Exception('Authentication failed: ' . $smtp->getError()['error']);
+ }
+ }
+} catch (Exception $e) {
+ echo 'SMTP error: ' . $e->getMessage(), "\n";
+}
+//Whatever happened, close the connection.
+$smtp->quit(true);
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/smtp_no_auth.phps b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/smtp_no_auth.phps
new file mode 100644
index 00000000..b5902984
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/smtp_no_auth.phps
@@ -0,0 +1,50 @@
+isSMTP();
+//Enable SMTP debugging
+// 0 = off (for production use)
+// 1 = client messages
+// 2 = client and server messages
+$mail->SMTPDebug = 2;
+//Ask for HTML-friendly debug output
+$mail->Debugoutput = 'html';
+//Set the hostname of the mail server
+$mail->Host = "mail.example.com";
+//Set the SMTP port number - likely to be 25, 465 or 587
+$mail->Port = 25;
+//Whether to use SMTP authentication
+$mail->SMTPAuth = false;
+//Set who the message is to be sent from
+$mail->setFrom('from@example.com', 'First Last');
+//Set an alternative reply-to address
+$mail->addReplyTo('replyto@example.com', 'First Last');
+//Set who the message is to be sent to
+$mail->addAddress('whoto@example.com', 'John Doe');
+//Set the subject line
+$mail->Subject = 'PHPMailer SMTP without auth test';
+//Read an HTML message body from an external file, convert referenced images to embedded,
+//convert HTML into a basic plain-text alternative body
+$mail->msgHTML(file_get_contents('contents.html'), dirname(__FILE__));
+//Replace the plain text body with one created manually
+$mail->AltBody = 'This is a plain-text message body';
+//Attach an image file
+$mail->addAttachment('images/phpmailer_mini.png');
+
+//send the message, check for errors
+if (!$mail->send()) {
+ echo "Mailer Error: " . $mail->ErrorInfo;
+} else {
+ echo "Message sent!";
+}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/ssl_options.phps b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/ssl_options.phps
new file mode 100644
index 00000000..cc41495a
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/ssl_options.phps
@@ -0,0 +1,74 @@
+isSMTP();
+
+//Enable SMTP debugging
+// 0 = off (for production use)
+// 1 = client messages
+// 2 = client and server messages
+$mail->SMTPDebug = 2;
+
+//Ask for HTML-friendly debug output
+$mail->Debugoutput = 'html';
+
+//Set the hostname of the mail server
+$mail->Host = 'smtp.example.com';
+
+//Set the SMTP port number - 587 for authenticated TLS, a.k.a. RFC4409 SMTP submission
+$mail->Port = 587;
+
+//Set the encryption system to use - ssl (deprecated) or tls
+$mail->SMTPSecure = 'tls';
+
+//Custom connection options
+$mail->SMTPOptions = array (
+ 'ssl' => array(
+ 'verify_peer' => true,
+ 'verify_depth' => 3,
+ 'allow_self_signed' => true,
+ 'peer_name' => 'smtp.example.com',
+ 'cafile' => '/etc/ssl/ca_cert.pem',
+ )
+);
+
+//Whether to use SMTP authentication
+$mail->SMTPAuth = true;
+
+//Username to use for SMTP authentication - use full email address for gmail
+$mail->Username = "username@example.com";
+
+//Password to use for SMTP authentication
+$mail->Password = "yourpassword";
+
+//Set who the message is to be sent from
+$mail->setFrom('from@example.com', 'First Last');
+
+//Set who the message is to be sent to
+$mail->addAddress('whoto@example.com', 'John Doe');
+
+//Set the subject line
+$mail->Subject = 'PHPMailer SMTP options test';
+
+//Read an HTML message body from an external file, convert referenced images to embedded,
+//convert HTML into a basic plain-text alternative body
+$mail->msgHTML(file_get_contents('contents.html'), dirname(__FILE__));
+
+//send the message, check for errors
+if (!$mail->send()) {
+ echo "Mailer Error: " . $mail->ErrorInfo;
+} else {
+ echo "Message sent!";
+}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCore.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCore.css
new file mode 100644
index 00000000..3b26ae7e
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCore.css
@@ -0,0 +1,46 @@
+.syntaxhighlighter a,.syntaxhighlighter div,.syntaxhighlighter code,.syntaxhighlighter table,.syntaxhighlighter table td,.syntaxhighlighter table tr,.syntaxhighlighter table tbody,.syntaxhighlighter table thead,.syntaxhighlighter table caption,.syntaxhighlighter textarea{-moz-border-radius:0 0 0 0 !important;-webkit-border-radius:0 0 0 0 !important;background:none !important;border:0 !important;bottom:auto !important;float:none !important;height:auto !important;left:auto !important;line-height:1.1em !important;margin:0 !important;outline:0 !important;overflow:visible !important;padding:0 !important;position:static !important;right:auto !important;text-align:left !important;top:auto !important;vertical-align:baseline !important;width:auto !important;box-sizing:content-box !important;font-family:"Consolas","Bitstream Vera Sans Mono","Courier New",Courier,monospace !important;font-weight:normal !important;font-style:normal !important;font-size:1em !important;min-height:inherit !important;min-height:auto !important;}
+.syntaxhighlighter{width:100% !important;margin:1em 0 1em 0 !important;position:relative !important;overflow:auto !important;font-size:1em !important;}
+.syntaxhighlighter.source{overflow:hidden !important;}
+.syntaxhighlighter .bold{font-weight:bold !important;}
+.syntaxhighlighter .italic{font-style:italic !important;}
+.syntaxhighlighter .line{white-space:pre !important;}
+.syntaxhighlighter table{width:100% !important;}
+.syntaxhighlighter table caption{text-align:left !important;padding:.5em 0 0.5em 1em !important;}
+.syntaxhighlighter table td.code{width:100% !important;}
+.syntaxhighlighter table td.code .container{position:relative !important;}
+.syntaxhighlighter table td.code .container textarea{box-sizing:border-box !important;position:absolute !important;left:0 !important;top:0 !important;width:100% !important;height:100% !important;border:none !important;background:white !important;padding-left:1em !important;overflow:hidden !important;white-space:pre !important;}
+.syntaxhighlighter table td.gutter .line{text-align:right !important;padding:0 0.5em 0 1em !important;}
+.syntaxhighlighter table td.code .line{padding:0 1em !important;}
+.syntaxhighlighter.nogutter td.code .container textarea,.syntaxhighlighter.nogutter td.code .line{padding-left:0em !important;}
+.syntaxhighlighter.show{display:block !important;}
+.syntaxhighlighter.collapsed table{display:none !important;}
+.syntaxhighlighter.collapsed .toolbar{padding:0.1em 0.8em 0em 0.8em !important;font-size:1em !important;position:static !important;width:auto !important;height:auto !important;}
+.syntaxhighlighter.collapsed .toolbar span{display:inline !important;margin-right:1em !important;}
+.syntaxhighlighter.collapsed .toolbar span a{padding:0 !important;display:none !important;}
+.syntaxhighlighter.collapsed .toolbar span a.expandSource{display:inline !important;}
+.syntaxhighlighter .toolbar{position:absolute !important;right:1px !important;top:1px !important;width:11px !important;height:11px !important;font-size:10px !important;z-index:10 !important;}
+.syntaxhighlighter .toolbar span.title{display:inline !important;}
+.syntaxhighlighter .toolbar a{display:block !important;text-align:center !important;text-decoration:none !important;padding-top:1px !important;}
+.syntaxhighlighter .toolbar a.expandSource{display:none !important;}
+.syntaxhighlighter.ie{font-size:.9em !important;padding:1px 0 1px 0 !important;}
+.syntaxhighlighter.ie .toolbar{line-height:8px !important;}
+.syntaxhighlighter.ie .toolbar a{padding-top:0px !important;}
+.syntaxhighlighter.printing .line.alt1 .content,.syntaxhighlighter.printing .line.alt2 .content,.syntaxhighlighter.printing .line.highlighted .number,.syntaxhighlighter.printing .line.highlighted.alt1 .content,.syntaxhighlighter.printing .line.highlighted.alt2 .content{background:none !important;}
+.syntaxhighlighter.printing .line .number{color:#bbbbbb !important;}
+.syntaxhighlighter.printing .line .content{color:black !important;}
+.syntaxhighlighter.printing .toolbar{display:none !important;}
+.syntaxhighlighter.printing a{text-decoration:none !important;}
+.syntaxhighlighter.printing .plain,.syntaxhighlighter.printing .plain a{color:black !important;}
+.syntaxhighlighter.printing .comments,.syntaxhighlighter.printing .comments a{color:#008200 !important;}
+.syntaxhighlighter.printing .string,.syntaxhighlighter.printing .string a{color:blue !important;}
+.syntaxhighlighter.printing .keyword{color:#006699 !important;font-weight:bold !important;}
+.syntaxhighlighter.printing .preprocessor{color:gray !important;}
+.syntaxhighlighter.printing .variable{color:#aa7700 !important;}
+.syntaxhighlighter.printing .value{color:#009900 !important;}
+.syntaxhighlighter.printing .functions{color:#ff1493 !important;}
+.syntaxhighlighter.printing .constants{color:#0066cc !important;}
+.syntaxhighlighter.printing .script{font-weight:bold !important;}
+.syntaxhighlighter.printing .color1,.syntaxhighlighter.printing .color1 a{color:gray !important;}
+.syntaxhighlighter.printing .color2,.syntaxhighlighter.printing .color2 a{color:#ff1493 !important;}
+.syntaxhighlighter.printing .color3,.syntaxhighlighter.printing .color3 a{color:red !important;}
+.syntaxhighlighter.printing .break,.syntaxhighlighter.printing .break a{color:black !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreDefault.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreDefault.css
new file mode 100644
index 00000000..3f15ebaa
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreDefault.css
@@ -0,0 +1,77 @@
+.syntaxhighlighter a,.syntaxhighlighter div,.syntaxhighlighter code,.syntaxhighlighter table,.syntaxhighlighter table td,.syntaxhighlighter table tr,.syntaxhighlighter table tbody,.syntaxhighlighter table thead,.syntaxhighlighter table caption,.syntaxhighlighter textarea{-moz-border-radius:0 0 0 0 !important;-webkit-border-radius:0 0 0 0 !important;background:none !important;border:0 !important;bottom:auto !important;float:none !important;height:auto !important;left:auto !important;line-height:1.1em !important;margin:0 !important;outline:0 !important;overflow:visible !important;padding:0 !important;position:static !important;right:auto !important;text-align:left !important;top:auto !important;vertical-align:baseline !important;width:auto !important;box-sizing:content-box !important;font-family:"Consolas","Bitstream Vera Sans Mono","Courier New",Courier,monospace !important;font-weight:normal !important;font-style:normal !important;font-size:1em !important;min-height:inherit !important;min-height:auto !important;}
+.syntaxhighlighter{width:100% !important;margin:1em 0 1em 0 !important;position:relative !important;overflow:auto !important;font-size:1em !important;}
+.syntaxhighlighter.source{overflow:hidden !important;}
+.syntaxhighlighter .bold{font-weight:bold !important;}
+.syntaxhighlighter .italic{font-style:italic !important;}
+.syntaxhighlighter .line{white-space:pre !important;}
+.syntaxhighlighter table{width:100% !important;}
+.syntaxhighlighter table caption{text-align:left !important;padding:.5em 0 0.5em 1em !important;}
+.syntaxhighlighter table td.code{width:100% !important;}
+.syntaxhighlighter table td.code .container{position:relative !important;}
+.syntaxhighlighter table td.code .container textarea{box-sizing:border-box !important;position:absolute !important;left:0 !important;top:0 !important;width:100% !important;height:100% !important;border:none !important;background:white !important;padding-left:1em !important;overflow:hidden !important;white-space:pre !important;}
+.syntaxhighlighter table td.gutter .line{text-align:right !important;padding:0 0.5em 0 1em !important;}
+.syntaxhighlighter table td.code .line{padding:0 1em !important;}
+.syntaxhighlighter.nogutter td.code .container textarea,.syntaxhighlighter.nogutter td.code .line{padding-left:0em !important;}
+.syntaxhighlighter.show{display:block !important;}
+.syntaxhighlighter.collapsed table{display:none !important;}
+.syntaxhighlighter.collapsed .toolbar{padding:0.1em 0.8em 0em 0.8em !important;font-size:1em !important;position:static !important;width:auto !important;height:auto !important;}
+.syntaxhighlighter.collapsed .toolbar span{display:inline !important;margin-right:1em !important;}
+.syntaxhighlighter.collapsed .toolbar span a{padding:0 !important;display:none !important;}
+.syntaxhighlighter.collapsed .toolbar span a.expandSource{display:inline !important;}
+.syntaxhighlighter .toolbar{position:absolute !important;right:1px !important;top:1px !important;width:11px !important;height:11px !important;font-size:10px !important;z-index:10 !important;}
+.syntaxhighlighter .toolbar span.title{display:inline !important;}
+.syntaxhighlighter .toolbar a{display:block !important;text-align:center !important;text-decoration:none !important;padding-top:1px !important;}
+.syntaxhighlighter .toolbar a.expandSource{display:none !important;}
+.syntaxhighlighter.ie{font-size:.9em !important;padding:1px 0 1px 0 !important;}
+.syntaxhighlighter.ie .toolbar{line-height:8px !important;}
+.syntaxhighlighter.ie .toolbar a{padding-top:0px !important;}
+.syntaxhighlighter.printing .line.alt1 .content,.syntaxhighlighter.printing .line.alt2 .content,.syntaxhighlighter.printing .line.highlighted .number,.syntaxhighlighter.printing .line.highlighted.alt1 .content,.syntaxhighlighter.printing .line.highlighted.alt2 .content{background:none !important;}
+.syntaxhighlighter.printing .line .number{color:#bbbbbb !important;}
+.syntaxhighlighter.printing .line .content{color:black !important;}
+.syntaxhighlighter.printing .toolbar{display:none !important;}
+.syntaxhighlighter.printing a{text-decoration:none !important;}
+.syntaxhighlighter.printing .plain,.syntaxhighlighter.printing .plain a{color:black !important;}
+.syntaxhighlighter.printing .comments,.syntaxhighlighter.printing .comments a{color:#008200 !important;}
+.syntaxhighlighter.printing .string,.syntaxhighlighter.printing .string a{color:blue !important;}
+.syntaxhighlighter.printing .keyword{color:#006699 !important;font-weight:bold !important;}
+.syntaxhighlighter.printing .preprocessor{color:gray !important;}
+.syntaxhighlighter.printing .variable{color:#aa7700 !important;}
+.syntaxhighlighter.printing .value{color:#009900 !important;}
+.syntaxhighlighter.printing .functions{color:#ff1493 !important;}
+.syntaxhighlighter.printing .constants{color:#0066cc !important;}
+.syntaxhighlighter.printing .script{font-weight:bold !important;}
+.syntaxhighlighter.printing .color1,.syntaxhighlighter.printing .color1 a{color:gray !important;}
+.syntaxhighlighter.printing .color2,.syntaxhighlighter.printing .color2 a{color:#ff1493 !important;}
+.syntaxhighlighter.printing .color3,.syntaxhighlighter.printing .color3 a{color:red !important;}
+.syntaxhighlighter.printing .break,.syntaxhighlighter.printing .break a{color:black !important;}
+.syntaxhighlighter{background-color:white !important;}
+.syntaxhighlighter .line.alt1{background-color:white !important;}
+.syntaxhighlighter .line.alt2{background-color:white !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#e0e0e0 !important;}
+.syntaxhighlighter .line.highlighted.number{color:black !important;}
+.syntaxhighlighter table caption{color:black !important;}
+.syntaxhighlighter .gutter{color:#afafaf !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #6ce26c !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#6ce26c !important;color:white !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:blue !important;background:white !important;border:1px solid #6ce26c !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:blue !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:red !important;}
+.syntaxhighlighter .toolbar{color:white !important;background:#6ce26c !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:white !important;}
+.syntaxhighlighter .toolbar a:hover{color:black !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:black !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#008200 !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:blue !important;}
+.syntaxhighlighter .keyword{color:#006699 !important;}
+.syntaxhighlighter .preprocessor{color:gray !important;}
+.syntaxhighlighter .variable{color:#aa7700 !important;}
+.syntaxhighlighter .value{color:#009900 !important;}
+.syntaxhighlighter .functions{color:#ff1493 !important;}
+.syntaxhighlighter .constants{color:#0066cc !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:#006699 !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:gray !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:#ff1493 !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:red !important;}
+.syntaxhighlighter .keyword{font-weight:bold !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreDjango.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreDjango.css
new file mode 100644
index 00000000..19c5eb4e
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreDjango.css
@@ -0,0 +1,78 @@
+.syntaxhighlighter a,.syntaxhighlighter div,.syntaxhighlighter code,.syntaxhighlighter table,.syntaxhighlighter table td,.syntaxhighlighter table tr,.syntaxhighlighter table tbody,.syntaxhighlighter table thead,.syntaxhighlighter table caption,.syntaxhighlighter textarea{-moz-border-radius:0 0 0 0 !important;-webkit-border-radius:0 0 0 0 !important;background:none !important;border:0 !important;bottom:auto !important;float:none !important;height:auto !important;left:auto !important;line-height:1.1em !important;margin:0 !important;outline:0 !important;overflow:visible !important;padding:0 !important;position:static !important;right:auto !important;text-align:left !important;top:auto !important;vertical-align:baseline !important;width:auto !important;box-sizing:content-box !important;font-family:"Consolas","Bitstream Vera Sans Mono","Courier New",Courier,monospace !important;font-weight:normal !important;font-style:normal !important;font-size:1em !important;min-height:inherit !important;min-height:auto !important;}
+.syntaxhighlighter{width:100% !important;margin:1em 0 1em 0 !important;position:relative !important;overflow:auto !important;font-size:1em !important;}
+.syntaxhighlighter.source{overflow:hidden !important;}
+.syntaxhighlighter .bold{font-weight:bold !important;}
+.syntaxhighlighter .italic{font-style:italic !important;}
+.syntaxhighlighter .line{white-space:pre !important;}
+.syntaxhighlighter table{width:100% !important;}
+.syntaxhighlighter table caption{text-align:left !important;padding:.5em 0 0.5em 1em !important;}
+.syntaxhighlighter table td.code{width:100% !important;}
+.syntaxhighlighter table td.code .container{position:relative !important;}
+.syntaxhighlighter table td.code .container textarea{box-sizing:border-box !important;position:absolute !important;left:0 !important;top:0 !important;width:100% !important;height:100% !important;border:none !important;background:white !important;padding-left:1em !important;overflow:hidden !important;white-space:pre !important;}
+.syntaxhighlighter table td.gutter .line{text-align:right !important;padding:0 0.5em 0 1em !important;}
+.syntaxhighlighter table td.code .line{padding:0 1em !important;}
+.syntaxhighlighter.nogutter td.code .container textarea,.syntaxhighlighter.nogutter td.code .line{padding-left:0em !important;}
+.syntaxhighlighter.show{display:block !important;}
+.syntaxhighlighter.collapsed table{display:none !important;}
+.syntaxhighlighter.collapsed .toolbar{padding:0.1em 0.8em 0em 0.8em !important;font-size:1em !important;position:static !important;width:auto !important;height:auto !important;}
+.syntaxhighlighter.collapsed .toolbar span{display:inline !important;margin-right:1em !important;}
+.syntaxhighlighter.collapsed .toolbar span a{padding:0 !important;display:none !important;}
+.syntaxhighlighter.collapsed .toolbar span a.expandSource{display:inline !important;}
+.syntaxhighlighter .toolbar{position:absolute !important;right:1px !important;top:1px !important;width:11px !important;height:11px !important;font-size:10px !important;z-index:10 !important;}
+.syntaxhighlighter .toolbar span.title{display:inline !important;}
+.syntaxhighlighter .toolbar a{display:block !important;text-align:center !important;text-decoration:none !important;padding-top:1px !important;}
+.syntaxhighlighter .toolbar a.expandSource{display:none !important;}
+.syntaxhighlighter.ie{font-size:.9em !important;padding:1px 0 1px 0 !important;}
+.syntaxhighlighter.ie .toolbar{line-height:8px !important;}
+.syntaxhighlighter.ie .toolbar a{padding-top:0px !important;}
+.syntaxhighlighter.printing .line.alt1 .content,.syntaxhighlighter.printing .line.alt2 .content,.syntaxhighlighter.printing .line.highlighted .number,.syntaxhighlighter.printing .line.highlighted.alt1 .content,.syntaxhighlighter.printing .line.highlighted.alt2 .content{background:none !important;}
+.syntaxhighlighter.printing .line .number{color:#bbbbbb !important;}
+.syntaxhighlighter.printing .line .content{color:black !important;}
+.syntaxhighlighter.printing .toolbar{display:none !important;}
+.syntaxhighlighter.printing a{text-decoration:none !important;}
+.syntaxhighlighter.printing .plain,.syntaxhighlighter.printing .plain a{color:black !important;}
+.syntaxhighlighter.printing .comments,.syntaxhighlighter.printing .comments a{color:#008200 !important;}
+.syntaxhighlighter.printing .string,.syntaxhighlighter.printing .string a{color:blue !important;}
+.syntaxhighlighter.printing .keyword{color:#006699 !important;font-weight:bold !important;}
+.syntaxhighlighter.printing .preprocessor{color:gray !important;}
+.syntaxhighlighter.printing .variable{color:#aa7700 !important;}
+.syntaxhighlighter.printing .value{color:#009900 !important;}
+.syntaxhighlighter.printing .functions{color:#ff1493 !important;}
+.syntaxhighlighter.printing .constants{color:#0066cc !important;}
+.syntaxhighlighter.printing .script{font-weight:bold !important;}
+.syntaxhighlighter.printing .color1,.syntaxhighlighter.printing .color1 a{color:gray !important;}
+.syntaxhighlighter.printing .color2,.syntaxhighlighter.printing .color2 a{color:#ff1493 !important;}
+.syntaxhighlighter.printing .color3,.syntaxhighlighter.printing .color3 a{color:red !important;}
+.syntaxhighlighter.printing .break,.syntaxhighlighter.printing .break a{color:black !important;}
+.syntaxhighlighter{background-color:#0a2b1d !important;}
+.syntaxhighlighter .line.alt1{background-color:#0a2b1d !important;}
+.syntaxhighlighter .line.alt2{background-color:#0a2b1d !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#233729 !important;}
+.syntaxhighlighter .line.highlighted.number{color:white !important;}
+.syntaxhighlighter table caption{color:#f8f8f8 !important;}
+.syntaxhighlighter .gutter{color:#497958 !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #41a83e !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#41a83e !important;color:#0a2b1d !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:#96dd3b !important;background:black !important;border:1px solid #41a83e !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:#96dd3b !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:white !important;}
+.syntaxhighlighter .toolbar{color:white !important;background:#41a83e !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:white !important;}
+.syntaxhighlighter .toolbar a:hover{color:#ffe862 !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:#f8f8f8 !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#336442 !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:#9df39f !important;}
+.syntaxhighlighter .keyword{color:#96dd3b !important;}
+.syntaxhighlighter .preprocessor{color:#91bb9e !important;}
+.syntaxhighlighter .variable{color:#ffaa3e !important;}
+.syntaxhighlighter .value{color:#f7e741 !important;}
+.syntaxhighlighter .functions{color:#ffaa3e !important;}
+.syntaxhighlighter .constants{color:#e0e8ff !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:#96dd3b !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:#eb939a !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:#91bb9e !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:#edef7d !important;}
+.syntaxhighlighter .comments{font-style:italic !important;}
+.syntaxhighlighter .keyword{font-weight:bold !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreEclipse.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreEclipse.css
new file mode 100644
index 00000000..fc8c59da
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreEclipse.css
@@ -0,0 +1,80 @@
+.syntaxhighlighter a,.syntaxhighlighter div,.syntaxhighlighter code,.syntaxhighlighter table,.syntaxhighlighter table td,.syntaxhighlighter table tr,.syntaxhighlighter table tbody,.syntaxhighlighter table thead,.syntaxhighlighter table caption,.syntaxhighlighter textarea{-moz-border-radius:0 0 0 0 !important;-webkit-border-radius:0 0 0 0 !important;background:none !important;border:0 !important;bottom:auto !important;float:none !important;height:auto !important;left:auto !important;line-height:1.1em !important;margin:0 !important;outline:0 !important;overflow:visible !important;padding:0 !important;position:static !important;right:auto !important;text-align:left !important;top:auto !important;vertical-align:baseline !important;width:auto !important;box-sizing:content-box !important;font-family:"Consolas","Bitstream Vera Sans Mono","Courier New",Courier,monospace !important;font-weight:normal !important;font-style:normal !important;font-size:1em !important;min-height:inherit !important;min-height:auto !important;}
+.syntaxhighlighter{width:100% !important;margin:1em 0 1em 0 !important;position:relative !important;overflow:auto !important;font-size:1em !important;}
+.syntaxhighlighter.source{overflow:hidden !important;}
+.syntaxhighlighter .bold{font-weight:bold !important;}
+.syntaxhighlighter .italic{font-style:italic !important;}
+.syntaxhighlighter .line{white-space:pre !important;}
+.syntaxhighlighter table{width:100% !important;}
+.syntaxhighlighter table caption{text-align:left !important;padding:.5em 0 0.5em 1em !important;}
+.syntaxhighlighter table td.code{width:100% !important;}
+.syntaxhighlighter table td.code .container{position:relative !important;}
+.syntaxhighlighter table td.code .container textarea{box-sizing:border-box !important;position:absolute !important;left:0 !important;top:0 !important;width:100% !important;height:100% !important;border:none !important;background:white !important;padding-left:1em !important;overflow:hidden !important;white-space:pre !important;}
+.syntaxhighlighter table td.gutter .line{text-align:right !important;padding:0 0.5em 0 1em !important;}
+.syntaxhighlighter table td.code .line{padding:0 1em !important;}
+.syntaxhighlighter.nogutter td.code .container textarea,.syntaxhighlighter.nogutter td.code .line{padding-left:0em !important;}
+.syntaxhighlighter.show{display:block !important;}
+.syntaxhighlighter.collapsed table{display:none !important;}
+.syntaxhighlighter.collapsed .toolbar{padding:0.1em 0.8em 0em 0.8em !important;font-size:1em !important;position:static !important;width:auto !important;height:auto !important;}
+.syntaxhighlighter.collapsed .toolbar span{display:inline !important;margin-right:1em !important;}
+.syntaxhighlighter.collapsed .toolbar span a{padding:0 !important;display:none !important;}
+.syntaxhighlighter.collapsed .toolbar span a.expandSource{display:inline !important;}
+.syntaxhighlighter .toolbar{position:absolute !important;right:1px !important;top:1px !important;width:11px !important;height:11px !important;font-size:10px !important;z-index:10 !important;}
+.syntaxhighlighter .toolbar span.title{display:inline !important;}
+.syntaxhighlighter .toolbar a{display:block !important;text-align:center !important;text-decoration:none !important;padding-top:1px !important;}
+.syntaxhighlighter .toolbar a.expandSource{display:none !important;}
+.syntaxhighlighter.ie{font-size:.9em !important;padding:1px 0 1px 0 !important;}
+.syntaxhighlighter.ie .toolbar{line-height:8px !important;}
+.syntaxhighlighter.ie .toolbar a{padding-top:0px !important;}
+.syntaxhighlighter.printing .line.alt1 .content,.syntaxhighlighter.printing .line.alt2 .content,.syntaxhighlighter.printing .line.highlighted .number,.syntaxhighlighter.printing .line.highlighted.alt1 .content,.syntaxhighlighter.printing .line.highlighted.alt2 .content{background:none !important;}
+.syntaxhighlighter.printing .line .number{color:#bbbbbb !important;}
+.syntaxhighlighter.printing .line .content{color:black !important;}
+.syntaxhighlighter.printing .toolbar{display:none !important;}
+.syntaxhighlighter.printing a{text-decoration:none !important;}
+.syntaxhighlighter.printing .plain,.syntaxhighlighter.printing .plain a{color:black !important;}
+.syntaxhighlighter.printing .comments,.syntaxhighlighter.printing .comments a{color:#008200 !important;}
+.syntaxhighlighter.printing .string,.syntaxhighlighter.printing .string a{color:blue !important;}
+.syntaxhighlighter.printing .keyword{color:#006699 !important;font-weight:bold !important;}
+.syntaxhighlighter.printing .preprocessor{color:gray !important;}
+.syntaxhighlighter.printing .variable{color:#aa7700 !important;}
+.syntaxhighlighter.printing .value{color:#009900 !important;}
+.syntaxhighlighter.printing .functions{color:#ff1493 !important;}
+.syntaxhighlighter.printing .constants{color:#0066cc !important;}
+.syntaxhighlighter.printing .script{font-weight:bold !important;}
+.syntaxhighlighter.printing .color1,.syntaxhighlighter.printing .color1 a{color:gray !important;}
+.syntaxhighlighter.printing .color2,.syntaxhighlighter.printing .color2 a{color:#ff1493 !important;}
+.syntaxhighlighter.printing .color3,.syntaxhighlighter.printing .color3 a{color:red !important;}
+.syntaxhighlighter.printing .break,.syntaxhighlighter.printing .break a{color:black !important;}
+.syntaxhighlighter{background-color:white !important;}
+.syntaxhighlighter .line.alt1{background-color:white !important;}
+.syntaxhighlighter .line.alt2{background-color:white !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#c3defe !important;}
+.syntaxhighlighter .line.highlighted.number{color:white !important;}
+.syntaxhighlighter table caption{color:black !important;}
+.syntaxhighlighter .gutter{color:#787878 !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #d4d0c8 !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#d4d0c8 !important;color:white !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:#3f5fbf !important;background:white !important;border:1px solid #d4d0c8 !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:#3f5fbf !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:#aa7700 !important;}
+.syntaxhighlighter .toolbar{color:#a0a0a0 !important;background:#d4d0c8 !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:#a0a0a0 !important;}
+.syntaxhighlighter .toolbar a:hover{color:red !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:black !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#3f5fbf !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:#2a00ff !important;}
+.syntaxhighlighter .keyword{color:#7f0055 !important;}
+.syntaxhighlighter .preprocessor{color:#646464 !important;}
+.syntaxhighlighter .variable{color:#aa7700 !important;}
+.syntaxhighlighter .value{color:#009900 !important;}
+.syntaxhighlighter .functions{color:#ff1493 !important;}
+.syntaxhighlighter .constants{color:#0066cc !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:#7f0055 !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:gray !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:#ff1493 !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:red !important;}
+.syntaxhighlighter .keyword{font-weight:bold !important;}
+.syntaxhighlighter .xml .keyword{color:#3f7f7f !important;font-weight:normal !important;}
+.syntaxhighlighter .xml .color1,.syntaxhighlighter .xml .color1 a{color:#7f007f !important;}
+.syntaxhighlighter .xml .string{font-style:italic !important;color:#2a00ff !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreEmacs.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreEmacs.css
new file mode 100644
index 00000000..4fbd3254
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreEmacs.css
@@ -0,0 +1,76 @@
+.syntaxhighlighter a,.syntaxhighlighter div,.syntaxhighlighter code,.syntaxhighlighter table,.syntaxhighlighter table td,.syntaxhighlighter table tr,.syntaxhighlighter table tbody,.syntaxhighlighter table thead,.syntaxhighlighter table caption,.syntaxhighlighter textarea{-moz-border-radius:0 0 0 0 !important;-webkit-border-radius:0 0 0 0 !important;background:none !important;border:0 !important;bottom:auto !important;float:none !important;height:auto !important;left:auto !important;line-height:1.1em !important;margin:0 !important;outline:0 !important;overflow:visible !important;padding:0 !important;position:static !important;right:auto !important;text-align:left !important;top:auto !important;vertical-align:baseline !important;width:auto !important;box-sizing:content-box !important;font-family:"Consolas","Bitstream Vera Sans Mono","Courier New",Courier,monospace !important;font-weight:normal !important;font-style:normal !important;font-size:1em !important;min-height:inherit !important;min-height:auto !important;}
+.syntaxhighlighter{width:100% !important;margin:1em 0 1em 0 !important;position:relative !important;overflow:auto !important;font-size:1em !important;}
+.syntaxhighlighter.source{overflow:hidden !important;}
+.syntaxhighlighter .bold{font-weight:bold !important;}
+.syntaxhighlighter .italic{font-style:italic !important;}
+.syntaxhighlighter .line{white-space:pre !important;}
+.syntaxhighlighter table{width:100% !important;}
+.syntaxhighlighter table caption{text-align:left !important;padding:.5em 0 0.5em 1em !important;}
+.syntaxhighlighter table td.code{width:100% !important;}
+.syntaxhighlighter table td.code .container{position:relative !important;}
+.syntaxhighlighter table td.code .container textarea{box-sizing:border-box !important;position:absolute !important;left:0 !important;top:0 !important;width:100% !important;height:100% !important;border:none !important;background:white !important;padding-left:1em !important;overflow:hidden !important;white-space:pre !important;}
+.syntaxhighlighter table td.gutter .line{text-align:right !important;padding:0 0.5em 0 1em !important;}
+.syntaxhighlighter table td.code .line{padding:0 1em !important;}
+.syntaxhighlighter.nogutter td.code .container textarea,.syntaxhighlighter.nogutter td.code .line{padding-left:0em !important;}
+.syntaxhighlighter.show{display:block !important;}
+.syntaxhighlighter.collapsed table{display:none !important;}
+.syntaxhighlighter.collapsed .toolbar{padding:0.1em 0.8em 0em 0.8em !important;font-size:1em !important;position:static !important;width:auto !important;height:auto !important;}
+.syntaxhighlighter.collapsed .toolbar span{display:inline !important;margin-right:1em !important;}
+.syntaxhighlighter.collapsed .toolbar span a{padding:0 !important;display:none !important;}
+.syntaxhighlighter.collapsed .toolbar span a.expandSource{display:inline !important;}
+.syntaxhighlighter .toolbar{position:absolute !important;right:1px !important;top:1px !important;width:11px !important;height:11px !important;font-size:10px !important;z-index:10 !important;}
+.syntaxhighlighter .toolbar span.title{display:inline !important;}
+.syntaxhighlighter .toolbar a{display:block !important;text-align:center !important;text-decoration:none !important;padding-top:1px !important;}
+.syntaxhighlighter .toolbar a.expandSource{display:none !important;}
+.syntaxhighlighter.ie{font-size:.9em !important;padding:1px 0 1px 0 !important;}
+.syntaxhighlighter.ie .toolbar{line-height:8px !important;}
+.syntaxhighlighter.ie .toolbar a{padding-top:0px !important;}
+.syntaxhighlighter.printing .line.alt1 .content,.syntaxhighlighter.printing .line.alt2 .content,.syntaxhighlighter.printing .line.highlighted .number,.syntaxhighlighter.printing .line.highlighted.alt1 .content,.syntaxhighlighter.printing .line.highlighted.alt2 .content{background:none !important;}
+.syntaxhighlighter.printing .line .number{color:#bbbbbb !important;}
+.syntaxhighlighter.printing .line .content{color:black !important;}
+.syntaxhighlighter.printing .toolbar{display:none !important;}
+.syntaxhighlighter.printing a{text-decoration:none !important;}
+.syntaxhighlighter.printing .plain,.syntaxhighlighter.printing .plain a{color:black !important;}
+.syntaxhighlighter.printing .comments,.syntaxhighlighter.printing .comments a{color:#008200 !important;}
+.syntaxhighlighter.printing .string,.syntaxhighlighter.printing .string a{color:blue !important;}
+.syntaxhighlighter.printing .keyword{color:#006699 !important;font-weight:bold !important;}
+.syntaxhighlighter.printing .preprocessor{color:gray !important;}
+.syntaxhighlighter.printing .variable{color:#aa7700 !important;}
+.syntaxhighlighter.printing .value{color:#009900 !important;}
+.syntaxhighlighter.printing .functions{color:#ff1493 !important;}
+.syntaxhighlighter.printing .constants{color:#0066cc !important;}
+.syntaxhighlighter.printing .script{font-weight:bold !important;}
+.syntaxhighlighter.printing .color1,.syntaxhighlighter.printing .color1 a{color:gray !important;}
+.syntaxhighlighter.printing .color2,.syntaxhighlighter.printing .color2 a{color:#ff1493 !important;}
+.syntaxhighlighter.printing .color3,.syntaxhighlighter.printing .color3 a{color:red !important;}
+.syntaxhighlighter.printing .break,.syntaxhighlighter.printing .break a{color:black !important;}
+.syntaxhighlighter{background-color:black !important;}
+.syntaxhighlighter .line.alt1{background-color:black !important;}
+.syntaxhighlighter .line.alt2{background-color:black !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#2a3133 !important;}
+.syntaxhighlighter .line.highlighted.number{color:white !important;}
+.syntaxhighlighter table caption{color:#d3d3d3 !important;}
+.syntaxhighlighter .gutter{color:#d3d3d3 !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #990000 !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#990000 !important;color:black !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:#ebdb8d !important;background:black !important;border:1px solid #990000 !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:#ebdb8d !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:#ff7d27 !important;}
+.syntaxhighlighter .toolbar{color:white !important;background:#990000 !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:white !important;}
+.syntaxhighlighter .toolbar a:hover{color:#9ccff4 !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:#d3d3d3 !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#ff7d27 !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:#ff9e7b !important;}
+.syntaxhighlighter .keyword{color:aqua !important;}
+.syntaxhighlighter .preprocessor{color:#aec4de !important;}
+.syntaxhighlighter .variable{color:#ffaa3e !important;}
+.syntaxhighlighter .value{color:#009900 !important;}
+.syntaxhighlighter .functions{color:#81cef9 !important;}
+.syntaxhighlighter .constants{color:#ff9e7b !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:aqua !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:#ebdb8d !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:#ff7d27 !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:#aec4de !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreFadeToGrey.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreFadeToGrey.css
new file mode 100644
index 00000000..398d6ee8
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreFadeToGrey.css
@@ -0,0 +1,77 @@
+.syntaxhighlighter a,.syntaxhighlighter div,.syntaxhighlighter code,.syntaxhighlighter table,.syntaxhighlighter table td,.syntaxhighlighter table tr,.syntaxhighlighter table tbody,.syntaxhighlighter table thead,.syntaxhighlighter table caption,.syntaxhighlighter textarea{-moz-border-radius:0 0 0 0 !important;-webkit-border-radius:0 0 0 0 !important;background:none !important;border:0 !important;bottom:auto !important;float:none !important;height:auto !important;left:auto !important;line-height:1.1em !important;margin:0 !important;outline:0 !important;overflow:visible !important;padding:0 !important;position:static !important;right:auto !important;text-align:left !important;top:auto !important;vertical-align:baseline !important;width:auto !important;box-sizing:content-box !important;font-family:"Consolas","Bitstream Vera Sans Mono","Courier New",Courier,monospace !important;font-weight:normal !important;font-style:normal !important;font-size:1em !important;min-height:inherit !important;min-height:auto !important;}
+.syntaxhighlighter{width:100% !important;margin:1em 0 1em 0 !important;position:relative !important;overflow:auto !important;font-size:1em !important;}
+.syntaxhighlighter.source{overflow:hidden !important;}
+.syntaxhighlighter .bold{font-weight:bold !important;}
+.syntaxhighlighter .italic{font-style:italic !important;}
+.syntaxhighlighter .line{white-space:pre !important;}
+.syntaxhighlighter table{width:100% !important;}
+.syntaxhighlighter table caption{text-align:left !important;padding:.5em 0 0.5em 1em !important;}
+.syntaxhighlighter table td.code{width:100% !important;}
+.syntaxhighlighter table td.code .container{position:relative !important;}
+.syntaxhighlighter table td.code .container textarea{box-sizing:border-box !important;position:absolute !important;left:0 !important;top:0 !important;width:100% !important;height:100% !important;border:none !important;background:white !important;padding-left:1em !important;overflow:hidden !important;white-space:pre !important;}
+.syntaxhighlighter table td.gutter .line{text-align:right !important;padding:0 0.5em 0 1em !important;}
+.syntaxhighlighter table td.code .line{padding:0 1em !important;}
+.syntaxhighlighter.nogutter td.code .container textarea,.syntaxhighlighter.nogutter td.code .line{padding-left:0em !important;}
+.syntaxhighlighter.show{display:block !important;}
+.syntaxhighlighter.collapsed table{display:none !important;}
+.syntaxhighlighter.collapsed .toolbar{padding:0.1em 0.8em 0em 0.8em !important;font-size:1em !important;position:static !important;width:auto !important;height:auto !important;}
+.syntaxhighlighter.collapsed .toolbar span{display:inline !important;margin-right:1em !important;}
+.syntaxhighlighter.collapsed .toolbar span a{padding:0 !important;display:none !important;}
+.syntaxhighlighter.collapsed .toolbar span a.expandSource{display:inline !important;}
+.syntaxhighlighter .toolbar{position:absolute !important;right:1px !important;top:1px !important;width:11px !important;height:11px !important;font-size:10px !important;z-index:10 !important;}
+.syntaxhighlighter .toolbar span.title{display:inline !important;}
+.syntaxhighlighter .toolbar a{display:block !important;text-align:center !important;text-decoration:none !important;padding-top:1px !important;}
+.syntaxhighlighter .toolbar a.expandSource{display:none !important;}
+.syntaxhighlighter.ie{font-size:.9em !important;padding:1px 0 1px 0 !important;}
+.syntaxhighlighter.ie .toolbar{line-height:8px !important;}
+.syntaxhighlighter.ie .toolbar a{padding-top:0px !important;}
+.syntaxhighlighter.printing .line.alt1 .content,.syntaxhighlighter.printing .line.alt2 .content,.syntaxhighlighter.printing .line.highlighted .number,.syntaxhighlighter.printing .line.highlighted.alt1 .content,.syntaxhighlighter.printing .line.highlighted.alt2 .content{background:none !important;}
+.syntaxhighlighter.printing .line .number{color:#bbbbbb !important;}
+.syntaxhighlighter.printing .line .content{color:black !important;}
+.syntaxhighlighter.printing .toolbar{display:none !important;}
+.syntaxhighlighter.printing a{text-decoration:none !important;}
+.syntaxhighlighter.printing .plain,.syntaxhighlighter.printing .plain a{color:black !important;}
+.syntaxhighlighter.printing .comments,.syntaxhighlighter.printing .comments a{color:#008200 !important;}
+.syntaxhighlighter.printing .string,.syntaxhighlighter.printing .string a{color:blue !important;}
+.syntaxhighlighter.printing .keyword{color:#006699 !important;font-weight:bold !important;}
+.syntaxhighlighter.printing .preprocessor{color:gray !important;}
+.syntaxhighlighter.printing .variable{color:#aa7700 !important;}
+.syntaxhighlighter.printing .value{color:#009900 !important;}
+.syntaxhighlighter.printing .functions{color:#ff1493 !important;}
+.syntaxhighlighter.printing .constants{color:#0066cc !important;}
+.syntaxhighlighter.printing .script{font-weight:bold !important;}
+.syntaxhighlighter.printing .color1,.syntaxhighlighter.printing .color1 a{color:gray !important;}
+.syntaxhighlighter.printing .color2,.syntaxhighlighter.printing .color2 a{color:#ff1493 !important;}
+.syntaxhighlighter.printing .color3,.syntaxhighlighter.printing .color3 a{color:red !important;}
+.syntaxhighlighter.printing .break,.syntaxhighlighter.printing .break a{color:black !important;}
+.syntaxhighlighter{background-color:#121212 !important;}
+.syntaxhighlighter .line.alt1{background-color:#121212 !important;}
+.syntaxhighlighter .line.alt2{background-color:#121212 !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#2c2c29 !important;}
+.syntaxhighlighter .line.highlighted.number{color:white !important;}
+.syntaxhighlighter table caption{color:white !important;}
+.syntaxhighlighter .gutter{color:#afafaf !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #3185b9 !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#3185b9 !important;color:#121212 !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:#3185b9 !important;background:black !important;border:1px solid #3185b9 !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:#3185b9 !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:#d01d33 !important;}
+.syntaxhighlighter .toolbar{color:white !important;background:#3185b9 !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:white !important;}
+.syntaxhighlighter .toolbar a:hover{color:#96daff !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:white !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#696854 !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:#e3e658 !important;}
+.syntaxhighlighter .keyword{color:#d01d33 !important;}
+.syntaxhighlighter .preprocessor{color:#435a5f !important;}
+.syntaxhighlighter .variable{color:#898989 !important;}
+.syntaxhighlighter .value{color:#009900 !important;}
+.syntaxhighlighter .functions{color:#aaaaaa !important;}
+.syntaxhighlighter .constants{color:#96daff !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:#d01d33 !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:#ffc074 !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:#4a8cdb !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:#96daff !important;}
+.syntaxhighlighter .functions{font-weight:bold !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreMDUltra.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreMDUltra.css
new file mode 100644
index 00000000..87a3cc2b
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreMDUltra.css
@@ -0,0 +1,76 @@
+.syntaxhighlighter a,.syntaxhighlighter div,.syntaxhighlighter code,.syntaxhighlighter table,.syntaxhighlighter table td,.syntaxhighlighter table tr,.syntaxhighlighter table tbody,.syntaxhighlighter table thead,.syntaxhighlighter table caption,.syntaxhighlighter textarea{-moz-border-radius:0 0 0 0 !important;-webkit-border-radius:0 0 0 0 !important;background:none !important;border:0 !important;bottom:auto !important;float:none !important;height:auto !important;left:auto !important;line-height:1.1em !important;margin:0 !important;outline:0 !important;overflow:visible !important;padding:0 !important;position:static !important;right:auto !important;text-align:left !important;top:auto !important;vertical-align:baseline !important;width:auto !important;box-sizing:content-box !important;font-family:"Consolas","Bitstream Vera Sans Mono","Courier New",Courier,monospace !important;font-weight:normal !important;font-style:normal !important;font-size:1em !important;min-height:inherit !important;min-height:auto !important;}
+.syntaxhighlighter{width:100% !important;margin:1em 0 1em 0 !important;position:relative !important;overflow:auto !important;font-size:1em !important;}
+.syntaxhighlighter.source{overflow:hidden !important;}
+.syntaxhighlighter .bold{font-weight:bold !important;}
+.syntaxhighlighter .italic{font-style:italic !important;}
+.syntaxhighlighter .line{white-space:pre !important;}
+.syntaxhighlighter table{width:100% !important;}
+.syntaxhighlighter table caption{text-align:left !important;padding:.5em 0 0.5em 1em !important;}
+.syntaxhighlighter table td.code{width:100% !important;}
+.syntaxhighlighter table td.code .container{position:relative !important;}
+.syntaxhighlighter table td.code .container textarea{box-sizing:border-box !important;position:absolute !important;left:0 !important;top:0 !important;width:100% !important;height:100% !important;border:none !important;background:white !important;padding-left:1em !important;overflow:hidden !important;white-space:pre !important;}
+.syntaxhighlighter table td.gutter .line{text-align:right !important;padding:0 0.5em 0 1em !important;}
+.syntaxhighlighter table td.code .line{padding:0 1em !important;}
+.syntaxhighlighter.nogutter td.code .container textarea,.syntaxhighlighter.nogutter td.code .line{padding-left:0em !important;}
+.syntaxhighlighter.show{display:block !important;}
+.syntaxhighlighter.collapsed table{display:none !important;}
+.syntaxhighlighter.collapsed .toolbar{padding:0.1em 0.8em 0em 0.8em !important;font-size:1em !important;position:static !important;width:auto !important;height:auto !important;}
+.syntaxhighlighter.collapsed .toolbar span{display:inline !important;margin-right:1em !important;}
+.syntaxhighlighter.collapsed .toolbar span a{padding:0 !important;display:none !important;}
+.syntaxhighlighter.collapsed .toolbar span a.expandSource{display:inline !important;}
+.syntaxhighlighter .toolbar{position:absolute !important;right:1px !important;top:1px !important;width:11px !important;height:11px !important;font-size:10px !important;z-index:10 !important;}
+.syntaxhighlighter .toolbar span.title{display:inline !important;}
+.syntaxhighlighter .toolbar a{display:block !important;text-align:center !important;text-decoration:none !important;padding-top:1px !important;}
+.syntaxhighlighter .toolbar a.expandSource{display:none !important;}
+.syntaxhighlighter.ie{font-size:.9em !important;padding:1px 0 1px 0 !important;}
+.syntaxhighlighter.ie .toolbar{line-height:8px !important;}
+.syntaxhighlighter.ie .toolbar a{padding-top:0px !important;}
+.syntaxhighlighter.printing .line.alt1 .content,.syntaxhighlighter.printing .line.alt2 .content,.syntaxhighlighter.printing .line.highlighted .number,.syntaxhighlighter.printing .line.highlighted.alt1 .content,.syntaxhighlighter.printing .line.highlighted.alt2 .content{background:none !important;}
+.syntaxhighlighter.printing .line .number{color:#bbbbbb !important;}
+.syntaxhighlighter.printing .line .content{color:black !important;}
+.syntaxhighlighter.printing .toolbar{display:none !important;}
+.syntaxhighlighter.printing a{text-decoration:none !important;}
+.syntaxhighlighter.printing .plain,.syntaxhighlighter.printing .plain a{color:black !important;}
+.syntaxhighlighter.printing .comments,.syntaxhighlighter.printing .comments a{color:#008200 !important;}
+.syntaxhighlighter.printing .string,.syntaxhighlighter.printing .string a{color:blue !important;}
+.syntaxhighlighter.printing .keyword{color:#006699 !important;font-weight:bold !important;}
+.syntaxhighlighter.printing .preprocessor{color:gray !important;}
+.syntaxhighlighter.printing .variable{color:#aa7700 !important;}
+.syntaxhighlighter.printing .value{color:#009900 !important;}
+.syntaxhighlighter.printing .functions{color:#ff1493 !important;}
+.syntaxhighlighter.printing .constants{color:#0066cc !important;}
+.syntaxhighlighter.printing .script{font-weight:bold !important;}
+.syntaxhighlighter.printing .color1,.syntaxhighlighter.printing .color1 a{color:gray !important;}
+.syntaxhighlighter.printing .color2,.syntaxhighlighter.printing .color2 a{color:#ff1493 !important;}
+.syntaxhighlighter.printing .color3,.syntaxhighlighter.printing .color3 a{color:red !important;}
+.syntaxhighlighter.printing .break,.syntaxhighlighter.printing .break a{color:black !important;}
+.syntaxhighlighter{background-color:#222222 !important;}
+.syntaxhighlighter .line.alt1{background-color:#222222 !important;}
+.syntaxhighlighter .line.alt2{background-color:#222222 !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#253e5a !important;}
+.syntaxhighlighter .line.highlighted.number{color:white !important;}
+.syntaxhighlighter table caption{color:lime !important;}
+.syntaxhighlighter .gutter{color:#38566f !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #435a5f !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#435a5f !important;color:#222222 !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:#428bdd !important;background:black !important;border:1px solid #435a5f !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:#428bdd !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:lime !important;}
+.syntaxhighlighter .toolbar{color:#aaaaff !important;background:#435a5f !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:#aaaaff !important;}
+.syntaxhighlighter .toolbar a:hover{color:#9ccff4 !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:lime !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#428bdd !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:lime !important;}
+.syntaxhighlighter .keyword{color:#aaaaff !important;}
+.syntaxhighlighter .preprocessor{color:#8aa6c1 !important;}
+.syntaxhighlighter .variable{color:aqua !important;}
+.syntaxhighlighter .value{color:#f7e741 !important;}
+.syntaxhighlighter .functions{color:#ff8000 !important;}
+.syntaxhighlighter .constants{color:yellow !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:#aaaaff !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:red !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:yellow !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:#ffaa3e !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreMidnight.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreMidnight.css
new file mode 100644
index 00000000..3c02103c
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreMidnight.css
@@ -0,0 +1,76 @@
+.syntaxhighlighter a,.syntaxhighlighter div,.syntaxhighlighter code,.syntaxhighlighter table,.syntaxhighlighter table td,.syntaxhighlighter table tr,.syntaxhighlighter table tbody,.syntaxhighlighter table thead,.syntaxhighlighter table caption,.syntaxhighlighter textarea{-moz-border-radius:0 0 0 0 !important;-webkit-border-radius:0 0 0 0 !important;background:none !important;border:0 !important;bottom:auto !important;float:none !important;height:auto !important;left:auto !important;line-height:1.1em !important;margin:0 !important;outline:0 !important;overflow:visible !important;padding:0 !important;position:static !important;right:auto !important;text-align:left !important;top:auto !important;vertical-align:baseline !important;width:auto !important;box-sizing:content-box !important;font-family:"Consolas","Bitstream Vera Sans Mono","Courier New",Courier,monospace !important;font-weight:normal !important;font-style:normal !important;font-size:1em !important;min-height:inherit !important;min-height:auto !important;}
+.syntaxhighlighter{width:100% !important;margin:1em 0 1em 0 !important;position:relative !important;overflow:auto !important;font-size:1em !important;}
+.syntaxhighlighter.source{overflow:hidden !important;}
+.syntaxhighlighter .bold{font-weight:bold !important;}
+.syntaxhighlighter .italic{font-style:italic !important;}
+.syntaxhighlighter .line{white-space:pre !important;}
+.syntaxhighlighter table{width:100% !important;}
+.syntaxhighlighter table caption{text-align:left !important;padding:.5em 0 0.5em 1em !important;}
+.syntaxhighlighter table td.code{width:100% !important;}
+.syntaxhighlighter table td.code .container{position:relative !important;}
+.syntaxhighlighter table td.code .container textarea{box-sizing:border-box !important;position:absolute !important;left:0 !important;top:0 !important;width:100% !important;height:100% !important;border:none !important;background:white !important;padding-left:1em !important;overflow:hidden !important;white-space:pre !important;}
+.syntaxhighlighter table td.gutter .line{text-align:right !important;padding:0 0.5em 0 1em !important;}
+.syntaxhighlighter table td.code .line{padding:0 1em !important;}
+.syntaxhighlighter.nogutter td.code .container textarea,.syntaxhighlighter.nogutter td.code .line{padding-left:0em !important;}
+.syntaxhighlighter.show{display:block !important;}
+.syntaxhighlighter.collapsed table{display:none !important;}
+.syntaxhighlighter.collapsed .toolbar{padding:0.1em 0.8em 0em 0.8em !important;font-size:1em !important;position:static !important;width:auto !important;height:auto !important;}
+.syntaxhighlighter.collapsed .toolbar span{display:inline !important;margin-right:1em !important;}
+.syntaxhighlighter.collapsed .toolbar span a{padding:0 !important;display:none !important;}
+.syntaxhighlighter.collapsed .toolbar span a.expandSource{display:inline !important;}
+.syntaxhighlighter .toolbar{position:absolute !important;right:1px !important;top:1px !important;width:11px !important;height:11px !important;font-size:10px !important;z-index:10 !important;}
+.syntaxhighlighter .toolbar span.title{display:inline !important;}
+.syntaxhighlighter .toolbar a{display:block !important;text-align:center !important;text-decoration:none !important;padding-top:1px !important;}
+.syntaxhighlighter .toolbar a.expandSource{display:none !important;}
+.syntaxhighlighter.ie{font-size:.9em !important;padding:1px 0 1px 0 !important;}
+.syntaxhighlighter.ie .toolbar{line-height:8px !important;}
+.syntaxhighlighter.ie .toolbar a{padding-top:0px !important;}
+.syntaxhighlighter.printing .line.alt1 .content,.syntaxhighlighter.printing .line.alt2 .content,.syntaxhighlighter.printing .line.highlighted .number,.syntaxhighlighter.printing .line.highlighted.alt1 .content,.syntaxhighlighter.printing .line.highlighted.alt2 .content{background:none !important;}
+.syntaxhighlighter.printing .line .number{color:#bbbbbb !important;}
+.syntaxhighlighter.printing .line .content{color:black !important;}
+.syntaxhighlighter.printing .toolbar{display:none !important;}
+.syntaxhighlighter.printing a{text-decoration:none !important;}
+.syntaxhighlighter.printing .plain,.syntaxhighlighter.printing .plain a{color:black !important;}
+.syntaxhighlighter.printing .comments,.syntaxhighlighter.printing .comments a{color:#008200 !important;}
+.syntaxhighlighter.printing .string,.syntaxhighlighter.printing .string a{color:blue !important;}
+.syntaxhighlighter.printing .keyword{color:#006699 !important;font-weight:bold !important;}
+.syntaxhighlighter.printing .preprocessor{color:gray !important;}
+.syntaxhighlighter.printing .variable{color:#aa7700 !important;}
+.syntaxhighlighter.printing .value{color:#009900 !important;}
+.syntaxhighlighter.printing .functions{color:#ff1493 !important;}
+.syntaxhighlighter.printing .constants{color:#0066cc !important;}
+.syntaxhighlighter.printing .script{font-weight:bold !important;}
+.syntaxhighlighter.printing .color1,.syntaxhighlighter.printing .color1 a{color:gray !important;}
+.syntaxhighlighter.printing .color2,.syntaxhighlighter.printing .color2 a{color:#ff1493 !important;}
+.syntaxhighlighter.printing .color3,.syntaxhighlighter.printing .color3 a{color:red !important;}
+.syntaxhighlighter.printing .break,.syntaxhighlighter.printing .break a{color:black !important;}
+.syntaxhighlighter{background-color:#0f192a !important;}
+.syntaxhighlighter .line.alt1{background-color:#0f192a !important;}
+.syntaxhighlighter .line.alt2{background-color:#0f192a !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#253e5a !important;}
+.syntaxhighlighter .line.highlighted.number{color:#38566f !important;}
+.syntaxhighlighter table caption{color:#d1edff !important;}
+.syntaxhighlighter .gutter{color:#afafaf !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #435a5f !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#435a5f !important;color:#0f192a !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:#428bdd !important;background:black !important;border:1px solid #435a5f !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:#428bdd !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:#1dc116 !important;}
+.syntaxhighlighter .toolbar{color:#d1edff !important;background:#435a5f !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:#d1edff !important;}
+.syntaxhighlighter .toolbar a:hover{color:#8aa6c1 !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:#d1edff !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#428bdd !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:#1dc116 !important;}
+.syntaxhighlighter .keyword{color:#b43d3d !important;}
+.syntaxhighlighter .preprocessor{color:#8aa6c1 !important;}
+.syntaxhighlighter .variable{color:#ffaa3e !important;}
+.syntaxhighlighter .value{color:#f7e741 !important;}
+.syntaxhighlighter .functions{color:#ffaa3e !important;}
+.syntaxhighlighter .constants{color:#e0e8ff !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:#b43d3d !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:#f8bb00 !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:white !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:#ffaa3e !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreRDark.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreRDark.css
new file mode 100644
index 00000000..f5b7b474
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shCoreRDark.css
@@ -0,0 +1,76 @@
+.syntaxhighlighter a,.syntaxhighlighter div,.syntaxhighlighter code,.syntaxhighlighter table,.syntaxhighlighter table td,.syntaxhighlighter table tr,.syntaxhighlighter table tbody,.syntaxhighlighter table thead,.syntaxhighlighter table caption,.syntaxhighlighter textarea{-moz-border-radius:0 0 0 0 !important;-webkit-border-radius:0 0 0 0 !important;background:none !important;border:0 !important;bottom:auto !important;float:none !important;height:auto !important;left:auto !important;line-height:1.1em !important;margin:0 !important;outline:0 !important;overflow:visible !important;padding:0 !important;position:static !important;right:auto !important;text-align:left !important;top:auto !important;vertical-align:baseline !important;width:auto !important;box-sizing:content-box !important;font-family:"Consolas","Bitstream Vera Sans Mono","Courier New",Courier,monospace !important;font-weight:normal !important;font-style:normal !important;font-size:1em !important;min-height:inherit !important;min-height:auto !important;}
+.syntaxhighlighter{width:100% !important;margin:1em 0 1em 0 !important;position:relative !important;overflow:auto !important;font-size:1em !important;}
+.syntaxhighlighter.source{overflow:hidden !important;}
+.syntaxhighlighter .bold{font-weight:bold !important;}
+.syntaxhighlighter .italic{font-style:italic !important;}
+.syntaxhighlighter .line{white-space:pre !important;}
+.syntaxhighlighter table{width:100% !important;}
+.syntaxhighlighter table caption{text-align:left !important;padding:.5em 0 0.5em 1em !important;}
+.syntaxhighlighter table td.code{width:100% !important;}
+.syntaxhighlighter table td.code .container{position:relative !important;}
+.syntaxhighlighter table td.code .container textarea{box-sizing:border-box !important;position:absolute !important;left:0 !important;top:0 !important;width:100% !important;height:100% !important;border:none !important;background:white !important;padding-left:1em !important;overflow:hidden !important;white-space:pre !important;}
+.syntaxhighlighter table td.gutter .line{text-align:right !important;padding:0 0.5em 0 1em !important;}
+.syntaxhighlighter table td.code .line{padding:0 1em !important;}
+.syntaxhighlighter.nogutter td.code .container textarea,.syntaxhighlighter.nogutter td.code .line{padding-left:0em !important;}
+.syntaxhighlighter.show{display:block !important;}
+.syntaxhighlighter.collapsed table{display:none !important;}
+.syntaxhighlighter.collapsed .toolbar{padding:0.1em 0.8em 0em 0.8em !important;font-size:1em !important;position:static !important;width:auto !important;height:auto !important;}
+.syntaxhighlighter.collapsed .toolbar span{display:inline !important;margin-right:1em !important;}
+.syntaxhighlighter.collapsed .toolbar span a{padding:0 !important;display:none !important;}
+.syntaxhighlighter.collapsed .toolbar span a.expandSource{display:inline !important;}
+.syntaxhighlighter .toolbar{position:absolute !important;right:1px !important;top:1px !important;width:11px !important;height:11px !important;font-size:10px !important;z-index:10 !important;}
+.syntaxhighlighter .toolbar span.title{display:inline !important;}
+.syntaxhighlighter .toolbar a{display:block !important;text-align:center !important;text-decoration:none !important;padding-top:1px !important;}
+.syntaxhighlighter .toolbar a.expandSource{display:none !important;}
+.syntaxhighlighter.ie{font-size:.9em !important;padding:1px 0 1px 0 !important;}
+.syntaxhighlighter.ie .toolbar{line-height:8px !important;}
+.syntaxhighlighter.ie .toolbar a{padding-top:0px !important;}
+.syntaxhighlighter.printing .line.alt1 .content,.syntaxhighlighter.printing .line.alt2 .content,.syntaxhighlighter.printing .line.highlighted .number,.syntaxhighlighter.printing .line.highlighted.alt1 .content,.syntaxhighlighter.printing .line.highlighted.alt2 .content{background:none !important;}
+.syntaxhighlighter.printing .line .number{color:#bbbbbb !important;}
+.syntaxhighlighter.printing .line .content{color:black !important;}
+.syntaxhighlighter.printing .toolbar{display:none !important;}
+.syntaxhighlighter.printing a{text-decoration:none !important;}
+.syntaxhighlighter.printing .plain,.syntaxhighlighter.printing .plain a{color:black !important;}
+.syntaxhighlighter.printing .comments,.syntaxhighlighter.printing .comments a{color:#008200 !important;}
+.syntaxhighlighter.printing .string,.syntaxhighlighter.printing .string a{color:blue !important;}
+.syntaxhighlighter.printing .keyword{color:#006699 !important;font-weight:bold !important;}
+.syntaxhighlighter.printing .preprocessor{color:gray !important;}
+.syntaxhighlighter.printing .variable{color:#aa7700 !important;}
+.syntaxhighlighter.printing .value{color:#009900 !important;}
+.syntaxhighlighter.printing .functions{color:#ff1493 !important;}
+.syntaxhighlighter.printing .constants{color:#0066cc !important;}
+.syntaxhighlighter.printing .script{font-weight:bold !important;}
+.syntaxhighlighter.printing .color1,.syntaxhighlighter.printing .color1 a{color:gray !important;}
+.syntaxhighlighter.printing .color2,.syntaxhighlighter.printing .color2 a{color:#ff1493 !important;}
+.syntaxhighlighter.printing .color3,.syntaxhighlighter.printing .color3 a{color:red !important;}
+.syntaxhighlighter.printing .break,.syntaxhighlighter.printing .break a{color:black !important;}
+.syntaxhighlighter{background-color:#1b2426 !important;}
+.syntaxhighlighter .line.alt1{background-color:#1b2426 !important;}
+.syntaxhighlighter .line.alt2{background-color:#1b2426 !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#323e41 !important;}
+.syntaxhighlighter .line.highlighted.number{color:#b9bdb6 !important;}
+.syntaxhighlighter table caption{color:#b9bdb6 !important;}
+.syntaxhighlighter .gutter{color:#afafaf !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #435a5f !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#435a5f !important;color:#1b2426 !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:#5ba1cf !important;background:black !important;border:1px solid #435a5f !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:#5ba1cf !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:#5ce638 !important;}
+.syntaxhighlighter .toolbar{color:white !important;background:#435a5f !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:white !important;}
+.syntaxhighlighter .toolbar a:hover{color:#e0e8ff !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:#b9bdb6 !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#878a85 !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:#5ce638 !important;}
+.syntaxhighlighter .keyword{color:#5ba1cf !important;}
+.syntaxhighlighter .preprocessor{color:#435a5f !important;}
+.syntaxhighlighter .variable{color:#ffaa3e !important;}
+.syntaxhighlighter .value{color:#009900 !important;}
+.syntaxhighlighter .functions{color:#ffaa3e !important;}
+.syntaxhighlighter .constants{color:#e0e8ff !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:#5ba1cf !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:#e0e8ff !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:white !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:#ffaa3e !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeAppleScript.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeAppleScript.css
new file mode 100644
index 00000000..7881bad4
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeAppleScript.css
@@ -0,0 +1,21 @@
+.syntaxhighlighter.applescript{background:white;font-size:1em;color:black;}
+.syntaxhighlighter.applescript div,.syntaxhighlighter.applescript code{font:1em/1.25 Verdana,sans-serif !important;}
+.syntaxhighlighter.applescript .code .line{overflow:hidden !important;}
+.syntaxhighlighter.applescript .code .line.highlighted{background:#b5d5ff !important;}
+.syntaxhighlighter.applescript .color1{color:#000000 !important;}
+.syntaxhighlighter.applescript .color2{color:#000000 !important;}
+.syntaxhighlighter.applescript .color3{color:#000000 !important;font-weight:bold !important;}
+.syntaxhighlighter.applescript .keyword{color:#000000 !important;font-weight:bold !important;}
+.syntaxhighlighter.applescript .color4{color:#0000ff !important;font-style:italic !important;}
+.syntaxhighlighter.applescript .comments{color:#4c4d4d !important;}
+.syntaxhighlighter.applescript .plain{color:#408000 !important;}
+.syntaxhighlighter.applescript .string{color:#000000 !important;}
+.syntaxhighlighter.applescript .commandNames{color:#0000ff !important;font-weight:bold !important;}
+.syntaxhighlighter.applescript .parameterNames{color:#0000ff !important;}
+.syntaxhighlighter.applescript .classes{color:#0000ff !important;font-style:italic !important;}
+.syntaxhighlighter.applescript .properties{color:#6c04d4 !important;}
+.syntaxhighlighter.applescript .enumeratedValues{color:#4a1e7f !important;}
+.syntaxhighlighter.applescript .additionCommandNames{color:#0016b0 !important;font-weight:bold !important;}
+.syntaxhighlighter.applescript .additionParameterNames{color:#0016b0 !important;}
+.syntaxhighlighter.applescript .additionClasses{color:#0016b0 !important;font-style:italic !important;}
+.syntaxhighlighter.applescript .spaces{display:inline-block;height:0 !important;font-size:1.75em !important;line-height:0 !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeDefault.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeDefault.css
new file mode 100644
index 00000000..8034517e
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeDefault.css
@@ -0,0 +1,31 @@
+.syntaxhighlighter{background-color:white !important;}
+.syntaxhighlighter .line.alt1{background-color:white !important;}
+.syntaxhighlighter .line.alt2{background-color:white !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#e0e0e0 !important;}
+.syntaxhighlighter .line.highlighted.number{color:black !important;}
+.syntaxhighlighter table caption{color:black !important;}
+.syntaxhighlighter .gutter{color:#afafaf !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #6ce26c !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#6ce26c !important;color:white !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:blue !important;background:white !important;border:1px solid #6ce26c !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:blue !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:red !important;}
+.syntaxhighlighter .toolbar{color:white !important;background:#6ce26c !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:white !important;}
+.syntaxhighlighter .toolbar a:hover{color:black !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:black !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#008200 !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:blue !important;}
+.syntaxhighlighter .keyword{color:#006699 !important;}
+.syntaxhighlighter .preprocessor{color:gray !important;}
+.syntaxhighlighter .variable{color:#aa7700 !important;}
+.syntaxhighlighter .value{color:#009900 !important;}
+.syntaxhighlighter .functions{color:#ff1493 !important;}
+.syntaxhighlighter .constants{color:#0066cc !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:#006699 !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:gray !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:#ff1493 !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:red !important;}
+.syntaxhighlighter .keyword{font-weight:bold !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeDjango.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeDjango.css
new file mode 100644
index 00000000..5cb724f9
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeDjango.css
@@ -0,0 +1,32 @@
+.syntaxhighlighter{background-color:#0a2b1d !important;}
+.syntaxhighlighter .line.alt1{background-color:#0a2b1d !important;}
+.syntaxhighlighter .line.alt2{background-color:#0a2b1d !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#233729 !important;}
+.syntaxhighlighter .line.highlighted.number{color:white !important;}
+.syntaxhighlighter table caption{color:#f8f8f8 !important;}
+.syntaxhighlighter .gutter{color:#497958 !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #41a83e !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#41a83e !important;color:#0a2b1d !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:#96dd3b !important;background:black !important;border:1px solid #41a83e !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:#96dd3b !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:white !important;}
+.syntaxhighlighter .toolbar{color:white !important;background:#41a83e !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:white !important;}
+.syntaxhighlighter .toolbar a:hover{color:#ffe862 !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:#f8f8f8 !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#336442 !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:#9df39f !important;}
+.syntaxhighlighter .keyword{color:#96dd3b !important;}
+.syntaxhighlighter .preprocessor{color:#91bb9e !important;}
+.syntaxhighlighter .variable{color:#ffaa3e !important;}
+.syntaxhighlighter .value{color:#f7e741 !important;}
+.syntaxhighlighter .functions{color:#ffaa3e !important;}
+.syntaxhighlighter .constants{color:#e0e8ff !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:#96dd3b !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:#eb939a !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:#91bb9e !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:#edef7d !important;}
+.syntaxhighlighter .comments{font-style:italic !important;}
+.syntaxhighlighter .keyword{font-weight:bold !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeEclipse.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeEclipse.css
new file mode 100644
index 00000000..b089c5d7
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeEclipse.css
@@ -0,0 +1,34 @@
+.syntaxhighlighter{background-color:white !important;}
+.syntaxhighlighter .line.alt1{background-color:white !important;}
+.syntaxhighlighter .line.alt2{background-color:white !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#c3defe !important;}
+.syntaxhighlighter .line.highlighted.number{color:white !important;}
+.syntaxhighlighter table caption{color:black !important;}
+.syntaxhighlighter .gutter{color:#787878 !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #d4d0c8 !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#d4d0c8 !important;color:white !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:#3f5fbf !important;background:white !important;border:1px solid #d4d0c8 !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:#3f5fbf !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:#aa7700 !important;}
+.syntaxhighlighter .toolbar{color:#a0a0a0 !important;background:#d4d0c8 !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:#a0a0a0 !important;}
+.syntaxhighlighter .toolbar a:hover{color:red !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:black !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#3f5fbf !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:#2a00ff !important;}
+.syntaxhighlighter .keyword{color:#7f0055 !important;}
+.syntaxhighlighter .preprocessor{color:#646464 !important;}
+.syntaxhighlighter .variable{color:#aa7700 !important;}
+.syntaxhighlighter .value{color:#009900 !important;}
+.syntaxhighlighter .functions{color:#ff1493 !important;}
+.syntaxhighlighter .constants{color:#0066cc !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:#7f0055 !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:gray !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:#ff1493 !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:red !important;}
+.syntaxhighlighter .keyword{font-weight:bold !important;}
+.syntaxhighlighter .xml .keyword{color:#3f7f7f !important;font-weight:normal !important;}
+.syntaxhighlighter .xml .color1,.syntaxhighlighter .xml .color1 a{color:#7f007f !important;}
+.syntaxhighlighter .xml .string{font-style:italic !important;color:#2a00ff !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeEmacs.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeEmacs.css
new file mode 100644
index 00000000..a3dcfc92
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeEmacs.css
@@ -0,0 +1,30 @@
+.syntaxhighlighter{background-color:black !important;}
+.syntaxhighlighter .line.alt1{background-color:black !important;}
+.syntaxhighlighter .line.alt2{background-color:black !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#2a3133 !important;}
+.syntaxhighlighter .line.highlighted.number{color:white !important;}
+.syntaxhighlighter table caption{color:#d3d3d3 !important;}
+.syntaxhighlighter .gutter{color:#d3d3d3 !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #990000 !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#990000 !important;color:black !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:#ebdb8d !important;background:black !important;border:1px solid #990000 !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:#ebdb8d !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:#ff7d27 !important;}
+.syntaxhighlighter .toolbar{color:white !important;background:#990000 !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:white !important;}
+.syntaxhighlighter .toolbar a:hover{color:#9ccff4 !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:#d3d3d3 !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#ff7d27 !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:#ff9e7b !important;}
+.syntaxhighlighter .keyword{color:aqua !important;}
+.syntaxhighlighter .preprocessor{color:#aec4de !important;}
+.syntaxhighlighter .variable{color:#ffaa3e !important;}
+.syntaxhighlighter .value{color:#009900 !important;}
+.syntaxhighlighter .functions{color:#81cef9 !important;}
+.syntaxhighlighter .constants{color:#ff9e7b !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:aqua !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:#ebdb8d !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:#ff7d27 !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:#aec4de !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeFadeToGrey.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeFadeToGrey.css
new file mode 100644
index 00000000..d0b1c93e
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeFadeToGrey.css
@@ -0,0 +1,31 @@
+.syntaxhighlighter{background-color:#121212 !important;}
+.syntaxhighlighter .line.alt1{background-color:#121212 !important;}
+.syntaxhighlighter .line.alt2{background-color:#121212 !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#2c2c29 !important;}
+.syntaxhighlighter .line.highlighted.number{color:white !important;}
+.syntaxhighlighter table caption{color:white !important;}
+.syntaxhighlighter .gutter{color:#afafaf !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #3185b9 !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#3185b9 !important;color:#121212 !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:#3185b9 !important;background:black !important;border:1px solid #3185b9 !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:#3185b9 !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:#d01d33 !important;}
+.syntaxhighlighter .toolbar{color:white !important;background:#3185b9 !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:white !important;}
+.syntaxhighlighter .toolbar a:hover{color:#96daff !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:white !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#696854 !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:#e3e658 !important;}
+.syntaxhighlighter .keyword{color:#d01d33 !important;}
+.syntaxhighlighter .preprocessor{color:#435a5f !important;}
+.syntaxhighlighter .variable{color:#898989 !important;}
+.syntaxhighlighter .value{color:#009900 !important;}
+.syntaxhighlighter .functions{color:#aaaaaa !important;}
+.syntaxhighlighter .constants{color:#96daff !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:#d01d33 !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:#ffc074 !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:#4a8cdb !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:#96daff !important;}
+.syntaxhighlighter .functions{font-weight:bold !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeMDUltra.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeMDUltra.css
new file mode 100644
index 00000000..6f712fd6
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeMDUltra.css
@@ -0,0 +1,30 @@
+.syntaxhighlighter{background-color:#222222 !important;}
+.syntaxhighlighter .line.alt1{background-color:#222222 !important;}
+.syntaxhighlighter .line.alt2{background-color:#222222 !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#253e5a !important;}
+.syntaxhighlighter .line.highlighted.number{color:white !important;}
+.syntaxhighlighter table caption{color:lime !important;}
+.syntaxhighlighter .gutter{color:#38566f !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #435a5f !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#435a5f !important;color:#222222 !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:#428bdd !important;background:black !important;border:1px solid #435a5f !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:#428bdd !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:lime !important;}
+.syntaxhighlighter .toolbar{color:#aaaaff !important;background:#435a5f !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:#aaaaff !important;}
+.syntaxhighlighter .toolbar a:hover{color:#9ccff4 !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:lime !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#428bdd !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:lime !important;}
+.syntaxhighlighter .keyword{color:#aaaaff !important;}
+.syntaxhighlighter .preprocessor{color:#8aa6c1 !important;}
+.syntaxhighlighter .variable{color:aqua !important;}
+.syntaxhighlighter .value{color:#f7e741 !important;}
+.syntaxhighlighter .functions{color:#ff8000 !important;}
+.syntaxhighlighter .constants{color:yellow !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:#aaaaff !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:red !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:yellow !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:#ffaa3e !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeMidnight.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeMidnight.css
new file mode 100644
index 00000000..e9c177e6
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeMidnight.css
@@ -0,0 +1,30 @@
+.syntaxhighlighter{background-color:#0f192a !important;}
+.syntaxhighlighter .line.alt1{background-color:#0f192a !important;}
+.syntaxhighlighter .line.alt2{background-color:#0f192a !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#253e5a !important;}
+.syntaxhighlighter .line.highlighted.number{color:#38566f !important;}
+.syntaxhighlighter table caption{color:#d1edff !important;}
+.syntaxhighlighter .gutter{color:#afafaf !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #435a5f !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#435a5f !important;color:#0f192a !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:#428bdd !important;background:black !important;border:1px solid #435a5f !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:#428bdd !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:#1dc116 !important;}
+.syntaxhighlighter .toolbar{color:#d1edff !important;background:#435a5f !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:#d1edff !important;}
+.syntaxhighlighter .toolbar a:hover{color:#8aa6c1 !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:#d1edff !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#428bdd !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:#1dc116 !important;}
+.syntaxhighlighter .keyword{color:#b43d3d !important;}
+.syntaxhighlighter .preprocessor{color:#8aa6c1 !important;}
+.syntaxhighlighter .variable{color:#ffaa3e !important;}
+.syntaxhighlighter .value{color:#f7e741 !important;}
+.syntaxhighlighter .functions{color:#ffaa3e !important;}
+.syntaxhighlighter .constants{color:#e0e8ff !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:#b43d3d !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:#f8bb00 !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:white !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:#ffaa3e !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeRDark.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeRDark.css
new file mode 100644
index 00000000..42d8710f
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeRDark.css
@@ -0,0 +1,30 @@
+.syntaxhighlighter{background-color:#1b2426 !important;}
+.syntaxhighlighter .line.alt1{background-color:#1b2426 !important;}
+.syntaxhighlighter .line.alt2{background-color:#1b2426 !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#323e41 !important;}
+.syntaxhighlighter .line.highlighted.number{color:#b9bdb6 !important;}
+.syntaxhighlighter table caption{color:#b9bdb6 !important;}
+.syntaxhighlighter .gutter{color:#afafaf !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #435a5f !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#435a5f !important;color:#1b2426 !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:#5ba1cf !important;background:black !important;border:1px solid #435a5f !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:#5ba1cf !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:#5ce638 !important;}
+.syntaxhighlighter .toolbar{color:white !important;background:#435a5f !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:white !important;}
+.syntaxhighlighter .toolbar a:hover{color:#e0e8ff !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:#b9bdb6 !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#878a85 !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:#5ce638 !important;}
+.syntaxhighlighter .keyword{color:#5ba1cf !important;}
+.syntaxhighlighter .preprocessor{color:#435a5f !important;}
+.syntaxhighlighter .variable{color:#ffaa3e !important;}
+.syntaxhighlighter .value{color:#009900 !important;}
+.syntaxhighlighter .functions{color:#ffaa3e !important;}
+.syntaxhighlighter .constants{color:#e0e8ff !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:#5ba1cf !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:#e0e8ff !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:white !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:#ffaa3e !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeVisualStudio.css b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeVisualStudio.css
new file mode 100644
index 00000000..8ed369f5
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/shThemeVisualStudio.css
@@ -0,0 +1,31 @@
+.syntaxhighlighter{background-color:white !important;}
+.syntaxhighlighter .line.alt1{background-color:white !important;}
+.syntaxhighlighter .line.alt2{background-color:white !important;}
+.syntaxhighlighter .line.highlighted.alt1,.syntaxhighlighter .line.highlighted.alt2{background-color:#e0e0e0 !important;}
+.syntaxhighlighter .line.highlighted.number{color:black !important;}
+.syntaxhighlighter table caption{color:black !important;}
+.syntaxhighlighter .gutter{color:#afafaf !important;}
+.syntaxhighlighter .gutter .line{border-right:3px solid #6ce26c !important;}
+.syntaxhighlighter .gutter .line.highlighted{background-color:#6ce26c !important;color:white !important;}
+.syntaxhighlighter.printing .line .content{border:none !important;}
+.syntaxhighlighter.collapsed{overflow:visible !important;}
+.syntaxhighlighter.collapsed .toolbar{color:blue !important;background:white !important;border:1px solid #6ce26c !important;}
+.syntaxhighlighter.collapsed .toolbar a{color:blue !important;}
+.syntaxhighlighter.collapsed .toolbar a:hover{color:red !important;}
+.syntaxhighlighter .toolbar{color:white !important;background:#6ce26c !important;border:none !important;}
+.syntaxhighlighter .toolbar a{color:white !important;}
+.syntaxhighlighter .toolbar a:hover{color:black !important;}
+.syntaxhighlighter .plain,.syntaxhighlighter .plain a{color:black !important;}
+.syntaxhighlighter .comments,.syntaxhighlighter .comments a{color:#008200 !important;}
+.syntaxhighlighter .string,.syntaxhighlighter .string a{color:#d11010 !important;}
+.syntaxhighlighter .keyword{color:#006699 !important;}
+.syntaxhighlighter .preprocessor{color:gray !important;}
+.syntaxhighlighter .variable{color:#aa7700 !important;}
+.syntaxhighlighter .value{color:#009900 !important;}
+.syntaxhighlighter .functions{color:#ff1493 !important;}
+.syntaxhighlighter .constants{color:#0066cc !important;}
+.syntaxhighlighter .script{font-weight:bold !important;color:#006699 !important;background-color:none !important;}
+.syntaxhighlighter .color1,.syntaxhighlighter .color1 a{color:gray !important;}
+.syntaxhighlighter .color2,.syntaxhighlighter .color2 a{color:#ff1493 !important;}
+.syntaxhighlighter .color3,.syntaxhighlighter .color3 a{color:red !important;}
+.syntaxhighlighter .keyword{font-weight:bold !important;}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/wrapping.png b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/wrapping.png
new file mode 100644
index 00000000..6972c5e5
Binary files /dev/null and b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/examples/styles/wrapping.png differ
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/extras/EasyPeasyICS.php b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/extras/EasyPeasyICS.php
new file mode 100644
index 00000000..d8bfcfae
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/extras/EasyPeasyICS.php
@@ -0,0 +1,148 @@
+
+ * @author Manuel Reinhard
+ *
+ * Built with inspiration from
+ * http://stackoverflow.com/questions/1463480/how-can-i-use-php-to-dynamically-publish-an-ical-file-to-be-read-by-google-calend/1464355#1464355
+ * History:
+ * 2010/12/17 - Manuel Reinhard - when it all started
+ * 2014 PHPMailer project becomes maintainer
+ */
+
+/**
+ * Class EasyPeasyICS.
+ * Simple ICS data generator
+ * @package phpmailer
+ * @subpackage easypeasyics
+ */
+class EasyPeasyICS
+{
+ /**
+ * The name of the calendar
+ * @var string
+ */
+ protected $calendarName;
+ /**
+ * The array of events to add to this calendar
+ * @var array
+ */
+ protected $events = array();
+
+ /**
+ * Constructor
+ * @param string $calendarName
+ */
+ public function __construct($calendarName = "")
+ {
+ $this->calendarName = $calendarName;
+ }
+
+ /**
+ * Add an event to this calendar.
+ * @param string $start The start date and time as a unix timestamp
+ * @param string $end The end date and time as a unix timestamp
+ * @param string $summary A summary or title for the event
+ * @param string $description A description of the event
+ * @param string $url A URL for the event
+ * @param string $uid A unique identifier for the event - generated automatically if not provided
+ * @return array An array of event details, including any generated UID
+ */
+ public function addEvent($start, $end, $summary = '', $description = '', $url = '', $uid = '')
+ {
+ if (empty($uid)) {
+ $uid = md5(uniqid(mt_rand(), true)) . '@EasyPeasyICS';
+ }
+ $event = array(
+ 'start' => gmdate('Ymd', $start) . 'T' . gmdate('His', $start) . 'Z',
+ 'end' => gmdate('Ymd', $end) . 'T' . gmdate('His', $end) . 'Z',
+ 'summary' => $summary,
+ 'description' => $description,
+ 'url' => $url,
+ 'uid' => $uid
+ );
+ $this->events[] = $event;
+ return $event;
+ }
+
+ /**
+ * @return array Get the array of events.
+ */
+ public function getEvents()
+ {
+ return $this->events;
+ }
+
+ /**
+ * Clear all events.
+ */
+ public function clearEvents()
+ {
+ $this->events = array();
+ }
+
+ /**
+ * Get the name of the calendar.
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->calendarName;
+ }
+
+ /**
+ * Set the name of the calendar.
+ * @param $name
+ */
+ public function setName($name)
+ {
+ $this->calendarName = $name;
+ }
+
+ /**
+ * Render and optionally output a vcal string.
+ * @param bool $output Whether to output the calendar data directly (the default).
+ * @return string The complete rendered vlal
+ */
+ public function render($output = true)
+ {
+ //Add header
+ $ics = 'BEGIN:VCALENDAR
+METHOD:PUBLISH
+VERSION:2.0
+X-WR-CALNAME:' . $this->calendarName . '
+PRODID:-//hacksw/handcal//NONSGML v1.0//EN';
+
+ //Add events
+ foreach ($this->events as $event) {
+ $ics .= '
+BEGIN:VEVENT
+UID:' . $event['uid'] . '
+DTSTAMP:' . gmdate('Ymd') . 'T' . gmdate('His') . 'Z
+DTSTART:' . $event['start'] . '
+DTEND:' . $event['end'] . '
+SUMMARY:' . str_replace("\n", "\\n", $event['summary']) . '
+DESCRIPTION:' . str_replace("\n", "\\n", $event['description']) . '
+URL;VALUE=URI:' . $event['url'] . '
+END:VEVENT';
+ }
+
+ //Add footer
+ $ics .= '
+END:VCALENDAR';
+
+ if ($output) {
+ //Output
+ $filename = $this->calendarName;
+ //Filename needs quoting if it contains spaces
+ if (strpos($filename, ' ') !== false) {
+ $filename = '"'.$filename.'"';
+ }
+ header('Content-type: text/calendar; charset=utf-8');
+ header('Content-Disposition: inline; filename=' . $filename . '.ics');
+ echo $ics;
+ }
+ return $ics;
+ }
+}
diff --git a/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/extras/README.md b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/extras/README.md
new file mode 100644
index 00000000..dac79e05
--- /dev/null
+++ b/app/src/vendor/PHPMailer/vendor/phpmailer/phpmailer/extras/README.md
@@ -0,0 +1,17 @@
+#PHPMailer Extras
+
+These classes provide optional additional functions to PHPMailer.
+
+These are not loaded by the PHPMailer autoloader, so in some cases you may need to `require` them yourself before using them.
+
+##EasyPeasyICS
+
+This class was originally written by Manuel Reinhard and provides a simple means of generating ICS/vCal files that are used in sending calendar events. PHPMailer does not use it directly, but you can use it to generate content appropriate for placing in the `Ical` property of PHPMailer. The PHPMailer project is now its official home as Manuel has given permission for that and is no longer maintaining it himself.
+
+##htmlfilter
+
+This class by Konstantin Riabitsev and Jim Jagielski implements HTML filtering to remove potentially malicious tags, such as `