lang($name); if (is_null($value)) { return $value; } // if // We have args? Replace all %s with arguments if (is_array($args) && count($args)) { foreach ($args as $arg) { $value = str_replace_first('%s', $arg, $value); } // foreach } // if // Done here... return $value; } // lang function pp_date($format, $timestamp) { $pp_date = ''; $format_parts = str_split($format); $date_parts = getdate($timestamp); foreach($format_parts as $key=>$format_character) { switch ($format_character) { case 'd': if ($date_parts['mday'] < 10) { $pp_date .= '0'; } case 'j': $pp_date .= $date_parts['mday']; break; case 'F': $pp_date .= lang('month full '.$date_parts['mon']); break; case 'M': $pp_date .= lang('month short '.$date_parts['mon']); break; case 'm': if ($date_parts['mon'] < 10) { $pp_date .= '0'; } case 'n': $pp_date .= $date_parts['mon']; break; case 'S': $ordinal = $date_parts['mon']; while ($ordinal>10) { $ordinal -= 10; } $pp_date .= lang('ordinal '.$ordinal); break; case 'l': $pp_date .= lang('weekday full '.$date_parts['wday']); break; case 'D': $pp_date .= lang('weekday short '.$date_parts['wday']); break; case 'w': $pp_date .= $date_parts['wday']; break; case 'N': $pp_date .= ($date_parts['wday'] + 1); break; case 'W': $pp_date .= $date_parts['wday']; break; case 'o': case 'Y': $pp_date .= $date_parts['year']; break; case 'y': $pp_date .= substr($date_parts['year'],2); break; case 'z': $pp_date .= $date_parts['yday']; break; case 'a': if ($date_parts['hours']<13) { $pp_date .= lang('am'); } else { $pp_date .= lang('pm'); } break; case 'A': if ($date_parts['hours']<13) { $pp_date .= lang('AM'); } else { $pp_date .= lang('PM'); } break; case 'h': if (($date_parts['hours'] % 12) < 10) { $pp_date .= '0'; } case 'g': $pp_date .= $date_parts['hours'] % 12; break; case 'H': if ($date_parts['hours'] < 10) { $pp_date .= '0'; } case 'G': $pp_date .= $date_parts['hours']; break; case 'i': $pp_date .= $date_parts['minutes']; break; case 's': $pp_date .= $date_parts['seconds']; break; case 'e': case 'I': case 'O': case 'P': case 'T': case 'Z': case 'c': case 'r': $pp_date .= date($format_character, $timestamp); break; case 'U': $pp_date .= $date_parts['0']; break; default: $pp_date .= $format_character; } } return $pp_date; } ?>