function nexlistShowDefinitions($plugin = '', $category = '') { global $_USER, $_CONF, $_TABLES, $actionurl; $p = new Template($_CONF['path_layout'] . 'nexlist'); $p->set_file(array('page' => 'viewdefinitions.thtml', 'javascript' => 'javascript/definitions.thtml', 'def_rec' => 'definition_record.thtml', 'fields' => 'definition_fields.thtml', 'field_rec' => 'definition_field_record.thtml')); $p->set_var('actionurl', $actionurl); $p->set_var('LANG_DELCONFIRM', 'Are you sure you want to delete this definition?'); if (!SEC_hasRights('nexlist.edit')) { $p->set_var('hide_adddef', 'none'); } if ($GLOBALS['errmsg'] != '') { $p->set_var('error_msg', $GLOBALS['errmsg']); } else { $p->set_var('hide_errormsg', 'none'); } $linkoptions = ''; $imgset = $_CONF['layout_url'] . '/nexlist/images/admin/'; $view_definition_icon = $imgset . 'view.gif'; $edit_definition_icon = $imgset . 'edit.gif'; $del_definition_icon = $imgset . 'delete.gif'; $copy_definition_icon = $imgset . 'copy.gif'; $editDefLink = '<a id="edefinition_%s" href="#" onClick="return false;"><img src="' . $imgset . 'edit.gif" border="0" TITLE="Edit Definition"></a>'; $copyDefLink = '<a href="' . $actionurl . '?op=copy_def&listid=%s"><img src="' . $copy_definition_icon . '" border="0" TITLE="Copy Definition"></a>'; $delDefLink = '<a href="' . $actionurl . '?op=delete_def&listid=%s"><img src="' . $del_definition_icon . '" border="0" TITLE="Delete Definition"></a>'; $sql = "SELECT * FROM {$_TABLES['nexlist']} "; if ($plugin != '') { $sql .= " WHERE plugin='{$plugin}' "; $p->set_var('show_plugin', 'none'); $p->set_var('pluginmode', $plugin); $linkoptions = "&pluginmode={$plugin}"; if ($category != '') { $sql .= "AND category='{$category}'"; $p->set_var('show_category', 'none'); $p->set_var('new_category', $category); $p->set_var('catmode', $category); $linkoptions .= "&catmode={$category}"; } } elseif ($category != '') { $sql .= "WHERE category='{$category}'"; $p->set_var('show_category', 'none'); $p->set_var('new_category', $category); $p->set_var('catmode', $category); $linkoptions = "&catmode={$category}"; } $chk_editperms = true; if (!SEC_inGroup('Root', $uid)) { $GROUPS = SEC_getUserGroups($_USER['uid']); if ($plugin != '') { $sql .= ' AND '; } else { $sql .= ' WHERE '; } $sql .= "view_perms IN (" . implode(',', $GROUPS) . ") "; } $sql .= " ORDER BY name"; $DEF_query = DB_query($sql); $new_plugin_options = '<option value="all">All Plugins</option>'; $query = DB_query("SELECT pi_name FROM {$_TABLES['plugins']}"); while (list($pi_name) = DB_fetchArray($query)) { $new_plugin_options .= '<option value="' . $pi_name . '">' . $pi_name . '</option>'; } $p->set_var('new_editperms', COM_optionList($_TABLES['groups'], 'grp_id,grp_name')); $p->set_var('new_plugin_options', $new_plugin_options); $i = 1; $max_numfields = 0; $p->set_var('num_records', DB_numRows($DEF_query)); while ($DEF = DB_fetchArray($DEF_query)) { $plugin_options = '<option value="all">All Plugins</option>'; $query = DB_query("SELECT pi_name FROM {$_TABLES['plugins']}"); while (list($pi_name) = DB_fetchArray($query)) { if ($pi_name == $DEF['plugin']) { $plugin_options .= '<option value="' . $pi_name . '" SELECTED=selected>' . $pi_name . '</option>'; } else { $plugin_options .= '<option value="' . $pi_name . '">' . $pi_name . '</option>'; } } $p->set_var('rowid', $i); $p->set_var('cssid', $i % 2 + 1); $p->set_var('definition_id', $DEF['id']); $p->set_var('definition_name', $DEF['name']); $p->set_var('plugin', $DEF['plugin']); $p->set_var('plugin_options', $plugin_options); $p->set_var('category', $DEF['category']); $p->set_var('description', nl2br($DEF['description'])); $view_definition_url = $actionurl . '?op=list_def&listid=' . $DEF['id']; $p->set_var('view_definition_url', $view_definition_url . $linkoptions); $p->set_var('view_definition_icon', $view_definition_icon); if (SEC_inGroup($DEF['edit_perms'])) { $p->set_var('editperms_link', sprintf($editDefLink, $i)); $p->set_var('copyperms_link', sprintf($copyDefLink, $DEF['id'])); $p->set_var('delperms_link', sprintf($delDefLink, $DEF['id'])); $p->set_var('edit_description', $DEF['description']); $p->set_var('viewperms', COM_optionList($_TABLES['groups'], 'grp_id,grp_name', $DEF['view_perms'])); $p->set_var('editperms', COM_optionList($_TABLES['groups'], 'grp_id,grp_name', $DEF['edit_perms'])); $p->set_var('editdef_link', '<a href="#" onClick="editDefinition(' . $i . ');return false;">Edit Details</a>'); } else { $p->set_var('editperms_link', ''); $p->set_var('copyperms_link', ''); $p->set_var('delperms_link', ''); $p->set_var('editdef_link', ''); } $sql = "SELECT * FROM {$_TABLES['nexlistfields']} WHERE lid='{$DEF['id']}' ORDER BY id"; $FLD_query = DB_Query($sql); $numfields = DB_numrows($FLD_query); $max_numfields = $numfields > $max_numfields ? $numfields : $max_numfields; if ($numfields > 0) { $j = 1; $p->set_var('show_fields', ''); $p->set_var('num_fields', $numfields); while ($FLD = DB_fetchArray($FLD_query, false)) { $edit_link = " [<a href=\"#\" onClick='editListField({$i},{$j});return false;'>Edit</a> ]"; $del_link = " [<a href=\"#\" onClick='ajaxUpdateDefinition(\"deleteField\",{$i},{$j});'\">Delete</a> ]"; $p->set_var('field_recid', $FLD['id']); $p->set_var('field_name', $FLD['fieldname']); $p->set_var('field_value', $FLD['value_by_function']); $p->set_var('field_width', $FLD['width']); $p->set_var('field_id', $j); if ($FLD['predefined_function'] == 1) { $checked = 'CHECKED'; $display_ftext = 'none'; $display_fddown = ''; $p->set_var('function_dropdown_options', nexlist_getCustomListFunctionOptions($FLD['value_by_function'])); } else { $checked = ''; $display_ftext = ''; $display_fddown = 'none'; $p->set_var('function_dropdown_options', nexlist_getCustomListFunctionOptions()); } $p->set_var('checked', $checked); $p->set_var('display_ftext', $display_ftext); $p->set_var('display_fddown', $display_fddown); $p->set_var('edit_link', $edit_link); $p->set_var('delete_link', $del_link); if ($j == 1) { $p->parse('definition_field_records', 'field_rec'); } else { $p->parse('definition_field_records', 'field_rec', true); } $j++; } $p->parse('definition_fields', 'fields'); } else { $p->set_var('show_fields', 'none'); $p->set_var('definition_field_records', ''); $p->parse('definition_fields', 'fields'); } $p->parse('definition_records', 'def_rec', true); $i++; } $p->set_var('max_numfields', $max_numfields); $p->parse('javascript_code', 'javascript'); $p->parse('output', 'page'); return $p->finish($p->get_var('output')); }
function generatenexlistFieldHTML($did, $row) { global $_CONF, $_TABLES; $p = new Template($_CONF['path_layout'] . 'nexlist'); $p->set_file(array('fields' => 'definition_fields.thtml', 'field_rec' => 'definition_field_record.thtml')); $p->set_var('definition_id', $did); $p->set_var('rowid', $row); $sql = "SELECT * FROM {$_TABLES['nexlistfields']} WHERE lid='{$did}' ORDER BY id"; $FLD_query = DB_Query($sql); $numfields = DB_numrows($FLD_query); if ($numfields > 0) { $j = 1; $p->set_var('show_fields', ''); while ($FLD = DB_fetchArray($FLD_query, false)) { $edit_link = " [<a href=\"#\" onClick='editListField({$row},{$j});'>Edit</a> ]"; $del_link = " [<a href=\"#\" onClick='ajaxUpdateDefinition(\"deleteField\",{$row},{$j});'\">Delete</a> ]"; $p->set_var('field_recid', $FLD['id']); $p->set_var('field_name', $FLD['fieldname']); $p->set_var('field_value', $FLD['value_by_function']); $p->set_var('field_width', $FLD['width']); $p->set_var('field_id', $j); $p->set_var('edit_link', $edit_link); $p->set_var('delete_link', $del_link); if ($FLD['predefined_function'] == 1) { $checked = 'CHECKED'; $display_ftext = 'none'; $display_fddown = ''; $p->set_var('function_dropdown_options', nexlist_getCustomListFunctionOptions($FLD['value_by_function'])); } else { $checked = ''; $display_ftext = ''; $display_fddown = 'none'; $p->set_var('function_dropdown_options', nexlist_getCustomListFunctionOptions()); } $p->set_var('checked', $checked); $p->set_var('display_ftext', $display_ftext); $p->set_var('display_fddown', $display_fddown); if ($j == 1) { $p->parse('definition_field_records', 'field_rec'); } else { $p->parse('definition_field_records', 'field_rec', true); } $j++; } $p->parse('definition_fields', 'fields'); } else { $p->set_var('show_fields', 'none'); $p->set_var('definition_field_records', ''); } $p->parse('output', 'fields'); $html = $p->finish($p->get_var('output')); $html = htmlentities($html); return $html; }