0byt3m1n1
Path:
/
data
/
applications
/
aps
/
tikiwiki
/
14.1-0
/
standard
/
htdocs
/
[
Home
]
File: tiki-admin_credits.php
<?php /** * @package tikiwiki */ // (c) Copyright 2002-2015 by authors of the Tiki Wiki CMS Groupware Project // // All Rights Reserved. See copyright.txt for details and a complete list of authors. // Licensed under the GNU LESSER GENERAL PUBLIC LICENSE. See license.txt for details. // $Id: tiki-admin_credits.php 53802 2015-02-06 00:11:35Z jyhem $ require_once 'tiki-setup.php'; $creditslib = TikiLib::lib('credits'); //get_strings tra('Admin credits') if ($tiki_p_admin_users != 'y') { $smarty->assign('msg', tra('You do not have permission to use this feature')); $smarty->display('error.tpl'); die; } if ( isset( $_REQUEST['use_credit'] ) && $use_credit_userid = $tikilib->get_user_id($_POST['userfilter']) ) { $creditslib->useCredits( $use_credit_userid, $_POST['use_credit_type'], $_POST['use_credit_amount'] ); header('Location: tiki-admin_credits.php?userfilter=' . urlencode($_REQUEST['userfilter'])); exit; } if ( isset( $_REQUEST['restore_credit'] ) && $restore_credit_userid = $tikilib->get_user_id($_POST['userfilter']) ) { $creditslib->restoreCredits( $restore_credit_userid, $_POST['restore_credit_type'], $_POST['restore_credit_amount'] ); header('Location: tiki-admin_credits.php?userfilter=' . urlencode($_REQUEST['userfilter'])); exit; } if ( isset( $_REQUEST['purge_credits'] ) ) { $creditslib->purgeCredits(); header('Location: tiki-admin_credits.php'); exit; } if ( isset( $_REQUEST['update_types'] ) ) { foreach ( $_POST['credit_types'] as $key => $values ) { $creditslib->updateCreditType( $values['credit_type'], $values['display_text'], $values['unit_text'], $values['is_static_level'], $values['scaling_divisor'] ); } if ( !empty($_POST['new_credit_type']) ) { $creditslib->updateCreditType( $_POST['new_credit_type'], $_POST['display_text'], $_POST['unit_text'], $_POST['is_static_level'], $_POST['scaling_divisor'] ); } } $creditTypes = $creditslib->getCreditTypes(); $staticCreditTypes = $creditslib->getCreditTypes(true); $smarty->assign('credit_types', $creditTypes); $smarty->assign('static_credit_types', $staticCreditTypes); if ( isset($_REQUEST['userfilter']) ) { $smarty->assign('userfilter', $_REQUEST['userfilter']); $editing = $userlib->get_user_info($_REQUEST['userfilter']); if ( $editing ) { $userPlans = array(); foreach ($creditTypes as $ct => $v) { $userPlans[$ct]['nextbegin'] = $creditslib->getNextPlanBegin($editing['userId'], $ct); $userPlans[$ct]['currentbegin'] = $creditslib->getLatestPlanBegin($editing['userId'], $ct); $userPlans[$ct]['expiry'] = $creditslib->getPlanExpiry($editing['userId'], $ct); } $smarty->assign('userPlans', $userPlans); $credits = $creditslib->getRawCredits($editing['userId']); $smarty->assign('credits', $credits); $smarty->assign('editing', $editing); // Get usage information // date values if (isset($_REQUEST['startDate_Year']) || isset($_REQUEST['endDate_Year'])) { $smarty->assign( 'startDate', $tikilib->make_time(0, 0, 0, $_REQUEST['startDate_Month'], $_REQUEST['startDate_Day'], $_REQUEST['startDate_Year']) ); $smarty->assign( 'endDate', $tikilib->make_time(23, 59, 59, $_REQUEST['endDate_Month'], $_REQUEST['endDate_Day'], $_REQUEST['endDate_Year']) ); $start_date = $_REQUEST['startDate_Year'] . '-' . $_REQUEST['startDate_Month'] . '-' . $_REQUEST['startDate_Day']; $end_date = $_REQUEST['endDate_Year'] . '-' . $_REQUEST['endDate_Month'] . '-' . $_REQUEST['endDate_Day'] . ' 23:59:59'; } else { $start_date = $tikilib->now - 3600 * 24 * 30; $smarty->assign('startDate', $start_date); $end_date = date('Y-m-d 23:59:59'); } $req_type = $_REQUEST['action_type']; $smarty->assign('act_type', $req_type); $consumption_data = $creditslib->getCreditsUsage($editing['userId'], $req_type, $start_date, $end_date); $smarty->assign('consumption_data', $consumption_data); if ( isset( $_POST['save'], $_POST['credits'] ) ) { foreach ( $_POST['credits'] as $key => $values ) { if ( ! isset( $credits[$key] ) ) die('Mismatch'); $same = true; $current = $credits[$key]; foreach ( $current as $field => $value ) if ( $field != 'creditId' && $value != $values[$field] ) { $same = false; break; } if ( ! $same ) { $creditslib->replaceCredit( $key, $values['credit_type'], $values['used_amount'], $values['total_amount'], $values['creation_date'], $values['expiration_date'] ); } } if ( !empty($_POST['credit_type']) && !empty( $_POST['total_amount']) && in_array($_POST['credit_type'], array_keys($creditTypes)) ) { $creditslib->addCredits( $editing['userId'], $_POST['credit_type'], $_POST['total_amount'], $_POST['expiration_date'], $_POST['creation_date'] ); } header('Location: tiki-admin_credits.php?userfilter=' . urlencode($_REQUEST['userfilter'])); exit; } if ( !empty($_POST['credit_type']) && !empty($_POST['total_amount']) ) { $creditslib->addCredits( $editing['userId'], $_POST['credit_type'], $_POST['total_amount'], $_POST['expiration_date'], $_POST['creation_date'] ); header('Location: tiki-admin_credits.php?userfilter=' . urlencode($_REQUEST['userfilter'])); exit; } if ( isset($_POST['confirm'], $_POST['delete']) ) { foreach ( $_POST['delete'] as $creditId ) if ( isset($credits[$creditId]) ) $creditslib->removeCreditBlock($creditId); header('Location: tiki-admin_credits.php?userfilter=' . urlencode($_REQUEST['userfilter'])); exit; } } } $smarty->assign('mid', 'tiki-admin_credits.tpl'); $smarty->display('tiki.tpl');