&"\']/', '', $newname)) ) ? $newname : $name; echo startTable('edit'). tr( tda( n.hed( gTxt('tagbuilder') , 2). n.n.hed( ''.gTxt('page_article_hed').'' , 3, ' class="plain"'). n.'
'.taglinks('page_article').'
'. n.n.hed(''.gTxt('page_article_nav_hed').'' , 3, ' class="plain"'). n.''. n.n.hed(''.gTxt('page_nav_hed').'' , 3, ' class="plain"'). n.''. n.n.hed(''.gTxt('page_xml_hed').'' , 3, ' class="plain"'). n.''. n.n.hed(''.gTxt('page_misc_hed').'' , 3, ' class="plain"'). n.''. n.n.hed(''.gTxt('page_file_hed').'' , 3, ' class="plain"'). n.'' ,' class="column"'). tda( page_edit_form($name) , ' class="column"'). tda( hed(gTxt('all_pages'), 2). page_list($name) , ' class="column"') ). endTable(); } //------------------------------------------------------------- function page_edit_form($name) { global $step; $html = safe_field('user_html','txp_page',"name='".doSlash($name)."'"); $out[] = '

'.gTxt('you_are_editing_page').sp.strong($name).br. ''.br. n.fInput('submit','save',gTxt('save'),'publish'). n.eInput('page'). n.sInput('page_save'). n.hInput('name',$name); $out[] = n.''.sp. n.fInput('text', 'newname', '', 'edit', '', '', '', '', 'copy-page'). n.fInput('submit','copy',gTxt('copy'),'smallerbox').'

'; $out[] = n.''; return form(join('',$out)); } //------------------------------------------------------------- function page_list($current) { $protected = safe_column('DISTINCT page', 'txp_section', '1=1') + array('error_default'); $rs = safe_rows_start('name', 'txp_page', "1 order by name asc"); while ($a = nextRow($rs)) { extract($a); $link = eLink('page', '', 'name', $name, $name); $dlink = !in_array($name, $protected) ? dLink('page', 'page_delete', 'name', $name) : ''; $out[] = ($current == $name) ? tr(td($name).td($dlink)) : tr(td($link).td($dlink)); } return startTable('list').join(n, $out).endTable(); } //------------------------------------------------------------- function page_delete() { $name = ps('name'); $count = safe_count('txp_section', "page = '".doSlash($name)."'"); if ($name == 'error_default') { return page_edit(); } if ($count) { $message = gTxt('page_used_by_section', array('{name}' => $name, '{count}' => $count)); } else { safe_delete('txp_page', "name = '".doSlash($name)."'"); $message = gTxt('page_deleted', array('{name}' => $name)); } page_edit($message); } // ------------------------------------------------------------- function page_save() { extract(doSlash(gpsa(array('name', 'html', 'copy')))); if ($copy) { $newname = doSlash(trim(preg_replace('/[<>&"\']/', '', gps('newname')))); if ($newname and safe_field('name', 'txp_page', "name = '$newname'")) { $message = gTxt('page_already_exists', array('{name}' => $newname)); } elseif ($newname) { safe_insert('txp_page', "name = '$newname', user_html = '$html'"); update_lastmod(); $message = gTxt('page_created', array('{name}' => $newname)); } else { $message = gTxt('page_name_invalid'); } page_edit($message); } else { safe_update('txp_page', "user_html = '$html'", "name = '$name'"); update_lastmod(); $message = gTxt('page_updated', array('{name}' => $name)); page_edit($message); } } //------------------------------------------------------------- function taglinks($type) { return popTagLinks($type); } ?>