test forum question

test forum question

by JayData

HTML

<script src="http://include.jaydata.org/1.2.7/jaydata.js"></script>

JavaScript

$data.define("Todo", {
    Id: { type: "int", key: true, computed: true },
    Task: { type: String, required: true, maxLength: 200 },
    DueDate: { type: Date },
    Completed: { type: Boolean },
    Person: { type: "Person", required: false, inverseProperty: "Todos"},
    Person__Id: { type: 'int' }
});

$data.define("Person", {
    Id: { type: "int", key: true, computed: true },
    Name: { type: String, required: true, maxLength: 200 },
    Todos: { type: Array, elementType: Todo, inverseProperty: "Person" }
});

$data.EntityContext.extend("TodoDatabase", {
    Todos: { type: $data.EntitySet, elementType: Todo },
    People: { type: $data.EntitySet, elementType: Person }
});

var global_man;
var global_man2;
var task1;
var task2;
var todoDB = new TodoDatabase("TodoDatase");

function addPeople() {
  global_man = new Person({ Name: 'Peter' });
  todoDB.People.add(global_man);
  global_man2 = new Person({ Name: 'Piper' });
  todoDB.People.add(global_man2) ;
  console.log('add People');
  return todoDB.saveChanges();
}

function addTask1()
{
   task1 = new Todo();
   task1.Task = "Task 1"
   //task1.Person = global_man;
   //todoDB.People.attach(global_man);
   task1.Person__Id = global_man.Id;
   todoDB.Todos.add(task1);
   console.log('add Task1')
   return todoDB.saveChanges();
}

function changeTask1(){
   todoDB.Todos.attach(task1);
   //todoDB.People.attach(global_man2);
   //task1.Person = global_man2;
   task1.Person__Id = global_man2.Id;
   console.log('change Task1');
   return todoDB.saveChanges();
}

function addTask2()
{
   //global_man.Todos = undefined; //global_man.get_Todos
   //global_man2.Todos = undefined;
   todoDB.People.attach(global_man);
   task2 = new Todo();
   task2.Task = "Task 2"
   //task2.Person = global_man;
   task2.Person__Id = global_man.Id;
   todoDB.Todos.add(task2);
   console.log('add task2');
   return...