Changed itemTypeFields schema to support default show/hide setting for fields in particular item types

Updated item type manager to support changing default show/hide
This commit is contained in:
Dan Stillman 2006-08-26 10:35:47 +00:00
parent 1ac0c8e9a3
commit bec5e78417
5 changed files with 206 additions and 169 deletions

View file

@ -0,0 +1,3 @@
listitem[isHidden=true] {
color:lightblue;
}

View file

@ -3,6 +3,7 @@ var Scholar_ItemTypeManager = new function(){
this.handleTypeSelect = handleTypeSelect;
this.addFieldToType = addFieldToType;
this.removeFieldFromType = removeFieldFromType;
this.handleShowHide = handleShowHide;
this.moveSelectedFieldUp = moveSelectedFieldUp;
this.moveSelectedFieldDown = moveSelectedFieldDown;
this.handleAddType = handleAddType;
@ -31,13 +32,8 @@ var Scholar_ItemTypeManager = new function(){
var types = Scholar.ItemTypes.getTypes();
while (_typesList.hasChildNodes){
if (_typesList.lastChild.tagName=='listitem'){
_typesList.removeChild(_typesList.lastChild);
}
else {
break;
}
while (_typesList.getRowCount()){
_typesList.removeItemAt(0);
}
for (var i in types){
@ -84,8 +80,8 @@ var Scholar_ItemTypeManager = new function(){
+ "WHERE itemTypeID=?";
var nextIndex = Scholar.DB.valueQuery(sql, [_getCurrentTypeID()]);
var sql = "INSERT INTO itemTypeFields VALUES (?,?,?)";
Scholar.DB.query(sql, [_getCurrentTypeID(), item.value, nextIndex]);
var sql = "INSERT INTO itemTypeFields VALUES (?,?,?,?)";
Scholar.DB.query(sql, [_getCurrentTypeID(), item.value, null, nextIndex]);
Scholar.DB.commitTransaction();
@ -112,9 +108,39 @@ var Scholar_ItemTypeManager = new function(){
}
function handleShowHide(listbox, event){
if (event.keyCode!=event.DOM_VK_RETURN && listbox.selectedIndex>-1){
return true;
}
var typeID = _getCurrentTypeID();
Scholar.DB.beginTransaction();
var sql = "SELECT fieldID FROM fields WHERE fieldName=?";
var fieldID = Scholar.DB.valueQuery(sql, [listbox.selectedItem.label]);
var sql = "SELECT hide FROM itemTypeFields WHERE itemTypeID=? AND "
+ "fieldID=?";
var hidden = Scholar.DB.valueQuery(sql, [typeID, fieldID]);
var sql = "UPDATE itemTypeFields SET hide=? WHERE itemTypeID=? AND "
+ "fieldID=?";
Scholar.DB.query(sql, [hidden ? null : 1, typeID, fieldID]);
Scholar.DB.commitTransaction();
listbox.selectedItem.setAttribute('isHidden', !hidden);
_setStatus();
return true;
}
function moveSelectedFieldUp(){
if (_typeFieldsList.selectedItem){
_moveFieldUp(_typeFieldsList.selectedItem);
_setStatus();
}
}
@ -122,6 +148,7 @@ var Scholar_ItemTypeManager = new function(){
function moveSelectedFieldDown(){
if (_typeFieldsList.selectedItem){
_moveFieldDown(_typeFieldsList.selectedItem);
_setStatus();
}
}
@ -141,7 +168,7 @@ var Scholar_ItemTypeManager = new function(){
var idCol = 'itemTypeID';
var nameCol = 'typeName';
var table = 'itemTypes';
var Target = 'Type';
var Target = 'Item type';
}
else if (target=='field'){
var existsFunc = _fieldExists;
@ -157,18 +184,8 @@ var Scholar_ItemTypeManager = new function(){
var name = box.value;
_clearStatus();
var status = document.getElementById('add-' + target + '-status');
if (existsFunc(name)){
var str = Target + " '" + name + "' already exists";
if (!status.hasChildNodes){
status.appendChild(document.createTextNode(str));
}
else {
status.value = str;
}
_setStatus(Target + " '" + name + "' already exists");
box.value = "";
return true;
@ -183,7 +200,7 @@ var Scholar_ItemTypeManager = new function(){
init();
box.value = "";
status.value = Target + " '" + name + "' added";
_setStatus(Target + " '" + name + "' added");
return true;
}
@ -197,7 +214,7 @@ var Scholar_ItemTypeManager = new function(){
var type = obj.label;
if (!_typeExists(type)){
Scholar.debug("Type '" + type + "' does not exist", 1);
_setStatus("Type '" + type + "' does not exist");
return true;
}
@ -216,7 +233,7 @@ var Scholar_ItemTypeManager = new function(){
this.init();
Scholar.debug("Item type '" + type + "' removed");
_setStatus("Item type '" + type + "' removed");
return true;
}
@ -253,7 +270,7 @@ var Scholar_ItemTypeManager = new function(){
this.init();
Scholar.debug("Field '" + field + "' removed");
_setStatus("Field '" + field + "' removed");
return true;
}
@ -279,9 +296,9 @@ var Scholar_ItemTypeManager = new function(){
* Populate the listbox of fields used by this item type
**/
function _populateTypeFieldsList(itemTypeID){
var sql = 'SELECT fieldID FROM itemTypeFields '
var sql = 'SELECT fieldID, hide FROM itemTypeFields '
+ 'WHERE itemTypeID=' + itemTypeID + ' ORDER BY orderIndex';
var fields = Scholar.DB.columnQuery(sql);
var fields = Scholar.DB.query(sql);
// Clear fields box
while (_typeFieldsList.getRowCount()){
@ -289,12 +306,15 @@ var Scholar_ItemTypeManager = new function(){
}
for (var i in fields){
var item = _typeFieldsList.appendItem(_getFieldName(fields[i]), fields[i]);
var item = _typeFieldsList.appendItem(_getFieldName(fields[i]['fieldID']), fields[i]['fieldID']);
item.addEventListener('dblclick', new function(){
return function(){
Scholar_ItemTypeManager.removeFieldFromType(this);
}
}, true);
item.setAttribute('isHidden', !!fields[i]['hide']);
}
}
@ -303,8 +323,8 @@ var Scholar_ItemTypeManager = new function(){
* Populate the listbox of fields NOT used by this item type
**/
function _populateFieldsList(itemTypeID){
var sql = "SELECT fieldID FROM fields ORDER BY fieldName COLLATE NOCASE";
var fields = Scholar.DB.columnQuery(sql);
var sql = "SELECT fieldID, fieldName FROM fields ORDER BY fieldName COLLATE NOCASE";
var fields = Scholar.DB.query(sql);
// Clear fields box
while (_fieldsList.getRowCount()){
@ -313,7 +333,7 @@ var Scholar_ItemTypeManager = new function(){
// Add all fields to listbox
for (var i in fields){
var item = _fieldsList.appendItem(_getFieldName(fields[i]), fields[i]);
var item = _fieldsList.appendItem(fields[i]['fieldName'], fields[i]['fieldID']);
item.addEventListener('dblclick', new function(){
return function(){
Scholar_ItemTypeManager.addFieldToType(this);
@ -328,7 +348,9 @@ var Scholar_ItemTypeManager = new function(){
// Remove fields that are already used
for (var i=0; i<_fieldsList.getRowCount(); i++){
if (!Scholar.inArray(_fieldsList.getItemAtIndex(i).value, unusedFields)){
// N.B. Some values at the end of list can only be accessed via getAttribute()
// in BonEcho, though .value works for all in Minefield
if (!Scholar.inArray(_fieldsList.getItemAtIndex(i).getAttribute('value'), unusedFields)){
_fieldsList.removeItemAt(i);
i--;
}
@ -437,9 +459,9 @@ var Scholar_ItemTypeManager = new function(){
}
function _clearStatus(){
document.getElementById('add-type-status').value = '';
document.getElementById('add-field-status').value = '';
function _setStatus(str){
str = str ? str : '';
document.getElementById('status-line').value = str;
}
}

View file

@ -1,5 +1,6 @@
<?xml version="1.0"?>
<?xml-stylesheet href="chrome://scholar/skin/scholar.css" type="text/css"?>
<?xml-stylesheet href="chrome://scholar/content/admin/itemTypeManager.css" type="text/css"?>
<!DOCTYPE window SYSTEM "chrome://scholar/locale/scholar.dtd">
<window
@ -32,7 +33,7 @@
</listhead>
</listbox>
<listbox id="item-type-fields-list" onselect="">
<listbox id="item-type-fields-list" onkeypress="Scholar_ItemTypeManager.handleShowHide(this, event)">
<listhead>
<listheader label="Used Fields"/>
</listhead>
@ -43,7 +44,7 @@
<button label="Move down" oncommand="Scholar_ItemTypeManager.moveSelectedFieldDown()" />
</groupbox>
<listbox id="fields-list" onselect="" context="scholar-remove-field-menu">
<listbox id="fields-list" context="scholar-remove-field-menu">
<listhead>
<listheader label="Unused Fields"/>
</listhead>
@ -51,15 +52,25 @@
</hbox>
<hbox style="margin:1em 0 0 .2em">
<label control="add-type" style="width:7em; text-align:right">Add item type:</label>
<textbox id="add-type" onkeypress="return Scholar_ItemTypeManager.handleAddType(this, event)"/>
<label id="add-type-status" style="color:red"/>
<hbox style="-moz-box-align:baseline">
<label control="add-type" style="width:7em; text-align:right">Add item type:</label>
<textbox id="add-type" onkeypress="return Scholar_ItemTypeManager.handleAddType(this, event)"/>
</hbox>
<hbox style="-moz-box-align:baseline">
<label control="add-field" style="width:7em; text-align:right">Add field:</label>
<textbox id="add-field" onkeypress="return Scholar_ItemTypeManager.handleAddField(this, event)"/>
</hbox>
</hbox>
<hbox style="margin:1em 0 0 .2em">
<label control="add-field" style="width:7em; text-align:right">Add field:</label>
<textbox id="add-field" onkeypress="return Scholar_ItemTypeManager.handleAddField(this, event)"/>
<label id="add-field-status" style="color:red"/>
</hbox>
<label style="margin:1em 0; color:red" id="status-line"></label>
<description style="font-size:small; margin:.5em 0">
Double-click a field to add it to or remove it from the currently selected item type.
</description>
<description style="font-size:small; margin:.5em 0">
Hit Return on a mapped field to toggle its default visibility. (Light blue fields are hidden.)
</description>
</vbox>
</window>

View file

@ -401,7 +401,7 @@ Scholar.Schema = new function(){
//
// Change this value to match the schema version
//
var toVersion = 42;
var toVersion = 43;
if (toVersion != _getSchemaSQLVersion()){
throw('Schema version does not match version in _migrateSchema()');
@ -425,7 +425,7 @@ Scholar.Schema = new function(){
}
}
if (i==42){
if (i==43){
// Clear storage directory
var file = Scholar.getStorageDirectory();
if (file.exists()){

View file

@ -1,4 +1,4 @@
-- 42
-- 43
DROP TABLE IF EXISTS version;
CREATE TABLE version (
@ -43,11 +43,12 @@
FOREIGN KEY (fieldFormatID) REFERENCES fieldFormat(fieldFormatID)
);
-- Defines valid fields for each itemType and their display order
-- Defines valid fields for each itemType, their display order, and their default visibility
DROP TABLE IF EXISTS itemTypeFields;
CREATE TABLE itemTypeFields (
itemTypeID INT,
fieldID INT,
hide INT,
orderIndex INT,
PRIMARY KEY (itemTypeID, fieldID),
FOREIGN KEY (itemTypeID) REFERENCES itemTypes(itemTypeID),
@ -327,126 +328,126 @@
INSERT INTO fields VALUES (29,'seriesText',NULL);
INSERT INTO fields VALUES (30,'seriesNumber',NULL);
INSERT INTO "itemTypeFields" VALUES(2, 1, 14);
INSERT INTO "itemTypeFields" VALUES(2, 2, 13);
INSERT INTO "itemTypeFields" VALUES(2, 3, 1);
INSERT INTO "itemTypeFields" VALUES(2, 4, 3);
INSERT INTO "itemTypeFields" VALUES(2, 5, 4);
INSERT INTO "itemTypeFields" VALUES(2, 6, 5);
INSERT INTO "itemTypeFields" VALUES(2, 7, 6);
INSERT INTO "itemTypeFields" VALUES(2, 8, 7);
INSERT INTO "itemTypeFields" VALUES(2, 10, 9);
INSERT INTO "itemTypeFields" VALUES(2, 11, 10);
INSERT INTO "itemTypeFields" VALUES(4, 1, 15);
INSERT INTO "itemTypeFields" VALUES(4, 2, 14);
INSERT INTO "itemTypeFields" VALUES(4, 12, 1);
INSERT INTO "itemTypeFields" VALUES(4, 4, 2);
INSERT INTO "itemTypeFields" VALUES(4, 5, 3);
INSERT INTO "itemTypeFields" VALUES(4, 10, 4);
INSERT INTO "itemTypeFields" VALUES(4, 13, 11);
INSERT INTO "itemTypeFields" VALUES(3, 1, 15);
INSERT INTO "itemTypeFields" VALUES(3, 2, 14);
INSERT INTO "itemTypeFields" VALUES(3, 12, 1);
INSERT INTO "itemTypeFields" VALUES(3, 3, 2);
INSERT INTO "itemTypeFields" VALUES(3, 4, 4);
INSERT INTO "itemTypeFields" VALUES(3, 5, 5);
INSERT INTO "itemTypeFields" VALUES(3, 6, 6);
INSERT INTO "itemTypeFields" VALUES(3, 7, 7);
INSERT INTO "itemTypeFields" VALUES(3, 8, 8);
INSERT INTO "itemTypeFields" VALUES(3, 10, 10);
INSERT INTO "itemTypeFields" VALUES(3, 11, 11);
INSERT INTO "itemTypeFields" VALUES(5, 1, 8);
INSERT INTO "itemTypeFields" VALUES(5, 2, 7);
INSERT INTO "itemTypeFields" VALUES(5, 12, 1);
INSERT INTO "itemTypeFields" VALUES(5, 14, 2);
INSERT INTO "itemTypeFields" VALUES(5, 10, 3);
INSERT INTO "itemTypeFields" VALUES(5, 13, 4);
INSERT INTO "itemTypeFields" VALUES(6, 1, 10);
INSERT INTO "itemTypeFields" VALUES(6, 2, 9);
INSERT INTO "itemTypeFields" VALUES(6, 12, 1);
INSERT INTO "itemTypeFields" VALUES(6, 6, 2);
INSERT INTO "itemTypeFields" VALUES(6, 14, 3);
INSERT INTO "itemTypeFields" VALUES(6, 15, 4);
INSERT INTO "itemTypeFields" VALUES(6, 10, 5);
INSERT INTO "itemTypeFields" VALUES(6, 13, 6);
INSERT INTO "itemTypeFields" VALUES(7, 1, 8);
INSERT INTO "itemTypeFields" VALUES(7, 2, 7);
INSERT INTO "itemTypeFields" VALUES(7, 8, 1);
INSERT INTO "itemTypeFields" VALUES(7, 16, 2);
INSERT INTO "itemTypeFields" VALUES(7, 10, 4);
INSERT INTO "itemTypeFields" VALUES(7, 17, 6);
INSERT INTO "itemTypeFields" VALUES(8, 2, 6);
INSERT INTO "itemTypeFields" VALUES(8, 24, 1);
INSERT INTO "itemTypeFields" VALUES(8, 14, 2);
INSERT INTO "itemTypeFields" VALUES(8, 19, 3);
INSERT INTO "itemTypeFields" VALUES(9, 1, 8);
INSERT INTO "itemTypeFields" VALUES(9, 2, 7);
INSERT INTO "itemTypeFields" VALUES(9, 24, 1);
INSERT INTO "itemTypeFields" VALUES(9, 7, 2);
INSERT INTO "itemTypeFields" VALUES(9, 14, 3);
INSERT INTO "itemTypeFields" VALUES(9, 19, 4);
INSERT INTO "itemTypeFields" VALUES(10, 2, 6);
INSERT INTO "itemTypeFields" VALUES(10, 14, 1);
INSERT INTO "itemTypeFields" VALUES(10, 20, 2);
INSERT INTO "itemTypeFields" VALUES(10, 19, 3);
INSERT INTO "itemTypeFields" VALUES(11, 1, 6);
INSERT INTO "itemTypeFields" VALUES(11, 2, 5);
INSERT INTO "itemTypeFields" VALUES(11, 21, 1);
INSERT INTO "itemTypeFields" VALUES(12, 1, 6);
INSERT INTO "itemTypeFields" VALUES(12, 2, 5);
INSERT INTO "itemTypeFields" VALUES(12, 24, 1);
INSERT INTO "itemTypeFields" VALUES(12, 14, 2);
INSERT INTO "itemTypeFields" VALUES(13, 1, 5);
INSERT INTO "itemTypeFields" VALUES(13, 2, 4);
INSERT INTO "itemTypeFields" VALUES(12, 18, 3);
INSERT INTO "itemTypeFields" VALUES(2, 18, 11);
INSERT INTO "itemTypeFields" VALUES(3, 18, 12);
INSERT INTO "itemTypeFields" VALUES(11, 18, 3);
INSERT INTO "itemTypeFields" VALUES(12, 17, 4);
INSERT INTO "itemTypeFields" VALUES(12, 22, 7);
INSERT INTO "itemTypeFields" VALUES(2, 17, 12);
INSERT INTO "itemTypeFields" VALUES(2, 22, 15);
INSERT INTO "itemTypeFields" VALUES(3, 17, 13);
INSERT INTO "itemTypeFields" VALUES(3, 22, 16);
INSERT INTO "itemTypeFields" VALUES(11, 17, 4);
INSERT INTO "itemTypeFields" VALUES(11, 22, 7);
INSERT INTO "itemTypeFields" VALUES(10, 17, 5);
INSERT INTO "itemTypeFields" VALUES(10, 18, 4);
INSERT INTO "itemTypeFields" VALUES(10, 22, 8);
INSERT INTO "itemTypeFields" VALUES(4, 17, 13);
INSERT INTO "itemTypeFields" VALUES(4, 18, 12);
INSERT INTO "itemTypeFields" VALUES(4, 22, 16);
INSERT INTO "itemTypeFields" VALUES(8, 17, 5);
INSERT INTO "itemTypeFields" VALUES(8, 18, 4);
INSERT INTO "itemTypeFields" VALUES(8, 22, 8);
INSERT INTO "itemTypeFields" VALUES(5, 17, 6);
INSERT INTO "itemTypeFields" VALUES(5, 18, 5);
INSERT INTO "itemTypeFields" VALUES(5, 22, 9);
INSERT INTO "itemTypeFields" VALUES(9, 17, 6);
INSERT INTO "itemTypeFields" VALUES(9, 18, 5);
INSERT INTO "itemTypeFields" VALUES(9, 22, 9);
INSERT INTO "itemTypeFields" VALUES(6, 17, 8);
INSERT INTO "itemTypeFields" VALUES(6, 18, 7);
INSERT INTO "itemTypeFields" VALUES(6, 22, 11);
INSERT INTO "itemTypeFields" VALUES(7, 18, 5);
INSERT INTO "itemTypeFields" VALUES(7, 22, 9);
INSERT INTO "itemTypeFields" VALUES(13, 22, 6);
INSERT INTO "itemTypeFields" VALUES(4, 25, 9);
INSERT INTO "itemTypeFields" VALUES(4, 26, 10);
INSERT INTO "itemTypeFields" VALUES(13, 27, 3);
INSERT INTO "itemTypeFields" VALUES(13, 14, 2);
INSERT INTO "itemTypeFields" VALUES(4, 14, 5);
INSERT INTO "itemTypeFields" VALUES(2, 14, 8);
INSERT INTO "itemTypeFields" VALUES(3, 14, 9);
INSERT INTO "itemTypeFields" VALUES(11, 14, 2);
INSERT INTO "itemTypeFields" VALUES(7, 14, 3);
INSERT INTO "itemTypeFields" VALUES(2, 30, 2);
INSERT INTO "itemTypeFields" VALUES(3, 30, 3);
INSERT INTO "itemTypeFields" VALUES(4, 3, 6);
INSERT INTO "itemTypeFields" VALUES(4, 29, 8);
INSERT INTO "itemTypeFields" VALUES(4, 28, 7);
INSERT INTO "itemTypeFields" VALUES(8, 1, 7);
INSERT INTO "itemTypeFields" VALUES(10, 1, 7);
INSERT INTO "itemTypeFields" VALUES(2, 1, NULL, 14);
INSERT INTO "itemTypeFields" VALUES(2, 2, NULL, 13);
INSERT INTO "itemTypeFields" VALUES(2, 3, NULL, 1);
INSERT INTO "itemTypeFields" VALUES(2, 4, NULL, 3);
INSERT INTO "itemTypeFields" VALUES(2, 5, NULL, 4);
INSERT INTO "itemTypeFields" VALUES(2, 6, NULL, 5);
INSERT INTO "itemTypeFields" VALUES(2, 7, NULL, 6);
INSERT INTO "itemTypeFields" VALUES(2, 8, NULL, 7);
INSERT INTO "itemTypeFields" VALUES(2, 10, NULL, 9);
INSERT INTO "itemTypeFields" VALUES(2, 11, NULL, 10);
INSERT INTO "itemTypeFields" VALUES(4, 1, NULL, 15);
INSERT INTO "itemTypeFields" VALUES(4, 2, NULL, 14);
INSERT INTO "itemTypeFields" VALUES(4, 12, NULL, 1);
INSERT INTO "itemTypeFields" VALUES(4, 4, NULL, 2);
INSERT INTO "itemTypeFields" VALUES(4, 5, NULL, 3);
INSERT INTO "itemTypeFields" VALUES(4, 10, NULL, 4);
INSERT INTO "itemTypeFields" VALUES(4, 13, NULL, 11);
INSERT INTO "itemTypeFields" VALUES(3, 1, NULL, 15);
INSERT INTO "itemTypeFields" VALUES(3, 2, NULL, 14);
INSERT INTO "itemTypeFields" VALUES(3, 12, NULL, 1);
INSERT INTO "itemTypeFields" VALUES(3, 3, NULL, 2);
INSERT INTO "itemTypeFields" VALUES(3, 4, NULL, 4);
INSERT INTO "itemTypeFields" VALUES(3, 5, NULL, 5);
INSERT INTO "itemTypeFields" VALUES(3, 6, NULL, 6);
INSERT INTO "itemTypeFields" VALUES(3, 7, NULL, 7);
INSERT INTO "itemTypeFields" VALUES(3, 8, NULL, 8);
INSERT INTO "itemTypeFields" VALUES(3, 10, NULL, 10);
INSERT INTO "itemTypeFields" VALUES(3, 11, NULL, 11);
INSERT INTO "itemTypeFields" VALUES(5, 1, NULL, 8);
INSERT INTO "itemTypeFields" VALUES(5, 2, NULL, 7);
INSERT INTO "itemTypeFields" VALUES(5, 12, NULL, 1);
INSERT INTO "itemTypeFields" VALUES(5, 14, NULL, 2);
INSERT INTO "itemTypeFields" VALUES(5, 10, NULL, 3);
INSERT INTO "itemTypeFields" VALUES(5, 13, NULL, 4);
INSERT INTO "itemTypeFields" VALUES(6, 1, NULL, 10);
INSERT INTO "itemTypeFields" VALUES(6, 2, NULL, 9);
INSERT INTO "itemTypeFields" VALUES(6, 12, NULL, 1);
INSERT INTO "itemTypeFields" VALUES(6, 6, NULL, 2);
INSERT INTO "itemTypeFields" VALUES(6, 14, NULL, 3);
INSERT INTO "itemTypeFields" VALUES(6, 15, NULL, 4);
INSERT INTO "itemTypeFields" VALUES(6, 10, NULL, 5);
INSERT INTO "itemTypeFields" VALUES(6, 13, NULL, 6);
INSERT INTO "itemTypeFields" VALUES(7, 1, NULL, 8);
INSERT INTO "itemTypeFields" VALUES(7, 2, NULL, 7);
INSERT INTO "itemTypeFields" VALUES(7, 8, NULL, 1);
INSERT INTO "itemTypeFields" VALUES(7, 16, NULL, 2);
INSERT INTO "itemTypeFields" VALUES(7, 10, NULL, 4);
INSERT INTO "itemTypeFields" VALUES(7, 17, NULL, 6);
INSERT INTO "itemTypeFields" VALUES(8, 2, NULL, 6);
INSERT INTO "itemTypeFields" VALUES(8, 24, NULL, 1);
INSERT INTO "itemTypeFields" VALUES(8, 14, NULL, 2);
INSERT INTO "itemTypeFields" VALUES(8, 19, NULL, 3);
INSERT INTO "itemTypeFields" VALUES(9, 1, NULL, 8);
INSERT INTO "itemTypeFields" VALUES(9, 2, NULL, 7);
INSERT INTO "itemTypeFields" VALUES(9, 24, NULL, 1);
INSERT INTO "itemTypeFields" VALUES(9, 7, NULL, 2);
INSERT INTO "itemTypeFields" VALUES(9, 14, NULL, 3);
INSERT INTO "itemTypeFields" VALUES(9, 19, NULL, 4);
INSERT INTO "itemTypeFields" VALUES(10, 2, NULL, 6);
INSERT INTO "itemTypeFields" VALUES(10, 14, NULL, 1);
INSERT INTO "itemTypeFields" VALUES(10, 20, NULL, 2);
INSERT INTO "itemTypeFields" VALUES(10, 19, NULL, 3);
INSERT INTO "itemTypeFields" VALUES(11, 1, NULL, 6);
INSERT INTO "itemTypeFields" VALUES(11, 2, NULL, 5);
INSERT INTO "itemTypeFields" VALUES(11, 21, NULL, 1);
INSERT INTO "itemTypeFields" VALUES(12, 1, NULL, 6);
INSERT INTO "itemTypeFields" VALUES(12, 2, NULL, 5);
INSERT INTO "itemTypeFields" VALUES(12, 24, NULL, 1);
INSERT INTO "itemTypeFields" VALUES(12, 14, NULL, 2);
INSERT INTO "itemTypeFields" VALUES(13, 1, NULL, 5);
INSERT INTO "itemTypeFields" VALUES(13, 2, NULL, 4);
INSERT INTO "itemTypeFields" VALUES(12, 18, NULL, 3);
INSERT INTO "itemTypeFields" VALUES(2, 18, NULL, 11);
INSERT INTO "itemTypeFields" VALUES(3, 18, NULL, 12);
INSERT INTO "itemTypeFields" VALUES(11, 18, NULL, 3);
INSERT INTO "itemTypeFields" VALUES(12, 17, NULL, 4);
INSERT INTO "itemTypeFields" VALUES(12, 22, NULL, 7);
INSERT INTO "itemTypeFields" VALUES(2, 17, NULL, 12);
INSERT INTO "itemTypeFields" VALUES(2, 22, NULL, 15);
INSERT INTO "itemTypeFields" VALUES(3, 17, NULL, 13);
INSERT INTO "itemTypeFields" VALUES(3, 22, NULL, 16);
INSERT INTO "itemTypeFields" VALUES(11, 17, NULL, 4);
INSERT INTO "itemTypeFields" VALUES(11, 22, NULL, 7);
INSERT INTO "itemTypeFields" VALUES(10, 17, NULL, 5);
INSERT INTO "itemTypeFields" VALUES(10, 18, NULL, 4);
INSERT INTO "itemTypeFields" VALUES(10, 22, NULL, 8);
INSERT INTO "itemTypeFields" VALUES(4, 17, NULL, 13);
INSERT INTO "itemTypeFields" VALUES(4, 18, NULL, 12);
INSERT INTO "itemTypeFields" VALUES(4, 22, NULL, 16);
INSERT INTO "itemTypeFields" VALUES(8, 17, NULL, 5);
INSERT INTO "itemTypeFields" VALUES(8, 18, NULL, 4);
INSERT INTO "itemTypeFields" VALUES(8, 22, NULL, 8);
INSERT INTO "itemTypeFields" VALUES(5, 17, NULL, 6);
INSERT INTO "itemTypeFields" VALUES(5, 18, NULL, 5);
INSERT INTO "itemTypeFields" VALUES(5, 22, NULL, 9);
INSERT INTO "itemTypeFields" VALUES(9, 17, NULL, 6);
INSERT INTO "itemTypeFields" VALUES(9, 18, NULL, 5);
INSERT INTO "itemTypeFields" VALUES(9, 22, NULL, 9);
INSERT INTO "itemTypeFields" VALUES(6, 17, NULL, 8);
INSERT INTO "itemTypeFields" VALUES(6, 18, NULL, 7);
INSERT INTO "itemTypeFields" VALUES(6, 22, NULL, 11);
INSERT INTO "itemTypeFields" VALUES(7, 18, NULL, 5);
INSERT INTO "itemTypeFields" VALUES(7, 22, NULL, 9);
INSERT INTO "itemTypeFields" VALUES(13, 22, NULL, 6);
INSERT INTO "itemTypeFields" VALUES(4, 25, NULL, 9);
INSERT INTO "itemTypeFields" VALUES(4, 26, NULL, 10);
INSERT INTO "itemTypeFields" VALUES(13, 27, NULL, 3);
INSERT INTO "itemTypeFields" VALUES(13, 14, NULL, 2);
INSERT INTO "itemTypeFields" VALUES(4, 14, NULL, 5);
INSERT INTO "itemTypeFields" VALUES(2, 14, NULL, 8);
INSERT INTO "itemTypeFields" VALUES(3, 14, NULL, 9);
INSERT INTO "itemTypeFields" VALUES(11, 14, NULL, 2);
INSERT INTO "itemTypeFields" VALUES(7, 14, NULL, 3);
INSERT INTO "itemTypeFields" VALUES(2, 30, NULL, 2);
INSERT INTO "itemTypeFields" VALUES(3, 30, NULL, 3);
INSERT INTO "itemTypeFields" VALUES(4, 3, NULL, 6);
INSERT INTO "itemTypeFields" VALUES(4, 29, NULL, 8);
INSERT INTO "itemTypeFields" VALUES(4, 28, NULL, 7);
INSERT INTO "itemTypeFields" VALUES(8, 1, NULL, 7);
INSERT INTO "itemTypeFields" VALUES(10, 1, NULL, 7);
INSERT INTO "fileTypes" VALUES(1, 'webpage');
INSERT INTO "fileTypes" VALUES(2, 'image');