protected function process_form_data(array $form) {

        $count = count($form); // number of form field values

        if ($count % 5) {
            // we must get five fields per emoticon object
            return false;
        }

        $emoticons = array();
        for ($i = 0; $i < $count / 5; $i++) {
            $emoticon                   = new stdClass();
            $emoticon->text             = clean_param(trim($form['text'.$i]), PARAM_NOTAGS);
            $emoticon->imagename        = clean_param(trim($form['imagename'.$i]), PARAM_PATH);
            $emoticon->imagecomponent   = clean_param(trim($form['imagecomponent'.$i]), PARAM_COMPONENT);
            $emoticon->altidentifier    = clean_param(trim($form['altidentifier'.$i]), PARAM_STRINGID);
            $emoticon->altcomponent     = clean_param(trim($form['altcomponent'.$i]), PARAM_COMPONENT);

            if (strpos($emoticon->text, ':/') !== false or strpos($emoticon->text, '//') !== false) {
                // prevent from breaking http://url.addresses by accident
                $emoticon->text = '';
            }

            if (strlen($emoticon->text) < 2) {
                // do not allow single character emoticons
                $emoticon->text = '';
            }

            if (preg_match('/^[a-zA-Z]+[a-zA-Z0-9]*$/', $emoticon->text)) {
                // emoticon text must contain some non-alphanumeric character to prevent
                // breaking HTML tags
                $emoticon->text = '';
            }

            if ($emoticon->text !== '' and $emoticon->imagename !== '' and $emoticon->imagecomponent !== '') {
                $emoticons[] = $emoticon;
            }
        }
        return $emoticons;
    }
protected function process_form_data(array $form) {

        $count = count($form); // number of form field values

        if ($count % 5) {
            // we must get five fields per emoticon object
            return false;
        }

        $emoticons = array();
        for ($i = 0; $i < $count / 5; $i++) {
            $emoticon                   = new stdClass();
            $emoticon->text             = clean_param(trim($form['text'.$i]), PARAM_NOTAGS);
            $emoticon->imagename        = clean_param(trim($form['imagename'.$i]), PARAM_PATH);
            $emoticon->imagecomponent   = clean_param(trim($form['imagecomponent'.$i]), PARAM_COMPONENT);
            $emoticon->altidentifier    = clean_param(trim($form['altidentifier'.$i]), PARAM_STRINGID);
            $emoticon->altcomponent     = clean_param(trim($form['altcomponent'.$i]), PARAM_COMPONENT);

            if (strpos($emoticon->text, ':/') !== false or strpos($emoticon->text, '//') !== false) {
                // prevent from breaking http://url.addresses by accident
                $emoticon->text = '';
            }

            if (strlen($emoticon->text) < 2) {
                // do not allow single character emoticons
                $emoticon->text = '';
            }

            if (preg_match('/^[a-zA-Z]+[a-zA-Z0-9]*$/', $emoticon->text)) {
                // emoticon text must contain some non-alphanumeric character to prevent
                // breaking HTML tags
                $emoticon->text = '';
            }

            if ($emoticon->text !== '' and $emoticon->imagename !== '' and $emoticon->imagecomponent !== '') {
                $emoticons[] = $emoticon;
            }
        }
        return $emoticons;
    }
protected function process_form_data ( array $ form ) { $ count = count ( $ form ) ; // number of form field values if ( $ count % 5 ) { // we must get five fields per emoticon object return false ; } $ emoticons = array ( ) ; for ( $ i = 0 ; $ i < $ count / 5 ; $ i ++ ) { $ emoticon = new stdClass ( ) ; $ emoticon -> text = clean_param ( trim ( $ form [ 'text' . $ i ] ) , PARAM_NOTAGS ) ; $ emoticon -> imagename = clean_param ( trim ( $ form [ 'imagename' . $ i ] ) , PARAM_PATH ) ; $ emoticon -> imagecomponent = clean_param ( trim ( $ form [ 'imagecomponent' . $ i ] ) , PARAM_COMPONENT ) ; $ emoticon -> altidentifier = clean_param ( trim ( $ form [ 'altidentifier' . $ i ] ) , PARAM_STRINGID ) ; $ emoticon -> altcomponent = clean_param ( trim ( $ form [ 'altcomponent' . $ i ] ) , PARAM_COMPONENT ) ; if ( strpos ( $ emoticon -> text , ':/' ) !== false or strpos ( $ emoticon -> text , '//' ) !== false ) { // prevent from breaking http://url.addresses by accident $ emoticon -> text = '' ; } if ( strlen ( $ emoticon -> text ) < 2 ) { // do not allow single character emoticons $ emoticon -> text = '' ; } if ( preg_match ( '/^[a-zA-Z]+[a-zA-Z0-9]*$/' , $ emoticon -> text ) ) { // emoticon text must contain some non-alphanumeric character to prevent // breaking HTML tags $ emoticon -> text = '' ; } if ( $ emoticon -> text !== '' and $ emoticon -> imagename !== '' and $ emoticon -> imagecomponent !== '' ) { $ emoticons [ ] = $ emoticon ; } } return $ emoticons ; }
Converts the data from admin settings form into an array of emoticon objects

@see self::prepare_form_data()
@param array $data array of admin form fields and values
@return false|array of emoticon objects
Converts the data from admin settings form into an array of emoticon objects