diff options
| author | Christian Fowler <spider@viovio.com> | 2005-12-28 23:21:25 +0000 |
|---|---|---|
| committer | Christian Fowler <spider@viovio.com> | 2005-12-28 23:21:25 +0000 |
| commit | c07dc79add21f2677680fcc9736b82276d2f8a72 (patch) | |
| tree | 0b432d8fdf68098f0f2e783457fd646fabb09a73 | |
| parent | 2149b17e33d9905d16986ce86757343fabfa8211 (diff) | |
| download | newsletters-c07dc79add21f2677680fcc9736b82276d2f8a72.tar.gz newsletters-c07dc79add21f2677680fcc9736b82276d2f8a72.tar.bz2 newsletters-c07dc79add21f2677680fcc9736b82276d2f8a72.zip | |
lots and lots of subscription fixes, still not 100%
| -rw-r--r-- | .htaccess | 9 | ||||
| -rw-r--r-- | BitMailer.php | 30 | ||||
| -rw-r--r-- | BitNewsletter.php | 69 | ||||
| -rw-r--r-- | admin/index.php | 4 | ||||
| -rw-r--r-- | admin/schema_inc.php | 4 | ||||
| -rw-r--r-- | index.php | 13 | ||||
| -rw-r--r-- | newsletters.php | 4 | ||||
| -rw-r--r-- | templates/edit_newsletter.tpl | 2 | ||||
| -rw-r--r-- | templates/list_newsletters.tpl | 6 | ||||
| -rw-r--r-- | templates/newsletters.tpl | 2 | ||||
| -rw-r--r-- | templates/user_subscriptions.tpl | 18 | ||||
| -rw-r--r-- | templates/view_newsletter.tpl | 4 |
12 files changed, 97 insertions, 68 deletions
diff --git a/.htaccess b/.htaccess new file mode 100644 index 0000000..1cc256d --- /dev/null +++ b/.htaccess @@ -0,0 +1,9 @@ +<IfModule mod_rewrite.c> + RewriteEngine on + RewriteCond %{SCRIPT_FILENAME} -f [OR] + RewriteCond %{SCRIPT_FILENAME}/index.php -f + RewriteRule ^(.*)$ - [L] + + RewriteRule ^edition/([0-9]*)$ edition.php?edition_id=$1 [L] + RewriteRule ^([0-9]*)$ index.php?nl_id=$1 [L] +</IfModule> diff --git a/BitMailer.php b/BitMailer.php index 2780681..10ac4c5 100644 --- a/BitMailer.php +++ b/BitMailer.php @@ -1,12 +1,12 @@ <?php /** - * $Header: /cvsroot/bitweaver/_bit_newsletters/Attic/BitMailer.php,v 1.7 2005/12/28 20:12:46 spiderr Exp $ + * $Header: /cvsroot/bitweaver/_bit_newsletters/Attic/BitMailer.php,v 1.8 2005/12/28 23:21:24 spiderr Exp $ * * Copyright (c) 2004 bitweaver.org * 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 * - * $Id: BitMailer.php,v 1.7 2005/12/28 20:12:46 spiderr Exp $ + * $Id: BitMailer.php,v 1.8 2005/12/28 23:21:24 spiderr Exp $ * * Class that handles editions of newsletters * @package newsletters @@ -15,7 +15,7 @@ * * @author spiderr <spider@steelsun.com> * - * @version $Revision: 1.7 $ $Date: 2005/12/28 20:12:46 $ $Author: spiderr $ + * @version $Revision: 1.8 $ $Date: 2005/12/28 23:21:24 $ $Author: spiderr $ */ /** @@ -150,16 +150,16 @@ class BitMailer extends phpmailer { // Looks up the code from the url to determine if the unsubscribe URL is valid. // Can be statically called - function lookupUrlCode( $pUrlCode ) { + function lookupSubscription( $pLookup ) { global $gBitDb; $ret = NULL; - if( !empty( $pUrlCode ) ) { + if( is_array( $pLookup ) ) { $query = "SELECT tmq.*, tc.*, tct.*, uu.`real_name`, uu.`login`, uu.`email` FROM `".BIT_DB_PREFIX."tiki_mail_queue` tmq INNER JOIN `".BIT_DB_PREFIX."tiki_content` tc ON( tmq.`content_id`=tc.`content_id` ) INNER JOIN `".BIT_DB_PREFIX."tiki_content_types` tct ON( tct.`content_type_guid`=tc.`content_type_guid` ) LEFT OUTER JOIN `".BIT_DB_PREFIX."users_users` uu ON( tmq.`user_id`=uu.`user_id` ) - WHERE `url_code`=? "; - $ret = $gBitDb->getRow( $query, array( $pUrlCode ) ); + WHERE tmq.`".key( $pLookup )."`=? "; + $ret = $gBitDb->getRow( $query, array( current( $pLookup ) ) ); } return( $ret ); } @@ -183,7 +183,6 @@ class BitMailer extends phpmailer { function storeSubscriptions( $pSubHash ) { global $gBitSystem, $gBitDb; -vd( $pSubHash ); $query = "delete from `".BIT_DB_PREFIX."tiki_mail_subscriptions` where `".key( $pSubHash['sub_lookup'] )."`=?"; $result = $gBitDb->query($query, array( current( $pSubHash['sub_lookup'] ) ) ); @@ -200,21 +199,6 @@ vd( $pSubHash ); $gBitDb->associateInsert( BIT_DB_PREFIX."tiki_mail_subscriptions", $storeHash ); } } -die; - if (!$result->numRows()) return false; - - $res = $result->fetchRow(); - $info = $this->get_newsletter($res["nl_id"]); - $gBitSmarty->assign('info', $info); - $gBitSmarty->assign('code', $res["code"]); - $query = "delete from `".BIT_DB_PREFIX."tiki_newsletter_subscriptions` where `code`=?"; - $result = $this->mDb->query($query,array($code)); - // Now send a bye bye email - $mail_data = $gBitSmarty->fetch('bitpackage:newsletters/newsletter_byebye.tpl'); - @mail($res["email"], tra('Bye bye from '). $info["name"] . tra(' at '). $_SERVER["SERVER_NAME"], $mail_data, - "From: ".$gBitSystem->getPreference( 'sender_email' )."\r\nContent-type: text/plain;charset=utf-8\r\n"); - $this->update_users($res["nl_id"]); - return $this->get_newsletter($res["nl_id"]); } diff --git a/BitNewsletter.php b/BitNewsletter.php index 57a3d0e..4b24b8c 100644 --- a/BitNewsletter.php +++ b/BitNewsletter.php @@ -1,12 +1,12 @@ <?php /** - * $Header: /cvsroot/bitweaver/_bit_newsletters/BitNewsletter.php,v 1.11 2005/12/28 20:12:46 spiderr Exp $ + * $Header: /cvsroot/bitweaver/_bit_newsletters/BitNewsletter.php,v 1.12 2005/12/28 23:21:24 spiderr Exp $ * * Copyright (c) 2004 bitweaver.org * 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 * - * $Id: BitNewsletter.php,v 1.11 2005/12/28 20:12:46 spiderr Exp $ + * $Id: BitNewsletter.php,v 1.12 2005/12/28 23:21:24 spiderr Exp $ * * Virtual base class (as much as one can have such things in PHP) for all * derived tikiwiki classes that require database access. @@ -16,7 +16,7 @@ * * @author drewslater <andrew@andrewslater.com>, spiderr <spider@steelsun.com> * - * @version $Revision: 1.11 $ $Date: 2005/12/28 20:12:46 $ $Author: spiderr $ + * @version $Revision: 1.12 $ $Date: 2005/12/28 23:21:24 $ $Author: spiderr $ */ /** @@ -38,19 +38,19 @@ class BitNewsletter extends LibertyContent { 'handler_file' => 'BitNewsletter.php', 'maintainer_url' => 'http://www.bitweaver.org' ) ); - $this->mNlId = $this->verifyId( $pNlId ) ? $pNlId : NULL; + $this->mNewsletterId = $this->verifyId( $pNlId ) ? $pNlId : NULL; $this->mContentId = $pContentId; $this->mContentTypeGuid = BITNEWSLETTER_CONTENT_TYPE_GUID; } function load() { - if( $this->verifyId( $this->mNlId ) || $this->verifyId( $this->mContentId ) ) { + if( $this->verifyId( $this->mNewsletterId ) || $this->verifyId( $this->mContentId ) ) { global $gBitSystem; $bindVars = array(); $selectSql = ''; $joinSql = ''; $whereSql = ''; - $lookupColumn = $this->verifyId( $this->mNlId ) ? 'nl_id' : 'content_id'; - $lookupId = $this->verifyId( $this->mNlId )? $this->mNlId : $this->mContentId; + $lookupColumn = $this->verifyId( $this->mNewsletterId ) ? 'nl_id' : 'content_id'; + $lookupId = $this->verifyId( $this->mNewsletterId )? $this->mNewsletterId : $this->mContentId; array_push( $bindVars, $lookupId ); $this->getServicesSql( 'content_load_function', $selectSql, $joinSql, $whereSql, $bindVars ); @@ -62,7 +62,7 @@ class BitNewsletter extends LibertyContent { $result = $this->mDb->query($query,$bindVars); if ($result->numRows()) { $this->mInfo = $result->fetchRow(); - $this->mNlId = $this->mInfo['nl_id']; + $this->mNewsletterId = $this->mInfo['nl_id']; $this->mContentId = $this->mInfo['content_id']; } } @@ -73,8 +73,8 @@ class BitNewsletter extends LibertyContent { if( $this->verify( $pParamHash ) ) { $this->mDb->StartTrans(); if( parent::store( $pParamHash ) ) { - if( $this->mNlId ) { - $result = $this->mDb->associateUpdate( BIT_DB_PREFIX."tiki_newsletters", $pParamHash['newsletter_store'], array ( "name" => "nl_id", "value" => $this->mNlId ) ); + if( $this->mNewsletterId ) { + $result = $this->mDb->associateUpdate( BIT_DB_PREFIX."tiki_newsletters", $pParamHash['newsletter_store'], array ( "name" => "nl_id", "value" => $this->mNewsletterId ) ); } else { $pParamHash['newsletter_store']['content_id'] = $pParamHash['content_id']; $result = $this->mDb->associateInsert( BIT_DB_PREFIX."tiki_newsletters", $pParamHash['newsletter_store'] ); @@ -103,7 +103,7 @@ class BitNewsletter extends LibertyContent { $ret = array(); if( $this->isValid() ) { $query = "select email from `".BIT_DB_PREFIX."tiki_mail_subscriptions` where `valid`=? and `nl_id`=?"; - if( $result = $this->mDb->query( $query, array( 'y', $this->mNlId ) ) ) { + if( $result = $this->mDb->query( $query, array( 'y', $this->mNewsletterId ) ) ) { $ret = $res->GetRows(); } } @@ -129,9 +129,9 @@ class BitNewsletter extends LibertyContent { // Generate a code and store it and send an email with the // URL to confirm the subscription put valid as 'n' $query = "delete from `".BIT_DB_PREFIX."tiki_mail_subscriptions` where `nl_id`=? and `email`=?"; - $result = $this->mDb->query( $query, array( $this->mNlId, $email ) ); + $result = $this->mDb->query( $query, array( $this->mNewsletterId, $email ) ); $query = "insert into `".BIT_DB_PREFIX."tiki_mail_subscriptions`(`nl_id`,`email`,`code`,`valid`,`subscribed`) values(?,?,?,?,?)"; - $result = $this->mDb->query( $query, array( $this->mNlId, $email, $code, 'n', (int)$now ) ); + $result = $this->mDb->query( $query, array( $this->mNewsletterId, $email, $code, 'n', (int)$now ) ); // Now send an email to the address with the confirmation instructions $gBitSmarty->assign( 'code', $code ); $mail_data = $gBitSmarty->fetch('bitpackage:newsletters/confirm_newsletter_subscription.tpl'); @@ -139,9 +139,9 @@ class BitNewsletter extends LibertyContent { "From: $sender_email\r\nContent-type: text/plain;charset=utf-8\r\n"); } else { $query = "delete from `".BIT_DB_PREFIX."tiki_mail_subscriptions` where `nl_id`=? and `email`=?"; - $result = $this->mDb->query( $query, array( $this->mNlId, $email ) ); + $result = $this->mDb->query( $query, array( $this->mNewsletterId, $email ) ); $query = "insert into `".BIT_DB_PREFIX."tiki_mail_subscriptions`(`nl_id`,`email`,`code`,`valid`,`subscribed`) values(?,?,?,?,?)"; - $result = $this->mDb->query( $query, array( $this->mNlId, $email, $code, 'y', (int)$now ) ); + $result = $this->mDb->query( $query, array( $this->mNewsletterId, $email, $code, 'y', (int)$now ) ); } $this->updateUsers(); $ret = TRUE; @@ -184,9 +184,9 @@ class BitNewsletter extends LibertyContent { function updateUsers() { if( $this->isValid() ) { - $users = $this->mDb->getOne( "select count(*) from `".BIT_DB_PREFIX."tiki_mail_subscriptions` where `nl_id`=?", array( $this->mNlId ) ); + $users = $this->mDb->getOne( "select count(*) from `".BIT_DB_PREFIX."tiki_mail_subscriptions` where `nl_id`=?", array( $this->mNewsletterId ) ); $query = "update `".BIT_DB_PREFIX."tiki_newsletters` set `users`=? where `nl_id`=?"; - $result = $this->mDb->query( $query, array( $users, $this->mNlId ) ); + $result = $this->mDb->query( $query, array( $users, $this->mNewsletterId ) ); } } */ @@ -216,6 +216,7 @@ class BitNewsletter extends LibertyContent { $ret = array(); while( $res = $result->fetchRow() ) { + $res['display_url'] = $this->getDisplayUrl( $res['nl_id'] ); $res["unsub_count"] = $this->mDb->getOne( "SELECT COUNT(*) FROM `".BIT_DB_PREFIX."tiki_mail_subscriptions` WHERE (`nl_content_id`=? AND `unsubscribe_date` IS NOT NULL) OR `unsubscribe_all` IS NOT NULL",array( (int)$res["content_id"] ) ); $ret[$res['content_id']] = $res; } @@ -265,9 +266,9 @@ class BitNewsletter extends LibertyContent { if( $this->isValid() ) { $this->mDb->StartTrans(); $query = "delete from `".BIT_DB_PREFIX."tiki_newsletters` where `nl_id`=?"; - $result = $this->mDb->query( $query, array( $this->mNlId ) ); + $result = $this->mDb->query( $query, array( $this->mNewsletterId ) ); $query = "delete from `".BIT_DB_PREFIX."tiki_mail_subscriptions` where `nl_id`=?"; - $result = $this->mDb->query( $query, array( $this->mNlId ) ); + $result = $this->mDb->query( $query, array( $this->mNewsletterId ) ); if( parent::expunge() ) { $ret = TRUE; $this->mDb->CompleteTrans(); @@ -279,13 +280,39 @@ class BitNewsletter extends LibertyContent { } function isValid() { - return( $this->verifyId( $this->mNlId ) ); + return( $this->verifyId( $this->mNewsletterId ) ); } + + /** + * Generate a valid url for the Newsletter + * + * @param object $pNewsletterId of the item to use + * @return object Url String + */ + function getDisplayUrl( $pNewsletterId=NULL ) { + $ret = NULL; + if( !$this->verifyId( $pNewsletterId ) ) { + $pNewsletterId = $this->mNewsletterId; + } + global $gBitSystem; + if( $this->verifyId( $pNewsletterId ) ) { + if( $gBitSystem->isFeatureActive( 'pretty_urls' ) ) { + $ret = NEWSLETTERS_PKG_URL.$pNewsletterId; + } else { + $ret = NEWSLETTERS_PKG_URL.'index.php?nl_id='.$pNewsletterId; + } + } else { + $ret = NEWSLETTERS_PKG_URL.'index.php'; + } + return $ret; + } + + function getEditions() { $ret = array(); if( $this->isValid() ) { - $listHash = array( 'nl_id' => $this->mNlId ); + $listHash = array( 'nl_id' => $this->mNewsletterId ); $ret = BitNewsletterEdition::getList( $listHash ); } return $ret; diff --git a/admin/index.php b/admin/index.php index 3c05cd5..aaa9685 100644 --- a/admin/index.php +++ b/admin/index.php @@ -1,6 +1,6 @@ <?php -// $Header: /cvsroot/bitweaver/_bit_newsletters/admin/Attic/index.php,v 1.8 2005/12/25 02:23:44 spiderr Exp $ +// $Header: /cvsroot/bitweaver/_bit_newsletters/admin/Attic/index.php,v 1.9 2005/12/28 23:21:24 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. @@ -18,7 +18,7 @@ if( isset( $_REQUEST["remove"] ) && $gContent->isValid() ) { // user cancelled - just continue on, doing nothing } elseif( empty( $_REQUEST['confirm'] ) ) { $formHash['remove'] = TRUE; - $formHash['nl_id'] = $gContent->mNlId; + $formHash['nl_id'] = $gContent->mNewsletterId; $gBitSystem->confirmDialog( $formHash, array( 'warning' => 'Are you sure you want to delete the newsletter '.$gContent->getTitle().'?' ) ); } else { if( $gContent->expunge() ) { diff --git a/admin/schema_inc.php b/admin/schema_inc.php index de0196e..3f16b01 100644 --- a/admin/schema_inc.php +++ b/admin/schema_inc.php @@ -98,8 +98,10 @@ $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_create_newsletters', 'Can create newsletters', 'editors', 'newsletters'), + array('bit_p_create_editions', 'Can create editions', '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_newsletters', 'Can subscribe to newsletters', 'registered', 'newsletters'), array('bit_p_subscribe_email', 'Can subscribe any email to newsletters', 'editors', 'newsletters'), ) ); @@ -1,6 +1,6 @@ <?php -// $Header: /cvsroot/bitweaver/_bit_newsletters/index.php,v 1.11 2005/12/28 20:12:46 spiderr Exp $ +// $Header: /cvsroot/bitweaver/_bit_newsletters/index.php,v 1.12 2005/12/28 23:21:24 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. @@ -34,7 +34,7 @@ $newsletters = $gContent->getList( $listHash ); $gBitSmarty->assign_by_ref('newsletters', $newsletters ); if( isset( $_REQUEST["sub"] ) ) { - if( strlen( $_REQUEST["sub"] ) == 32 && ($subInfo = BitMailer::lookupUrlCode( $_REQUEST["sub"] )) ) { + if( strlen( $_REQUEST["sub"] ) == 32 && ($subInfo = BitMailer::lookupSubscription( array( 'url_code' => $_REQUEST["sub"] ) )) ) { $gBitSmarty->assign( 'subInfo', $subInfo ); $lookup['email'] = $subInfo['email']; $unsubs = BitMailer::getUnsubscriptions( $lookup ); @@ -55,6 +55,15 @@ if( isset( $_REQUEST["sub"] ) ) { } } $mid = 'bitpackage:newsletters/user_subscriptions.tpl'; +} elseif( $gBitUser->isRegistered() ) { + if( !$subInfo = BitMailer::lookupSubscription( array( 'user_id' => $gBitUser->mUserId ) ) ) { + $subInfo = $gBitUser->mInfo; + } + $gBitSmarty->assign( 'subInfo', $subInfo ); + $lookup['user_id'] = $gBitUser->mUserId; + $unsubs = BitMailer::getUnsubscriptions( $lookup ); + $gBitSmarty->assign( 'unsubs', $unsubs ); + $mid = 'bitpackage:newsletters/user_subscriptions.tpl'; } $foo = parse_url($_SERVER["REQUEST_URI"]); diff --git a/newsletters.php b/newsletters.php index 9cf1d19..4badfea 100644 --- a/newsletters.php +++ b/newsletters.php @@ -1,6 +1,6 @@ <?php -// $Header: /cvsroot/bitweaver/_bit_newsletters/newsletters.php,v 1.1 2005/12/16 16:55:28 spiderr Exp $ +// $Header: /cvsroot/bitweaver/_bit_newsletters/newsletters.php,v 1.2 2005/12/28 23:21:24 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. @@ -19,7 +19,7 @@ if( isset( $_REQUEST["remove"] ) && $gContent->isValid() ) { // user cancelled - just continue on, doing nothing } elseif( empty( $_REQUEST['confirm'] ) ) { $formHash['remove'] = TRUE; - $formHash['nl_id'] = $gContent->mNlId; + $formHash['nl_id'] = $gContent->mNewsletterId; $gBitSystem->confirmDialog( $formHash, array( 'warning' => 'Are you sure you want to delete the newsletter '.$gContent->getTitle().'?' ) ); } else { if( $gContent->expunge() ) { diff --git a/templates/edit_newsletter.tpl b/templates/edit_newsletter.tpl index 533b85f..4fdad39 100644 --- a/templates/edit_newsletter.tpl +++ b/templates/edit_newsletter.tpl @@ -12,7 +12,7 @@ {if $individual eq 'y'} <a href="{$smarty.const.KERNEL_PKG_URL}object_permissions.php?objectName=newsletter%20{$gContent->mInfo.name}&object_type=newsletter&permType=newsletters&object_id={$gContent->mInfo.nl_id}">{tr}There are individual permissions set for this newsletter{/tr}</a><br /><br /> {/if} - <input type="hidden" name="nl_id" value="{$gContent->mNlId}" /> + <input type="hidden" name="nl_id" value="{$gContent->mNewsletterId}" /> <div class="row"> {formlabel label="Title" for="title"} diff --git a/templates/list_newsletters.tpl b/templates/list_newsletters.tpl index 3ef2960..326cf51 100644 --- a/templates/list_newsletters.tpl +++ b/templates/list_newsletters.tpl @@ -12,7 +12,7 @@ {if $individual eq 'y'} <a href="{$smarty.const.KERNEL_PKG_URL}object_permissions.php?objectName=newsletter%20{$gContent->mInfo.name}&object_type=newsletter&permType=newsletters&object_id={$gContent->mInfo.nl_id}">{tr}There are individual permissions set for this newsletter{/tr}</a><br /><br /> {/if} - <input type="hidden" name="nl_id" value="{$gContent->mNlId}" /> + <input type="hidden" name="nl_id" value="{$gContent->mNewsletterId}" /> <div class="row"> {formlabel label="Title" for="title"} @@ -104,7 +104,9 @@ {/foreach} </table> - <a href="{$smarty.server.php_self}?new=1">Create new newsletter</a> + {if $gBitUser->hasPermission('bit_p_create_newsletters')} + <a href="{$smarty.server.php_self}?new=1">Create new newsletter</a> + {/if} {pagination} {/if} diff --git a/templates/newsletters.tpl b/templates/newsletters.tpl index 0ae8124..bfd9323 100644 --- a/templates/newsletters.tpl +++ b/templates/newsletters.tpl @@ -27,7 +27,7 @@ {if ($gContent->mInfo.allow_user_sub eq 'y') or $gBitUser->hasPermission( 'bit_p_subscribe_newsletters' )} {form} - <input type="hidden" name="nl_id" value="{$gContent->mNlId}" /> + <input type="hidden" name="nl_id" value="{$gContent->mNewsletterId}" /> <div class="row"> {formlabel label="Email" for=""} {forminput} diff --git a/templates/user_subscriptions.tpl b/templates/user_subscriptions.tpl index 57139ef..457c5f7 100644 --- a/templates/user_subscriptions.tpl +++ b/templates/user_subscriptions.tpl @@ -1,3 +1,4 @@ +{if $subInfo || $gBitUser->hasPermission('bit_p_subscribe_newsletters')} {strip} <div class="display newsletters"> <div class="header"> @@ -5,10 +6,10 @@ </div> <div class="body"> - {if $subInfo} {formfeedback success=$success error=$gContent->mErrors} {form enctype="multipart/form-data" id="editpageform"} <input type="hidden" name="response_content_id" value="{$subInfo.content_id}" /> +{if $smarty.request.sub} <input type="hidden" name="sub" value="{$smarty.request.sub}" /> <div class="row"> <em> @@ -18,6 +19,7 @@ {/forminput} </em> </div> +{/if} <div class="row"> {formlabel label="User Information"} {forminput} @@ -29,7 +31,7 @@ {formlabel label="Subscriptions"} {forminput} {foreach from=$newsletters key=nlId item=nl} - <input type="checkbox" name="nl_content_id[]" value="{$nlId}" {if !$unsubs.$nlId}checked="checked"{/if}/> {$nl.title} <br/> + <input type="checkbox" name="nl_content_id[]" value="{$nlId}" {if !$unsubs.$nlId}checked="checked"{/if}/> <a href="{$nl.display_url}"/>{$nl.title}</a> <br/> {foreachelse} {tr}No newsletters were found{/tr} {/foreach} @@ -45,15 +47,9 @@ <input type="submit" name="update" value="{tr}Update Subscriptions{/tr}" /> </div> {/form} - {else} - <div class="row"> - {tr}The subscription URL is no longer valid.{/tr} - {if $gBitUser->isRegistered()} - - {else} - {include file="bitpackage:users/login_inc.tpl"} - {/if} - {/if} </div> <!-- end .body --> </div> <!-- end .newsletters --> {/strip} +{else} + {include file="bitpackage:newsletters/list_newsletters.tpl"} +{/if}
\ No newline at end of file diff --git a/templates/view_newsletter.tpl b/templates/view_newsletter.tpl index 67c5290..881ebad 100644 --- a/templates/view_newsletter.tpl +++ b/templates/view_newsletter.tpl @@ -3,8 +3,8 @@ {include file="bitpackage:liberty/services_inc.tpl" serviceLocation='icon'} {if $gContent->isOwner() || $gBitUser->hasPermission( 'bit_p_newsletter_admin' )} - <a href="{$smarty.const.NEWSLETTERS_PKG_URL}admin/index.php?nl_id={$gContent->mNlId}">{biticon ipackage=liberty iname="edit" iexplain="edit"}</a> - <a href="{$smarty.const.NEWSLETTERS_PKG_URL}admin/index.php?nl_id={$gContent->mNlId}&remove=1">{biticon ipackage=liberty iname="delete" iexplain="delete"}</a> + <a href="{$smarty.const.NEWSLETTERS_PKG_URL}admin/index.php?nl_id={$gContent->mNewsletterId}">{biticon ipackage=liberty iname="edit" iexplain="edit"}</a> + <a href="{$smarty.const.NEWSLETTERS_PKG_URL}admin/index.php?nl_id={$gContent->mNewsletterId}&remove=1">{biticon ipackage=liberty iname="delete" iexplain="delete"}</a> {/if} {if $gBitUser->hasPermission( 'bit_p_print' )} |
