+function ~form_name~_tem_sets(~php_fields~) {<!--~tem_sets start~-->
+ tem_set('~name~', $~name~);<!--~end~-->
+}
+<!--~opt_listing_2 start~-->
+# You may pass a "where clause" for the db query.
+function ~form_name~_display_listing($where = 'order by ~always_field~ limit 100') {
+ $rows = db_get_rows('~form_name~', 'id,~always_field~', $where);
+ if($rows == false || count($rows) == 0) {
+ tem_show('empty_listing');
+ tem_show('listings');
+ return false;
+ }
+
+ foreach($rows as $row) {
+ list($id, $~always_field~) = $row;
+ tem_set('id', $id);
+ if($~always_field~ == '') {
+ $~always_field~ = '--';
+ }
+ tem_set('~always_field~', $~always_field~);
+ tem_show('listing_row');
+ }
+ tem_show('populated_listing');
+ tem_show('listings');
+ return true;
+}
+<!--~end~-->
+function ~form_name~_main() {<!--~opt_display_1 start~-->
+ if(isset($_REQUEST['~form_name~_id'])) {
+ $ret = ~form_name~_display_main();
+ if($ret) {
+ return $ret;
+ }
+ tem_show('display_body');
+ } else {
+ $ret = ~form_name~_edit_main();
+ if($ret) {
+ return $ret;
+ }
+ tem_show('edit_body');
+ }
+<!--~end~--><!--~opt_display_1_else start~-->
+ $ret = _~form_name~_main();
+ if($ret) {
+ return $ret;
+ }
+<!--~end~-->
+ # sections displayed with tem_show() will be coppied to the main template if you have one.
+ tem_show('main_body');
+}<!--~opt_display_2 start~-->
+
+function ~form_name~_display_main() {
+ $id = format_int($_REQUEST['~form_name~_id']);
+ unset($_REQUEST['~form_name~_id']);
+ if(!$id) {
+ message('Error: Broken link');
+ return './~form_name~';
+ }
+ $row = db_get_row('~form_name~', ~form_name.upper~_DB_FIELDS, 'where id=%i', $id);
+ if(!$row) {
+ message('Error: ~singular.cap~ not found');
+ return './~form_name~';
+ }
+ list(~php_fields~) = $row;
+ ~form_name~_tem_sets(~php_fields~);
+ tem_set('id', $id);
+}
+
+function ~form_name~_edit_main() {<!--~end~--><!--~opt_display_2_else start~-->
+
+
+function _~form_name~_main() {<!--~end~--><!--~opt_http_pass_2 start~-->
+ # To remove password protection, just delete this block:
+ if (!isset($_SERVER['PHP_AUTH_USER']) || $_SERVER['PHP_AUTH_USER'] != AUTH_USER || $_SERVER['PHP_AUTH_PW'] != AUTH_PASS) {
+ header('WWW-Authenticate: Basic realm="' . AUTH_REALM . '"');
+ header('HTTP/1.0 401 Unauthorized');
+ echo '401 Unauthorized';
+ exit;
+ }
+<!--~end~--><!--~pulldowns start~-->
+ pulldown('~name~', array('option 1', 'option 2', 'option 3'));
+<!--~end~--><!--~opt_db_3 start~-->
+ $edit_id = format_int($_REQUEST['~form_name~_edit_id']);
+ unset($_REQUEST['~form_name~_edit_id']);