Piwik\Settings\Storage\Backend\SitesTable::save PHP Method

save() public method

Saves (persists) the current setting values in the database.
public save ( $values )
    public function save($values)
    {
        $model = $this->getModel();
        foreach ($values as $key => $value) {
            if (!in_array($key, $this->allowedNames)) {
                unset($values[$key]);
                continue;
            }
            if (is_array($value) && in_array($key, $this->commaSeparatedArrayFields)) {
                $values[$key] = implode(',', $value);
            } elseif (is_bool($value)) {
                $values[$key] = (int) $value;
            }
        }
        if (!empty($values['urls'])) {
            $urls = array_unique($values['urls']);
            $values['main_url'] = array_shift($urls);
            $model->deleteSiteAliasUrls($this->idSite);
            foreach ($urls as $url) {
                $model->insertSiteUrl($this->idSite, $url);
            }
        }
        unset($values['urls']);
        $model->updateSite($values, $this->idSite);
        Site::clearCacheForSite($this->idSite);
    }