Form builder; CSS validator via csslint.

Return value

array form array.

Related topics

1 string reference to 'advagg_validator_admin_css_lint_form'
advagg_validator_menu in advagg_validator/advagg_validator.module
Implements hook_menu().

File

advagg_validator/advagg_validator.admin.inc, line 48

Code

function advagg_validator_admin_css_lint_form() {
    drupal_set_title(t('AdvAgg: CSS Validator using CSSLINT'));
    advagg_display_message_if_requirements_not_met();
    // Tell user to update library if a new version is available.
    $module_name = 'advagg_validator';
    $lib_name = 'csslint';
    list($description) = advagg_get_version_description($lib_name, $module_name, TRUE);
    $form = array();
    if (!empty($description)) {
        $form['advagg_version_msg'] = array(
            '#markup' => "<p>{$description}</p>",
        );
    }
    $form += advagg_validator_admin_form_generator('css', TRUE);
    $library = advagg_get_library('csslint', 'advagg_validator');
    if (!empty($library['installed'])) {
        $form['#attached']['libraries_load'][] = array(
            'csslint',
        );
    }
    else {
        $form['#attached']['js'] = $library['variants']['external']['files']['js'];
    }
    $form['#attached']['js'][] = array(
        'data' => drupal_get_path('module', 'advagg_validator') . '/advagg_validator.js',
        'type' => 'file',
    );
    // Comma separated code.
    // https://github.com/CSSLint/csslint/wiki/Command-line-interface#--ignore
    $ignore_list = variable_get('advagg_validator_csslint_ignore', ADVAGG_VALIDATOR_CSSLINT_IGNORE);
    if (is_array($ignore_list)) {
        $ignore_list = implode(',', $ignore_list);
    }
    $form['#attached']['js'][] = array(
        'data' => array(
            'csslint' => array(
                'ignore' => $ignore_list,
            ),
        ),
        'type' => 'setting',
    );
    return $form;
}