AmyController::on_collaboration_handle_transactions PHP Method

on_collaboration_handle_transactions() public method

    public function on_collaboration_handle_transactions($pars)
    {
        $colls = $pars['colls'];
        if (!is_array($colls)) {
            self::raiseError('Invalid data received.');
        }
        $response = array();
        $n = sizeof($colls);
        for ($i = 0; $i < $n; $i++) {
            $coll = explode('|', $colls[$i]);
            $document_id = Db::quote_literal($coll[0]);
            $collaborator_id = Db::quote_literal($coll[1]);
            $last_transid = Db::quote_literal($coll[2]);
            unset($coll[0]);
            unset($coll[1]);
            unset($coll[2]);
            $log = Db::quote_literal(str_replace('\\', '\\\\', implode('|', $coll)));
            $coll_response = array();
            if (false !== ($res = Db::find("SELECT * FROM amy.coll_handle_transactions({$document_id}, {$collaborator_id}, {$last_transid}, '{$log}')"))) {
                while (false !== ($r = pg_fetch_assoc($res))) {
                    $coll_response[] = $r;
                }
            } else {
                $coll_response = Db::last_error();
            }
            $response[] = array('document_id' => $document_id, 'transactions' => $coll_response);
        }
        self::setResult($response);
    }