Location: PHPKode > scripts > Scrubs > scrubs/scrubs.php
<?php

/**
 * 
 * @version $Id$
 * @copyright 2003
 */

if ($action == "generate") {
  $path = $_REQUEST['scrubsPath'];
  include_once('lib/Dommer.php');
  include_once('lib/ClassWriter.php');
  include_once('lib/ConfigWriter.php');
	include_once('lib/Configer.php');

  $dommer = new Dommer($path . 'scrubs-config.xml');
  $document = $dommer->dominate();

  $configWriter = new ConfigWriter($document);
  $configWriter->write();

  foreach ($document as $class) {
    if ($class->tagname == "class") {
      $className = $class->get_attribute("name");
      $table = $class->get_attribute("table");

      $classWriter = new ClassWriter($className);

      $classChildren = $class->children();
      foreach($classChildren as $classChild) {
        switch ($classChild->tagname) {
          case "primaryKey":
            $field = $classChild->get_attribute("field");
            $classWriter->setProperty($field);

            break;
          case "property":
            $property = $classChild->get_attribute("name");
            $classWriter->setProperty($property);

            break;
          case "relationship":
            $type = $classChild->get_attribute("type");
            $name = $classChild->get_attribute("name");
            if ($type == "oneToMany") {
              $objectArray = $classChild->get_attribute("objectArray");
              $classWriter->setInclude($name);
              $classWriter->setRelationship($name);
              $classWriter->setObjectArray($objectArray);
            } 

            break;
        } 
      } 
      $classWriter->write();
    } 
  } 
	
	$configer = new Configer(null, true);
	$configer->setSectionValue("database", "type", "mysql");
	$configer->setSectionValue("database", "host", $_REQUEST['host']);
	$configer->setSectionValue("database", "database", $_REQUEST['db']);
	$configer->setSectionValue("database", "username", $_REQUEST['username']);
	$configer->setSectionValue("database", "password", $_REQUEST['password']);
	$configer->save();
} else {

?>
 <html>
  <head>
  	<title>Scrubs Generator</title>
  </head>
  <body>
   <form action="scrubs.php" method="POST">
   	absolute path for Scrubs directory: <input type="text" name="scrubsPath" /> (Eg. c:\apache\Scrubs\ use trailing slash)<br>
	database host: <input type="text" name="host"> <br>
	database name: <input type="text" name="db"> <br>
	database username: <input type="text" name="username"> <br>
	database password: <input type="password" name="password"> <br>
   	<input type="hidden" name="action" value="generate">
	<input type="submit" name="submit" value="Generate">
   </form>
  </body>
 </html>
<? } 

?>
Return current item: Scrubs