Layout.evalLayout (param, modifier)
evaluate submitted form values and update the layout object

Sourcecode in Layout/objectFunctions.js:
1:   function evalLayout(param, modifier) {
2:      if (!param.title || !param.title.trim())
3:         throw new Exception("layoutTitleMissing");
4:      this.title = param.title;
5:      this.description = param.description;
6:      // get preferences from param object
7:      var prefs = this.preferences.getAll();
8:      for (var i in param) {
9:         if (i.startsWith("preferences_"))
10:           prefs[i.substring(12)] = param[i];
11:     }
12:     // store preferences
13:     this.preferences.setAll(prefs);
14:     // parent layout
15:     this.parent = param.layout ? root.layouts.get(param.layout) : null;
16:     this.shareable = param.shareable ? 1 : 0;
17:     this.modifier = modifier;
18:     this.modifytime = new Date();
19:     return new Message("layoutUpdate", this.title);
20:  }