<?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>
 
<? } 
 
 
?>
 
 |