GithubHelp home page GithubHelp logo

extensionengine / tailor Goto Github PK

View Code? Open in Web Editor NEW
31.0 31.0 10.0 62.07 MB

Content authoring platform

License: MIT License

JavaScript 44.73% Vue 54.39% Shell 0.12% SCSS 0.61% Mustache 0.08% HTML 0.07%

tailor's People

Contributors

2pacalypse- avatar abasic avatar baskovicp avatar borna223 avatar bradalj avatar dependabot[bot] avatar droguljic avatar hrvojevu avatar ibebic avatar ikovac avatar ilijaveselica avatar jtoric avatar kjuej avatar kronicker avatar lukasaric avatar marjev avatar mbareta avatar mcapeta avatar mirodojkic avatar mskorsur avatar parmezan38 avatar rkusan00 avatar snyk-bot avatar tkarabatic avatar tonijukica avatar ttokic avatar underscope avatar vkaracic avatar vladimyr avatar zcuric avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tailor's Issues

BUG: No preview image for uploaded image inside teaching teaching element

For a teaching element of type "IMAGE", there is a display bug;
Preview image is not present. The preview image was present at upload time.
Upon re-entering the content container, the preview image is absent.
The image url is present in the corresponding json file (published) and is present is /assets/ folder.
The src= is absent in the preview image <img tag.

screen shot 2018-03-26 at 1 46 09 pm

![screen shot 2018-03-26 at 1 42 58 pm](https://user-images.githubusercontent.com/638251/37904830-302c7c14-30fd-11e8-9069-49ff73d7f86b.png)

Issue when adding a time limit for an exam on production

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

When adding a time limit for an exam right after creating an exam, in some cases the time limit won't be set.

Publish notification system

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

Implement publish notification system via webhooks. ๐Ÿ„

Action steps:

  • Add relevant configuration section for listing webhook urls
  • Deliver published course uuid & id via webhook

Issue when cloning a repository

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

Error displayed when cloning a repository:
screen shot 2018-04-03 at 16 11 18

Steps to Reproduce

  1. Create a course with a few elements
  2. Try to clone said course
  3. Notice an error occurs

Publish function on repository

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

Ability for admin/author to publish full repository by a single action.

password reset form error on emails containing upper case letters

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context


For server issues
* node version: 8.10.0
* npm version: 5.6.0

For client issues
* Operating System: MacOS 10.12.6
* Browser: Chrome Version 65.0.3325.181 (Official Build) (64-bit)

Expected Behavior

The user receives the reset password email

Current Behavior

Error popup is displayed
screen shot 2018-04-23 at 12 05 01 pm

Failure Information (for bugs)

This issue is relevant for users with emails containing upper case letters.
The send reset email form lowercases the email address, thus causing a "no match" in the database.

Steps to Reproduce

  1. Create a user with an email address containing upper case letters.
    Specifically, 'npm run add:admin ' was used
  2. Click on "forgot password" link on Login page
  3. Enter the email and click the "send reset email" button
  4. Get the error notification

Failure Logs


* Server log:
* Browser console log:
POST https://fitchx.live.authoring.fitchlearning.com/api/v1/users/forgotPassword 404 ()

screen shot 2018-04-23 at 12 19 55 pm

Tree view: zoom interfering with macOS system zoom when using trackpad

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

When zooming the tree view structure, sometimes macOS system zoom is triggered instead (because both use same gesture on trackpad).

Expected Behavior

Zooming inside of the tree view window should only zoom that window.

Current Behavior

Sometimes zoom affects the whole viewport.

Steps to Reproduce

  1. Go to Tree View
  2. Click inside the Tree View window
  3. Zoom via the trackpad
  4. Click outside of the Tree View window
  5. Click inside of the Tree View window
  6. Zoom via the trackpad - notice that now the whole viewport is zoomed
  7. Try to zoom out - notice that now only the Tree View window is zoomed out

Course name can overlap with course description

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

In case of a longer Course name and description an text overlap issue occurs
screen shot 2018-03-30 at 11 02 37

Publishing: Default course color meta not published

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

When publishing a course, the default course color from tailor is not published as meta data.

Expose schema type and metadata of the course through its index

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

The published repository index should contain the schema type and metadata of the repository.

Expected Behavior

The index of a single repository should contain these fields.

Current Behavior

The repository catalog, that holds all courses, does have these fields, while the index of a single repository doesn't.

Environment variables documentation gaps + runtime check?

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

When running the server (specifically for first use after install) if all environmental variables are not set the initial database feeding dies.

Expected Behavior

All required environmental variables should be mentioned in the docs and perhaps checked in runtime before starting server and/or requested script (like database seed). Rich error feedback should be provided, instead of currently:

Error: Unsupported config structure
    at validateConfig (/Users/marinko/projects/tailor/server/shared/storage/validation.js:8:15)
    at new FilesystemStorage (/Users/marinko/projects/tailor/server/shared/storage/providers/filesystem.js:20:14)
    at Object.create (/Users/marinko/projects/tailor/server/shared/storage/providers/filesystem.js:25:12)
    at Function.createProvider (/Users/marinko/projects/tailor/server/shared/storage/index.js:52:39)
    at new Storage (/Users/marinko/projects/tailor/server/shared/storage/index.js:7:29)
    at Object.<anonymous> (/Users/marinko/projects/tailor/server/shared/storage/index.js:56:18)
    at Module._compile (module.js:649:30)
    at Object.Module._extensions..js (module.js:660:10)
    at Module.load (module.js:561:32)
    at tryModuleLoad (module.js:501:12)
    at Function.Module._load (module.js:493:3)
    at Module.require (module.js:593:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/Users/marinko/projects/tailor/server/shared/storage/helpers.js:7:17)
    at Module._compile (module.js:649:30)
    at Object.Module._extensions..js (module.js:660:10)
    at Module.load (module.js:561:32)
    at tryModuleLoad (module.js:501:12)
    at Function.Module._load (module.js:493:3)
    at Module.require (module.js:593:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/Users/marinko/projects/tailor/server/teaching-element/te.model.js:6:44)
[nodemon] app crashed - waiting for file changes before starting...

Current Behavior

AUTH_JWT_SECRET is required in general.
STORAGE_PATH is required for db:seed, since it will fail if storage is not setup properly. By default storage is set to filesystem and STORAGE_PATH is not set, which causes failure in the script.

Add `publishedAt` date to the repository catalog info.

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

Additionally to what the title says, this date should probably be updated whenever something else gets published in this repository. If not, then there should be two dates, one which says when this repository got published by itself (through the repository settings page), and one that gets updated whenever something gets published in it.

Error displayed when adding a video link as perspective content

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

Please look at the attached screenshots

After adding a video link as video content an error is displayed stating the video can not be loaded (issue occurs with youtube/vimeo video links)

youtube link issue

video error console log

Text overflow issue in case of long Course description (with no spaces)

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

An overflowing issue occurs when typing a long Course description with no spaces as displayed in the screenshot below

overflowing issue tailor

Allow shorter iframes within the 'embed' learning element.

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

The current 300 px minimum height for iframes is too limiting in cases where users want to embed small items (such as single-row or small tables) within the iframe container. This leads to excessive blank space and a bad user experience in the LMS.

Expected Behavior

Ideally, the user could set the height to any height greater than 0px. A minimum of 100px could be sufficient if smaller heights could cause possible regressions.

I acknowledge that some issues with responsive reflow may occur on particularly short iframes, but that case and the relevant tradeoffs can be handled in presentation.

Current Behavior

Currently 300px is the minimum height; too much blank space.

Allow copying multiple items

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

Should there be a way of allowing the copy of multiple items at once.

Impossible to set default value in meta components

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Current Behavior

Currently, the default value set in the .activities-rc.json file gets overridden by the one in database, even if it doesn't exist. Ie. it gets set to undefined.

Failure Information (for bugs)

Offending line is here:

let value = get(this.activity, `data.${it.key}`);

Changing it to this fixes the issue:

const value = get(this.activity, `data.${it.key}`) || it.value;

Additional Information

Possibly related to #7

Store schema with repository instance

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

When a new repository is created it should preserve snapshot of current schema version from configuration. This would decouple repository from live configuration, and allow usage of legacy data (without manually keeping old outline configs).
Schema configuration update for existing repositories should be a opt-in process.

Issue when adding an activity below an Interactive Exercise

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

When trying to add an activity below an Interactive Exercise, i am unable to choose which activity to add (Objective and Interactive exercise are both level 2, and in this scenario i can only add Objective below an Interactive Exercise)

screenshot 1
screenshot 2

Improve UI for adding items

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Expected Behavior

We should make it more prominent. Perhaps a solution would be to increase the contrast by changing the color of the horizontal line and the plus symbol.

Current Behavior

screen shot 2018-04-11 at 12 23 45 pm

Hardcoded values in Create content repository modal

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

I am seeing hardcoded values "Example Schema 1" and "Example Schema 2" in Create content repository modal after modifying .activities-rc.json, I saw that it merges my config with defaults, shouldn't it choose my custom config over hardcoded default values? I am using develop branch.

Minor issue when adding new elements

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

After adding a new element below an element which contains sublevels (Make sure the added element is not a sublevel of the element above it, and that the element above it does not have its sublevels visible) all of the sublevels of the element above the added element become visible.

Steps to Reproduce

  1. Create a course that has multiple levels
  2. Add an element and a couple of sublevels to that element
  3. Hide the sublevels of that element
  4. Add another element below that element (make sure it's not a sublevel of that element) - Notice after adding this element, all of the sublevels of the element above it become visible

Issue with copy activity feature

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

Unable to copy activity(error displayed)
screen shot 2018-03-30 at 16 27 06

Missing margins between exam questions when statics are built

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

See in the image below, the margins between the 2 true/false questions are missing:
screen shot 2018-04-05 at 16 40 54

Steps to Reproduce

  1. In console type "npm run build" then "npm run dev:server"
  2. Navigate to "localhost:3000"
  3. Create a course and an exam within that course
  4. Add 2 questions to that exam - Notice there are no margins between those 2 questions

Enable seed data to work with custom schema

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

Current seed data uses the default schema. It would be useful if the seed data could work with custom schemas as well.

As a User I should be able to link existing activity

I'm submitting a...

  • [] Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Expected Behavior

In addition to creation and cloning, User should be able to link activity.

Wrong activity types shown as options for creating new activity on sub-level

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

Wrong activity types are shown as options for creating a new activity on sub-level when adding a new activity below the one on the same level.

Example schema

https://gist.github.com/ibebic/ff5ff1ba255a17b5b4c07826eb7efbc6

Steps to Reproduce

  1. Add the provided schema to project root folder (rename it to '.activities-rc.json')
  2. Run tailor
  3. Create one 'Top Level 1' activity
  4. Add sub-level 'Below TopLevel1'
  5. Try to add one more sub-level right below the previous one - notice that the offered activity types now are 'Below Top Level 2' and 'Below Top Level 2 also' along with the 'Below TopLevel1' activity

Small visual issue with embed when lowering the default height

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

When lowering the default height of an embed to a point where a scroll bar is needed(around 140px or less), the "Click to preview" mark gets repositioned to the bottom of the embed.
screen shot 2018-06-05 at 08 02 20

Publishing: 'assessments.json' files have duplicate fields

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

On published content, 'assessements.json' files have duplicate 'created_at', 'updated_at' and 'deleted_at' fields.

Steps to Reproduce

  1. Create a topic with a Perspective and at least one TLA
  2. Publish the created topic - notice the duplicate fields in the 'assessments.json' file

"...field is required" validation message prevents input

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context


For server issues
* node version: 8.9.4
* npm version: 5.6.0

For client issues
* Operating System: macOS Sierra 10.12.6
* Browser: Google Chrome Version 65.0.3325.181 (Official Build) (64-bit)

Expected Behavior

An input that has failed validation should be focusable by a mouse click.

Current Behavior

A required input field that has failed validation (was left blank) is not clickable. In other words, a user is unable to click on it to enter data. The widget is focusable using tab key though.

Failure Information (for bugs)

screen shot 2018-04-12 at 2 52 26 pm

Steps to Reproduce

  1. Have a required metadata field of type "INPUT" in your repo schema.
  2. Click on the field and then click away to fail the front-end validation. Get the "The xxx field is required." error message.
  3. Click on the field to attempt to enter data into it. The cursor does not appear.

Failure Logs


* Server log: none
* Browser console log: none

Issue with objective counter on the course in case of copying objectives

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

The objectives that are copied instead of created are not counted.
Counter works correctly when creating an objective after several copied objectives(all the copied objectives get accounted for)
screen shot 2018-03-29 at 10 26 42
Course 1 has 1 created topic and 9 copies (created in that order)
Course 2 has 1 created topic, 9 copies and then another created topic (created in that order)

Visual issue when copying items in course outline

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Expected Behavior

tailor_copy_icon_correct_04_04_18

Current Behavior

tailor_copy_icon_issue_04_04_18

Steps to Reproduce

  1. Build statics
  2. Launch Tailor server
  3. Go to any course outline
  4. Try to copy an item

As a User I should be able to reference existing element

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Expected Behavior

Upon clicking on add element button User should be able to navigate through any repo structure and reference existing element. Add small link icon in the element corner in order to indicate referenced (linked) element.

Issue when editing course name

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

Unable to return to the course name input field if the course name is empty.

Steps to Reproduce

  1. Create a course
  2. Enter course settings and erase the course name completely
  3. Click on the course description text box
  4. Notice you're unable to return to the course name input field

Number of topics within a course does not get updated

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

After Adding a new Topic within a course, number of topics in a Course does not get updated (notice the screenshot)

Steps to Reproduce

  1. Add a course
  2. Create 1 topic in the course
  3. Notice the number of topics within a course does not get updated (shows 0 topics and 1 knowledge check)
    topic display issue

Minor issue with "comments" field on activities

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

When typing a comment on an activity(without selecting POST), that comment persists when switching activities within a course.

As a User I should be able to copy element from other activity

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Expected Behavior

Upon clicking on add element button User should be able to navigate through any repo structure and copy existing element.

Add 'deleted_at' property to content repository when deleting it

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

If would be useful to be able to see via the published content when a content repository is deleted from the authoring platform. Please add a 'deleted_at' tag and publish info on deletion (but only if that content repository was already published)

Minor visual issue regarding video placeholders

I'm submitting a...

  • Bug report
  • Regression (a behavior that used to work and stopped working in a new release)
  • Feature request
  • Documentation issue or request

Context

After adding a video element to a perspective - when clicking on the video box, the placeholder gets slightly larger as displayed in the screenshot below (occurs with both video elements and Brightcove video elements):
screen shot 2018-03-29 at 10 05 05

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.