Service - Forum Tree: Difference between revisions
Jump to navigation
Jump to search
(Created page with "= Overview = Tree used to categorize forum topics. Forum topics can then be the hasPrimarySubject of a comment to begin a new topic in the forum. Many forum trees can be created with their own forum topic hierarchy. Forum topics can be linked to by anywhere in any forumTree. = Repository = https://bitbucket.org/izara-conversations/izara-conversations-forum-tree = Object Schemas = ; Additional Information: Per Service Schemas == objType == === forumTree === <...") |
No edit summary |
||
Line 9: | Line 9: | ||
= Repository = | = Repository = | ||
https://bitbucket.org/izara- | https://bitbucket.org/izara-core-shared/izara-core-shared-forum-tree | ||
= Object Schemas = | = Object Schemas = |
Revision as of 02:34, 25 March 2025
Overview
Tree used to categorize forum topics. Forum topics can then be the hasPrimarySubject of a comment to begin a new topic in the forum.
Many forum trees can be created with their own forum topic hierarchy.
Forum topics can be linked to by anywhere in any forumTree.
Repository
https://bitbucket.org/izara-core-shared/izara-core-shared-forum-tree
Object Schemas
- Additional Information
- Per Service Schemas
objType
forumTree
{
objectType: "forumTree",
canDelete: false,
addOnDataStructure: [
{
type:"versionedData",
versionedDataLabel: "forumTreeConfig",
storageResourceTag : "myGraph",
fieldNames: {
"forumName":{
type: "string",
requiredOnCreate: true
canUpdate: true,
},
}
},
],
storageResources: {
myGraph: {
storageType: "graph",
graphServerTag: "GraphHandler"
}
},
fieldNames: {
forumTreeId: {
type: "string",
randomOnCreate: true,
canUpdate: false,
storageResourceTags: ['myGraph']
}
},
identifiers: [
{
type: "identifier",
fieldName: "forumTreeId"
}
]
}
forumTopicLink
{
objectType: "forumTopicLink",
canDelete: true,
storageResources: {
myGraph: {
storageType: "graph",
graphServerTag: "GraphHandler"
}
},
fieldNames: {
forumTopicLinkId: {
type: "string",
randomOnCreate: true,
canUpdate: false,
storageResourceTags: ['myGraph']
}
},
identifiers: [
{
type: "identifier",
fieldName: "forumTopicLinkId"
}
]
}
- Links a forumTopic as a child of another forumTopic or under a forumTree
forumTopic
{
objectType: "forumTopic",
canDelete: true,
addOnDataStructure: [
{
type:"versionedData",
versionedDataLabel: "forumTopicConfig",
storageResourceTag : "myGraph",
fieldNames: {
"forumTopicName":{
type: "string",
requiredOnCreate: true
canUpdate: true,
},
}
},
],
storageResources: {
myGraph: {
storageType: "graph",
graphServerTag: "GraphHandler"
}
},
fieldNames: {
forumTopicId: {
type: "string",
randomOnCreate: true,
canUpdate: false,
storageResourceTags: ['myGraph']
}
},
identifiers: [
{
type: "identifier",
fieldName: "forumTopicId"
}
]
}
Object Relationships
hasChildTopic
{
"hasChildTopic": { // also "hasDisabledChildTopic"
fieldNames: {
},
storageResources: {
myGraph: {
storageType: "graph",
graphServerTag: "GraphHandler"
}
},
links: [
{
storageResourceTags: ["myGraph"],
from: {
objType: {
serviceTag: "forumTree",
objectType: "forumTree"
},
linkType: "many",
handler: true
},
to: {
objType: {
serviceTag: "forumTree",
objectType: "forumTopicLink"
},
linkType: "many"
}
}
{
storageResourceTags: ["myGraph"],
from: {
objType: {
serviceTag: "forumTree",
objectType: "forumTopic"
},
linkType: "many",
handler: true
},
to: {
objType: {
serviceTag: "forumTree",
objectType: "forumTopicLink"
},
linkType: "many"
}
}
]
}
}
isTopic
{
"isTopic": {
fieldNames: {
},
storageResources: {
myGraph: {
storageType: "graph",
graphServerTag: "GraphHandler"
}
},
links: [
{
storageResourceTags: ["myGraph"],
from: {
objType: {
serviceTag: "forumTree",
objectType: "forumTopicLink"
},
linkType: "many",
handler: true
},
to: {
objType: {
serviceTag: "forumTree",
objectType: "forumTopic"
},
linkType: "many"
}
}
{
storageResourceTags: ["myGraph"],
from: {
objType: {
serviceTag: "forumTree",
objectType: "forumTopic"
},
linkType: "many",
handler: true
},
to: {
objType: {
serviceTag: "forumTree",
objectType: "forumTopic"
},
linkType: "many"
}
}
]
}
}