Account::saveConfiguration PHP Method

saveConfiguration() public method

public saveConfiguration ( $data )
    public function saveConfiguration($data)
    {
        $configurationName = Utils::sanitize($data["dataSetName"]);
        $configurationID = null;
        if (array_key_exists("configurationID", $data)) {
            $configurationID = $data["configurationID"];
            unset($data["configurationID"]);
        }
        unset($data["action"]);
        unset($data["dataSetName"]);
        $content = addslashes(json_encode($data));
        $now = Utils::getCurrentDatetime();
        $nowUnixTime = Utils::convertDatetimeToTimestamp($now);
        $prefix = Core::getDbTablePrefix();
        $accountID = $this->accountID;
        // if this is a new configuration, create the main record
        if ($configurationID == null) {
            $response = Core::$db->query("\n\t\t\t\tINSERT INTO {$prefix}configurations (status, date_created, account_id)\n\t\t\t\tVALUES ('private', '{$now}', {$accountID})\n\t\t\t");
            if ($response["success"]) {
                $configurationID = mysqli_insert_id(Core::$db->getDBLink());
            } else {
                return array("success" => false, "message" => "There was a problem saving the configuration: " . $response["errorMessage"]);
            }
        }
        $response2 = Core::$db->query("\n            INSERT INTO {$prefix}configuration_history (configuration_id, last_updated, configuration_name, content)\n            VALUES ({$configurationID}, '{$now}', '" . $configurationName . "', '" . $content . "')\n        ");
        if ($response2["success"]) {
            $this->truncateDataSetHistory($configurationID);
            return array("success" => true, "message" => $configurationID, "lastUpdated" => $nowUnixTime);
        } else {
            return array("success" => false, "message" => "There was a problem saving the configuration: " . $response["errorMessage"]);
        }
    }