← Back to team overview

mahara-contributors team mailing list archive

[Bug 1569552] Re: White screen when copying collection / page

 

Ok, from what I've found this copy issue only exists if you copy a page/collection from another user using either the
 Portfolio -> Page 'Copy a page' button or Portfolio -> Collection 'Copy a collection' button that takes you to the 'Copy a page or collection' page and you click the copy button there for an item.

If you copy a page/collection via the copy link on the page itself it
works fine.

The fix here https://reviews.mahara.org/#/c/6332/ fixes the issue.

To test:

1) Create a page and add a 'note' block to it
2) Share the page with registered users and allow copying from advanced options
3) Log in as another user - go to the page and click 'copy' - the page copies fine
4) Go to Portfolio -> Pages and click 'Copy a page' then click the copy button next to the page owned by the other user - page fails to copy.

With patch in place both ways should copy as expected

-- 
You received this bug notification because you are a member of Mahara
Contributors, which is subscribed to Mahara.
Matching subscriptions: Subscription for all Mahara Contributors -- please ask on #mahara-dev or mahara.org forum before editing or unsubscribing it!
https://bugs.launchpad.net/bugs/1569552

Title:
  White screen when copying collection / page

Status in Mahara:
  Incomplete

Bug description:
  When attempting to copy a collection or page on 16.04RC1, a white
  screen appears and the following error is reported to the logs:

  [12-Apr-2016 13:22:03] PHP Fatal error:  Call to undefined function
  artefact_get_descendants() in /home/darren/public_html/m1604/blocktype/lib.php
  on line 1548
  [12-Apr-2016 13:22:03] PHP Stack trace:
  [12-Apr-2016 13:22:03] PHP   1. {main}()
  /home/darren/public_html/m1604/view/choosetemplate.php:0
  [12-Apr-2016 13:22:03] PHP   2. pieform()
  /home/darren/public_html/m1604/view/choosetemplate.php:30
  [12-Apr-2016 13:22:03] PHP   3. Pieform::process()
  /home/darren/public_html/m1604/lib/mahara.php:4493
  [12-Apr-2016 13:22:03] PHP   4. Pieform->__construct()
  /home/darren/public_html/m1604/lib/pieforms/pieform.php:161
  [12-Apr-2016 13:22:03] PHP   5. call_user_func_array()
  /home/darren/public_html/m1604/lib/pieforms/pieform.php:540
  [12-Apr-2016 13:22:03] PHP   6. createview_submit()
  /home/darren/public_html/m1604/lib/pieforms/pieform.php:540
  [12-Apr-2016 13:22:03] PHP   7. Collection::create_from_template()
  /home/darren/public_html/m1604/lib/view.php:6436
  [12-Apr-2016 13:22:03] PHP   8. View::create_from_template()
  /home/darren/public_html/m1604/lib/collection.php:292
  [12-Apr-2016 13:22:03] PHP   9. View->copy_contents()
  /home/darren/public_html/m1604/lib/view.php:400
  [12-Apr-2016 13:22:03] PHP  10. BlockInstance->copy()
  /home/darren/public_html/m1604/lib/view.php:5445

  This appears to be due to the artefact_get_descendants() function not
  being available to the BlockInstance::copy() function in
  blocktype/lib.php:1548

  Adding require_once(get_config('docroot') . 'artefact/lib.php');
  appears to clear the issue up.

  Diff attached.

To manage notifications about this bug go to:
https://bugs.launchpad.net/mahara/+bug/1569552/+subscriptions


References