gTxt('delete')); $rs = safe_rows_start("*", "txp_form", "1 order by type asc, name asc"); if ($rs) { while ($a = nextRow($rs)){ extract($a); $editlink = ($curname!=$name) ? eLink('form','form_edit','name',$name,$name) : htmlspecialchars($name); $modbox = (!in_array($name, $essential_forms)) ? '' : sp; $out[] = tr(td($editlink).td(small($type)).td($modbox)); } $out[] = endTable(); $out[] = eInput('form').sInput('form_multi_edit'); $out[] = graf(selectInput('edit_method',$methods,'',1).sp.gTxt('selected').sp. fInput('submit','form_multi_edit',gTxt('go'),'smallerbox') , ' align="right"'); return form( join('',$out),'',"verify('".gTxt('are_you_sure')."')" ); } } // ------------------------------------------------------------- function form_multi_edit() { global $essential_forms; $method = ps('edit_method'); $forms = ps('selected_forms'); if (is_array($forms)) { if ($method == 'delete') { foreach ($forms as $name) { if (!in_array($name, $essential_forms) && form_delete($name)) { $deleted[] = $name; } } $message = gTxt('forms_deleted', array('{list}' => join(', ', $deleted))); form_edit($message); } } else { form_edit(); } } // ------------------------------------------------------------- function form_create() { form_edit(); } // ------------------------------------------------------------- function form_edit($message='') { global $step,$essential_forms; pagetop(gTxt('edit_forms'),$message); extract(gpsa(array('Form','name','type'))); $name = trim(preg_replace('/[<>&"\']/', '', $name)); if ($step=='form_create') { $inputs = fInput('submit','savenew',gTxt('save_new'),'publish'). eInput("form").sInput('form_save'); } else { $name = (!$name or $step=='form_delete') ? 'default' : $name; $rs = safe_row("*", "txp_form", "name='".doSlash($name)."'"); // if ($rs) { extract($rs); $inputs = fInput('submit','save',gTxt('save'),'publish'). eInput("form").sInput('form_save').hInput('oldname',$name); } } if (!in_array($name, $essential_forms)) $changename = graf(gTxt('form_name').br.fInput('text','name',$name,'edit','','',15)); else $changename = graf(gTxt('form_name').br.tag($name, 'em').hInput('name',$name)); $out = startTable('edit'). tr( tdtl( hed(gTxt('tagbuilder'), 2). hed(''.gTxt('articles').''. sp.popHelp('form_articles'), 3, ' class="plain"'). '
'.popTagLinks('article').'
'. hed(''.gTxt('links').''. sp.popHelp('form_place_link'), 3, ' class="plain"'). ''. hed(''.gTxt('comments').''. sp.popHelp('form_comments'), 3, ' class="plain"'). ''. hed(''.gTxt('comment_details').''. sp.popHelp('form_comment_details'), 3, ' class="plain"'). ''. hed(''.gTxt('comment_form').''. sp.popHelp('form_comment_form'), 3, ' class="plain"'). ''. hed(''.gTxt('search_results_form').''. sp.popHelp('form_search_results'), 3, ' class="plain"'). ''. hed(''.gTxt('file_download_tags').''. sp.popHelp('form_file_download_tags'), 3, ' class="plain"'). ''. hed(''.gTxt('category_tags').''. sp.popHelp('form_category_tags'), 3, ' class="plain"'). ''. hed(''.gTxt('section_tags').''. sp.popHelp('form_section_tags'), 3, ' class="plain"'). '' ). tdtl( '
'. ''. $changename. graf(gTxt('form_type').br. formtypes($type)). graf(gTxt('only_articles_can_be_previewed')). fInput('submit','form_preview',gTxt('preview'),'smallbox'). graf($inputs). '
' ). tdtl( form_list($name) ) ).endTable(). n.''; echo $out; } // ------------------------------------------------------------- function form_save() { global $vars, $step, $essential_forms; extract(doSlash(gpsa($vars))); $name = doSlash(trim(preg_replace('/[<>&"\']/', '', gps('name')))); if (!$name) { $step = 'form_create'; $message = gTxt('form_name_invalid'); return form_edit($message); } if (!in_array($type, array('article','category','comment','file','link','misc','section'))) { $step = 'form_create'; $message = gTxt('form_type_missing'); return form_edit($message); } if ($savenew) { $exists = safe_field('name', 'txp_form', "name = '$name'"); if ($exists) { $step = 'form_create'; $message = gTxt('form_already_exists', array('{name}' => $name)); return form_edit($message); } safe_insert('txp_form', "Form = '$Form', type = '$type', name = '$name'"); update_lastmod(); $message = gTxt('form_created', array('{name}' => $name)); return form_edit($message); } safe_update('txp_form', "Form = '$Form', type = '$type', name = '$name'", "name = '$oldname'"); update_lastmod(); $message = gTxt('form_updated', array('{name}' => $name)); form_edit($message); } // ------------------------------------------------------------- function form_delete($name) { global $essential_forms; if (in_array($name, $essential_forms)) return false; $name = doSlash($name); if (safe_delete("txp_form","name='$name'")) { return true; } return false; } // ------------------------------------------------------------- function formTypes($type) { $types = array(''=>'','article'=>'article','category'=>'category','comment'=>'comment', 'file'=>'file','link'=>'link','misc'=>'misc','section'=>'section'); return selectInput('type',$types,$type); } ?>