Gregwar\Formidable\Fields\Multiple::getHtml PHP Method

getHtml() public method

public getHtml ( )
    public function getHtml()
    {
        $js = $this->needJs();
        for ($i = 0; $i < $this->minEntries; $i++) {
            $this->getForm($i);
        }
        $id = 'multiple' . uniqid(time() . mt_rand());
        $prototype = new DataForm($this->parserData, $this->language);
        $html = '<div class="multiple">' . "\n";
        $html .= '<div id="' . $id . '" class="multiple-forms">' . "\n";
        foreach ($this->forms as $index => $form) {
            $fid = 'multiple' . uniqid(time() . mt_rand());
            $html .= '<div class="multiple-element" id="' . $fid . '"/>';
            $html .= $this->getHtmlOfForm($form, $index);
            if ($js) {
                $html .= '<span class="multiple-remove">';
                $html .= '<a href="javascript:Formidable.removeInput(\'' . $fid . '\')">';
                $html .= $this->language->translate('remove');
                $html .= '</a><br />';
                $html .= '</span>';
            }
            $html .= '</div>';
        }
        $html .= '</div>' . "\n";
        $html .= '<div class="multiple-buttons">';
        if ($js) {
            $html .= '<script type="text/javascript">';
            $html .= 'var ' . $id . '_code = ';
            $html .= json_encode($this->getHtmlOfForm($prototype, '{number}'));
            $html .= ";\n";
            $html .= 'Formidable.multiple["' . $id . '"] = ' . count($this->forms) . ";\n";
            $html .= '</script>';
            $html .= '<a href="javascript:Formidable.addInput(\'' . $id . '\', ' . $id . '_code);">';
            $html .= $this->language->translate('add');
            $html .= '</a>';
        }
        $html .= '</div>';
        $html .= '</div>' . "\n";
        return $html;
    }