summaryrefslogtreecommitdiff
path: root/admin
diff options
context:
space:
mode:
authorChristian Fowler <spider@viovio.com>2005-12-09 07:04:17 +0000
committerChristian Fowler <spider@viovio.com>2005-12-09 07:04:17 +0000
commite7bc7b34fbd41030b3df705700c3fb9caaa54b19 (patch)
tree7d9390a86f7ab55334e0058dd8b39429377d4a48 /admin
parente686c2762faae2d487381aede0ddcc9662ebbd52 (diff)
downloadnewsletters-e7bc7b34fbd41030b3df705700c3fb9caaa54b19.tar.gz
newsletters-e7bc7b34fbd41030b3df705700c3fb9caaa54b19.tar.bz2
newsletters-e7bc7b34fbd41030b3df705700c3fb9caaa54b19.zip
first round of changes to get things functional in bitweaver
Diffstat (limited to 'admin')
-rw-r--r--admin/admin_newsletter_subscriptions.php16
-rw-r--r--admin/index.php84
-rw-r--r--admin/schema_inc.php67
3 files changed, 72 insertions, 95 deletions
diff --git a/admin/admin_newsletter_subscriptions.php b/admin/admin_newsletter_subscriptions.php
index 45ab8d3..30615f9 100644
--- a/admin/admin_newsletter_subscriptions.php
+++ b/admin/admin_newsletter_subscriptions.php
@@ -1,27 +1,27 @@
<?php
-// $Header: /cvsroot/bitweaver/_bit_newsletters/admin/admin_newsletter_subscriptions.php,v 1.1 2005/12/09 06:59:54 bitweaver Exp $
+// $Header: /cvsroot/bitweaver/_bit_newsletters/admin/admin_newsletter_subscriptions.php,v 1.2 2005/12/09 07:04:17 spiderr Exp $
// Copyright (c) 2002-2003, Luis Argerich, Garland Foster, Eduardo Polidor, et. al.
// All Rights Reserved. See copyright.txt for details and a complete list of authors.
// Licensed under the GNU LESSER GENERAL PUBLIC LICENSE. See license.txt for details.
// Initialization
-require_once( '../../tiki_setup_inc.php' );
+require_once( '../../bit_setup_inc.php' );
include_once( NEWSLETTERS_PKG_PATH.'nl_lib.php' );
if ($feature_newsletters != 'y') {
$smarty->assign('msg', tra("This feature is disabled").": feature_newsletters");
- $gTikiSystem->display( 'error.tpl' );
+ $gBitSystem->display( 'error.tpl' );
die;
}
if (!isset($_REQUEST["nl_id"])) {
$smarty->assign('msg', tra("No newsletter indicated"));
- $gTikiSystem->display( 'error.tpl' );
+ $gBitSystem->display( 'error.tpl' );
die;
}
@@ -32,7 +32,7 @@ $smarty->assign('individual', 'n');
if ($userlib->object_has_one_permission($_REQUEST["nl_id"], 'newsletter')) {
$smarty->assign('individual', 'y');
- if ($tiki_p_admin != 'y') {
+ if ($bitweaver.orgi_p_admin != 'y') {
$perms = $userlib->get_permissions(0, -1, 'perm_name_desc', '', 'newsletters');
foreach ($perms["data"] as $perm) {
@@ -51,10 +51,10 @@ if ($userlib->object_has_one_permission($_REQUEST["nl_id"], 'newsletter')) {
}
}
-if ($tiki_p_admin_newsletters != 'y') {
+if ($bitweaver.orgi_p_admin_newsletters != 'y') {
$smarty->assign('msg', tra("You dont have permission to use this feature"));
- $gTikiSystem->display( 'error.tpl' );
+ $gBitSystem->display( 'error.tpl' );
die;
}
@@ -149,6 +149,6 @@ include_once( CATEGORIES_PKG_PATH.'categorize_list_inc.php' );
*/
ask_ticket('admin-nl-subsriptions');
// Display the template
-$gTikiSystem->display( 'tikipackage:newsletters/admin_newsletter_subscriptions.tpl');
+$gBitSystem->display( 'bitweaver.orgipackage:newsletters/admin_newsletter_subscriptions.tpl');
?>
diff --git a/admin/index.php b/admin/index.php
index 775d227..cb67726 100644
--- a/admin/index.php
+++ b/admin/index.php
@@ -1,59 +1,18 @@
<?php
-// $Header: /cvsroot/bitweaver/_bit_newsletters/admin/Attic/index.php,v 1.1 2005/12/09 06:59:54 bitweaver Exp $
+// $Header: /cvsroot/bitweaver/_bit_newsletters/admin/Attic/index.php,v 1.2 2005/12/09 07:04:17 spiderr Exp $
// Copyright (c) 2002-2003, Luis Argerich, Garland Foster, Eduardo Polidor, et. al.
// All Rights Reserved. See copyright.txt for details and a complete list of authors.
// Licensed under the GNU LESSER GENERAL PUBLIC LICENSE. See license.txt for details.
// Initialization
-require_once( '../../tiki_setup_inc.php' );
-
+require_once( '../../bit_setup_inc.php' );
include_once( NEWSLETTERS_PKG_PATH.'nl_lib.php' );
+$gBitSystem->verifyPackage( 'newsletters' );
+$gBitSystem->verifyPermission( 'tiki_p_admin_newsletters' );
-if ($feature_newsletters != 'y') {
- $smarty->assign('msg', tra("This feature is disabled").": feature_newsletters");
-
- $gTikiSystem->display( 'error.tpl' );
- die;
-}
-
-if (!isset($_REQUEST["nl_id"])) {
- $_REQUEST["nl_id"] = 0;
-}
-
-$smarty->assign('nl_id', $_REQUEST["nl_id"]);
-
-$smarty->assign('individual', 'n');
-
-if ($userlib->object_has_one_permission($_REQUEST["nl_id"], 'newsletter')) {
- $smarty->assign('individual', 'y');
-
- if ($tiki_p_admin != 'y') {
- $perms = $userlib->get_permissions(0, -1, 'perm_name_desc', '', 'newsletters');
-
- foreach ($perms["data"] as $perm) {
- $perm_name = $perm["perm_name"];
-
- if ($userlib->object_has_permission($user, $_REQUEST["nl_id"], 'newsletter', $perm_name)) {
- $$perm_name = 'y';
-
- $smarty->assign("$perm_name", 'y');
- } else {
- $$perm_name = 'n';
-
- $smarty->assign("$perm_name", 'n');
- }
- }
- }
-}
-
-if ($tiki_p_admin_newsletters != 'y') {
- $smarty->assign('msg', tra("You do not have permission to use this feature"));
-
- $gTikiSystem->display( 'error.tpl' );
- die;
-}
+require_once( NEWSLETTERS_PKG_PATH.'lookup_newsletter_inc.php' );
if ($_REQUEST["nl_id"]) {
$info = $nllib->get_newsletter($_REQUEST["nl_id"]);
@@ -68,15 +27,13 @@ if ($_REQUEST["nl_id"]) {
$info["validate_addr"] = 'y';
}
-$smarty->assign('info', $info);
+$gBitSmarty->assign('info', $info);
if (isset($_REQUEST["remove"])) {
- check_ticket('admin-nl');
$nllib->remove_newsletter($_REQUEST["remove"]);
}
if (isset($_REQUEST["save"])) {
- check_ticket('admin-nl');
if (isset($_REQUEST["allow_user_sub"]) && $_REQUEST["allow_user_sub"] == 'on') {
$_REQUEST["allow_user_sub"] = 'y';
} else {
@@ -117,8 +74,8 @@ if (isset($_REQUEST["save"])) {
$info["unsub_msg"] = 'y';
$info["validate_addr"] = 'y';
//$info["frequency"] = 7 * 24 * 60 * 60;
- $smarty->assign('nl_id', 0);
- $smarty->assign('info', $info);
+ $gBitSmarty->assign('nl_id', 0);
+ $gBitSmarty->assign('info', $info);
}
if ( empty( $_REQUEST["sort_mode"] ) ) {
@@ -133,7 +90,7 @@ if (!isset($_REQUEST["offset"])) {
$offset = $_REQUEST["offset"];
}
-$smarty->assign_by_ref('offset', $offset);
+$gBitSmarty->assign_by_ref('offset', $offset);
if (isset($_REQUEST["find"])) {
$find = $_REQUEST["find"];
@@ -141,29 +98,29 @@ if (isset($_REQUEST["find"])) {
$find = '';
}
-$smarty->assign('find', $find);
+$gBitSmarty->assign('find', $find);
-$smarty->assign_by_ref('sort_mode', $sort_mode);
+$gBitSmarty->assign_by_ref('sort_mode', $sort_mode);
$channels = $nllib->list_newsletters($offset, $maxRecords, $sort_mode, $find);
$cant_pages = ceil($channels["cant"] / $maxRecords);
-$smarty->assign_by_ref('cant_pages', $cant_pages);
-$smarty->assign('actual_page', 1 + ($offset / $maxRecords));
+$gBitSmarty->assign_by_ref('cant_pages', $cant_pages);
+$gBitSmarty->assign('actual_page', 1 + ($offset / $maxRecords));
if ($channels["cant"] > ($offset + $maxRecords)) {
- $smarty->assign('next_offset', $offset + $maxRecords);
+ $gBitSmarty->assign('next_offset', $offset + $maxRecords);
} else {
- $smarty->assign('next_offset', -1);
+ $gBitSmarty->assign('next_offset', -1);
}
// If offset is > 0 then prev_offset
if ($offset > 0) {
- $smarty->assign('prev_offset', $offset - $maxRecords);
+ $gBitSmarty->assign('prev_offset', $offset - $maxRecords);
} else {
- $smarty->assign('prev_offset', -1);
+ $gBitSmarty->assign('prev_offset', -1);
}
-$smarty->assign_by_ref('channels', $channels["data"]);
+$gBitSmarty->assign_by_ref('channels', $channels["data"]);
// Fill array with possible number of questions per page
/*
@@ -176,16 +133,15 @@ for ($i = 0; $i < 90; $i++) {
$freqs[] = $aux;
}
-$smarty->assign('freqs', $freqs);
+$gBitSmarty->assign('freqs', $freqs);
*/
/*
$cat_type='newsletter';
$cat_objid = $_REQUEST["nl_id"];
include_once( CATEGORIES_PKG_PATH.'categorize_list_inc.php' );
*/
-ask_ticket('admin-nl');
// Display the template
-$gTikiSystem->display( 'tikipackage:newsletters/admin_newsletters.tpl');
+$gBitSystem->display( 'bitpackage:newsletters/admin_newsletters.tpl');
?>
diff --git a/admin/schema_inc.php b/admin/schema_inc.php
index 2e96914..104076f 100644
--- a/admin/schema_inc.php
+++ b/admin/schema_inc.php
@@ -2,14 +2,6 @@
$tables = array(
-'tiki_newsletter_subscriptions' => "
- nl_id I4 PRIMARY,
- email C(160) PRIMARY,
- code C(32),
- valid C(1),
- subscribed I8
-",
-
'tiki_newsletters' => "
nl_id I4 AUTO PRIMARY,
name C(200),
@@ -25,37 +17,66 @@ $tables = array(
frequency I8
",
+'tiki_newsletter_subscriptions' => "
+ nl_id I4 PRIMARY,
+ email C(160) PRIMARY,
+ code C(32),
+ valid C(1),
+ subscribed I8,
+ is_user C(1) NOTNULL default 'n'
+ CONSTRAINTS ', CONSTRAINT `tiki_nl_sub_nl_id_ref` FOREIGN KEY (`nl_id`) REFERENCES `".BIT_DB_PREFIX."tiki_newsletters`( `nl_id` )'
+",
+
'tiki_sent_newsletters' => "
edition_id I4 AUTO PRIMARY,
nl_id I4 NOTNULL,
users I8,
sent I8,
subject C(200),
- data B
+ data X
+ CONSTRAINTS ', CONSTRAINT `tiki_nl_sent_nl_id_ref` FOREIGN KEY (`nl_id`) REFERENCES `".BIT_DB_PREFIX."tiki_newsletters`( `nl_id` )'
+",
+
+'tiki_newsletter_groups_map' => "
+ nl_id I4 NOTNULL PRIMARY,
+ group_id I4 NOTNULL PRIMARY,
+ code C(32)
+ CONSTRAINTS ', CONSTRAINT `tiki_nl_groups_nl_id_ref` FOREIGN KEY (`nl_id`) REFERENCES `".BIT_DB_PREFIX."tiki_newsletters`( `nl_id` ),
+ , CONSTRAINT `tiki_nl_groups_id_ref` FOREIGN KEY (`group_id`) REFERENCES `".BIT_DB_PREFIX."users_groups`( `group_id` )'
"
);
-global $gTikiInstaller;
+global $gBitInstaller;
foreach( array_keys( $tables ) AS $tableName ) {
- $gTikiInstaller->registerSchemaTable( NEWSLETTERS_PKG_DIR, $tableName, $tables[$tableName] );
+ $gBitInstaller->registerSchemaTable( NEWSLETTERS_PKG_DIR, $tableName, $tables[$tableName] );
}
+$gBitInstaller->registerPackageInfo( NEWSLETTERS_PKG_NAME, array(
+ 'description' => "Newsletters is for emailing users updates about your site.",
+ 'license' => '<a href="http://www.gnu.org/licenses/licenses.html#LGPL">LGPL</a>',
+ 'version' => '1.0',
+ 'state' => 'R1',
+ 'dependencies' => '',
+) );
-$gTikiInstaller->registerSchemaDefault( NEWSLETTERS_PKG_DIR, array(
-
- "INSERT INTO `".TIKI_DB_PREFIX."tiki_menu_options` (`menu_id` , `type` , `name` , `url` , `position` , `section` , `perm` , `groupname`) VALUES (42,'s','Newsletters','tiki-newsletters.php',900,'feature_newsletters','','')",
- "INSERT INTO `".TIKI_DB_PREFIX."tiki_menu_options` (`menu_id` , `type` , `name` , `url` , `position` , `section` , `perm` , `groupname`) VALUES (42,'o','Send newsletters','tiki-send_newsletters.php',905,'feature_newsletters','tiki_p_admin_newsletters','')",
- "INSERT INTO `".TIKI_DB_PREFIX."tiki_menu_options` (`menu_id` , `type` , `name` , `url` , `position` , `section` , `perm` , `groupname`) VALUES (42,'o','Admin newsletters','tiki-admin_newsletters.php',910,'feature_newsletters','tiki_p_admin_newsletters','')",
-
- "INSERT INTO `".TIKI_DB_PREFIX."users_permissions` (`perm_name`, `perm_desc`, `level`, `package`) VALUES ('tiki_p_admin_newsletters', 'Can admin newsletters', 'editors', 'newsletters')",
- "INSERT INTO `".TIKI_DB_PREFIX."users_permissions` (`perm_name`, `perm_desc`, `level`, `package`) VALUES ('tiki_p_subscribe_newsletters', 'Can subscribe to newsletters', 'basic', 'newsletters')",
- "INSERT INTO `".TIKI_DB_PREFIX."users_permissions` (`perm_name`, `perm_desc`, `level`, `package`) VALUES ('tiki_p_subscribe_email', 'Can subscribe any email to newsletters', 'editors', 'newsletters')",
-
-
- "INSERT INTO `".TIKI_DB_PREFIX."tiki_preferences`(`package`,`name`,`value`) VALUES ('', 'feature_newsletters','n')"
+// ### Indexes
+$indices = array (
+ 'tiki_nl_sub_nl_idx' => array( 'table' => 'tiki_newsletter_subscriptions', 'cols' => 'nl_id', 'opts' => NULL ),
+ 'tiki_nl_sub_email_idx' => array( 'table' => 'tiki_newsletter_subscriptions', 'cols' => 'email', 'opts' => NULL ),
+ 'tiki_nl_sent_nl_idx' => array( 'table' => 'tiki_sent_newsletters', 'cols' => 'nl_id', 'opts' => NULL ),
+ 'tiki_nl_group_idx' => array( 'table' => 'tiki_newsletter_groups', 'cols' => 'group_id', 'opts' => NULL ),
+ 'tiki_nl_group_nl_idx' => array( 'table' => 'tiki_newsletter_groups', 'cols' => 'nl_id', 'opts' => NULL ),
+);
+$gBitInstaller->registerSchemaIndexes( LIBERTY_PKG_NAME, $indices );
+// ### Default UserPermissions
+$gBitInstaller->registerUserPermissions( NEWSLETTERS_PKG_NAME, array(
+ array('bit_p_admin_newsletters', 'Can admin newsletters', 'editors', 'newsletters'),
+ array('bit_p_send_newsletters', 'Can send newsletters', 'editors', 'newsletters'),
+ array('bit_p_subscribe_newsletters', 'Can subscribe to newsletters', 'basic', 'newsletters'),
+ array('bit_p_subscribe_email', 'Can subscribe any email to newsletters', 'editors', 'newsletters'),
) );
?>