- Timestamp:
- Dec 23, 2015 7:58:23 PM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/bin/module_maker/module.cli.php
r533 r556 36 36 37 37 $op = null; 38 $valid_ops = array('clean', 'var', 'test' );38 $valid_ops = array('clean', 'var', 'test', 'admin', 'public'); 39 39 40 40 // Test for arguments. … … 43 43 $module_name_plural = $_SERVER['argv'][3]; 44 44 } else { 45 die(basename($_SERVER['argv'][0]) . " Error: invalid arguments. Try like this: 46 47 " . basename($_SERVER['argv'][0]) . " site_directory name_singular name_plural [operation] 45 die(basename($_SERVER['argv'][0]) . " error: missing arguments. 46 47 Usage: " . basename($_SERVER['argv'][0]) . " SITE_DIRECTORY NAME_SINGULAR NAME_PLURAL OPERATION 48 49 Example: export DB_NAME=mydb; " . basename($_SERVER['argv'][0]) . " . order orders admin 48 50 49 51 Valid operations include: " . join(', ', $valid_ops) . " 50 52 51 53 The following files will be generated by this script: 52 <site_directory>/admin/nameplural.php 53 <site_directory>/admin/_templates/namesingular_list.ihtml 54 <site_directory>/admin/_templates/namesingular_form.ihtml 55 <site_directory>/html/nameplural.php 56 <site_directory>/html/_templates/namesingular_list.ihtml 57 <site_directory>/html/_templates/namesingular.ihtml 54 55 âadminâ operation: 56 SITE_DIRECTORY/admin/nameplural.php 57 SITE_DIRECTORY/admin/_templates/namesingular_list.ihtml 58 SITE_DIRECTORY/admin/_templates/namesingular_form.ihtml 59 60 âpublicâ operation: 61 SITE_DIRECTORY/html/nameplural.php 62 SITE_DIRECTORY/html/_templates/namesingular_list.ihtml 63 SITE_DIRECTORY/html/_templates/namesingular.ihtml 58 64 59 65 "); 60 66 } 61 67 62 // Test for operation. 63 if (isset($_SERVER['argv'][4])) { 64 // Optional fourth arg is op. 65 $op = $_SERVER['argv'][4]; 66 // Make sure op is valid. 67 if (!in_array($op, $valid_ops)) { 68 die(basename($_SERVER['argv'][0]) . " Warning: Operation '$op' is not something I know how to do Please select one of: " . join(", ", $valid_ops) . "\n"); 69 } 68 // Test for valid operation. 69 $op = $_SERVER['argv'][4]; 70 // Make sure op is valid. 71 if (!in_array($op, $valid_ops)) { 72 die(basename($_SERVER['argv'][0]) . " Warning: Operation '$op' is not something I know how to do Please select one of: " . join(", ", $valid_ops) . "\n"); 70 73 } 71 74 … … 74 77 echo "RUNNING MODULE MAKER IN TEST MODE.\n\n"; 75 78 break; 76 default : 77 79 case 'admin' : 80 case 'public' : 81 echo "Generating only $op filesâŠ\n\n"; 82 break; 78 83 } 79 84 … … 134 139 135 140 // Ensure skel files exist. 136 if ( 137 !file_exists("$skel_dir/admin.php") || 138 !file_exists("$skel_dir/public.php") || 139 !file_exists("$skel_dir/public.ihtml") || 140 !file_exists("$skel_dir/public_list.ihtml") 141 ) { 142 die(basename($_SERVER['argv'][0]) . " Warning: one or more skeleton source files missing. Please check directory: $skel_dir.\n"); 141 if ('admin' == $op && (!file_exists("$skel_dir/admin.php") || !file_exists("$skel_dir/adm_list.ihtml") || !file_exists("$skel_dir/adm_form.ihtml"))) { 142 die(basename($_SERVER['argv'][0]) . " Warning: one or more admin skeleton source files missing. Please check directory: $skel_dir.\n"); 143 } 144 if ('public' == $op && (!file_exists("$skel_dir/public.php") || !file_exists("$skel_dir/public.ihtml") || !file_exists("$skel_dir/public_list.ihtml"))) { 145 die(basename($_SERVER['argv'][0]) . " Warning: one or more public skeleton source files missing. Please check directory: $skel_dir.\n"); 143 146 } 144 147 145 148 if (!isset($_SERVER['argv'][4]) || 'var' != $_SERVER['argv'][4]) { 146 149 // Ensure essential directories exist, except for 'var' op. 147 if ( !is_dir("$admin_dir")) {150 if ('admin' == $op && !is_dir("$admin_dir")) { 148 151 die(basename($_SERVER['argv'][0]) . " Error: admin_dir '$admin_dir' directory not found.\n"); 149 152 } 150 if ( !is_dir("$admin_tpl_dir")) {153 if ('admin' == $op && !is_dir("$admin_tpl_dir")) { 151 154 die(basename($_SERVER['argv'][0]) . " Error: admin_tpl_dir '$admin_tpl_dir' directory not found.\n"); 152 155 } 153 if ( !is_dir("$public_dir")) {156 if ('public' == $op && !is_dir("$public_dir")) { 154 157 die(basename($_SERVER['argv'][0]) . " Error: public_dir '$public_dir' directory not found.\n"); 155 158 } 156 if ( !is_dir("$public_tpl_dir")) {159 if ('public' == $op && !is_dir("$public_tpl_dir")) { 157 160 die(basename($_SERVER['argv'][0]) . " Error: public_tpl_dir '$public_tpl_dir' directory not found.\n"); 158 161 } … … 230 233 // -------------FILES------------- 231 234 232 $skel_files['skel_admin_script'] = file_get_contents($skel_dir . '/admin.php'); 233 $skel_files['skel_admin_list_template'] = file_get_contents($skel_dir . '/adm_list.ihtml'); 234 $skel_files['skel_admin_form_template'] = file_get_contents($skel_dir . '/adm_form.ihtml'); 235 $skel_files['skel_public_script'] = file_get_contents($skel_dir . '/public.php'); 236 $skel_files['skel_public_list_template'] = file_get_contents($skel_dir . '/public_list.ihtml'); 237 $skel_files['skel_public_detail_template'] = file_get_contents($skel_dir . '/public.ihtml'); 235 switch ($op) { 236 case 'admin': 237 $skel_files['skel_admin_script'] = file_get_contents($skel_dir . '/admin.php'); 238 $skel_files['skel_admin_list_template'] = file_get_contents($skel_dir . '/adm_list.ihtml'); 239 $skel_files['skel_admin_form_template'] = file_get_contents($skel_dir . '/adm_form.ihtml'); 240 break; 241 242 case 'public': 243 $skel_files['skel_public_script'] = file_get_contents($skel_dir . '/public.php'); 244 $skel_files['skel_public_list_template'] = file_get_contents($skel_dir . '/public_list.ihtml'); 245 $skel_files['skel_public_detail_template'] = file_get_contents($skel_dir . '/public.ihtml'); 246 break; 247 } 238 248 239 249 … … 495 505 *****************************************************************************/ 496 506 497 // (1) Admin script. 498 if (file_exists("$admin_dir/$admin_script")) { 499 echo "Admin script already exists: $admin_dir/$admin_script\n"; 500 } else { 501 echo "Writing admin script: $admin_dir/$admin_script\n"; 502 if ('test' != $op) { 503 $fp = fopen("$admin_dir/$admin_script", "w"); 504 fwrite($fp, preg_replace($search, $replace, $skel_files['skel_admin_script'])); 505 fclose($fp); 506 } 507 } 508 509 // (2) Admin list template. 510 if (file_exists("$admin_tpl_dir/$admin_list_template")) { 511 echo "Admin list template already exists: $admin_tpl_dir/$admin_list_template\n"; 512 } else { 513 echo "Writing admin list template: $admin_tpl_dir/$admin_list_template\n"; 514 if ('test' != $op) { 515 $fp = fopen("$admin_tpl_dir/$admin_list_template", "w"); 516 fwrite($fp, preg_replace($search, $replace, $skel_files['skel_admin_list_template'])); 517 fclose($fp); 518 } 519 } 520 521 // (3) Admin form template. 522 if (file_exists("$admin_tpl_dir/$admin_form_template")) { 523 echo "Admin form template already exists: $admin_tpl_dir/$admin_form_template\n"; 524 } else { 525 echo "Writing admin form template: $admin_tpl_dir/$admin_form_template\n"; 526 if ('test' != $op) { 527 $fp = fopen("$admin_tpl_dir/$admin_form_template", "w"); 528 fwrite($fp, preg_replace($search, $replace, $skel_files['skel_admin_form_template'])); 529 fclose($fp); 530 } 531 } 532 533 // (4) Public script. 534 if (file_exists("$public_dir/$public_script")) { 535 echo "Public script already exists: $public_dir/$public_script\n"; 536 } else { 537 echo "Writing public script: $public_dir/$public_script\n"; 538 if ('test' != $op) { 539 $fp = fopen("$public_dir/$public_script", "w"); 540 fwrite($fp, preg_replace($search, $replace, $skel_files['skel_public_script'])); 541 fclose($fp); 542 } 543 } 544 545 // (5) Public list template. 546 if (file_exists("$public_tpl_dir/$public_list_template")) { 547 echo "Public list template already exists: $public_tpl_dir/$public_list_template\n"; 548 } else { 549 echo "Writing public list template: $public_tpl_dir/$public_list_template\n"; 550 if ('test' != $op) { 551 $fp = fopen("$public_tpl_dir/$public_list_template", "w"); 552 fwrite($fp, preg_replace($search, $replace, $skel_files['skel_public_list_template'])); 553 fclose($fp); 554 } 555 } 556 557 // (6) Public detail template. 558 if (file_exists("$public_tpl_dir/$public_detail_template")) { 559 echo "Public detail template already exists: $public_tpl_dir/$public_detail_template\n"; 560 } else { 561 echo "Writing public detail template: $public_tpl_dir/$public_detail_template\n"; 562 if ('test' != $op) { 563 $fp = fopen("$public_tpl_dir/$public_detail_template", "w"); 564 fwrite($fp, preg_replace($search, $replace, $skel_files['skel_public_detail_template'])); 565 fclose($fp); 566 } 567 } 568 507 if ('admin' == $op) { 508 // (1) Admin script. 509 if (file_exists("$admin_dir/$admin_script")) { 510 echo "Admin script already exists: $admin_dir/$admin_script\n"; 511 } else { 512 echo "Writing admin script: $admin_dir/$admin_script\n"; 513 if ('test' != $op) { 514 $fp = fopen("$admin_dir/$admin_script", "w"); 515 fwrite($fp, preg_replace($search, $replace, $skel_files['skel_admin_script'])); 516 fclose($fp); 517 } 518 } 519 520 // (2) Admin list template. 521 if (file_exists("$admin_tpl_dir/$admin_list_template")) { 522 echo "Admin list template already exists: $admin_tpl_dir/$admin_list_template\n"; 523 } else { 524 echo "Writing admin list template: $admin_tpl_dir/$admin_list_template\n"; 525 if ('test' != $op) { 526 $fp = fopen("$admin_tpl_dir/$admin_list_template", "w"); 527 fwrite($fp, preg_replace($search, $replace, $skel_files['skel_admin_list_template'])); 528 fclose($fp); 529 } 530 } 531 532 // (3) Admin form template. 533 if (file_exists("$admin_tpl_dir/$admin_form_template")) { 534 echo "Admin form template already exists: $admin_tpl_dir/$admin_form_template\n"; 535 } else { 536 echo "Writing admin form template: $admin_tpl_dir/$admin_form_template\n"; 537 if ('test' != $op) { 538 $fp = fopen("$admin_tpl_dir/$admin_form_template", "w"); 539 fwrite($fp, preg_replace($search, $replace, $skel_files['skel_admin_form_template'])); 540 fclose($fp); 541 } 542 } 543 } 544 545 if ('public' == $op) { 546 // (4) Public script. 547 if (file_exists("$public_dir/$public_script")) { 548 echo "Public script already exists: $public_dir/$public_script\n"; 549 } else { 550 echo "Writing public script: $public_dir/$public_script\n"; 551 if ('test' != $op) { 552 $fp = fopen("$public_dir/$public_script", "w"); 553 fwrite($fp, preg_replace($search, $replace, $skel_files['skel_public_script'])); 554 fclose($fp); 555 } 556 } 557 558 // (5) Public list template. 559 if (file_exists("$public_tpl_dir/$public_list_template")) { 560 echo "Public list template already exists: $public_tpl_dir/$public_list_template\n"; 561 } else { 562 echo "Writing public list template: $public_tpl_dir/$public_list_template\n"; 563 if ('test' != $op) { 564 $fp = fopen("$public_tpl_dir/$public_list_template", "w"); 565 fwrite($fp, preg_replace($search, $replace, $skel_files['skel_public_list_template'])); 566 fclose($fp); 567 } 568 } 569 570 // (6) Public detail template. 571 if (file_exists("$public_tpl_dir/$public_detail_template")) { 572 echo "Public detail template already exists: $public_tpl_dir/$public_detail_template\n"; 573 } else { 574 echo "Writing public detail template: $public_tpl_dir/$public_detail_template\n"; 575 if ('test' != $op) { 576 $fp = fopen("$public_tpl_dir/$public_detail_template", "w"); 577 fwrite($fp, preg_replace($search, $replace, $skel_files['skel_public_detail_template'])); 578 fclose($fp); 579 } 580 } 581 582 } 569 583 echo "Done!\n"; 570 584
Note: See TracChangeset
for help on using the changeset viewer.