private function process() { $this->commonProcess(); $config = services::getService('config'); $lang = services::getService('lang'); $params = services::getService('pageParams'); // for redirection if ($params->getParam('refer') == 'mysite') { $this->refer = 'mysite'; } else { $this->refer = 'showpool'; } // res_free_page $userres = new resFetcher(); $userres->_order = "name"; $userres->_user = $this->user->id; $userres->search(); $this->userres = $userres->getAsArray(); $user_new_pool = new pools(); $user_new_pool->id = $params->getParam('pool_id'); if ($user_new_pool->find(true)) { $this->user_new_pool = $user_new_pool; $user_new_pools = new poolsUser(); $user_new_pools->pool_id = $user_new_pool->id; $user_new_pools->user_id = $this->user->id; $user_new_pools->find(true); if ($user_new_pools->res_to_free == 1) { $this->new_pool = true; } if ($params->getParam('no_free_submit')) { $user_new_pools->res_to_free = 0; $user_new_pools->update(); // delete res foreach ($this->userres as $res) { $del_res = new poolsResources(); $del_res->pool_id = $params->getParam('pool_id'); $del_res->res_id = $res->id; $del_res->find(); $del_res->delete(); $freed = true; } $this->switchPage($this->refer . '&pool_id=' . $user_new_pools->pool_id . '&msg=msg_freeres_alldeleted'); } else { if ($params->getParam('res_free_submit')) { // delete res foreach ($this->userres as $res) { $del_res = new poolsResources(); $del_res->pool_id = $params->getParam('pool_id'); $del_res->res_id = $res->id; $del_res->find(); $del_res->delete(); $freed = true; } foreach ($_POST as $res_id => $doesnmatter) { $free_res = new poolsResources(); $free_res->res_id = $res_id; $free_res->pool_id = $params->getParam('pool_id'); // insert res if ($doesnmatter == "check") { if (!$free_res->find()) { $free_res->insert(); $freed = true; } } } // set $msg if ($freed) { $this->switchPage($this->refer . '&pool_id=' . $user_new_pools->pool_id . '&msg=msg_free_res_success'); } $user_new_pools->res_to_free = 0; $user_new_pools->update(); } else { if (is_array($this->userres)) { $this->free_res = true; } else { $user_new_pools->res_to_free = 0; $user_new_pools->update(); // switch page with msg $this->switchPage('showpool&pool_id=' . $user_new_pools->pool_id . '&msg=msg_freeres_nores'); } } } } }
private function process() { $this->commonProcess(); $mail = services::getService('mail'); $config = services::getService('config'); $lang = services::getService('lang'); $params = services::getService('pageParams'); $categories = services::getService('cats'); $pool = new pools(); $pool->get($params->getParam("pool_id")); if ($pool->isAdmin($this->user->id)) { $this->header = $pool->name . $lang->getMsg('pooladmin_header'); // build userlist // assotiativ array with object and detail-flag if ($pool->isMember($this->user->id)) { $members = array(); $pool_users = new poolsUser(); $pool_users->pool_id = $pool->id; $pool_users->wait = 0; if ($pool_users->find()) { $detail_id = $params->getParam('showmember'); $count = 1; while ($pool_users->fetch()) { if ($pool_users->user_id != $this->user->id) { $pool_users->fetchUser(); $member = array("obj" => $pool_users->user, "detail" => $pool_users->user->id == $detail_id, "count" => $count); $members[] = $member; ++$count; } } $this->members = $members; } } // build adminlist // assotiativ array with object and detail-flag if ($pool->isAdmin($this->user->id)) { $admins = array(); $pool_admins = new poolsAdmin(); $pool_admins->pool_id = $pool->id; $pool_admins->wait = 0; if ($pool_admins->find()) { $detail_id = $params->getParam('showadmin'); $count1 = 1; while ($pool_admins->fetch()) { if ($pool_admins->user_id != $this->user->id) { $pool_admins->fetchUser(); $admin = array("obj" => $pool_admins->user, "detail" => $pool_admins->user->id == $detail_id, "count" => $count1); $admins[] = $admin; ++$count1; } } $this->admins = $admins; } } // form processing // Waiting User $wait_users = new poolsUser(); $wait_users->pool_id = $pool->id; $wait_users->wait = "1"; if ($wait_users->find()) { $waiting_user = array(); while ($wait_users->fetch()) { $waiting_user[] = $wait_users->user_id; } } // refuse_user-form if ($params->getParam('user_refuse_submit') != false) { foreach ($waiting_user as $user_id) { if ($params->getParam($user_id) == 1) { $refuse_user = new poolsUser(); // user is refused $refuse_user->user_id = $user_id; $refuse_user->pool_id = $pool->id; $refuse_user->find(); $refuse_user->delete(); $refused = TRUE; $refused_mail = new user(); $refused_mail->get($refuse_user->user_id); $mail->send("user_refused", $refused_mail, $pool); } } // set $msg if ($refused) { $this->addMsg('msg_refuse_user_success'); } } // accept_user-form if ($params->getParam('user_accept_submit') != false) { foreach ($waiting_user as $user_id) { if ($params->getParam($user_id) == 1) { $accept_user = new poolsUser(); // user is accepted $accept_user->user_id = $user_id; $accept_user->pool_id = $pool->id; $accept_user->find(true); $accept_user->wait = 0; $accept_user->res_to_free = 1; $accept_user->update(); $accepted = TRUE; $accepted_mail = new user(); $accepted_mail->get($user_id); $mail->send("user_accepted", $accepted_mail, $pool); } } // set $msg if ($accepted) { $this->addMsg('msg_accept_user_success'); } } // add Admin if ($params->getParam('action') == 'new_admin') { if ($params->getParam('really') == 'yes') { $pool->addAdmin($params->getParam('user')); $this->addMsg('msg_add_admin'); $new_admin = new user(); $new_admin->get($params->getParam('user')); $mail->send('new_admin', $new_admin, $pool); } else { $add_admin = new user(); $add_admin->get($params->getParam('user')); $this->really_add_admin = $add_admin; } } // kick_member if ($params->getParam('action') == 'kick_user') { if ($params->getParam('really') == 'yes') { $pool->removeMember($params->getParam('user')); $this->addMsg('msg_kick_member'); $kicker = new user(); $kicker->get($params->getParam('user')); $mail->send('kick_member', $kicker, $pool); } else { $kick_member = new user(); $kick_member->get($params->getParam('user')); $this->really_kick_member = $kick_member; } } $pool_new_admins = new poolsUser(); $pool_new_admins->pool_id = $pool->id; $pool_new_admins->wait = 0; $pool_new_admins->find(); $new_admins = array(); while ($pool_new_admins->fetch()) { if (!$pool->isAdmin($pool_new_admins->user_id)) { $pool_new_admin = new user(); $pool_new_admin->get($pool_new_admins->user_id); $new_admins[] = clone $pool_new_admin; } } $this->new_admins = $new_admins; $pool_kick_nutzis = new poolsUser(); $pool_kick_nutzis->pool_id = $pool->id; $pool_kick_nutzis->wait = 0; $pool_kick_nutzis->find(); $kick_user = array(); while ($pool_kick_nutzis->fetch()) { if (!$pool->isAdmin($pool_kick_nutzis->user_id)) { $pool_kick_nutzi = new user(); $pool_kick_nutzi->get($pool_kick_nutzis->user_id); $kick_user[] = clone $pool_kick_nutzi; } } $this->kick_user = $kick_user; // Waiting User $wait_users = new poolsUser(); $wait_users->pool_id = $pool->id; $wait_users->wait = "1"; if ($wait_users->find()) { $waiting_user = array(); while ($wait_users->fetch()) { $wait_user = new user(); $wait_user->get($wait_users->user_id); $waiting_user[] = array("obj" => clone $wait_user, "comments" => $wait_users->comments); } $this->waiting_user = $waiting_user; } // delete pool if ($pool->isLastAdmin($this->user->id)) { $this->lastadmin = true; } if ($params->getParam('action') == 'delpool') { $this->reallydelpool = true; if ($params->getParam('really') == 'yes') { $pool->deleteAll(); $this->switchPage('mysite&msg=msg_delpool_success'); } } $this->pool = $pool; } }
private function process() { $this->commonProcess(); $config = services::getService('config'); $lang = services::getService('lang'); $params = services::getService('pageParams'); // release resources if ($this->user->hasResources()) { // release no resources-function if ($params->getParam('function') == "freenone") { $relnone = new poolsUser(); $relnone->pool_id = $params->getParam('freenone_pool_id'); $relnone->user_id = $this->user->id; $relnone->find(true); $relnone->res_to_free = 0; $relnone->update(); } $newpools = new poolsUser(); $newpools->res_to_free = 1; $newpools->user_id = $this->user->id; if ($params->getParam('new_pool')) { $newpool = new pools(); $newpool->id = $params->getParam('new_pool'); $newpool->find(true); $this->new_pool = clone $newpool; } else { if ($newpools->find(true)) { $newpools->fetchPool(); $this->new_pool = clone $newpools->pool; } } } $this->user->fetchPreferences(); // registered msg if ($params->getParam('function') == "noregistered") { $this->user->preferences->delete(); $this->user->preferences->registered_message = "2"; $this->user->preferences->insert(); } if ($this->user->preferences->registered_message === "1") { $this->registered_msg = true; } // welcome msg if ($params->getParam('function') == "nowelcome") { $this->user->preferences->delete(); $this->user->preferences->welcome_message = "2"; $this->user->preferences->insert(); } if ($this->user->preferences->welcome_message === "2") { $this->welcome_msg = false; } // the table with users pools is generated // fetch "Pool" $pools_pool = new pools(); $pools_pool->id = 1; $pools_pool->find(true); if ($pools_pool->isAdmin($this->user->id)) { $this->mypoolstable_thirdcol = true; $this->mypoolstable[] = array("id" => $pools_pool->id, "name" => $pools_pool->name, "area" => $pools_pool->area, "links" => '<a href="./index.php?page=pooldata&pool_id=' . $pools->id . '">' . $lang->getMsg('mysite_poolsadmintable_changedatalink') . '</a> | <a href="./index.php?page=pooladmin&pool_id=' . $pools->id . '">' . $lang->getMsg('mysite_poolsadmintable_adminlink') . '</a>'); } else { $this->mypoolstable[] = array("id" => $pools_pool->id, "name" => $pools_pool->name, "area" => $pools_pool->area); } // fetch all other pools $pools = new poolsFetcher(); $pools->_user = $this->user->id; $pools->_order = "name"; $pools->search(); while ($pools->fetch()) { if ($pools->id != 1) { if ($pools->isAdmin($this->user->id)) { $this->mypoolstable_thirdcol = true; $this->mypoolstable[] = array("id" => $pools->id, "name" => $pools->name, "area" => $pools->area, "links" => '<a href="./index.php?page=pooldata&pool_id=' . $pools->id . '">' . $lang->getMsg('mysite_poolsadmintable_changedatalink') . '</a> | <a href="./index.php?page=pooladmin&pool_id=' . $pools->id . '">' . $lang->getMsg('mysite_poolsadmintable_adminlink') . '</a>'); } else { $this->mypoolstable[] = array("id" => $pools->id, "name" => $pools->name, "area" => $pools->area); } } } // fetch all borrowed resources $borrowed = new resBorrowed(); $borrowed->user_id = $this->user->id; if ($borrowed->find()) { $this->borrowed = array(); while ($borrowed->fetch()) { $borrowed->fetchRes(); $borrowed->res->fetchUser(); $this->borrowed[] = clone $borrowed->res; } } }