{
  "key": "com.mute.confluence.plugins.lms",
  "baseUrl": "http://smart-courses-remote-staging.eu-west-1.elasticbeanstalk.com",
  "name": "Smart Courses",
  "description": "Easily create captivating courses! No need to waste time on formatting content in separate confluence pages, images, or working with macros. Learners can subscribe and follow at their own pace several courses based on their topic of interest. The user friendly player interface will captivate learners through their learning journey.",
  "icon": {
    "url": "/images/logo.svg"
  },
  "vendor": {
    "name": "Creativas",
    "url": "https://creativas.io"
  },
  "authentication": {
    "type": "jwt"
  },
  "apiMigrations": {
    "context-qsh": true,
    "signed-install": true
  },
  "cloudAppMigration": {
    "migrationWebhookPath": "/migration-started"
  },
  "lifecycle": {
    "installed": "/installed",
    "uninstalled": "/uninstalled"
  },
  "scopes": ["READ", "WRITE", "DELETE", "ACT_AS_USER", "ACCESS_EMAIL_ADDRESSES", "SPACE_ADMIN"],
  "modules": {
    "webhooks": [
      {
        "event": "user_removed",
        "url": "/rest/smart-courses-connect/1.0/webhook/user-removed"
      },
      {
        "event": "content_updated",
        "url": "/rest/smart-courses-connect/1.0/webhook/content_updated"
      },
      {
        "event": "content_removed",
        "url": "/rest/smart-courses-connect/1.0/webhook/content_removed"
      },
      {
        "event": "comment_created",
        "url": "/rest/smart-courses-connect/1.0/webhook/comment_created"
      },
      {
        "event": "comment_updated",
        "url": "/rest/smart-courses-connect/1.0/webhook/comment_updated"
      },
      {
        "event": "space_updated",
        "url": "/rest/smart-courses-connect/1.0/webhook/space_updated"
      }
    ],
    "confluenceContentProperties": [
      {
        "key": "lms-courses",
        "name": {
          "value": "Course Properties Index"
        },
        "keyConfigurations": [
          {
            "propertyKey": "courseOptions",
            "extractions": [
              {
                "objectName": "status",
                "alias": "courseStatus",
                "type": "string"
              },
              {
                "objectName": "categories",
                "alias": "courseCategories",
                "type": "string"
              },
              {
                "objectName": "difficulty",
                "alias": "courseDifficulty",
                "type": "number"
              },
              {
                "objectName": "examMode",
                "alias": "examMode",
                "type": "number"
              },
              {
                "objectName": "publicationDate",
                "alias": "coursePublicationDate",
                "type": "number"
              },
              {
                "objectName": "scorm",
                "alias": "scorm",
                "type": "number"
              },
              {
                "objectName": "availableLanguages",
                "alias": "availableLanguages",
                "type": "string"
              },
              {
                "objectName": "titles.zh",
                "type": "text"
              },
              {
                "objectName": "titles.da",
                "type": "text"
              },
              {
                "objectName": "titles.nl",
                "type": "text"
              },
              {
                "objectName": "titles.en",
                "type": "text"
              },
              {
                "objectName": "titles.et",
                "type": "text"
              },
              {
                "objectName": "titles.fi",
                "type": "text"
              },
              {
                "objectName": "titles.fr",
                "type": "text"
              },
              {
                "objectName": "titles.de",
                "type": "text"
              },
              {
                "objectName": "titles.hu",
                "type": "text"
              },
              {
                "objectName": "titles.is",
                "type": "text"
              },
              {
                "objectName": "titles.it",
                "type": "text"
              },
              {
                "objectName": "titles.ja",
                "type": "text"
              },
              {
                "objectName": "titles.ko",
                "type": "text"
              },
              {
                "objectName": "titles.no",
                "type": "text"
              },
              {
                "objectName": "titles.pl",
                "type": "text"
              },
              {
                "objectName": "titles.pt",
                "type": "text"
              },
              {
                "objectName": "titles.ro",
                "type": "text"
              },
              {
                "objectName": "titles.ru",
                "type": "text"
              },
              {
                "objectName": "titles.sk",
                "type": "text"
              },
              {
                "objectName": "titles.th",
                "type": "text"
              },
              {
                "objectName": "titles.tr",
                "type": "text"
              },
              {
                "objectName": "titles.es",
                "type": "text"
              },
              {
                "objectName": "titles.uk",
                "type": "text"
              },
              {
                "objectName": "titles.vie",
                "type": "text"
              },
              {
                "objectName": "titles.sv",
                "type": "text"
              },
              {
                "objectName": "recurrence.enabled",
                "alias": "isCourseRecurringEnabled",
                "type": "number"
              },
              {
                "objectName": "prerequisites.skills.enabled",
                "alias": "skillsEnabled",
                "type": "number"
              }
            ]
          },
          {
            "propertyKey": "courseStats",
            "extractions": [
              {
                "objectName": "followersCount",
                "alias": "coursePopularity",
                "type": "number"
              },
              {
                "objectName": "followers",
                "alias": "courseFollower",
                "type": "string"
              },
              {
                "objectName": "rating",
                "alias": "courseRating",
                "type": "number"
              }
            ]
          },
          {
            "propertyKey": "courseStats1",
            "extractions": [
              {
                "objectName": "followers",
                "alias": "courseFollower1",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "courseStats2",
            "extractions": [
              {
                "objectName": "followers",
                "alias": "courseFollower2",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "courseStats3",
            "extractions": [
              {
                "objectName": "followers",
                "alias": "courseFollower3",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "courseStats4",
            "extractions": [
              {
                "objectName": "followers",
                "alias": "courseFollower4",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "courseStats5",
            "extractions": [
              {
                "objectName": "followers",
                "alias": "courseFollower5",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "courseCompletedBy",
            "extractions": [
              {
                "objectName": "users",
                "alias": "courseCompletedUser",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "courseCompletedBy1",
            "extractions": [
              {
                "objectName": "users",
                "alias": "courseCompletedUser1",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "courseCompletedBy2",
            "extractions": [
              {
                "objectName": "users",
                "alias": "courseCompletedUser2",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "courseCompletedBy3",
            "extractions": [
              {
                "objectName": "users",
                "alias": "courseCompletedUser3",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "courseCompletedBy4",
            "extractions": [
              {
                "objectName": "users",
                "alias": "courseCompletedUser4",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "courseCompletedBy5",
            "extractions": [
              {
                "objectName": "users",
                "alias": "courseCompletedUser5",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "coursePendingFor",
            "extractions": [
              {
                "objectName": "users",
                "alias": "coursePendingFor",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "coursePendingFor1",
            "extractions": [
              {
                "objectName": "users",
                "alias": "coursePendingFor1",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "coursePendingFor2",
            "extractions": [
              {
                "objectName": "users",
                "alias": "coursePendingFor2",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "coursePendingFor3",
            "extractions": [
              {
                "objectName": "users",
                "alias": "coursePendingFor3",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "coursePendingFor4",
            "extractions": [
              {
                "objectName": "users",
                "alias": "coursePendingFor4",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "coursePendingFor5",
            "extractions": [
              {
                "objectName": "users",
                "alias": "coursePendingFor5",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "courseAssignment",
            "extractions": [
              {
                "objectName": "assignees",
                "alias": "courseAssignee",
                "type": "string"
              },
              {
                "objectName": "permanentAssignmentFlag",
                "alias": "permanentCourseAssignment",
                "type": "number"
              }
            ]
          },
          {
            "propertyKey": "courseAssignment1",
            "extractions": [
              {
                "objectName": "assignees",
                "alias": "courseAssignee1",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "courseAssignment2",
            "extractions": [
              {
                "objectName": "assignees",
                "alias": "courseAssignee2",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "courseAssignment3",
            "extractions": [
              {
                "objectName": "assignees",
                "alias": "courseAssignee3",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "courseAssignment4",
            "extractions": [
              {
                "objectName": "assignees",
                "alias": "courseAssignee4",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "courseAssignment5",
            "extractions": [
              {
                "objectName": "assignees",
                "alias": "courseAssignee5",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "courseAuthors",
            "extractions": [
              {
                "objectName": "users",
                "alias": "courseContributors",
                "type": "string"
              },
              {
                "objectName": "groups",
                "alias": "courseContributorGroups",
                "type": "string"
              }
            ]
          },
          {
            "propertyKey": "learningPath",
            "extractions": [
              {
                "objectName": "enabled",
                "alias": "learningPath",
                "type": "number"
              },
              {
                "objectName": "children",
                "alias": "learningPathChildren",
                "type": "string"
              }
            ]
          }
        ]
      },
      {
        "key": "lms-courses-feedback",
        "name": {
          "value": "Course Feedback Properties Index"
        },
        "keyConfigurations": [
          {
            "propertyKey": "feedbackOptions",
            "extractions": [
              {
                "objectName": "isReadBy",
                "alias": "feedbackReadBy",
                "type": "string"
              },
              {
                "objectName": "type",
                "alias": "feedbackType",
                "type": "string"
              },
              {
                "objectName": "capsuleId",
                "alias": "capsuleId",
                "type": "number"
              }
            ]
          }
        ]
      }
    ],
    "generalPages": [
      {
        "key": "center",
        "name": {
          "value": "Courses",
          "i18n": "lms.center.label"
        },
        "url": "/courses/list?spaceKey={space.key}&spaceId={space.id}&spaceKeyParam={ac.spaceKey}&spaceIdParam={ac.spaceId}&isConfluenceAdmin={condition.user_is_confluence_administrator}&isSpaceAdmin={condition.has_space_permission(permission=ADMINISTER)}",
        "location": "system.header/left",
        "icon": {
          "url": "/images/logo_blue.png"
        }
      },
      {
        "key": "create",
        "name": {
          "value": "New Course",
          "i18n": "lms.center.new"
        },
        "url": "/courses/create?spaceKey={ac.spaceKey}&spaceId={ac.spaceId}&scorm={ac.scorm}&title={ac.title}&isLearningPath={ac.isLearningPath}",
        "location": "none"
      },
      {
        "key": "config",
        "name": {
          "value": "Smart Courses configuration",
          "i18n": "lms.config.label"
        },
        "url": "/courses/config?spaceKey={ac.spaceKey}&spaceId={ac.spaceId}&isConfluenceAdmin={condition.user_is_confluence_administrator}&isSpaceAdmin={condition.has_space_permission(permission=ADMINISTER)}",
        "location": "none",
        "conditions": [
          {
            "condition": "user_is_logged_in"
          }
        ]
      },
      {
        "key": "playcourse",
        "name": {
          "value": "Course Player",
          "i18n": "lms.player.label"
        },
        "url": "/courses/player?courseId={ac.courseId}&capsule={ac.capsule}&spaceKey={ac.spaceKey}&spaceId={ac.spaceId}&coursePreview={ac.coursePreview}&forceStart={ac.forceStart}&isConfluenceAdmin={condition.user_is_confluence_administrator}&ExternalCollaborator={user.isExternalCollaborator}&contentId={content.id}&confluenceSpaceId={space.id}",
        "location": "none"
      },
       {
        "key": "playpath",
        "name": {
          "value": "Path Player",
          "i18n": "lms.path.label"
        },
        "url": "/courses/playpath?courseId={ac.courseId}&spaceKey={ac.spaceKey}&spaceId={ac.spaceId}&coursePreview={ac.coursePreview}&forceStart={ac.forceStart}&isConfluenceAdmin={condition.user_is_confluence_administrator}&ExternalCollaborator={user.isExternalCollaborator}&contentId={content.id}&confluenceSpaceId={space.id}",
        "location": "none"
      },
      {
        "key": "usercourses",
        "name": {
          "value": "Courses",
          "i18n": "lms.center.label"
        },
        "url": "/courses/user?accountId={ac.accountId}&isConfluenceAdmin={condition.user_is_confluence_administrator}",
        "location": "system.user/user-content",
        "conditions": [
          {
            "condition": "user_is_logged_in"
          }
        ]
      },
      {
        "key": "usersinsights",
        "name": {
          "value": "Courses",
          "i18n": "lms.center.label"
        },
        "url": "/courses/user?usersInsights=true&accountId={ac.accountId}&isConfluenceAdmin={condition.user_is_confluence_administrator}",
        "location": "none",
        "conditions": [
          {
            "condition": "user_is_logged_in"
          }
        ]
      },
      {
        "key": "edit",
        "name": {
          "value": "Course Editor",
          "i18n": "lms.course.editor.title"
        },
        "url": "/courses/editor?courseId={ac.courseId}&spaceKey={ac.spaceKey}&spaceId={ac.spaceId}&scorm={ac.scorm}&isConfluenceAdmin={condition.user_is_confluence_administrator}",
        "location": "none",
        "conditions": [
          {
            "condition": "user_is_logged_in"
          }
        ]
      },
      {
        "key": "metrics",
        "name": {
          "value": "Course Insights",
          "i18n": "lms.center.metrics"
        },
        "url": "/courses/metrics?courseId={ac.courseId}&spaceKey={ac.spaceKey}&spaceId={ac.spaceId}&isConfluenceAdmin={condition.user_is_confluence_administrator}&isSpaceAdmin={condition.has_space_permission(permission=ADMINISTER)}&learningPathId={ac.learningPathId}",
        "location": "none",
        "conditions": [
          {
            "condition": "user_is_logged_in"
          }
        ]
      }
    ],
    "customContent": [
      {
        "key": "course-type",
        "name": {
          "value": "Courses",
          "i18n": "lms.center.label"
        },
        "uiSupport": {
          "listViewComponent": {
            "moduleKey": "center"
          },
          "contentViewComponent": {
            "moduleKey": "playcourse"
          },
          "icons": {
            "item": {
              "url": "/images/logo_blue.png"
            }
          }
        },
        "apiSupport": {
          "supportedContainerTypes": ["space"],
          "indexing": {
            "enabled": true
          },
          "supportedChildTypes": [
            "attachment",
            "comment",
            "ac:com.mute.confluence.plugins.lms:course-feedback"
          ],
          "bodyType": "raw"
        }
      },
      {
        "key": "course-feedback",
        "name": {
          "value": "Course Feedback"
        },
        "uiSupport": {
          "listViewComponent": {
            "moduleKey": "center"
          },
          "contentViewComponent": {
            "moduleKey": "playcourse"
          },
          "icons": {
            "item": {
              "url": "/images/logo_dark.svg"
            }
          }
        },
        "apiSupport": {
          "bodyType": "raw",
          "supportedContainerTypes": ["ac:com.mute.confluence.plugins.lms:course-type"],
          "preventDuplicateTitle": false,
          "indexing": {
            "enabled": true
          }
        }
      }
    ],
    "adminPages": [
      {
        "url": "/admin",
        "name": {
          "value": "Smart Courses Permissions",
          "i18n": "lms.admin.permissions.config.page.label"
        },
        "location": "system.admin/admin-section",
        "key": "lms-permissions-page"
      }
    ],
    "configurePage": {
      "url": "/courses/config?spaceKey={ac.spaceKey}&spaceId={ac.spaceId}",
      "name": {
        "value": "Smart Courses configuration",
        "i18n": "lms.config.label"
      },
      "key": "lms-config-page",
      "fullPage": true
    },
    "dynamicContentMacros": [
      {
        "width": "100%",
        "height": "600px",
        "url": "/courses/list?&spaceKey={spaceKey}&macroSpaceId={space.id}&pageId={page.id}&isConfluenceAdmin={condition.user_is_confluence_administrator}&isSpaceAdmin={condition.has_space_permission(permission=ADMINISTER)}&labels={labels}&categories={categories}&hideCenterNavigation={hideCenterNavigation}&isMacro=true",
        "description": {
          "value": "Course list"
        },
        "icon": {
          "width": 80,
          "height": 80,
          "url": "/images/course-list-macro_80.png"
        },
        "documentation": {
          "url": "https://creativas.io/assets/courses/macro/list"
        },
        "categories": ["visuals"],
        "outputType": "block",
        "bodyType": "none",
        "aliases": ["courses"],
        "featured": true,
        "parameters": [
          {
            "identifier": "spaceKey",
            "name": {
              "value": "Restrict to this space",
              "i18n": "com.mute.confluence.plugins.lms.course-list.param.spaceKey.label"
            },
            "description": {
              "value": "Keep empty to display all courses.",
              "i18n": "com.mute.confluence.plugins.lms.course-list.param.spaceKey.desc"
            },
            "type": "spacekey"
          },
          {
            "identifier": "labels",
            "name": {
              "value": "labels"
            },
            "type": "label",
            "multiple": true
          },
          {
            "identifier": "categories",
            "name": {
              "value": "categories"
            },
            "type": "string"
          },
          {
            "identifier": "hideCenterNavigation",
            "name": {
              "value": "Course cards only",
              "i18n": "com.mute.confluence.plugins.lms.course-list.param.hideCenterNavigation.label"
            },
            "description": {
              "value": "Hide tabs and filters",
              "i18n": "com.mute.confluence.plugins.lms.course-list.param.hideCenterNavigation.desc"
            },
            "type": "boolean"
          }
        ],
        "name": {
          "value": "Course list (deprecated)"
        },
        "key": "CourseListMacro"
      },
      {
        "width": "100%",
        "height": "600px",
        "url": "/courses/list?&spaceKey={spaceKey}&macroSpaceId={space.id}&isConfluenceAdmin={condition.user_is_confluence_administrator}&isSpaceAdmin={condition.has_space_permission(permission=ADMINISTER)}&labels={labels}&categories={categories}&hideCenterNavigation={hideCenterNavigation}&isMacro=true",
        "description": {
          "value": "Course list"
        },
        "icon": {
          "width": 80,
          "height": 80,
          "url": "/images/course-list-macro_80.png"
        },
        "documentation": {
          "url": "https://creativas.io/assets/courses/macro/list"
        },
        "categories": ["visuals"],
        "outputType": "block",
        "bodyType": "none",
        "aliases": ["courses"],
        "featured": true,
        "parameters": [
          {
            "identifier": "spaceKey",
            "name": {
              "value": "Restrict to this space",
              "i18n": "com.mute.confluence.plugins.lms.course-list.param.spaceKey.label"
            },
            "description": {
              "value": "Keep empty to display all courses.",
              "i18n": "com.mute.confluence.plugins.lms.course-list.param.spaceKey.desc"
            },
            "type": "spacekey"
          },
          {
            "identifier": "labels",
            "name": {
              "value": "labels"
            },
            "type": "label",
            "multiple": true
          },
          {
            "identifier": "categories",
            "name": {
              "value": "categories"
            },
            "type": "string"
          },
          {
            "identifier": "hideCenterNavigation",
            "name": {
              "value": "Course cards only",
              "i18n": "com.mute.confluence.plugins.lms.course-list.param.hideCenterNavigation.label"
            },
            "description": {
              "value": "Hide tabs and filters",
              "i18n": "com.mute.confluence.plugins.lms.course-list.param.hideCenterNavigation.desc"
            },
            "type": "boolean"
          }
        ],
        "name": {
          "value": "Course list"
        },
        "key": "course-list"
      },
      {
        "width": "100%",
        "height": "600px",
        "url": "/courses/list?&spaceKey={space.key}&isConfluenceAdmin={condition.user_is_confluence_administrator}&isSpaceAdmin={condition.has_space_permission(permission=ADMINISTER)}&courseId={courseId}&isMacro=true",
        "description": {
          "value": "Course card"
        },
        "icon": {
          "width": 80,
          "height": 80,
          "url": "/images/course-list-macro_80.png"
        },
        "documentation": {
          "url": "https://creativas.io/assets/courses/macro/card"
        },
        "categories": ["visuals"],
        "outputType": "block",
        "bodyType": "none",
        "aliases": ["courses"],
        "featured": true,
        "parameters": [
          {
            "identifier": "courseId",
            "name": {
              "value": "Enter the course ID",
              "i18n": "com.mute.confluence.plugins.lms.course-card.param.courseId.label"
            },
            "type": "int"
          }
        ],
        "name": {
          "value": "Course card"
        },
        "key": "course-card"
      }
    ],
    "webSections": [
      {
        "location": "system.admin",
        "weight": 500,
        "name": {
          "value": "Smart Courses"
        },
        "key": "admin-section"
      }
    ]
  },
  "translations": {
    "paths": {
      "en-US": "locales/en_US.json",
      "en-UK": "locales/en_US.json",
      "de-DE": "locales/de_DE.json",
      "es-ES": "locales/es_ES.json",
      "fr-FR": "locales/fr_FR.json",
      "ru-RU": "locales/ru_RU.json",
      "ja-JP": "locales/ja_JP.json",
      "ko-KR": "locales/ko_KR.json",
      "pt-PT": "locales/pt_BR.json"
    }
  }
}
