public static function keepValues(array &$itemData, array $fields, array $extraValues = array(), $data = null)
{
if (is_null($data)) {
$data = $_POST;
}
if (empty($data)) {
return;
}
foreach ($fields as $field) {
if ($field['type'] != self::PICTURES && $field['type'] != self::IMAGE) {
$fieldName = $field['name'];
if (isset($data[$fieldName]) && $data[$fieldName]) {
$itemData[$fieldName] = in_array($field['type'], array(self::CHECKBOX)) ? implode(',', $data[$fieldName]) : $data[$fieldName];
}
}
}
if (iaCore::ACCESS_ADMIN == iaCore::instance()->getAccessType()) {
if (isset($data['featured'])) {
$itemData['featured'] = $data['featured'];
$itemData['featured_end'] = date(iaDb::DATETIME_SHORT_FORMAT, strtotime($data['featured_end']));
}
if (isset($data['sponsored'])) {
$itemData['sponsored'] = $data['sponsored'];
if (isset($data['sponsored_end'])) {
$itemData['sponsored_end'] = date(iaDb::DATETIME_SHORT_FORMAT, strtotime($data['sponsored_end']));
}
}
empty($data['date_added']) || ($itemData['date_added'] = iaSanitize::html($data['date_added']));
empty($data['status']) || ($itemData['status'] = iaSanitize::html($data['status']));
empty($data['owner']) || ($itemData['owner'] = iaSanitize::html($data['owner']));
}
if ($extraValues) {
$itemData = array_merge($itemData, $extraValues);
}
}