--- /datas2/moodles/moodle3.0.3+/moodle/blocks/moodleblock.class.php	2016-03-31 08:06:39.000000000 +0200
+++ /datas2/gitworkspace/moodle27/moodle2_version/blocks/moodleblock.class.php	2016-06-03 15:52:18.419246607 +0200
@@ -507,6 +507,26 @@
      * @return boolean
      */
     public function instance_copy($fromid) {
+    	//UNISTRA DEV
+    	global $DB;
+    	//transpose mdl_role_capabilities
+    	$fromcontext = context_block::instance($fromid);
+    	//retrieve role_capabilities derogations
+    	$derogations = $DB->get_records('role_capabilities', array('contextid'=>$fromcontext->id));
+    	if($derogations){
+    		foreach ($derogations as $derogation){
+    			unset($derogation->id);
+    			unset($derogation->timemodified);
+    			$derogation->modifierid = get_admin()->id;
+    			$derogation->contextid=$this->context->id;
+    			$DB->insert_record('role_capabilities', $derogation);
+    		}
+    		reload_all_capabilities();
+    		
+    		// Flush the cached again, as we have changed DB.
+    		cache::make('core', 'capabilities')->delete('core_capabilities');
+    	}
+    	//END UNISTRA DEV
         return true;
     }
 
