Esempio n. 1
0
/**
 * Retrieves the value of the calendar as a unix timestamp
 *
 * @param Pieform $form    The form the element is attached to
 * @param array   $element The element to get the value for
 * @return int             The unix timestamp represented by the calendar
 */
function pieform_element_calendar_get_value(Pieform $form, $element)
{
    $name = $element['name'];
    $global = $form->get_property('method') == 'get' ? $_GET : $_POST;
    if (isset($element['value'])) {
        return $element['value'];
    }
    if ($form->is_submitted() && isset($global[$name])) {
        if (trim($global[$name]) == '') {
            return null;
        }
        $value = pieform_element_calendar_convert_to_epoch($global[$name]);
        if ($value === false) {
            $form->set_error($name, $form->i18n('element', 'calendar', 'invalidvalue', $element));
            return null;
        }
        return $value;
    }
    if (isset($element['defaultvalue'])) {
        return $element['defaultvalue'];
    }
    return null;
}
Esempio n. 2
0
function pieform_element_viewacl_get_value(Pieform $form, $element)
{
    $values = null;
    $global = $form->get_property('method') == 'get' ? $_GET : $_POST;
    if (isset($element['value'])) {
        $values = $element['value'];
    } else {
        if (isset($global[$element['name']])) {
            $value = $global[$element['name']];
            $values = $value;
        } else {
            if (isset($element['defaultvalue'])) {
                $values = $element['defaultvalue'];
            }
        }
    }
    // Convert dates to epochs
    if ($form->is_submitted() && $values) {
        foreach ($values as &$value) {
            if (!empty($value['startdate'])) {
                $value['startdate'] = pieform_element_calendar_convert_to_epoch($value['startdate']);
            }
            if (!empty($value['stopdate'])) {
                $value['stopdate'] = pieform_element_calendar_convert_to_epoch($value['stopdate']);
            }
        }
    }
    return $values;
}