Blog

Product news and other information from the developers of Portfolio.
Showing 1 - 5 of 93
  • New image measurement handler, Heap Analytics user tracking added and default permissions warning removed

    Posted by: Robin Smidsrød 7. Sep 2017 15:41

    Today's update (e9988b9) brings with it the following changes:

    New features

    • New request handler for images was added that make it possible to quickly measure the dimensions of a rectangle in an image which can be used directly in the findinpicture app. This handler is available in the edit top menu. A copy-to-clipboard button is also available which is focused after a selection is done. Some SVG images are not compatible with this rendering method and can't be properly measured. This issue might be fixed in a later update.
    • Added user client-side event tracking using HeapAnalytics.com. This can be selectively enabled for a site by setting the heap_analytics_id configuration variable.
    • When you're creating exercises (app-input objects) it is now possible to quickly look up the app you want to use with the app selector located next to the custom_init input box in the object editor.

    Enhancements

    • The list_config request handler has been completely rewritten to use the new list_config template function.

    Bugfixes

    • When new objects were created a warning about broken default permissions was shown. This should no longer happen if no default permissions are set.

    Feature removals / deprecations

    • The object attributes structure, version and aggregation_level was removed, along with their backing database columns. They have never been used for anything useful. They were removed to save space and decrease user interface complexity.
    You must be logged in to read or post comments
  • Default permissions, CodeMirror editor improvements and bugfixes

    Posted by: Robin Smidsrød 15. Aug 2017 15:13

    Today's update (a1a3d64) brings with it the following changes:

    New features

    • It's now possible to save a set of default permissions which will be applied whenever you create new objects or containers.
      • These permissions are also applied when you unpack zip files or upload files directly.
      • When you create voice recordings using the recorder app these default permissions are not applied.
      • If you unpack a zip file over existing content the permissions of the existing content will not be modified, although the content will be.
    • A button has been added to the metadata tab of the container and object editor to allow for generation of the LOM XML content. This should make it easier to add additional titles in other languages.
    • A help feature has been added to the CodeMirror editor. Press F1 while the cursor is inside the editor to access the help feature.
    • It's now possible to randomize and sort lines in the CodeMirror editor. You use the keys F8 and F9 respectively to perform these actions.

    Enhancements

    • The current_timestamp template function now returns a DateTime instance instead of a string, allowing for more date math and other behavior. The returned timestamp always has the timezone set to UTC, instead of using local timezone. This does mean that users will see timestamps with an offset from what they're used to, but this can't be improved unless we have some way of gathering the time zone from the browser and storing it in the session (or cookies).
    • A lot of the behavior around adding and removing permissions to containers and objects has been changed. It should now be more consistent all over.
    • Some strings in the Spanish translation was updated.

    Bugfixes

    • When the create_response template function was used and the CodeMirror editor was used, saving and sending in content was impossible. This has now been fixed.
    • HTTP redirects didn't include a CORS header, even if one was specified for the site. This has been fixed.

    Feature removals / deprecations

    • Removed the old and unused get_isbn HTTP request handler.
    You must be logged in to read or post comments
  • Rewritten create_response() feature and various other improvements

    Posted by: Robin Smidsrød 27. Jun 2017 15:30

    Today's update (e736cb2) brings with it the following changes:

    New features

    • The create_response() template function has been more or less completely rewritten. It is now rendered on the page instead of opening a new window/tab. It allows inline editing of a response object. This should improve useability for students quite a lot.
    • It is now possible to see how much blob storage space a user has consumed.

    Enhancements

    • Added font-size option to the simple TinyMCE editor.
    • Improved message when object is saved and sent to supervisor.
    • When rendering origin object while editing a response object, the response is no longer shown in the dropdown, avoiding double display of the same content.
    • Inconsistent styles for info/warning/error messages has been cleaned up.
    • Test suite has been improved quite a lot. It can now be run in continuous integration services.

    Bugfixes

    • The human_size() template function now works with the value 0.
    • Fixed issue with inconsistent padding/margin around some TinyMCE toolbar elements.

    Feature removals / deprecations

    • Several JavaScript functions which are no longer in use have been removed:
      • PORTFOLIO.helpSuccessHandler
      • PORTFOLIO.helpFailureHandler
      • PORTFOLIO.getAjaxObject
      • PORTFOLIO.PopDocAjax
      • PORTFOLIO.contentSuccessHandler
    You must be logged in to read or post comments
  • Unexpected downtime because of hardware issue

    Posted by: Robin Smidsrød 8. Jun 2017 08:24

    On the 8th of June 2017 between 8:25 and 8:55 CET our services where unexpectedly down because of a hardware issue with our load-balancer.

    The issue has been corrected and services are back up. We're sorry for the inconvenience.

    You must be logged in to read or post comments
  • Improved performance, WAV to MP3 transcoding and lots of other improvements

    Posted by: Robin Smidsrød 23. May 2017 16:57

    Today's update (4bbbf6f) brings with it the following changes:

    Performance improvements

    • Rewritten most of the database functions related to filesystem tree traversal. Should almost double performance in a lot of situations, allowing for most page loads to be faster. Several redundant functions were removed or inlined to make everything faster.
    • Container sort key is now consistently stored in the database, allowing for some performance improvements.
    • The permission-checking database functions were also rewritten, giving almost a 10 times performance improvement in most situations.
    • When navigating to the root level in the file manager, it was not uncommon to get a timeout. This should now be fixed. Now the root level takes about 10-20 seconds to render. Not optimal, but within the timeout threshold. It is no longer possible to list the root level with all user's home containers.

    New features

    • Wave audio files which are recorded or uploaded are now automatically converted to MP3 to save backend storage space. Because of the smaller size they should also download faster to clients.
    • Automatic playback of next audio object when one has finished playback is now possible by customizing page templates.
    • Video playback now logs playback duration to Google Analytics, allowing for calculation of royalty payments on video files as well as audio files.

    Enhancements

    • The validation logic in the file manager was rewritten as part of the tree-traversal performance improvement. It should now be more consistent and faster. There is one behavior difference to the old implementation. The containers and objects are returned from the validator in no specific order, so adding them to a course would not yield a traversal-specific order. It is therefore recommended to only use it to add aux. objects using this method.
    • The element_favicon template is now overridable.
    • A new favorite/bookmark icon was added. Now Portfolio has a slightly better design profile. Bookmark icons should now be available in larger sizes.
    • When you're editing an object it is now possible to see which courses it is part of, regardless of course permissions.
    • Improve HTML markup error message to take into account if you're using WYSIWYG editor or not.
    • The json, xml and view request handlers are now documented.

    Bugfixes

    • Avoid using NPAPI plugins to render video in browsers where these are no longer allowed. Affecting Microsoft Edge, Firefox v52 and above and Chrome v45 and above.
    • All timestamps should now be stored with time zone information, hopefully fixing most timestamp offset issues.
    • Audio file autoplay is always disabled on mobile devices because most mobile devices don't allow it without clicking first.
    • The get_containers() method on course instances was renamed to get_container_ids().
    • Only complete user-interface languages are now used to autoselect a language based on browser preference.
    • Fixed missing translations in TinyMCE if using Portuguese language.

    Feature removals / deprecations

    • Removed several database functions, tables and views which are no longer in use.
    • Removed a duplicate database index, slightly improving performance.
    You must be logged in to read or post comments
Showing 1-5 of 93
Next Last

Login