summaryrefslogtreecommitdiffstats
path: root/codebase/Data/CommonDataProcessor.php
blob: 8f00b94f91f41756493df67462980d0484a428bd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<?php
namespace DHTMLX\Connector\Data;

use DHTMLX\Connector\XSSFilter\ConnectorSecurity;
use DHTMLX\Connector\Tools\LogMaster;

class CommonDataProcessor extends DataProcessor{
    protected function get_post_values($ids){
        if (isset($_GET['action'])){
            $data = array();
            if (isset($_POST["id"])){
                $dataset = array();
                foreach($_POST as $key=>$value)
                    $dataset[$key] = ConnectorSecurity::filter($value);

                $data[$_POST["id"]] = $dataset;
            }
            else
                $data["dummy_id"] = $_POST;
            return $data;
        }
        return parent::get_post_values($ids);
    }

    protected function get_ids(){
        if (isset($_GET['action'])){
            if (isset($_POST["id"]))
                return array($_POST['id']);
            else
                return array("dummy_id");
        }
        return parent::get_ids();
    }

    protected function get_operation($rid){
        if (isset($_GET['action']))
            return $_GET['action'];
        return parent::get_operation($rid);
    }

    public function output_as_xml($results){
        if (isset($_GET['action'])){
            LogMaster::log("Edit operation finished",$results);
            ob_clean();
            $type = $results[0]->get_status();
            if ($type == "error" || $type == "invalid"){
                echo "false";
            } else if ($type=="insert"){
                echo "true\n".$results[0]->get_new_id();
            } else
                echo "true";
        } else
            return parent::output_as_xml($results);
    }
};