Changeset 220

Show
Ignore:
Timestamp:
11/28/07 21:03:23 (13 months ago)
Author:
jonas
Message:
 
Location:
trunk
Files:
1 added
11 modified

Legend:

Unmodified
Added
Removed
  • trunk/ChangeLog

    r218 r220  
    33        o Fixed: recipient classes VIEW 
    44        o Improved: display mailbox size with units 
     5        o Improved: vaction view in index with CSS tooltips 
    56        o Improved: fist step to better inputchecks for XSS protection 
    67          Thanks to Sven Tantau (http://beastiebytes.com) 
  • trunk/includes/sites/email_view.php

    r218 r220  
    9898                        $smarty->assign('if_wrong_sa_subjecttag','y'); 
    9999                } 
    100                 elseif (!preg_match("/^([0-9A-Za-z*\s\+\.\-_\]\[]+)$/",$_POST['rewrite_subject_header'])) { 
     100                elseif (!preg_match("/^([\s0-9A-Za-z*\s\+\.\-_\]\[]+)$/",$_POST['rewrite_subject_header'])&&$_POST['spamassasin_active']=='1') { 
    101101                        $smarty->assign('error_msg', 'y'); 
    102102                        $smarty->assign('if_illegal_sa_subjecttag','y'); 
     
    185185                $db->query($sql); 
    186186        } 
     187        //FIXME INPUT CHECKS!!! 
    187188        if (isset($_POST['xheader_submit'])) { 
    188189                if (!empty($_POST['xheader_name']) && !empty($_POST['xheader_value'])) { 
  • trunk/includes/sites/forward_add.php

    r145 r220  
    3939                $smarty->assign('if_error_forwds_max_reached','y'); 
    4040        } 
    41          
     41        //FIXME: Remove that fucking coe 
    4242        //fetch all mailaddress: 
    4343        $sql=sprintf("SELECT email FROM users WHERE domainid='%s'  AND enew!='0' ORDER BY email", 
  • trunk/includes/sites/main.php

    r217 r220  
    6767                $vaction_infos=""; 
    6868                while($row_vac = $res_vacation->fetchrow(DB_FETCHMODE_ASSOC)) { 
    69                         $vaction_infos .= $row_vac['email'] . " "; 
     69                        $vaction_infos .= $row_vac['email'] . "<br/>"; 
    7070                } 
    7171        } 
  • trunk/includes/sites/user_fetchmail.php

    r139 r220  
    4848} 
    4949else { 
     50        //FIXME: INPUT CHECKS!! 
    5051        $sql=sprintf("INSERT INTO fetchmail SET email='%d', server='%s',proto='%d',conn_type='%d',username='%s',password='%s', keep_mails='%d',active='1'", 
    5152                $db->escapeSimple($_SESSION['uid']), 
  • trunk/includes/sites/user_spam.php

    r218 r220  
    5151                        $smarty->assign('if_wrong_sa_subjecttag','y'); 
    5252                } 
    53                 elseif (!preg_match("/^([0-9A-Za-z*\s\+\.\-_\]\[]+)$/",$_POST['rewrite_subject_header'])) { 
     53                elseif (!preg_match("/^([\s0-9A-Za-z*\s\+\.\-_\]\[]+)$/",$_POST['rewrite_subject_header'])&&$_POST['spamassasin_active']=='1') { 
    5454                        $smarty->assign('error_msg', 'y'); 
    5555                        $smarty->assign('if_illegal_sa_subjecttag','y'); 
  • trunk/sql_upgrades

    r217 r220  
    178178DROP VIEW IF EXISTS smtpd_recipient_classes; 
    179179CREATE VIEW smtpd_recipient_classes AS  SELECT email,if(p_check_polw=1,'check_polw','') AS polw,if(p_check_grey=1,'check_grey','') AS grey FROM users WHERE access=1 AND p_check_polw!=0 AND p_check_polw!=0 UNION SELECT efrom,if(p_check_polw=1,'check_polw','') AS polw,if(p_check_grey=1,'check_grey','') AS grey FROM forwardings WHERE access=1 AND p_check_polw!=0 AND p_check_polw!=0 AND efrom NOT REGEXP '^@'; 
    180   
     180 
     181CREATE TABLE `domains_forward` ( 
     182`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , 
     183`fr_domain` INT NOT NULL , 
     184`to_domain` INT NOT NULL , 
     185INDEX ( `fr_domain` ) 
     186) ENGINE = MYISAM ; 
     187 
  • trunk/templates/domain_view.tpl

    r217 r220  
    2323{foreach from=$table_email item=row } 
    2424<tr bgcolor="{cycle values="$color1,$color2"}"> 
    25  <td style="width:300px;">{if $row.autoresponder eq "1"}<img src="img/icons/autoresponder.png" title="{t}vacation active!{/t}" />{/if} 
    26  <a href="?module=email_view&#038;id={$row.id}&amp;did={$did}">{$row.email}</a></td> 
     25 
     26 <td style="width:300px;"><div style="float:left;"> 
     27{if $row.autoresponder eq "1"}<img src="img/icons/autoresponder.png" align="middle" title="{t}vacation active!{/t}" />{/if} 
     28<a href="?module=email_view&#038;id={$row.id}&amp;did={$did}">{$row.email}</a></div> 
     29<div style="float:right;padding:0px;"> 
     30        <a class="tooltip" href="#"> 
     31        <img src="img/icons/help.png" title="" align="middle"/> 
     32        <span>{t}information{/t}:<br/> </span></a> 
     33</div></td> 
    2734 
    2835{if $display_mb_size == 1} 
     
    133140</tr> 
    134141 
     142 
     143<tr> 
     144 <td style="width:670px;" class="domain_view" colspan="4"><h3>{t}internal domainforward{/t}:</h3></td> 
     145</tr> 
     146<tr> 
     147{if $domain_forward_active==0} 
     148<td colspan="4"> 
     149{t 1=$dnsname}no internal domainforward for %1 configured.{/t}<br/><a href="?module=domain_forward&#038;did={$did}&#038;new=yes">{t}click here to configure an domainfoward.{/t}</a> 
     150</td> 
     151</tr> 
     152{else} 
     153 
     154<tr> 
     155        <td style="font-weight:bold;padding-right:15px;">{t}source domain{/t}</td> 
     156        <td style="font-weight:bold;">{t}destination domain{/t}</td> 
     157</tr> 
     158<tr> 
     159        <td style="padding-right:15px;">{$dnsname}</td> 
     160        <td><a href="?module=domain_view&#038;did={$to_domain_id}">{$to_domain_name}</a></td> 
     161        <td style="text-align:right;vertical-align:middle;"><img src="img/icons/delete.png" style="border:0px;" /></td> 
     162</tr> 
     163 
     164{/if} 
     165 
    135166{if $if_superadmin == 1 } 
    136167<tr> 
  • trunk/templates/index_admin.tpl

    r217 r220  
    1111<tr bgcolor="{cycle values="$color1,$color2"}"> 
    1212        <td style="padding-left:3px;"> 
    13         <a href="?module=domain_view&#038;did={$table_data[row].id}">{$table_data[row].dnsname}</a></td> 
     13        <div style="float:left;"> 
     14                <a href="?module=domain_view&#038;did={$row.id}">{$row.dnsname}</a></div> 
     15                {if $row.vacation == 1} 
     16                <div style="float:right;padding:0px;"> 
     17                <a class="tooltip" href="#"> 
     18                <img src="img/icons/autoresponder.png" title="" align="middle"/> 
     19                <span>{t}vacation{/t}:<br/>{$row.vacation_infos}</span></a> 
     20                </div> 
     21                {/if} 
     22        </td> 
    1423        <td style="text-align:right;">{$table_data[row].count_email}</td> 
    1524        <td style="text-align:right;">{$table_data[row].count_forward}</td> 
  • trunk/templates/index_sadmin.tpl

    r217 r220  
    1818                {if $row.vacation == 1} 
    1919                <div style="float:right;padding:0px;"> 
    20                 <img src="img/icons/autoresponder.png" title="{$row.vacation_infos}" align="middle"/> 
     20                <a class="tooltip" href="#"> 
     21                <img src="img/icons/autoresponder.png" title="" align="middle"/> 
     22                <span>{t}vacation{/t}:<br/>{$row.vacation_infos}</span></a> 
    2123                </div> 
    2224                {/if} 
  • trunk/web/css/main.css

    r22 r220  
    310310.right {text-align:right;} 
    311311 
     312a.tooltip, 
     313a.tooltip:link, 
     314a.tooltip:visited, 
     315a.tooltip:active { 
     316position: relative; 
     317text-decoration: none; 
     318font-style: bold; 
     319border-bottom:0px dotted #f0f0f0; 
     320} 
     321 
     322a.tooltip:hover { 
     323background: transparent; 
     324z-index: 200; 
     325} 
     326 
     327a.tooltip span { 
     328display: none; 
     329text-decoration: none; 
     330} 
     331 
     332a.tooltip:hover span { 
     333display: block; 
     334position: absolute; 
     335top: 30px; 
     336left: 0; 
     337width: 200px; 
     338z-index: 200; 
     339color: #000000; 
     340border-right: 4px solid #8b8b8b; 
     341border-left: 4px solid #8b8b8b; 
     342padding: 2px 10px 2px 10px; 
     343background: #EEEEEE; 
     344font-style: Normal; 
     345text-align: left; 
     346 
     347 
    312348/*** End of file ***/