public function getContent() { if (LoggedUser::whoIsLogged()) { if (isset($_COOKIE['ref_url'])) { $url = $_COOKIE['ref_url']; $absolute = FALSE; } else { $page = PageActionMap::getPageByTypeAndLanguage('rooms'); $url = PageActionMap::createUrl($page['alias']); $absolute = TRUE; } Utils::redirect($url, $absolute); } if (Utils::post('login')) { MySmarty::assign('username', Utils::post('username')); $validation = LoggedUser::userLogin(); //var_Dump($validation);exit(); if ($validation === TRUE) { Utils::redirect(Utils::getActualUrlWithoutGetParameters(), FALSE); } else { MySmarty::assign('errors', $validation); } } return MySmarty::fetch('login.tpl'); }
/** * log the user - if not exists register him/her and then log the user * * @return void */ public static function userLogin() { $errors = array(); $hash = addslashes(Utils::get('hash')); if ($hash) { $userRepository = new UserRepository(); $user = $userRepository->getOneByHash($hash); } else { if (Utils::post('username') != '') { $username = addslashes(Utils::post('username')); if (!ctype_alnum($username)) { $errors['username'] = '******'; // TODO localize } } else { $errors['username'] = '******'; // TODO localize } if (Utils::post('password') != '') { $password = md5(addslashes(Utils::post('password'))); } else { $errors['password'] = '******'; // TODO localize } if (empty($errors)) { $userRepository = new UserRepository(); $userExist = $userRepository->getOneByUsername($username); if ($userExist === NULL) { $colorRepository = new ColorRepository(); $count = $colorRepository->getCountAll(); $rand = rand(1, $count); $params = array('username' => $username, 'password' => $password, 'color' => $rand); $user = new User($params); $user = $user->save(TRUE); } elseif ($userExist['password'] != $password) { $errors['password'] = '******'; } else { $user = $userExist; } } } if ($user && empty($errors)) { // TODO po prihlaseni treba nejako zmazat v memcachi query, ktora vybera usera podla cookie_value // lebo teraz to stale vracia vysledok z memcache -> ked sa prihlasim v dvoch browsroch, v obidvoch to funguje // neodhlasi ma z toho prveho $cookieValue = md5(time() . $user['id'] . $user['username']); DB::update(DB_PREFIX . 'user', array('cookie_value' => $cookieValue), 'id = ' . $user['id']); $expire = Utils::post('remember') == 1 ? strtotime('+1 year') : 0; setcookie(self::$cookieName, $cookieValue, $expire, '/'); return TRUE; } else { return $errors; } }
protected function setup() { $loggedUser = LoggedUser::whoIsLogged(); if (Utils::post('change_settings')) { // TODO check if password and confirm password match $loggedUser['password'] = md5(Utils::post('password')); $loggedUser['name'] = Utils::post('name'); $loggedUser['surname'] = Utils::post('surname'); $loggedUser['color'] = intval(Utils::post('color')); $loggedUser->save(); } MySmarty::assign('loggedUser', $loggedUser); $colorRepository = new ColorRepository(); $colors = $colorRepository->getAll(); MySmarty::assign('colors', $colors); }
protected function setup() { $loggedUser = LoggedUser::whoIsLogged(); if (Utils::post('create_room') && $loggedUser['admin']) { $params = array('title' => Utils::post('title'), 'alias' => Utils::createAlias(Utils::post('title'), 'room'), 'description' => Utils::post('description')); $room = new Room($params); $room->save(); } $roomRepository = new RoomRepository(); $rooms = $roomRepository->getAll(); $gameRepository = new GameRepository(); $games = $gameRepository->getGamesByRooms(array_keys($rooms)); foreach ($games as $game) { $rooms[$game['room']]['game'] = TRUE; $rooms[$game['room']]['status'] = Localize::getMessage('room_status_' . $game['status']); } MySmarty::assign('loggedUser', $loggedUser); MySmarty::assign('rooms', $rooms); }
public function main() { $gameId = intval(Utils::post('game')); $roomId = intval(Utils::post('room')); $gameRepository = new GameRepository(); // $gameRepository->addAdditionalWhere(array('column' => 'status', 'value' => Game::GAME_STATUS_ENDED, 'xxx' => '!=')); $gameRepository->addOrderBy(array('id' => 'DESC')); $game = $gameRepository->getOneByRoom($roomId); // if ($gameId) { // $game = $gameRepository->getOneById($gameId); // } else { // // } $roomRepository = new RoomRepository(); $room = $roomRepository->getOneById($roomId); $gameBox = new GameBox(); $gameBox->setRoom($room); if ($game) { $gameBox->setGame($game); } echo $gameBox->render(); }
$type = 'recette'; } Utils::redirect('/admin/compta/operations/saisir.php?' . $type . '&ok=' . (int) $id); } catch (UserException $e) { $error = $e->getMessage(); } } } $tpl->assign('error', $error); $tpl->assign('type', $type); if ($type === null) { $tpl->assign('comptes', $comptes->listTree()); } else { $tpl->assign('moyens_paiement', $cats->listMoyensPaiement()); $tpl->assign('moyen_paiement', Utils::post('moyen_paiement') ?: 'ES'); $tpl->assign('categories', $cats->getList($type === 'dette' ? Compta\Categories::DEPENSES : $type)); $tpl->assign('comptes_bancaires', $banques->getList()); $tpl->assign('banque', Utils::post('banque')); } if (!$membres->sessionGet('compta_date')) { $exercices = new Compta\Exercices(); $exercice = $exercices->getCurrent(); if ($exercice['debut'] > time() || $exercice['fin'] < time()) { $membres->sessionStore('compta_date', date('Y-m-d', $exercice['debut'])); } else { $membres->sessionStore('compta_date', date('Y-m-d')); } } $tpl->assign('date', $membres->sessionGet('compta_date') ?: false); $tpl->assign('ok', (int) Utils::get('ok')); $tpl->display('admin/compta/operations/saisir.tpl');
public function main() { $gameId = intval(Utils::post('game')); $gameRepository = new GameRepository(); $game = $gameRepository->getOneById($gameId); $commandParams = array(); $commandParams['command'] = addslashes(Utils::post('command')); $commandParams['useCharacter'] = intval(Utils::post('useCharacter')); $commandParams['playCardId'] = intval(Utils::post('playCard')); if ($commandParams['playCardId']) { $cardRepository = new CardRepository(TRUE); $card = $cardRepository->getOneById($commandParams['playCardId']); $commandParams['playCardName'] = str_replace('-', '', $card->getItemAlias()); } // TODO mozno ich niekedy bude viac $commandParams['additionalCardsId'] = intval(Utils::post('additionalCard')); if ($commandParams['additionalCardsId']) { $cardRepository = new CardRepository(TRUE); $card = $cardRepository->getOneById($commandParams['additionalCardsId']); $commandParams['additionalCardsName'] = str_replace('-', '', $card->getItemAlias()); } $commandParams['enemyPlayerId'] = intval(Utils::post('player')); if ($commandParams['enemyPlayerId']) { $playerRepository = new PlayerRepository(); $player = $playerRepository->getOneById($commandParams['enemyPlayerId']); if ($player) { $user = $player->getUser(); if ($user) { $commandParams['enemyPlayerUsername'] = $user['username']; } } } if ($commandParams['command'] == 'fanning') { $commandParams['additionalEnemyPlayerId'] = intval(Utils::post('additionalPlayer')); if ($commandParams['additionalEnemyPlayerId']) { $playerRepository = new PlayerRepository(); $player = $playerRepository->getOneById($commandParams['additionalEnemyPlayerId']); if ($player) { $user = $player->getUser(); if ($user) { $commandParams['additionalEnemyPlayerUsername'] = $user['username']; } } } } // TODO brawl tu dava addslashes if ($commandParams['command'] == 'brawl') { $commandParams['enemyCardsId'] = addslashes(Utils::post('card')); } elseif ($commandParams['command'] == 'choose_cards') { $commandParams['selectedCards'] = addslashes(Utils::post('card')); } else { $commandParams['enemyCardsId'] = intval(Utils::post('card')); if ($commandParams['enemyCardsId']) { $cardRepository = new CardRepository(TRUE); $card = $cardRepository->getOneById($commandParams['enemyCardsId']); $commandParams['enemyCardsName'] = str_replace('-', '', $card->getItemAlias()); } } $commandParams['place'] = addslashes(Utils::post('place')); if (Utils::post('peyoteColor')) { $commandParams['peyoteColor'] = addslashes(Utils::post('peyoteColor')); } if (Utils::post('text')) { $commandParams['text'] = addslashes(Utils::post('text')); } $params = array(); foreach ($commandParams as $key => $value) { $params[] = $key . '=' . $value; } $commandString = implode('&', $params); Log::command($commandString); Command::setup($commandString, $game); }
if (!Utils::CSRF_check('config')) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } else { try { $config->set('nom_asso', Utils::post('nom_asso')); $config->set('email_asso', Utils::post('email_asso')); $config->set('adresse_asso', Utils::post('adresse_asso')); $config->set('site_asso', Utils::post('site_asso')); $config->set('email_envoi_automatique', Utils::post('email_envoi_automatique')); $config->set('accueil_wiki', Utils::post('accueil_wiki')); $config->set('accueil_connexion', Utils::post('accueil_connexion')); $config->set('categorie_membres', Utils::post('categorie_membres')); $config->set('champ_identite', Utils::post('champ_identite')); $config->set('champ_identifiant', Utils::post('champ_identifiant')); $config->set('pays', Utils::post('pays')); $config->set('monnaie', Utils::post('monnaie')); $config->save(); Utils::redirect('/admin/config/?ok'); } catch (UserException $e) { $error = $e->getMessage(); } } } $tpl->assign('error', $error); $tpl->assign('garradin_version', garradin_version() . ' [' . (garradin_manifest() ?: 'release') . ']'); $tpl->assign('php_version', phpversion()); $v = \SQLite3::version(); $tpl->assign('sqlite_version', $v['versionString']); $tpl->assign('pays', Utils::getCountryList()); $cats = new Membres\Categories(); $tpl->assign('membres_cats', $cats->listSimple());
<?php namespace Garradin; require_once __DIR__ . '/../_inc.php'; if ($user['droits']['compta'] < Membres::DROIT_ADMIN) { throw new UserException("Vous n'avez pas le droit d'accéder à cette page."); } $banque = new Compta\Comptes_Bancaires(); $compte = $banque->get(Utils::get('id')); if (!$compte) { throw new UserException('Le compte demandé n\'existe pas.'); } $error = false; if (!empty($_POST['save'])) { if (!Utils::CSRF_check('compta_edit_banque_' . $compte['id'])) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } else { try { $id = $banque->edit($compte['id'], ['libelle' => Utils::post('libelle'), 'banque' => Utils::post('banque'), 'iban' => Utils::post('iban'), 'bic' => Utils::post('bic')]); Utils::redirect('/admin/compta/banques/'); } catch (UserException $e) { $error = $e->getMessage(); } } } $tpl->assign('error', $error); $tpl->assign('compte', $compte); $tpl->display('admin/compta/banques/modifier.tpl');
$rappel = $rappels->get(Utils::get('id')); if (!$rappel) { throw new UserException("Ce rappel n'existe pas."); } $cotisations = new Cotisations(); $error = false; if (!empty($_POST['save'])) { if (!Utils::CSRF_check('edit_rappel_' . $rappel['id'])) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } else { try { if (Utils::post('delai_choix') == 0) { $delai = 0; } elseif (Utils::post('delai_choix') > 0) { $delai = (int) Utils::post('delai_post'); } else { $delai = -(int) Utils::post('delai_pre'); } $rappels->edit($rappel['id'], ['sujet' => Utils::post('sujet'), 'texte' => Utils::post('texte'), 'delai' => $delai, 'id_cotisation' => Utils::post('id_cotisation')]); Utils::redirect('/admin/membres/cotisations/gestion/rappels.php'); } catch (UserException $e) { $error = $e->getMessage(); } } } $tpl->assign('error', $error); $rappel['delai_pre'] = $rappel['delai_post'] = abs($rappel['delai']) ?: 30; $rappel['delai_choix'] = $rappel['delai'] == 0 ? 0 : ($rappel['delai'] > 0 ? 1 : -1); $tpl->assign('rappel', $rappel); $tpl->assign('cotisations', $cotisations->listCurrent()); $tpl->display('admin/membres/cotisations/gestion/rappel_modifier.tpl');
namespace Garradin; require_once __DIR__ . '/../_inc.php'; if ($user['droits']['compta'] < Membres::DROIT_ADMIN) { throw new UserException("Vous n'avez pas le droit d'accéder à cette page."); } $e = new Compta\Exercices(); $exercice = $e->get((int) Utils::get('id')); if (!$exercice) { throw new UserException('Exercice inconnu.'); } if ($exercice['cloture']) { throw new UserException('Impossible de modifier un exercice clôturé.'); } $error = false; if (!empty($_POST['edit'])) { if (!Utils::CSRF_check('compta_modif_exercice_' . $exercice['id'])) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } else { try { $id = $e->edit($exercice['id'], ['libelle' => Utils::post('libelle'), 'debut' => Utils::post('debut'), 'fin' => Utils::post('fin')]); Utils::redirect('/admin/compta/exercices/'); } catch (UserException $e) { $error = $e->getMessage(); } } } $tpl->assign('error', $error); $tpl->assign('exercice', $exercice); $tpl->display('admin/compta/exercices/modifier.tpl');
namespace Garradin; const LOGIN_PROCESS = true; require_once __DIR__ . '/_inc.php'; $error = false; if (trim(Utils::get('c'))) { if ($membres->recoverPasswordConfirm(Utils::get('c'))) { Utils::redirect('/admin/password.php?new_sent'); } $error = 'EXPIRED'; } elseif (!empty($_POST['recover'])) { if (!Utils::CSRF_check('recoverPassword')) { $error = 'OTHER'; } else { if (trim(Utils::post('id')) && $membres->recoverPasswordCheck(Utils::post('id'))) { Utils::redirect('/admin/password.php?sent'); } $error = 'MAIL'; } } if (!$error && isset($_GET['sent'])) { $tpl->assign('sent', true); } elseif (!$error && isset($_GET['new_sent'])) { $tpl->assign('new_sent', true); } $champs = $config->get('champs_membres'); $champ = $champs->get($config->get('champ_identifiant')); $tpl->assign('champ', $champ); $tpl->assign('error', $error); $tpl->display('admin/password.tpl');
namespace Garradin; require_once __DIR__ . '/../_inc.php'; if ($user['droits']['compta'] < Membres::DROIT_ADMIN) { throw new UserException("Vous n'avez pas le droit d'accéder à cette page."); } $cats = new Compta\Categories(); $error = false; if (!empty($_POST['add'])) { if (!Utils::CSRF_check('compta_ajout_cat')) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } else { try { $id = $cats->add(['intitule' => Utils::post('intitule'), 'description' => Utils::post('description'), 'compte' => Utils::post('compte'), 'type' => Utils::post('type')]); if (Utils::post('type') == Compta\Categories::DEPENSES) { $type = 'depenses'; } elseif (Utils::post('type') == Compta\Categories::AUTRES) { $type = 'autres'; } else { $type = 'recettes'; } Utils::redirect('/admin/compta/categories/?' . $type); } catch (UserException $e) { $error = $e->getMessage(); } } } $tpl->assign('error', $error); $tpl->assign('type', isset($_POST['type']) ? Utils::post('type') : Compta\Categories::RECETTES); $tpl->assign('comptes', $comptes->listTree()); $tpl->display('admin/compta/categories/ajouter.tpl');
if ($user['droits']['compta'] < Membres::DROIT_ADMIN) { throw new UserException("Vous n'avez pas le droit d'accéder à cette page."); } $cats = new Compta\Categories(); $id = (int) Utils::get('id'); $cat = $cats->get($id); if (!$cat) { throw new UserException('Cette catégorie n\'existe pas.'); } $error = false; if (!empty($_POST['save'])) { if (!Utils::CSRF_check('compta_edit_cat_' . $cat['id'])) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } else { try { $id = $cats->edit($id, ['intitule' => Utils::post('intitule'), 'description' => Utils::post('description')]); if ($cat['type'] == Compta\Categories::DEPENSES) { $type = 'depenses'; } elseif ($cat['type'] == Compta\Categories::AUTRES) { $type = 'autres'; } else { $type = 'recettes'; } Utils::redirect('/admin/compta/categories/?' . $type); } catch (UserException $e) { $error = $e->getMessage(); } } } $tpl->assign('error', $error); $tpl->assign('cat', $cat);
protected function setup() { $roomAlias = Utils::get('identifier'); $roomRepository = new RoomRepository(); $room = $roomRepository->getOneByAlias($roomAlias); $loggedUser = LoggedUser::whoIsLogged(); if ($room) { $gameRepository = new GameRepository(); // $gameRepository->addAdditionalWhere(array('column' => 'status', 'value' => Game::GAME_STATUS_ENDED, 'xxx' => '!=')); $gameRepository->addOrderBy(array('id' => 'DESC')); $game = $gameRepository->getOneByRoom($room['id']); if (Utils::post()) { $message = addslashes(trim(Utils::post('message'))); if ($message != '') { if (strpos($message, '.') === 0) { $response = Command::setup('command=' . substr($message, 1), $game); } else { $response = Command::setup('command=say&text=' . $message . '&room=' . $room['id'] . '&game=' . $game['id'], $game); } Room::updateUserLastActivity($loggedUser['id'], $room['id']); } elseif (Utils::post('create')) { $response = Command::setup('command=create', $game); } elseif (Utils::post('join')) { $response = Command::setup('command=join', $game); } elseif (Utils::post('add_ai_player')) { $response = Command::setup('command=add_ai_player', $game); } elseif (Utils::post('start')) { $response = Command::setup('command=init', $game); } elseif (Utils::post('choose_character')) { $response = Command::setup('command=choose_character&selectedCharacter=' . Utils::post('character'), $game); } elseif (Utils::post('choose_cards')) { $commandParams = array(); $commandParams['command'] = 'choose_cards'; $commandParams['selectedCards'] = array(); if (Utils::post('card')) { $commandParams['selectedCards'] = implode(',', Utils::post('card')); } $params = array(); foreach ($commandParams as $key => $value) { $params[] = $key . '=' . $value; } $commandString = implode('&', $params); $response = Command::setup($commandString, $game); } Utils::redirect(Utils::getActualUrl(), FALSE); // TODO tu by sa mohol spravit redirect asi lebo respons bude v db MySmarty::assign('response', $response); } $gameBox = new GameBox(); $gameBox->setRoom($room); if ($game !== NULL) { $gameBox->setGame($game); } MySmarty::assign('gameBox', $gameBox->render()); $chatBox = new ChatBox(); $chatBox->setRoom($room); if ($game !== NULL) { $chatBox->setGame($game); } MySmarty::assign('chatBox', $chatBox->render()); } else { // TODO 404 room not found } }
<?php namespace Garradin; require_once __DIR__ . '/../_inc.php'; if ($user['droits']['membres'] < Membres::DROIT_ADMIN) { throw new UserException("Vous n'avez pas le droit d'accéder à cette page."); } $membre = $membres->get(Utils::get('id')); if (!$membre) { throw new UserException("Ce membre n'existe pas."); } $error = false; if (Utils::post('delete')) { if (!Utils::CSRF_check('delete_membre_' . $membre['id'])) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } else { try { $membres->delete($membre['id']); Utils::redirect('/admin/membres/'); } catch (UserException $e) { $error = $e->getMessage(); } } } $tpl->assign('membre', $membre); $tpl->assign('error', $error); $tpl->display('admin/membres/supprimer.tpl');
} } } if (!$debut || !$fin) { $date = $exercice['fin']; $debut = date('Y-m-01', $date); $fin = date('Y-m-t', $date); } $journal = $rapprochement->getJournal($compte['id'], $debut, $fin, $solde_initial, $solde_final); // Enregistrement des cases cochées if (Utils::post('save')) { if (!Utils::CSRF_check('compta_rapprocher_' . $compte['id'])) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } else { try { $rapprochement->record($compte['id'], $journal, Utils::post('rapprocher'), $user['id']); Utils::redirect(Utils::getSelfURL()); } catch (UserException $e) { $error = $e->getMessage(); } } } if (substr($debut, 0, 7) == substr($fin, 0, 7)) { $tpl->assign('prev', Utils::modifyDate($debut, '-1 month', true)); $tpl->assign('next', Utils::modifyDate($fin, '+1 month', true)); } $tpl->assign('compte', $compte); $tpl->assign('debut', $debut); $tpl->assign('fin', $fin); $tpl->assign('journal', $journal); $tpl->assign('solde_initial', $solde_initial);
function tpl_select_compte($params) { $name = $params['name']; $comptes = $params['comptes']; $selected = isset($params['data'][$params['name']]) ? $params['data'][$params['name']] : Utils::post($name); $out = '<select name="' . $name . '" id="f_' . $name . '" class="large">'; foreach ($comptes as $compte) { // Ne pas montrer les comptes désactivés if (!empty($compte['desactive'])) { continue; } if (!isset($compte['id'][1])) { $out .= '<optgroup label="' . htmlspecialchars($compte['libelle'], ENT_QUOTES, 'UTF-8', false) . '" class="niveau_1"></optgroup>'; } elseif (!isset($compte['id'][2]) && empty($params['create'])) { if ($compte['id'] > 10) { $out .= '</optgroup>'; } $out .= '<optgroup label="' . htmlspecialchars($compte['id'] . ' - ' . $compte['libelle'], ENT_QUOTES, 'UTF-8', false) . '" class="niveau_2">'; } else { $out .= '<option value="' . htmlspecialchars($compte['id'], ENT_QUOTES, 'UTF-8', false) . '" class="niveau_' . strlen($compte['id']) . '"'; if ($selected == $compte['id']) { $out .= ' selected="selected"'; } $out .= '>' . htmlspecialchars($compte['id'] . ' - ' . $compte['libelle'], ENT_QUOTES, 'UTF-8', false); $out .= '</option>'; } } $out .= '</optgroup>'; $out .= '</select>'; return $out; }
throw new UserException("Argument du numéro de cotisation manquant."); } $cotisations = new Cotisations(); $co = $cotisations->get(Utils::get('id')); $cats = new Compta\Categories(); if (!$co) { throw new UserException("Cette cotisation n'existe pas."); } $error = false; if (!empty($_POST['save'])) { if (!Utils::CSRF_check('edit_co_' . $co['id'])) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } else { try { $duree = Utils::post('periodicite') == 'jours' ? (int) Utils::post('duree') : null; $debut = Utils::post('periodicite') == 'date' ? Utils::post('debut') : null; $fin = Utils::post('periodicite') == 'date' ? Utils::post('fin') : null; $id_cat = Utils::post('categorie') ? (int) Utils::post('id_categorie_compta') : null; $cotisations->edit($co['id'], ['intitule' => Utils::post('intitule'), 'description' => Utils::post('description'), 'montant' => (double) Utils::post('montant'), 'duree' => $duree, 'debut' => $debut, 'fin' => $fin, 'id_categorie_compta' => $id_cat]); Utils::redirect('/admin/membres/cotisations/'); } catch (UserException $e) { $error = $e->getMessage(); } } } $tpl->assign('error', $error); $co['periodicite'] = $co['duree'] ? 'jours' : ($co['debut'] ? 'date' : 'ponctuel'); $co['categorie'] = $co['id_categorie_compta'] ? 1 : 0; $tpl->assign('cotisation', $co); $tpl->assign('categories', $cats->getList(Compta\Categories::RECETTES)); $tpl->display('admin/membres/cotisations/gestion/modifier.tpl');
$id = $cats->add(['nom' => 'Anciens membres', 'droit_inscription' => Membres::DROIT_AUCUN, 'droit_wiki' => Membres::DROIT_AUCUN, 'droit_membres' => Membres::DROIT_AUCUN, 'droit_compta' => Membres::DROIT_AUCUN, 'droit_config' => Membres::DROIT_AUCUN, 'droit_connexion' => Membres::DROIT_AUCUN, 'cacher' => 1]); $id = $cats->add(['nom' => ucfirst(Utils::post('cat_membre')), 'droit_inscription' => Membres::DROIT_AUCUN, 'droit_wiki' => Membres::DROIT_ADMIN, 'droit_membres' => Membres::DROIT_ADMIN, 'droit_compta' => Membres::DROIT_ADMIN, 'droit_config' => Membres::DROIT_ADMIN]); // Création premier membre $membres = new Membres(); $id_membre = $membres->add(['id_categorie' => $id, 'nom' => Utils::post('nom_membre'), 'email' => Utils::post('email_membre'), 'passe' => Utils::post('passe_membre'), 'pays' => 'FR']); // Création wiki $page = Wiki::transformTitleToURI(Utils::post('nom_asso')); $config->set('accueil_wiki', $page); $wiki = new Wiki(); $id_page = $wiki->create(['titre' => Utils::post('nom_asso'), 'uri' => $page]); $wiki->editRevision($id_page, 0, ['id_auteur' => $id_membre, 'contenu' => "Bienvenue dans le wiki de " . Utils::post('nom_asso') . " !\n\nCliquez sur le bouton « éditer » pour modifier cette page."]); // Création page wiki connexion $page = Wiki::transformTitleToURI('Bienvenue'); $config->set('accueil_connexion', $page); $id_page = $wiki->create(['titre' => 'Bienvenue', 'uri' => $page]); $wiki->editRevision($id_page, 0, ['id_auteur' => $id_membre, 'contenu' => "Bienvenue dans l'administration de " . Utils::post('nom_asso') . " !\n\n" . "Utilisez le menu à gauche pour accéder aux différentes rubriques."]); // Mise en place compta $comptes = new Compta\Comptes(); $comptes->importPlan(); $comptes = new Compta\Categories(); $comptes->importCategories(); $ex = new Compta\Exercices(); $ex->add(['libelle' => 'Premier exercice', 'debut' => date('Y-01-01'), 'fin' => date('Y-12-31')]); $config->save(); Utils::redirect('/admin/login.php'); } catch (UserException $e) { @unlink(DB_FILE); $error = $e->getMessage(); } } }
$import = new Compta\Import(); if (isset($_GET['export'])) { header('Content-type: application/csv'); header('Content-Disposition: attachment; filename="Export comptabilité - ' . $config->get('nom_asso') . ' - ' . date('Y-m-d') . '.csv"'); $import->toCSV($e->getCurrentId()); exit; } $error = false; if (!empty($_POST['import'])) { if (!Utils::CSRF_check('compta_import')) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } elseif (empty($_FILES['upload']['tmp_name'])) { $error = 'Aucun fichier fourni.'; } else { try { if (Utils::post('type') == 'citizen') { $import->fromCitizen($_FILES['upload']['tmp_name']); } elseif (Utils::post('type') == 'garradin') { $import->fromCSV($_FILES['upload']['tmp_name']); } else { throw new UserException('Import inconnu.'); } Utils::redirect('/admin/compta/import.php?ok'); } catch (UserException $e) { $error = $e->getMessage(); } } } $tpl->assign('error', $error); $tpl->assign('ok', isset($_GET['ok']) ? true : false); $tpl->display('admin/compta/import.tpl');
<?php namespace Garradin; require_once __DIR__ . '/../_inc.php'; if ($user['droits']['compta'] < Membres::DROIT_ADMIN) { throw new UserException("Vous n'avez pas le droit d'accéder à cette page."); } $id = Utils::get('id'); $compte = $comptes->get($id); if (!$compte) { throw new UserException('Le compte demandé n\'existe pas.'); } $error = false; if (!empty($_POST['save'])) { if (!Utils::CSRF_check('compta_edit_compte_' . $compte['id'])) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } else { try { $id = $comptes->edit($compte['id'], ['libelle' => Utils::post('libelle'), 'position' => Utils::post('position')]); Utils::redirect('/admin/compta/comptes/?classe=' . substr($compte['id'], 0, 1)); } catch (UserException $e) { $error = $e->getMessage(); } } } $tpl->assign('error', $error); $tpl->assign('positions', $comptes->getPositions()); $tpl->assign('position', Utils::post('position') ?: $compte['position']); $tpl->assign('compte', $compte); $tpl->display('admin/compta/comptes/modifier.tpl');
$page['contenu'] = $page['contenu']['contenu']; } if (Utils::post('date')) { $date = Utils::post('date') . ' ' . Utils::post('date_h') . ':' . Utils::post('date_min'); } else { $date = false; } if (!empty($_POST['save'])) { if (!Utils::CSRF_check('wiki_edit_' . $page['id'])) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } elseif ($page['date_modification'] > (int) Utils::post('debut_edition')) { $error = 'La page a été modifiée par quelqu\'un d\'autre depuis que vous avez commencé l\'édition.'; } else { try { $wiki->edit($page['id'], ['titre' => Utils::post('titre'), 'uri' => Utils::post('uri'), 'parent' => Utils::post('parent'), 'droit_lecture' => Utils::post('droit_lecture'), 'droit_ecriture' => Utils::post('droit_ecriture'), 'date_creation' => $date]); $wiki->editRevision($page['id'], (int) Utils::post('revision_edition'), ['contenu' => Utils::post('contenu'), 'modification' => Utils::post('modification'), 'id_auteur' => $user['id'], 'chiffrement' => Utils::post('chiffrement')]); $page = $wiki->getById($page['id']); Utils::redirect('/admin/wiki/?' . $page['uri']); } catch (UserException $e) { $error = $e->getMessage(); } } } $parent = (int) Utils::post('parent') ?: (int) $page['parent']; $tpl->assign('parent', $parent ? $wiki->getTitle($parent) : 0); $tpl->assign('error', $error); $tpl->assign('page', $page); $tpl->assign('time', time()); $tpl->assign('date', $date ? $date : $page['date_creation']); $tpl->assign('custom_js', ['wiki_editor.js', 'wiki-encryption.js']); $tpl->display('admin/wiki/editer.tpl');
namespace Garradin; require_once __DIR__ . '/../_inc.php'; if ($user['droits']['compta'] < Membres::DROIT_ADMIN) { throw new UserException("Vous n'avez pas le droit d'accéder à cette page."); } $e = new Compta\Exercices(); $exercice = $e->get((int) Utils::get('id')); if (!$exercice) { throw new UserException('Exercice inconnu.'); } $error = false; if (!empty($_POST['close'])) { if (!Utils::CSRF_check('compta_cloturer_exercice_' . $exercice['id'])) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } else { try { $id = $e->close($exercice['id'], Utils::post('fin')); if ($id && Utils::post('reports')) { $e->doReports($exercice['id'], Utils::modifyDate(Utils::post('fin'), '+1 day')); } Utils::redirect('/admin/compta/exercices/'); } catch (UserException $e) { $error = $e->getMessage(); } } } $tpl->assign('error', $error); $tpl->assign('exercice', $exercice); $tpl->display('admin/compta/exercices/cloturer.tpl');
$champs = $config->get('champs_membres'); $error = false; if (!empty($_POST['save'])) { if (!Utils::CSRF_check('new_member')) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } elseif (Utils::post('passe') != Utils::post('repasse')) { $error = 'La vérification ne correspond pas au mot de passe.'; } else { try { if ($user['droits']['membres'] == Membres::DROIT_ADMIN) { $id_categorie = Utils::post('id_categorie'); } else { $id_categorie = $config->get('categorie_membres'); } $data = ['id_categorie' => $id_categorie]; foreach ($champs->getAll() as $key => $dismiss) { $data[$key] = Utils::post($key); } $id = $membres->add($data); Utils::redirect('/admin/membres/fiche.php?id=' . (int) $id); } catch (UserException $e) { $error = $e->getMessage(); } } } $tpl->assign('error', $error); $tpl->assign('passphrase', Utils::suggestPassword()); $tpl->assign('champs', $champs->getAll()); $tpl->assign('membres_cats', $cats->listSimple()); $tpl->assign('current_cat', Utils::post('id_categorie') ?: $config->get('categorie_membres')); $tpl->display('admin/membres/ajouter.tpl');
<?php namespace Garradin; require_once __DIR__ . '/_inc.php'; if ($user['droits']['wiki'] < Membres::DROIT_ECRITURE) { throw new UserException("Vous n'avez pas le droit d'accéder à cette page."); } $tpl->assign('contenu', Utils::post('contenu')); $tpl->display('admin/wiki/_preview.tpl');
} $error = false; $champs = $config->get('champs_membres')->getAll(); $champs['date_inscription'] = ['title' => 'Date inscription', 'type' => 'date']; if (Utils::post('import')) { // FIXME if (false && !Utils::CSRF_check('membres_import')) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } elseif (empty($_FILES['upload']['tmp_name'])) { $error = 'Aucun fichier fourni.'; } else { try { if (Utils::post('type') == 'galette') { $import->fromGalette($_FILES['upload']['tmp_name'], Utils::post('galette_translate')); } elseif (Utils::post('type') == 'garradin') { $import->fromCSV($_FILES['upload']['tmp_name']); } else { throw new UserException('Import inconnu.'); } Utils::redirect('/admin/membres/import.php?ok'); } catch (UserException $e) { $error = $e->getMessage(); } } } $tpl->assign('error', $error); $tpl->assign('ok', isset($_GET['ok']) ? true : false); $tpl->assign('garradin_champs', $champs); $tpl->assign('galette_champs', $import->galette_fields); $tpl->assign('translate', Utils::post('galette_translate')); $tpl->display('admin/membres/import.tpl');
throw new UserException('Le compte bancaire choisi est invalide.'); } if (!array_key_exists(Utils::post('banque'), $banques->getList())) { throw new UserException('Le compte bancaire choisi n\'existe pas.'); } $a = Utils::post('banque'); $b = $cat['compte']; } if ($type == Compta\Categories::DEPENSES) { $debit = $b; $credit = $a; } elseif ($type == Compta\Categories::RECETTES) { $debit = $a; $credit = $b; } $journal->edit($operation['id'], ['libelle' => Utils::post('libelle'), 'montant' => Utils::post('montant'), 'date' => Utils::post('date'), 'moyen_paiement' => Utils::post('moyen_paiement'), 'numero_cheque' => Utils::post('numero_cheque'), 'compte_credit' => $credit, 'compte_debit' => $debit, 'numero_piece' => Utils::post('numero_piece'), 'remarques' => Utils::post('remarques'), 'id_categorie' => (int) $cat['id']]); } Utils::redirect('/admin/compta/operations/voir.php?id=' . (int) $operation['id']); } catch (UserException $e) { $error = $e->getMessage(); } } } $tpl->assign('error', $error); $tpl->assign('type', $type); if ($type === null) { $tpl->assign('comptes', $comptes->listTree()); } else { $tpl->assign('moyens_paiement', $cats->listMoyensPaiement()); $tpl->assign('categories', $cats->getList($type)); $tpl->assign('comptes_bancaires', $banques->getList());
$champs->add($new, $config); } $membres->sessionStore('champs_membres', (string) $champs); Utils::redirect('/admin/config/membres.php?added'); } catch (UserException $e) { $error = $e->getMessage(); } } elseif (!empty($_POST['save'])) { try { $champs->save(); $membres->sessionStore('champs_membres', null); Utils::redirect('/admin/config/membres.php?ok'); } catch (UserException $e) { $error = $e->getMessage(); } } } } $tpl->assign('error', $error); $tpl->assign('review', isset($_GET['review']) ? true : false); $types = $champs->getTypes(); $tpl->assign('champs', $champs->getAll()); $tpl->assign('types', $types); $tpl->assign('presets', Membres\Champs::listUnusedPresets($champs)); $tpl->assign('new', Utils::post('new')); $tpl->register_modifier('get_type', function ($type) use($types) { return $types[$type]; }); $tpl->assign('csrf_name', Utils::CSRF_field_name('config_membres')); $tpl->assign('csrf_value', Utils::CSRF_create('config_membres')); $tpl->display('admin/config/membres.tpl');
Utils::redirect('/admin/config/site.php?ok'); } catch (UserException $e) { $error = $e->getMessage(); } } } if (Utils::get('edit')) { $source = Squelette::getSource(Utils::get('edit')); if (!$source) { throw new UserException("Ce squelette n'existe pas."); } $csrf_key = 'edit_skel_' . md5(Utils::get('edit')); if (Utils::post('save')) { if (!Utils::CSRF_check($csrf_key)) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } else { if (Squelette::editSource(Utils::get('edit'), Utils::post('content'))) { Utils::redirect('/admin/config/site.php?edit=' . rawurlencode(Utils::get('edit')) . '&ok'); } else { $error = "Impossible d'enregistrer le squelette."; } } } $tpl->assign('edit', ['file' => trim(Utils::get('edit')), 'content' => $source]); $tpl->assign('csrf_key', $csrf_key); $tpl->assign('sources_json', json_encode(Squelette::listSources())); } else { $tpl->assign('sources', Squelette::listSources()); } $tpl->assign('error', $error); $tpl->display('admin/config/site.tpl');