コード例 #1
0
ファイル: subscribers.php プロジェクト: askzap/ultimate
                fn_update_subscriber($v, $subscriber_id);
            }
        }
    }
    if ($mode == 'm_delete') {
        fn_delete_subscribers($_REQUEST['subscriber_ids']);
    }
    if ($mode == 'delete') {
        if (!empty($_REQUEST['subscriber_id'])) {
            fn_delete_subscribers((array) $_REQUEST['subscriber_id']);
        }
    }
    return array(CONTROLLER_STATUS_OK, 'subscribers' . $suffix);
}
if ($mode == 'manage') {
    list($subscribers, $search) = fn_get_subscribers($_REQUEST, Registry::get('settings.Appearance.admin_elements_per_page'));
    foreach ($subscribers as &$subscriber) {
        if (!empty($subscriber['list_ids'])) {
            $subscriber['mailing_lists'] = array();
            foreach (explode(',', $subscriber['list_ids']) as $list_id) {
                $subscriber['mailing_lists'][$list_id] = fn_get_mailing_list_data($list_id, DESCR_SL);
                // get additional user-specific data for each mailing list (like lang_code)
                $_where = array('list_id' => $list_id, 'subscriber_id' => $subscriber['subscriber_id']);
                $subscriber_list_data = db_get_row("SELECT * FROM ?:user_mailing_lists WHERE ?w", $_where);
                $subscriber['mailing_lists'][$list_id] = array_merge($subscriber['mailing_lists'][$list_id], $subscriber_list_data);
                $subscriber['lang_code'] = $subscriber['mailing_lists'][$list_id]['lang_code'];
            }
            unset($subscriber['list_ids']);
        }
    }
    $mailing_lists = db_get_hash_array("SELECT m.list_id, d.object, ?:newsletters.newsletter_id as register_autoresponder FROM ?:mailing_lists AS m INNER JOIN ?:common_descriptions AS d ON m.list_id=d.object_id LEFT JOIN ?:newsletters ON m.register_autoresponder = ?:newsletters.newsletter_id AND ?:newsletters.status = 'A' WHERE d.object_holder='mailing_lists' AND d.lang_code = ?s", 'list_id', DESCR_SL);
コード例 #2
0
ファイル: subscribers.php プロジェクト: diedsmiling/busenika
                        db_query("UPDATE ?:user_mailing_lists SET ?u WHERE subscriber_id = ?i AND list_id = ?i", $_data, $subscriber_id, $list_id);
                    }
                }
                db_query("DELETE FROM ?:user_mailing_lists WHERE subscriber_id = ?i AND list_id NOT IN(?n)", $subscriber_id, $v['list_ids']);
            } else {
                db_query("DELETE FROM ?:user_mailing_lists WHERE subscriber_id = ?i", $subscriber_id);
            }
        }
    }
    if ($mode == 'delete') {
        fn_delete_subscribers($_REQUEST['subscriber_ids']);
    }
    return array(CONTROLLER_STATUS_OK, "subscribers.manage");
}
if ($mode == 'manage') {
    list($subscribers, $search) = fn_get_subscribers($_REQUEST);
    foreach ($subscribers as &$subscriber) {
        if (!empty($subscriber['list_ids'])) {
            $subscriber['mailing_lists'] = array();
            foreach (explode(',', $subscriber['list_ids']) as $list_id) {
                $subscriber['mailing_lists'][$list_id] = fn_get_mailing_list_data($list_id, DESCR_SL);
                // get additional user-specific data for each mailing list (like format and lang_code)
                $_where = array('list_id' => $list_id, 'subscriber_id' => $subscriber['subscriber_id']);
                $subscriber_list_data = db_get_row("SELECT * FROM ?:user_mailing_lists WHERE ?w", $_where);
                $subscriber['mailing_lists'][$list_id] = array_merge($subscriber['mailing_lists'][$list_id], $subscriber_list_data);
            }
            unset($subscriber['list_ids']);
        }
    }
    $mailing_lists = db_get_hash_single_array("SELECT m.list_id, d.object FROM ?:mailing_lists m INNER JOIN ?:common_descriptions d ON m.list_id=d.object_id WHERE d.object_holder='mailing_lists' AND d.lang_code = ?s", array('list_id', 'object'), DESCR_SL);
    $view->assign('mailing_lists', $mailing_lists);