Changeset 1046 for devel/profile

Show
Ignore:
Timestamp:
03/26/07 12:27:53 (2 years ago)
Author:
sven
Message:

fixes for profile stuff: whitespace, html validation, php notices, cache-unfriendly queries, missing functions

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • devel/profile/index.php

    r1030 r1046  
    2424 
    2525class ElggProfile2 extends ElggProfile { 
    26          
    27        function view () { 
     26     
     27    function view () { 
    2828 
    2929        global $data; 
     
    4343        // Cycle through all defined profile detail fields and display them 
    4444 
    45                $allvalues = get_records('profile_data','owner',$this->id); 
    46                $first_column_fields = array(); 
    47                $second_column_fields = array(); 
    48                $firstcol = ""; 
    49                $secondcol = ""; 
     45        $allvalues = get_records('profile_data','owner',$this->id); 
     46        $first_column_fields = array(); 
     47        $second_column_fields = array(); 
     48        $firstcol = ""; 
     49        $secondcol = ""; 
    5050        foreach($data['profile:details'] as $field) { 
    51                if (is_array($field)) { 
     51            if (is_array($field)) { 
    5252                $flabel = !empty($field[0]) ? $field[0] : ''; 
    5353                $fname  = !empty($field[1]) ? $field[1] : ''; 
     
    8888            // $field is an array, with the name 
    8989            // of the field in $field[0] 
    90                if (in_array($fname,$first_column_fields)) { 
     90                if (in_array($fname,$first_column_fields)) { 
    9191                    $firstcol .= $this->field_display($field,$allvalues); 
    92                } else if (in_array($fname,$second_column_fields)) { 
    93                        $secondcol .= $this->field_display($field,$allvalues); 
    94                
     92                } else if (in_array($fname,$second_column_fields)) { 
     93                    $secondcol .= $this->field_display($field,$allvalues); 
     94               
    9595            } 
    9696        } 
    9797        // $other_fields = array_merge($first_column_fields,$second_column_fields); 
    9898        $run_result .= '<div class="profile_main">'."\n"; 
    99                $run_result .= '<div class="profile_primary">'."\n"; 
     99        $run_result .= '<div class="profile_primary">'."\n"; 
    100100        // $run_result .= '<div class="profile_icon"><img src="'.$icon_url.'"></div>'."\n"; 
    101101        $run_result .= $firstcol; 
     
    233233     
    234234 
    235        function doRelativeDate($in_seconds) { 
    236            /** 
    237                This function returns either a relative date or a formatted date depending 
    238                on the difference between the current datetime and the datetime passed. 
    239                    $posted_date should be in the following format: YYYYMMDDHHMMSS 
    240                 
    241                Relative dates look something like this: 
    242                    3 weeks, 4 days ago 
    243                 
    244                The function includes 'ago' or 'on' and assumes you'll properly add a word 
    245                like 'Posted ' before the function output. 
    246            **/ 
    247          
    248            $diff = time()-$in_seconds; 
    249            $months = floor($diff/2592000); 
    250            $diff -= $months*2419200; 
    251            $weeks = floor($diff/604800); 
    252            $diff -= $weeks*604800; 
    253            $days = floor($diff/86400); 
    254            $diff -= $days*86400; 
    255            $hours = floor($diff/3600); 
    256            $diff -= $hours*3600; 
    257            $minutes = floor($diff/60); 
    258            $diff -= $minutes*60; 
    259            $seconds = $diff; 
    260             
    261            $relative_date = ''; 
    262          
    263            if ($months>0) { 
    264                // over a month old, just show date (mm/dd/yyyy format) 
    265                return 'on '.date('r',$in_seconds); 
    266            } else { 
    267                if ($weeks>0) { 
    268                    // weeks and days 
    269                    $relative_date .= ($relative_date?', ':'').$weeks.' week'.($weeks>1?'s':''); 
    270                    $relative_date .= $days>0?($relative_date?', ':'').$days.' day'.($days>1?'s':''):''; 
    271                } elseif ($days>0) { 
    272                    // days and hours 
    273                    $relative_date .= ($relative_date?', ':'').$days.' day'.($days>1?'s':''); 
    274                    $relative_date .= $hours>0?($relative_date?', ':'').$hours.' hour'.($hours>1?'s':''):''; 
    275                } elseif ($hours>0) { 
    276                    // hours and minutes 
    277                    $relative_date .= ($relative_date?', ':'').$hours.' hour'.($hours>1?'s':''); 
    278                    $relative_date .= $minutes>0?($relative_date?', ':'').$minutes.' minute'.($minutes>1?'s':''):''; 
    279                } elseif ($minutes>0) { 
    280                    // minutes only 
    281                    $relative_date .= ($relative_date?', ':'').$minutes.' minute'.($minutes>1?'s':''); 
    282                } else { 
    283                    // seconds only 
    284                    $relative_date .= ($relative_date?', ':'').$seconds.' second'.($seconds>1?'s':''); 
    285                } 
    286            } 
    287            // show relative date and add proper verbiage 
    288            return $relative_date.' ago'; 
    289         }                        
     235    function doRelativeDate($in_seconds) { 
     236        /** 
     237            This function returns either a relative date or a formatted date depending 
     238            on the difference between the current datetime and the datetime passed. 
     239                $posted_date should be in the following format: YYYYMMDDHHMMSS 
     240             
     241            Relative dates look something like this: 
     242                3 weeks, 4 days ago 
     243             
     244            The function includes 'ago' or 'on' and assumes you'll properly add a word 
     245            like 'Posted ' before the function output. 
     246        **/ 
     247     
     248        $diff = time()-$in_seconds; 
     249        $months = floor($diff/2592000); 
     250        $diff -= $months*2419200; 
     251        $weeks = floor($diff/604800); 
     252        $diff -= $weeks*604800; 
     253        $days = floor($diff/86400); 
     254        $diff -= $days*86400; 
     255        $hours = floor($diff/3600); 
     256        $diff -= $hours*3600; 
     257        $minutes = floor($diff/60); 
     258        $diff -= $minutes*60; 
     259        $seconds = $diff; 
     260         
     261        $relative_date = ''; 
     262     
     263        if ($months>0) { 
     264            // over a month old, just show date (mm/dd/yyyy format) 
     265            return 'on '.date('r',$in_seconds); 
     266        } else { 
     267            if ($weeks>0) { 
     268                // weeks and days 
     269                $relative_date .= ($relative_date?', ':'').$weeks.' week'.($weeks>1?'s':''); 
     270                $relative_date .= $days>0?($relative_date?', ':'').$days.' day'.($days>1?'s':''):''; 
     271            } elseif ($days>0) { 
     272                // days and hours 
     273                $relative_date .= ($relative_date?', ':'').$days.' day'.($days>1?'s':''); 
     274                $relative_date .= $hours>0?($relative_date?', ':'').$hours.' hour'.($hours>1?'s':''):''; 
     275            } elseif ($hours>0) { 
     276                // hours and minutes 
     277                $relative_date .= ($relative_date?', ':'').$hours.' hour'.($hours>1?'s':''); 
     278                $relative_date .= $minutes>0?($relative_date?', ':'').$minutes.' minute'.($minutes>1?'s':''):''; 
     279            } elseif ($minutes>0) { 
     280                // minutes only 
     281                $relative_date .= ($relative_date?', ':'').$minutes.' minute'.($minutes>1?'s':''); 
     282            } else { 
     283                // seconds only 
     284                $relative_date .= ($relative_date?', ':'').$seconds.' second'.($seconds>1?'s':''); 
     285            } 
     286        } 
     287        // show relative date and add proper verbiage 
     288        return $relative_date.' ago'; 
     289    }            
    290290} 
    291291