<?php
/*********************************************************************************
** The contents of this file are subject to the vtiger CRM Public License Version 1.0
 * ("License"); You may not use this file except in compliance with the License
 * The Original Code is:  vtiger CRM Open Source
 * The Initial Developer of the Original Code is vtiger.
 * Portions created by vtiger are Copyright (C) vtiger.
 * All Rights Reserved.
*
 ********************************************************************************/
require_once('modules/Reports/Reports.php');
require_once('include/logging.php');
require_once('include/database/PearDatabase.php');

require("user_privileges/user_privileges_".$current_user->id.".php");
global $current_user,$adb,$is_admin;

if(isset($_REQUEST['idlist']) && $_REQUEST['idlist']!= '')
{
	$id_array = Array();
	$id_array = explode(':',$_REQUEST['idlist']);
	
	$query = $adb->pquery("select userid from vtiger_user2role inner join vtiger_users on vtiger_users.id=vtiger_user2role.userid inner join vtiger_role on vtiger_role.roleid=vtiger_user2role.roleid where vtiger_role.parentrole like '".$current_user_parent_role_seq."::%'",array());
	$subordinate_users = Array();
	for($i=0;$i<$adb->num_rows($query);$i++){
		$subordinate_users[] = $adb->query_result($query,$i,'userid'); 
	}

	for($i=0;$i<count($id_array)-1;$i++)
	{
		$own_query = $adb->pquery("SELECT reportname,owner FROM vtiger_report WHERE reportid=?",array($id_array[$i]));
		$owner = $adb->query_result($own_query,0,"owner");
		if($is_admin==true || in_array($owner,$subordinate_users) || $owner==$current_user->id){
			DeleteReport($id_array[$i]);	
		} else {
			$del_failed []= $adb->query_result($own_query,0,"reportname");
		}
	}
	
	if(!empty($del_failed))
		header("Location: index.php?action=ReportsAjax&file=ListView&mode=ajax&module=Reports&del_denied=".implode(",",$del_failed));
	else
		header("Location: index.php?action=ReportsAjax&file=ListView&mode=ajax&module=Reports");
}elseif(isset($_REQUEST['record']) && $_REQUEST['record']!= '')
{
	$id = vtlib_purify($_REQUEST["record"]);
	DeleteReport($id);	
	header("Location: index.php?action=ReportsAjax&file=ListView&mode=ajaxdelete&module=Reports");
}

/** To Delete a Report 
  * @param $reportid -- The report id
  * @returns nothing
  */
       
function DeleteReport($reportid)
{
	global $adb;
	$idelreportsql = "delete from vtiger_selectquery where queryid=?";
	$idelreportsqlresult = $adb->pquery($idelreportsql, array($reportid));

	$ireportsql = "delete from vtiger_report where reportid=?";
    $ireportsqlresult = $adb->pquery($ireportsql, array($reportid));

	$reportsql = 'DELETE FROM vtiger_scheduled_reports WHERE reportid=?';
	$adb->pquery($reportsql, array($reportid));

/******************** Mnolithic Phase 6 Customization****************/

    $query = "SELECT * FROM vtiger_homereportchart WHERE reportid=?";
    $result =$adb->pquery($query,array($reportid));
    $num_rows = $adb->num_rows($result);
    if($num_rows){
        for($i=0;$i<$num_rows;$i++){
            $stuffid = $adb->query_result($result,$i,'stuffid');
            $delHomeSql="delete from vtiger_homestuff where stuffid=?";
            $delResult=$adb->pquery($delHomeSql, array($stuffid));
        }
    }

    /*================ End of Customization =========================*/
}
?>
