From: <jon...@us...> - 2009-07-06 19:08:02
|
Revision: 19960 http://tikiwiki.svn.sourceforge.net/tikiwiki/?rev=19960&view=rev Author: jonnybradley Date: 2009-07-06 19:07:56 +0000 (Mon, 06 Jul 2009) Log Message: ----------- [KIL] Remove (partially duplicated) contacts management code from webmail & use tiki-contacts if pref enabled Modified Paths: -------------- trunk/templates/tiki-webmail.tpl trunk/tiki-webmail.php Modified: trunk/templates/tiki-webmail.tpl =================================================================== --- trunk/templates/tiki-webmail.tpl 2009-07-06 18:55:07 UTC (rev 19959) +++ trunk/templates/tiki-webmail.tpl 2009-07-06 19:07:56 UTC (rev 19960) @@ -2,7 +2,7 @@ {title help=Webmail admpage=webmail}{tr}Webmail{/tr}{/title} -{* include file='tiki-mytiki_bar.tpl' *} +{include file='tiki-mytiki_bar.tpl'} <br /><br /> <table width="100%" border=0> @@ -17,11 +17,13 @@ <br /> {self_link locSection='compose' _noauto='y'}{tr}Compose{/tr}{/self_link} </td> - <td> - {self_link _icon='img/webmail/contact.gif' locSection='contacts' _width='48' _height='48' _noauto='y'}{tr}Contacts{/tr}{/self_link} - <br /> - {self_link locSection='contacts' _noauto='y'}{tr}Contacts{/tr}{/self_link} - </td> + {if $prefs.feature_contacts eq 'y'} + <td> + {self_link _icon='img/webmail/contact.gif' _script='tiki-contacts.php' _width='48' _height='48' _noauto='y'}{tr}Contacts{/tr}{/self_link} + <br /> + {self_link _script='tiki-contacts.php' _noauto='y'}{tr}Contacts{/tr}{/self_link} + </td> + {/if} <td width="50%"> </td> <td> @@ -515,142 +517,6 @@ {/section} {/if} -{if $locSection eq 'contacts'} - <h2>{if $contactId eq 0}{tr}Add a new{/tr}{else}{tr}Edit this{/tr}{/if} {tr} contact{/tr} {icon _id='add' id='addContactIcon'}</h2> - <div id="contactsFormDiv"{if $contactId eq 0 and count($channels) != 0}style="display:none"{/if}> - <form action="tiki-webmail.php" method="post" name="contacts"> - <input type="hidden" name="locSection" value="contacts" /> - <input type="hidden" name="contactId" value="{$contactId|escape}" /> - <table class="normal"> - <tr class="formcolor"> - <td>{tr}First Name{/tr}:</td> - <td> - <input type="text" maxlength="80" size="20" name="firstName" value="{$info.firstName|escape}" /> - </td> - </tr> - <tr class="formcolor"> - <td>{tr}Last Name{/tr}:</td> - <td> - <input type="text" maxlength="80" size="20" name="lastName" value="{$info.lastName|escape}" /> - </td> - </tr> - <tr class="formcolor"> - <td>{tr}Email{/tr}:</td> - <td> - <input type="text" maxlength="80" size="20" name="email" value="{$info.email|escape}" /> - </td> - </tr> - <tr class="formcolor"> - <td>{tr}Nickname{/tr}:</td> - <td> - <input type="text" maxlength="80" size="20" name="nickname" value="{$info.nickname|escape}" /> - </td> - </tr> - <tr class="formcolor"> - <td>{tr}Groups{/tr}:</td> - <td> - {if !empty($listgroups)} - {foreach item=gr from=$listgroups} - <div class="registergroup"> - <input type="checkbox" - id="gr_{$gr|escape}" - {if in_array($gr,$info.groups)}checked="checked"{/if} - {if $user neq $info.user and $tiki_p_admin neq 'y' and $tiki_p_admin_group_webmail neq 'y'} - name="dummy[]" - value="dummy" - disabled - {else} - name="groups[]" - value="{$gr|escape}" - {/if} - /> - <label for="gr_{$gr}"> - {$gr} - </label> - </div> - {/foreach} - {/if} - {if !empty($other_groups)} - {tr}Other groups: {/tr} - {foreach item=ogr from=$other_groups} - <em>{$ogr}</em> - <input type="hidden" name="groups[]" value="{$ogr|escape}" /> - {/foreach} - {/if} - <input type="hidden" name="user" value="{$info.user|escape}" /> - </td> - </tr> - <tr class="formcolor"> - <td colspan="2"> - <input type="submit" name="save" value="{tr}Save{/tr}" /> - </td> - </tr> - </table> - </form> - </div> - - <h2>{tr}Contacts{/tr}</h2> - {include file='find.tpl'} - - {initials_filter_links} - - <table class="normal"> - <tr> - <th> - <a href="tiki-webmail.php?locSection=contacts&offset={$offset}&sort_mode={if $sort_mode eq 'firstName_desc'}firstName_asc{else}firstName_desc{/if}">{tr}First Name{/tr}</a> - </th> - <th> - <a href="tiki-webmail.php?locSection=contacts&offset={$offset}&sort_mode={if $sort_mode eq 'lastName_desc'}lastName_asc{else}lastName_desc{/if}">{tr}Last Name{/tr}</a> - </th> - <th> - <a href="tiki-webmail.php?locSection=contacts&offset={$offset}&sort_mode={if $sort_mode eq 'email_desc'}email_asc{else}email_desc{/if}">{tr}Email{/tr}</a> - </th> - <th> - <a href="tiki-webmail.php?locSection=contacts&offset={$offset}&sort_mode={if $sort_mode eq 'nickname_desc'}nickname_asc{else}nickname_desc{/if}">{tr}Nickname{/tr}</a> - </th> - <th> - {tr}Groups{/tr} - </th> - <th> </th> - </tr> - {cycle values="odd,even" print=false} - {section name=user loop=$channels} - <tr> - <td class="{cycle advance=false}">{$channels[user].firstName}</td> - <td class="{cycle advance=false}">{$channels[user].lastName}</td> - <td class="{cycle advance=false}"> - <a class="link" href="tiki-webmail.php?locSection=contacts&offset={$offset}&sort_mode={$sort_mode}&find={$find}&contactId={$channels[user].contactId}">{$channels[user].email|escape}</a> - </td> - <td class="{cycle advance=false}">{$channels[user].nickname}</td> - <td class="{cycle advance=false}">{','|implode:$channels[user].groups}</td> - <td class="{cycle}"> - {self_link _icon='page_edit' locSection='contacts' contactId=$channels[user].contactId}{* offset=$offset sort_mode=$sort_mode _noauto='y'*}{tr}Edit{/tr}{/self_link} - {self_link _icon='cross' locSection='contacts' remove=$channels[user].contactId}{* offset=$offset sort_mode=$sort_mode find=$find _noauto='y'*}{tr}Delete{/tr}{/self_link} - </td> - </tr> - {/section} - </table> - - <div class="mini"> - {if $prev_offset >= 0} - [<a class="prevnext" href="tiki-webmail.php?locSection=contacts&find={$find}&offset={$prev_offset}&sort_mode={$sort_mode}">{tr}Prev{/tr}</a>] - - {/if} - {tr}Page{/tr}: {$actual_page}/{$cant_pages} - {if $next_offset >= 0} - [<a class="prevnext" href="tiki-webmail.php?locSection=contacts&find={$find}&offset={$next_offset}&sort_mode={$sort_mode}">{tr}Next{/tr}</a>] - {/if} - {if $prefs.direct_pagination eq 'y'} - <br /> - {section loop=$cant_pages name=foo} - {assign var=selector_offset value=$smarty.section.foo.index|times:$prefs.maxRecords} - <a class="prevnext" href="tiki-webmail.php?locSection=contacts&find={$find}&offset={$selector_offset}&sort_mode={$sort_mode}">{$smarty.section.foo.index_next}</a> - - {/section} - {/if} - </div> -{/if} - {if $locSection eq 'compose'} {if $attaching eq 'n'} {if $sent eq 'n'} Modified: trunk/tiki-webmail.php =================================================================== --- trunk/tiki-webmail.php 2009-07-06 18:55:07 UTC (rev 19959) +++ trunk/tiki-webmail.php 2009-07-06 19:07:56 UTC (rev 19960) @@ -13,10 +13,7 @@ require_once ('lib/ajax/ajaxlib.php'); } include_once ('lib/webmail/webmaillib.php'); - -$no_contact_instance = true; //This prevents the lib from setting $contactlib include_once ('lib/webmail/contactlib.php'); -$contactlib = new ContactLib($dbTiki); if ($prefs['feature_webmail'] != 'y') { $smarty->assign('msg', tra('This feature is disabled').': feature_webmail'); @@ -906,141 +903,6 @@ $smarty->assign('attach3type', $_REQUEST['attach3type']); } -/////////////////////////////////////////////////////////////////////////////////////////// -////////////////////////////////////// Contacts /////////////////////////////////////////// -/////////////////////////////////////////////////////////////////////////////////////////// - -if ($_REQUEST['locSection'] == 'contacts') { - if (!isset($_REQUEST['contactId'])) { - $_REQUEST['contactId'] = 0; - } - - if ($prefs['feature_jquery']) { - $deleteTitle = tra('Delete'); - $deleteConfirm = tra('Are you sure you want to delete this contact?'); - $js = <<< END - -// validate edit/add form -\$jq('[name=contacts]').submit(function() { - if (!\$jq('[name=firstName]').val() && - !\$jq('[name=lastName]').val() && - !\$jq('[name=email]').val() && - !\$jq('[name=nickname]').val()) { - \$jq('[name=firstName]').css('background-color', '#fcc').focus(); - return false; - } -}); -// confirm deletes -\$jq('a[title=$deleteTitle]').click(function() { - return confirm('$deleteConfirm'); -}); -// open/close account form -\$jq('#addContactIcon').click(function() { - flip(\$jq('#contactsFormDiv').attr('id')); -}).css("cursor", "pointer"); - -END; - $headerlib->add_jq_onready($js); - } - - $headerlib->add_js('if (webmailTimeoutId) {window.clearTimeout(webmailTimeoutId);}',0); - - $smarty->assign('contactId', $_REQUEST['contactId']); - - if ($_REQUEST['contactId']) { - $info = $contactlib->get_contact($_REQUEST['contactId'], $user); - } else { - $info = array(); - - $info['user'] = $user; - $info['firstName'] = ''; - $info['lastName'] = ''; - $info['email'] = ''; - $info['nickname'] = ''; - $info['groups'] = array(); - } - - $smarty->assign('info', $info); - - if (isset($_REQUEST['remove'])) { - check_ticket('webmail'); - $contactlib->remove_contact($_REQUEST['remove'], $user); - } - - if (isset($_REQUEST['save'])) { - check_ticket('webmail'); - if (!isset($_REQUEST['groups'])) { - $_REQUEST['groups'] = array(); - } - $contactlib->replace_contact($_REQUEST['contactId'], $_REQUEST['firstName'], $_REQUEST['lastName'], $_REQUEST['email'], $_REQUEST['nickname'], $_REQUEST['user'], $_REQUEST['groups']); - - $info['user'] = $user; - $info['firstName'] = ''; - $info['lastName'] = ''; - $info['email'] = ''; - $info['nickname'] = ''; - $info['groups'] = array(); - $smarty->assign('info', $info); - $smarty->assign('contactId', 0); - } - - if (!isset($_REQUEST['sort_mode'])) { - $sort_mode = 'email_asc'; - } else { - $sort_mode = $_REQUEST['sort_mode']; - } - - if (!isset($_REQUEST['offset'])) { - $offset = 0; - } else { - $offset = $_REQUEST['offset']; - } - - $smarty->assign_by_ref('offset', $offset); - - if (isset($_REQUEST['find'])) { - $find = $_REQUEST['find']; - } else { - $find = ''; - } - - $smarty->assign('find', $find); - - $smarty->assign_by_ref('sort_mode', $sort_mode); - - // groups - //$listgroups = $userlib->get_groups(0, -1, 'groupName_asc', '', '', 'n'); - $listgroups = $userlib->get_user_groups_inclusion($user); - $other_groups = array_diff($info['groups'],array_keys($listgroups)); - $smarty->assign('listgroups', array_keys($listgroups) ); - $smarty->assign('other_groups', $other_groups); - - if (!isset($_REQUEST['initial'])) { - $contacts = $contactlib->list_contacts($user, $offset, $maxRecords, $sort_mode, $find, true); - } else { - $contacts = $contactlib->list_contacts_by_letter($user, $offset, $maxRecords, $sort_mode, $_REQUEST['initial']); - } - - $cant_pages = ceil(count($contacts) / $maxRecords); - $smarty->assign_by_ref('cant_pages', $cant_pages); - $smarty->assign('actual_page', 1 + ($offset / $maxRecords)); - - if (count($contacts) > ($offset + $maxRecords)) { - $smarty->assign('next_offset', $offset + $maxRecords); - } else { - $smarty->assign('next_offset', -1); - } - - // If offset is > 0 then prev_offset - if ($offset > 0) { - $smarty->assign('prev_offset', $offset - $maxRecords); - } else { - $smarty->assign('prev_offset', -1); - } - - $smarty->assign_by_ref('channels', $contacts); -} - include_once ('tiki-mytiki_shared.php'); include_once ('tiki-section_options.php'); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |