This repository has been archived on 2025-06-21. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
suitedesk/modules/node_clone/clone.api.php

47 lines
1.2 KiB
PHP

<?php
/**
* @file
* API documentation for the Node clone module.
*/
/**
* Alter the node before saving a clone.
*
* @param $node
* Reference to the fully loaded node object being saved (the clone) that
* can be altered as needed.
* @param $original_node
* A copy of the fully loaded node object being cloned (the original).
* @param $method
* The cloning method which can be either 'prepopulate' or 'save-edit'.
*
* @see clone_node_save()
* @see drupal_alter()
*/
function hook_clone_node_alter(&$node, $original_node, $method) {
if ($original_node->type = 'special') {
$node->special = special_something();
}
}
/**
* Alter the access to the ability to clone a given node.
*
* @param bool $access
* Reference to the boolean determining if cloning should be allowed on a
* given node.
* @param $node
* The fully loaded node object being considered for cloning.
*
* @see clone_access_cloning()
* @see drupal_alter()
*/
function hook_clone_access_alter(&$access, $node) {
global $user;
// Only allow cloning of nodes posted to groups you belong to.
// This function doesn't really exist, but you get the idea...
if (!og_user_is_member_of_group_the_node_is_in($user, $node)) {
$access = FALSE;
}
}