コード例 #1
0
ファイル: subdivision.inc.php プロジェクト: Blu2z/implsk
function CascadeDeleteSubdivision($SubdivisionID)
{
    global $nc_core, $db, $MODULE_FOLDER;
    $CatalogueID = $db->get_var("SELECT `Catalogue_ID` FROM `Subdivision` WHERE `Subdivision_ID` = '" . (int) $SubdivisionID . "'");
    // execute core action
    $nc_core->event->execute("dropSubdivisionPrep", $CatalogueID, $SubdivisionID);
    if (0 && nc_module_check_by_keyword("comments")) {
        include_once $MODULE_FOLDER . "comments/function.inc.php";
        // delete comment rules
        nc_comments::dropRule($db, array($CatalogueID, $SubdivisionID));
        // delete comments
        nc_comments::dropComments($db, $SubdivisionID, "Subdivision");
    }
    DeleteMessages($SubdivisionID);
    DeleteFromSubClass($SubdivisionID);
    DeleteSubdivisionDir($SubdivisionID);
    $db->query("DELETE FROM `Subdivision` WHERE `Subdivision_ID` = '" . (int) $SubdivisionID . "'");
    // execute core action
    $nc_core->event->execute("dropSubdivision", $CatalogueID, $SubdivisionID);
    return;
}
コード例 #2
0
ファイル: add.php プロジェクト: Blu2z/implsk
     $CommentData = nc_comments::getRuleData($db, array($catalogue, $sub, $cc, $message));
     $CommentRelationID = $CommentData['ID'];
     $comm_env = array($catalogue, $sub, $cc, $message);
     // do something
     switch (true) {
         case $CommentAccessID > 0 && $CommentRelationID:
             // update comment rules
             nc_comments::updateRule($db, $comm_env, $CommentAccessID, $CommentsEditRules, $CommentsDeleteRules);
             break;
         case $CommentAccessID > 0 && !$CommentRelationID:
             // add comment relation
             $CommentRelationID = nc_comments::addRule($db, $comm_env, $CommentAccessID, $CommentsEditRules, $CommentsDeleteRules);
             break;
         case $CommentAccessID <= 0 && $CommentRelationID:
             // delete comment rules
             nc_comments::dropRule($db, $comm_env);
             $CommentRelationID = 0;
             break;
     }
 }
 if ($resMsg) {
     if ($cc && !$user_table_mode && $IsChecked && $MODULE_VARS['subscriber'] && (!$MODULE_VARS['subscriber']['VERSION'] || $MODULE_VARS['subscriber']['VERSION'] == 1)) {
         eval("\$mailbody = \"" . $subscribeTemplate . "\";");
         subscribe_sendmail($to_cc ? $to_cc : $cc, $mailbody);
     }
     if ($cc_env['File_Mode']) {
         $nc_parent_field_path = $file_class->get_parent_fiend_path('AddActionTemplate');
         $nc_field_path = $file_class->get_field_path('AddActionTemplate');
         $action_exists = filesize($nc_field_path) > 0 ? true : false;
     }
     if ($cc_env['File_Mode'] && $action_exists) {
コード例 #3
0
ファイル: catalog.inc.php プロジェクト: Blu2z/implsk
function CascadeDeleteCatalogue($catalogueId)
{
    global $nc_core, $db, $MODULE_FOLDER;
    $catalogueId = (int) $catalogueId;
    $subClasses = (array) $db->get_results("SELECT `Subdivision_ID`, `Sub_Class_ID`, `Class_ID` FROM `Sub_Class` WHERE `Catalogue_ID` = {$catalogueId}", ARRAY_A);
    // execute core action
    $nc_core->event->execute("dropCataloguePrep", $catalogueId);
    $subdivisionsToDelete = array();
    //delete messages
    foreach ($subClasses as $subClass) {
        $subdivisionId = (int) $subClass['Subdivision_ID'];
        $subClassId = (int) $subClass['Sub_Class_ID'];
        $classId = (int) $subClass['Class_ID'];
        $subdivisionsToDelete[] = $subdivisionId;
        $subClassesToDelete[] = $subClassId;
        $messages = (array) $db->get_results("SELECT `Message_ID` FROM `Message{$classId}` WHERE `Sub_Class_ID` = {$subClassId}", ARRAY_A);
        $messagesToDelete = array();
        foreach ($messages as $message) {
            $messagesToDelete[] = (int) $message['Message_ID'];
        }
        if (count($messagesToDelete) > 0) {
            // execute core action
            $nc_core->event->execute("dropMessagePrep", $catalogueId, $subdivisionId, $subClassId, $classId, $messagesToDelete);
            // delete messages
            foreach ($messagesToDelete as $messageId) {
                DeleteMessageFiles($classId, $messageId);
                $db->query("DELETE FROM `Message{$classId}` WHERE `Message_ID` = {$messageId}");
            }
            // execute core action
            $nc_core->event->execute("dropMessage", $catalogueId, $subdivisionId, $subClassId, $classId, $messagesToDelete);
        }
        //delete subclass
        // execute core action
        $nc_core->event->execute("dropSubClassPrep", $catalogueId, $subdivisionId, $subClassId);
        $db->query("DELETE FROM `Sub_Class` WHERE `Sub_Class_ID` = {$subClassId}");
        DeleteSubClassDirAlways($subdivisionId, $subClassId);
        // execute core action
        $nc_core->event->execute("dropSubClass", $catalogueId, $subdivisionId, $subClassId);
    }
    if (count($subdivisionsToDelete) > 0) {
        // execute core action
        $nc_core->event->execute("dropSubdivisionPrep", $catalogueId, $subdivisionsToDelete);
        foreach ($subdivisionsToDelete as $subdivisionId) {
            $db->query("DELETE FROM `Subdivision` WHERE `Subdivision_ID` = {$subdivisionId}");
            DeleteSubdivisionDir($subdivisionId);
        }
        // execute core action
        $nc_core->event->execute("dropSubdivision", $catalogueId, $subdivisionsToDelete);
    }
    if (nc_module_check_by_keyword("comments")) {
        include_once $MODULE_FOLDER . "comments/function.inc.php";
        // delete comment rules
        nc_comments::dropRule($db, array($catalogueId));
        // delete comments
        nc_comments::dropComments($db, $catalogueId, "Catalogue");
    }
    // delete catalogue
    $db->query("DELETE FROM `Catalogue` WHERE `Catalogue_ID` = {$catalogueId}");
    // execute core action
    $nc_core->event->execute("dropCatalogue", $catalogueId);
    return;
}