uMethod == "get") { /* Display form */ $sData = array( "contents" => NewTemplater::Render("nodes/create", $locale->strings, array()) ); } elseif($router->uMethod == "post") { /* Process form */ $sErrors = array(); $sErrorFields = array(); if(empty($_POST['name'])) { $sErrors[] = "You must enter a name for the new node. This name does not have to be unique."; $sErrorFields[] = "name"; } if(empty($sErrors)) { $uNodeId = generate_uuid(); $sNode = new Node(); $sNode->uId = $uNodeId; $sNode->uName = $_POST['name']; $sNode->uNotes = $_POST['notes']; $sNode->uTypeId = ""; $sNode->uParentRevisionId = ""; $sNode->uFirstRevisionId = $uNodeId; $sNode->uUserId = 0; $sNode->uCreationDate = time(); $sNode->uLatestRevision = true; $sNode->InsertIntoDatabase(); /* Insert properties, if any */ foreach(array_combine($_POST['property_name'], $_POST['property_value']) as $property_name => $property_value) { if(!empty($property_name)) { $uPropertyId = generate_uuid(); $sProperty = new Property(); $sProperty->uId = $uPropertyId; $sProperty->uName = $property_name; $sProperty->uValue = $property_value; $sProperty->uSource = ""; $sProperty->uTypeId = ""; $sProperty->uParentRevisionId = ""; $sProperty->uFirstRevisionId = $uPropertyId; $sProperty->uNodeId = $uNodeId; $sProperty->uRelationshipId = ""; $sProperty->uReliability = 1; /* Normal */ $sProperty->uCreationDate = time(); $sProperty->uLatestRevision = true; $sProperty->InsertIntoDatabase(); } } $sData = array( "result" => "success", "message" => "Node '" . htmlspecialchars($_POST['name']) . "' created.", "node_id" => $uNodeId ); } else { $sErrorList = ""; foreach($sErrors as $sError) { $sErrorList .= "
  • {$sError}
  • "; } $sData = array( "result" => "error", "message" => "One or more form fields were not filled in correctly: ", "errorfields" => $sErrorFields ); } }